第5章〓系统开发的指导 本章从系统开发指导教师的角度,主要介绍综合实训中对系统开发训练的指导方案,包括训练时间轴、课表、各角色任务、指导流程和指导文件等内容。 需要说明的是,本章内容仅针对中南民族大学信管专业的系统开发训练指导,由于各校实训目标不同、实训方式不同、实训内容不同、学生基础不同,实训指导内容可能千差万别,这里仅供参考。 5.1系统开发训练的时间轴 系统开发训练的指导工作主要由校企双方的老师共同承担,以企业老师为主,学校老师为辅,历经基础训练和专业训练两个阶段,系统开发训练的时间轴如图51所示。 图51系统开发训练的时间轴 图51中,基础训练阶段主要完成基础知识补强任务。专业训练阶段主要按照系统开发的生命周期完成一项小型的信息系统开发任务,包括项目的需求分析、系统设计、编码实现、系统测试、项目验收等过程。其中,在系统开发重要节点设置技术评审点,包括需求评审、设计评审、编码评审、测试评审和验收评审等。 5.2系统开发训练的课表 系统开发训练共用5周时间,课表如图52所示。其中,基础训练时间为1周,专业训练时间为4周。但为了更加充分地吸收、消化和练习基础知识补强的内容提前在计算机上创造软件环境,基础训练多数会提前开始,将一周的集中训练时间提前,分散至2~3周完成。 图52系统开发训练的课表(举例) 5.3系统开发训练中各角色的任务 系统开发训练中,主要由企业老师指导训练,学校老师协助指导,全体学生参加训练,各小组组长带领团队完成训练任务。各阶段指导老师、学生及组长的任务如表51所示。该表对老师了解各阶段的指导任务,学生了解各阶段的实训任务,组长了解各阶段的技术管理任务,以及如何进行任务分工有重要的指导意义。 表51系统开发训练中各角色的任务 阶段指导老师的任务学生的任务组长的技术管理任务 基础训练阶段① 基础知识串讲; ② 学生技术摸底; ③ 发布项目立项报告; ④ 组织项目启动评审① 完成学习任务; ② 完成基础摸底; ③ 参与撰写项目启动报告; ④ 根据选题深入挖掘项目需求① 督促和检查团队成员每日的学习成果; ② 组织小组会议并讨论需求; ③ 讨论项目启动报告并定稿; ④ 参与项目启动评审 续表 阶段指导老师的任务学生的任务组长的技术管理任务 需求分析阶段① 知识串讲; ② 数据库设计指导和评审; ③ 需求分析指导和评审① 完成学习任务; ② 分析并深入理解项目需求; ③ 根据分工绘制草图; ④ 参与数据库设计; ⑤ 参与撰写需求规格说明书① 组织需求讨论; ② 绘制草图任务分工; ③ 参与数据库评审; ④ 参与需求评审; ⑤ 汇总并修订需求规格说明书; ⑥ 根据草图迭代需求 系统设计阶段① 知识串讲; ② 系统设计指导和评审① 完成学习任务; ② 参与确定前端风格; ③ 根据分工绘制项目原型; ④ 撰写系统设计说明书① 组织讨论并确定前端风格; ② 组织绘制原型系统,并进行任务分工; ③ 汇总修订系统设计说明书; ④ 参与系统设计评审 编码实现阶段① 知识串讲; ② 疑难问题解答; ③ 定期检查进度; ④ 各小组进度展示汇报; ⑤ 各小组开发经验分享① 完成学习任务; ② 根据项目框架,熟练使用团队开发工具; ③ 根据模块划分完成功能编码任务; ④ 根据后台、前端功能编码实现模块功能; ⑤ 进行单元测试; ⑥ 持续更新Scrum迭代开发计划① 组织搭建项目开发框架; ② 组织熟练使用团队开发工具(SVN或Git); ③ 详细分工编码任务,定期检查,把控进度; ④ 组织后台、前端开发,优先实现主线功能开发; ⑤ 根据进度定期集成测试; ⑥ 汇总Scrum迭代开发计划 系统测试阶段① 测试各组项目并提出完善意见; ② 各小组Beta版本交流展示; ③ 各小组开发经验分享① 单元测试; ② 修改当前测试的Bug; ③ 编写BugList表; ④ 持续项目优化① 组织集成主线业务流程测试; ② 组织集成其他功能点测试; ③ 汇总BugList表; ④ 确保项目无Bug; ⑤ 确定最终发布的项目版本 项目验收阶段① 组织项目发布; ② 文档验收; ③ 项目评优① 撰写个人总结; ② 撰写用户手册; ③ 项目验收流程准备; ④ 根据项目最终版本迭代项目文档① 撰写项目总结报告; ② 汇总用户手册、个人总结; ③ 准备项目验收PPT; ④ 准备项目验收流程; ⑤ 组织根据项目最终版本迭代项目文档 5.4系统开发训练的指导流程 系统开发训练包括基础训练阶段和专业训练阶段,但早在基础训练之前,各团队就开始了不同程度的技术自学。 技术自学始于实训启动会,届时企业老师会介绍实训流程、发布并介绍选题和相关技术。然后,学生根据选题偏好组建团队,根据企业老师布置的学习任务,通过指导视频、技术说明书边看边自学相关技术。 基础训练阶段由企业老师针对各组所选项目要运用到的技术进行知识补强,同时企业老师还会对学生技术基础进行摸底。除补习在校已学过的Java、数据库等知识之外,还要学习许多企业目前普遍在用的甚至是最新的开发技术,为后续专业训练打下良好的技术基础。 专业训练阶段严格按照需求分析、系统设计、编码实现、系统测试、项目验收的系统开发流程,完成一个小型的系统开发任务。同时完成6项系统开发文档的撰写工作,项目验收时还需完成项目总结报告和个人总结报告。 系统开发训练指导流程如表52和表53所示,表中详细列出了企业老师在各阶段各项实训任务中的指导内容、技术归属课程,以及所需要的各类相关指导文件。这些指导文件中,除了系统开发所需要的软件、工具、组件和插件外,指导老师还可以根据训练需要将上课内容录屏,或制作相关的操作视频,供学生反复观摩和学习。表52和表53对指导老师了解实训各阶段详细的指导内容、相关技术与课程之间的关联,以及所需要制作或准备的指导文件有重要的指导意义。 表52系统开发训练的详细指导流程 序号实训任务老师指导技术归属课程指导文件编号 1实训启动阶段 1.1实训启动宣讲 实训启动宣讲 1 发布实训课表 2 发布并介绍选题 3 相关开发技术介绍面向对象程序语言(Java)— 1.2开发环境安装 指导安装ideaIU 4 指导安装MySQL 5 指导安装JDK 6 指导安装Postman 7 2基础训练阶段  — 2.1技术摸底学生技术基础摸底+分组 8 2.2前端知识补强 串讲HTML5及DOM基础网页制作与网站建设9 串讲HTML5表单技术与CSS3 基础网页制作与网站建设10 串讲JavaScript 及jQuery基础网页制作与网站建设11 串讲Bootstrap框架及网站模板的使用网页制作与网站建设12 串讲Vue框架与ElementUI网页制作与网站建设13 2.3数据库技术 串讲数据库基础操作/条件查询数据库原理与应用14 串讲数据库子查询/分组查询数据库原理与应用 串讲数据库聚合函数/多表查询数据库原理与应用 2.4Spring Boot技术框架 Spring Boot基础入门面向对象程序语言(Java)15 Apache Maven简介与Spring Boot依赖管理面向对象程序语言(Java)16 Spring Boot与MyBatis的整合面向对象程序语言(Java)17 Spring Boot 与Vue3的整合面向对象程序语言(Java)— Spring Boot 与Axios 的整合面向对象程序语言(Java)17 接口测试工具Postman的基本用法面向对象程序语言(Java)— 续表 序号实训任务老师指导技术归属课程指导文件编号 2.5表相关操作 搭建开发框架面向对象程序语言(Java)18 创建表结构数据库原理与应用19 绘制业务原型界面网页制作与网站建设20 实现数据展示功能数据库原理与应用21 实现数据添加与删除功能数据库原理与应用22 实现数据修改功能数据库原理与应用23 实现多条件查询功能数据库原理与应用 实现业务分页与带查询条件的分页功能数据库原理与应用 实现文件上传、下载功能面向对象程序语言(Java) 实现多表关联的相关操作数据库原理与应用24 Spring Boot session管理面向对象程序语言(Java)25 Spring Boot的接口开发面向对象程序语言(Java)26 2.6撰写项目启动报告发布项目启动报告模板 27 2.7项目启动评审组织项目启动评审 — 3专业训练阶段  — 3.1需求分析  — 3.1.1系统需求调研各组需求调研并深入讨论信息系统分析与设计— 3.1.2绘制系统草图 串讲AxurePro草图绘制的使用信息系统分析与设计28 根据需求分工指导AxurePro草图绘制信息系统分析与设计29 根据草图迭代需求信息系统分析与设计30 3.1.3撰写需求规格说明书发布需求规格说明书模板 31 3.1.4需求评审组织需求评审 — 3.2系统设计  — 3.2.1用户界面(UI)的设计系统UI的设计 网页制作与网站建设32 3.2.2绘制系统原型根据UI 与系统分工绘制原型界面网页制作与网站建设32 3.2.3数据库设计 发布数据字典模板,指导数据库设计数据库原理与应用— 串讲并指导SVN或Git团队开发工具的使用 — 3.2.4数据库评审组织数据库评审数据库原理与应用— 3.2.5团队协作开发利用Gitee实现团队协作开发 33、34 3.2.6数据库的创建 系统数据库表结构的创建数据库原理与应用35 36 3.2.7撰写系统设计说明书发布系统设计说明书模板 37 3.2.8系统设计评审组织系统设计评审 — 3.3编码实现  — 3.3.1搭建系统开发框架各小组搭建本小组系统开发框架 — 3.3.2团队协作开发利用Gitee实现团队协作开发 — 续表 序号实训任务老师指导技术归属课程指导文件编号 3.3.3基础功能开发 登录功能实现面向对象程序语言(Java)38 39 40 登录功能日志实现面向对象程序语言(Java)41 权限功能实现(ElementsUI表单验证)面向对象程序语言(Java)42 菜单功能实现(利用JSON文件统一编码菜单)面向对象程序语言(Java)43 44 3.3.4基础功能评审组织基础功能评审 — 3.3.5后台功能开发指导后台功能开发 — 3.3.6后台开发评审组织后台开发评审 — 3.3.7前端功能开发指导前端功能开发 — 3.3.8前端开发评审组织前端开发评审 — 3.3.9编码技术指导 解决各小组疑难问题 — 定期检查进度 — 各小组进度展示汇报 — 各小组开发经验分享 — 3.3.10编写迭代开发计划表发布迭代开发计划表模板 45 3.4系统测试  — 3.4.1测试技术指导 测试各小组项目并提出完善意见 — 各小组Beta版本交流展示 — 各小组开发经验分享 — 3.4.2编写BugList表发布BugList表模板,指导系统测试 46 3.5项目验收  — 3.5.1撰写项目总结文档 发布总结报告模板 47 发布个人总结模板 48 发布用户手册模板 49 3.5.2项目验收 发布项目验收与成果汇报会的安排 50 小组项目验收 — 小组文档验收 — 3.6项目发布  — 3.6.1成果汇报会 组织成果汇报会 — 项目评优 — 表53系统开发训练的指导文件列表 指导文件编号指导文件名称文 件 类 型 11实训启动宣讲报告文档类(流程文档) 22实训课表文档类(流程文档) 33实训选题简介文档类(流程文档) 续表 指导文件编号指导文件名称文 件 类 型 44ideaIU2021.1软件类(开发工具) 55mysqlinstallercommunity软件类(数据库) 66jdk8u201windowsx64软件类(工具包) 77Postmanwin647.0.7软件类(调试工具) 88摸底练习题文档类(教程) 99HTML及DOM基础文档类(教程) 1010HTML5表单技术文档类(教程) 1111CSS基础文档类(教程) 1212BootStrap3.4.1配置文件类(插件) 1313vue.js脚本类(组件库) 1414连接数据库文档类(教程) 1515student_info脚本类(数据库文件) 1616apachemaven软件类(项目管理工具) 1717axios.min.js脚本类(HTTP库) 1818列表功能(classinfo).sql脚本类(示例) 1919Demo1120.zip脚本类(示例) 2020添加功能(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 2121删除及调试方法(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 2222修改方法(1)(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 2323修改方法(2)(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 2424带查询的分页功能(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 2525多表关联(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 2626多条件查询(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 2727(项目名称)项目启动文档类(过程文档) 2828AxureRP9hhb软件类(原型设计工具) 2929Axure的使用简介(Spring Boot+MyBatis+Vue)视频类(软件使用串讲) 3030数据字典模板文档类(教程) 3131(项目名称)需求规格说明书文档类(过程文档) 3232Element_Components_v2.1.0软件类(开发工具) 3333Git2.24.0.264bit.exe视频类(软件使用串讲) 3434基于Gitee的团队协作视频类(软件使用串讲) 3535从草图到原型(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 3636ElementsUI之添加与列表(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 3737 (项目名称)系统设计说明书文档类(过程文档) 3838ElementUI及登录功能(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 3939index.js脚本文件(示例) 4040index.css脚本文件(示例) 4141登录日志功能的实现文档类(教程) 4242ElementsUI表单验证(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 4343菜单JSON数据处理(Spring Boot+MyBatis+Vue)视频类(功能点串讲) 4444MenuInfo.json脚本类(示例) 4545 (项目名称)迭代开发计划表文档类(过程文档) 4646(项目名称)BugList表文档类(过程文档) 4747(项目名称)总结报告文档类(过程文档) 4848个人总结(学生姓名)文档类(过程文档) 4949(项目名称)用户手册文档类(过程文档) 5050项目验收与成果汇报会的安排文档类(辅助文档) 5.5系统开发文档的指导文件 系统开发文档用于在系统开发过程中记录各个开发阶段的成果性产出,是系统开发、使用和维护过程中的必备资料。不同的系统开发阶段产出不同的开发文档,并且这些文档基于开发流程的先后顺序具有前后衔接的关系。一般而言,系统开发文档主要包括: 可行性分析报告、系统立项报告、系统需求分析说明书、系统设计说明书、系统测试报告、系统使用与维护手册(用户手册)等。 专业综合实训系统开发文档的指导文件包括以下8项。 (1) (项目名称)项目启动报告。 (2) (项目名称)需求规格说明书。 (3) (项目名称)系统设计说明书。 (4) (项目名称)迭代开发计划表。 (5) (项目名称)BugList表。 (6) (项目名称)总结报告。 (7) (学生姓名)个人总结。 (8) (项目名称)用户手册。 由于系统开发是个不断迭代的过程,对前5项文件,都应在文档的最开始添加版本修订记录页,如表54所示。 表54版本修订记录 日期修订版本修改章节修 改 描 述修订人 5.5.1(项目名称)项目启动报告模板 (项目名称) 项目启动报告 1项目提出 1.1项目简介 (提示: 用简练的语言说明本项目“是什么”以及“什么用途”) 1.2类似产品或系统的分析 (提示: 对比市场同类型产品或系统,并进行分析) 1.3产品或系统的特色 (提示: 描述本项目在市场细分或个性化服务上的差异化竞争优势) 1.4项目预计达到的目标 (提示: 描述本项目所要实现的预期功能) 2团队组成和计划 2.1项目成员与分工 (提示: 以表格形式清晰地列出项目成员及角色分工) 【示例】 角色知识技能要求负责人 项目经理(填写该角色的知识技能要求)(填写成员姓名) 前端工程师 后端工程师 … 2.2项目计划 (提示: 可以只填写示例内容,也可以使用甘特图绘制项目开发进度表) 【示例】 XXXX年XX月XX日~XXXX年XX月XX日(共计XX周)。 3风险评估和规避 3.1过程中存在的技术风险 (提示: 按点列出过程中存在的技术风险,并针对问题提出解决办法) 【示例】 风险1: XXXXX。 风险2: XXXXX。 解决办法: 3.2过程中存在的管理风险 (提示: 按点列出过程中存在的管理风险,并针对问题提出解决办法) 【示例】 风险1: XXXXX。 风险2: XXXXX。 解决办法: 3.3其他可能的风险 (提示: 按点列出其他可能的风险,并针对问题提出解决办法) 【示例】 风险1: XXXXX。 风险2: XXXXX。 解决办法: 5.5.2(项目名称)需求规格说明书模板 (项目名称) 需求规格说明书 1简介 1.1编写目的 (提示: 描述文档的目的并指明本文档的读者对象) 1.2范围 (提示: ① 说明本项目“适用的领域”和“不适用的领域”; ② 说明本项目“应当包含的内容”和“不包含的内容”) 2总体概述 (提示: 本节描述影响产品和产品需求的一般因素。由以下4个部分构成。本节不描述具体的需求,只是使那些将要描述的具体需求更易于理解) 2.1软件概述 (提示: 描述开发本系统的原因以及该系统需要完成的基本功能等) 2.2项目介绍 (提示: 描述本软件需求所描述的项目的背景,例如,本项目是一系列版本中的一个,或者是替代某个已经存在的系统,还是一个新的独立的项目) 2.3产品环境介绍 (提示: 描述本产品与其他产品或项目所组成的整体环境,如硬件环境、软件环境等) 2.4软件功能 (提示: 概述系统的主要功能。本节只需要简要描述,详细描述在功能需求部分进行。对需求功能进行组织,以便于读者理解,并能指导后续的设计和测试。可以用图表来表示主要需求之间的关系,如高层的数据流图、面向对象的分析等) 3功能需求 3.1用例图 (提示: 绘制用例图,包括涉及的所有参与者、用例及其关系) 3.2系统模块 (提示: 描述系统的功能模块,列出其主要功能模块和对应子功能,并对功能进行描述) 【示例】 (1) 前台功能 功能名称子功能描述 用户中心 我的信息 我的发文 我的收藏 故障申报 (2) 后台功能 功能名称子功能描述 系统管理 部门管理 用户管理 用户组管理 故障申报管理 日志管理 4性能需求 (提示: 如果有性能方面的需求,在这里列出并解释它们的原理,以帮助开发者理解意图以做出正确的设计选择,可选用列点或图表的方式呈现) 【示例】 系统的性能需求主要有如下几点。 (1) 响应性能: 要求一般操作响应时间小于5秒,复杂操作响应时间小于20秒。 (2) 用户接入数: 最大用户接入数量为300; Web并发使用用户数量为100。 (3) 数据存储时间: 要求数据库用户设置详细信息并在线长期保存,系统数据详细信息要求在服务器中长期保存。 (4) XXXXXX。 5接口需求 (提示: 详细描述与其他系统/模块/项目之间的接口,如数据管理系统、操作系统、算法工具包等; 详细描述与硬件的接口,如支持哪些设备和协议、怎样支持这些设备和协议等) 6用户接口需求 (提示: 详细描述用户操作和系统反馈,可以通过草图的形式展示) 7总体设计约束 (提示: 描述可能限制开发人员选择的事项) 8其他需求 (提示: 详细说明任何其他的客户需求,包括数据库、编码需求、错误处理、测试需求等) 9需求分级 (提示: 参照示例对需求进行分级) 【示例】 A. 必须的绝对基本的特性: 如果不包含,产品就会被取消。 B. 重要的不是基本的特性: 但这些特性会影响产品的生存能力。 C. 最好有的期望的特性: 但省略一个或多个这样的特性不会影响产品的生存能力。 需求ID需 求 名 称需 求 分 级 10待确定问题 (提示: 参照示例描述待确定问题) 需求ID问题描述影响风险责任人解决日期 5.5.3(项目名称)系统设计说明书模板 (项目名称) 系统设计说明书 1简介 1.1编写目的 (提示: 描述文档的目的并指明本文档的读者) 1.2范围 1) 软件名称 (提示: 对软件命名) 2) 软件功能 (提示: 解释软件产品将完成或不完成的功能。可以直接描述也可以参考相关文档) 3) 软件应用 (提示: 描述软件产品的应用领域,可以直接描述也可以参考相关文档) 2第0层设计描述 2.1软件系统上下文定义 (提示: 描述待开发软件系统与外部实体的关系,可以使用系统结构图来描述系统结构和交互关系,也可以使用系统与外部环境之间的网络拓扑图来说明。外部实体属性描述只限于描述与本系统软件设计相关的属性。考虑到描述的完整性,可参考相关软件的实体文档,如需求说明书) 2.2设计思路 1) 设计可选方案 (提示: 对本软件系统的几种设计方案进行分析、比较,并确定所采用的方案) 2) 设计约束 (提示: ① 遵循标准,即描述本软件所遵循的标准、规范; ② 硬件限制,即描述本软件系统实现的硬件限制; ③ 技术限制,即描述本软件的受到人力、时间、合作等带来的限制) 3) 其他 (提示: 描述其他有关的设计考虑) 3第一层设计描述 3.1系统结构 1) 系统结构描述 (提示: 描述软件系统的总体结构,可以使用结构图、层次分解图或包图来描述,并应说明系统结构划分的原则) 2) 业务流程说明 (提示: 通过描述系统架构模块/分析类之间的动态交互,来说明用例模型中的典型用例场景,以体现系统功能是如何实现的。建议采用时序图、协作图等来描述) 3.2分解描述 (提示: 参考示例,描述系统中的子系统和模块) 【示例】 1) 模块1/子系统1描述 (提示: 不要直接写“模块/子系统”,用简短的词语命名模块/子系统,并按照以下格式描述) (1) 模块1/子系统1概述。 (提示: 描述该模块/子系统的类型和目的) (2) 功能列表。 (提示: 以表的形式说明该模块/子系统的功能点以及功能描述,如果功能列表比较复杂,用文字不容易描述,可以使用活动图进行辅助描述) 2) 模块1/子系统2描述 (1) 模块1/子系统2概述。 (2) 功能列表。 3) 模块2/子系统1描述 (1) 模块2/子系统1概述。 (2) 功能列表。 …… 3.3依赖性描述 (提示: 描述系统中的子系统、数据结构、模块、进程等设计实体间的关系,依赖关系描述可以使用文字、结构图、事务图) 3.4接口描述 (提示: 参照示例,描述软件系统中设计实体,如子系统、模块、进程的接口。接口描述可以使用接口文件、参数表。对于外部实体只有与被描述软件相关的接口才需描述,接口可以是函数调用、事件、消息、信号等) 【示例】 1) 模块1/子系统1的接口描述 (1) 名称: (接口名称)。 (2) 说明: (对接口的简短说明)。 (3) 定义: (接口原型定义,说明接口类型及相关参数)。 2) 模块1/子系统2的接口描述 (1) 名称: (接口名称)。 (2) 说明: (对接口的简短说明)。 (3) 定义: (接口原型定义,说明接口类型及相关参数)。 3) 模块2/子系统1的接口描述 (1) 名称: (接口名称)。 (2) 说明: (对接口的简短说明)。 (3) 定义: (接口原型定义,说明接口类型及相关参数)。 …… 4第二层设计描述 (提示: 描述第一层设计中定义的每个模块的进一步设计。对于层次比较多的模块,可以增加设计层次,最终要说明对应于最小分解模块的具体设计类,包括其public属性和public方法。对每个模块重复使用下面的格式) 4.1模块1名称 (提示: 不要直接写“模块X名称”,用简短的词语命名模块) 1) 模块设计描述 (提示: 描述模块分解,如每个子模块的功能定义。定义出具体的设计类,用类图来描述其相互关系,并说明所采用的设计模式。对每个类重复使用下述的格式进行描述) (1) 类名。 ① 标识。 (提示: 说明该类的配置项标识,一般为产品名_模块名_类名) ② 简介。 (提示: 简单介绍该类的功能) ③ 类定义(可选)。 (提示: 如果该类在前面没有定义,使用类图、伪代码描述该类的类定义,需说明该类的所有public属性和public方法) (2) 类名。 ① 标识。 ② 简介。 ③ 类定义(可选)。 2) 功能实现说明 (提示: 使用时序图、协作图等来说明这些设计类之间如何交互,实现本模块的典型功能) 4.2模块2名称 1) 模块设计描述 (1) 类名。 (2) 类名。 2) 功能实现说明 …… 5数据库设计 (提示: 列出所有的数据存储类的实体,如表、存储过程、触发器等,详细描述实体的内容并列出全部属性。对每个属性详细描述其数据库、数据大小、特定约束。实体的所有约束及实体间的关系也要注明) 5.1实体定义 1) 分解描述 (提示: 阐述设计思路及约束规则。详细定义每个关键数据表、视图中的各个字段属性、存储要求、完整性约束、功能、注意事项等,对静态数据表应考虑定义初始配置记录) 2) 内部依赖性描述 (提示: 使用ER图描述实体间的关联依赖关系,分析对存取空间、性能、完整性的要求) 5.2行为定义 1) 分解描述 (提示: 根据功能或其他方式对存储过程/触发器进行归类,便于进一步细化和分解,并说明每类存储过程/触发器的主要功能。详细定义每个存储过程或触发器的功能、输入输出参数、返回值、返回的记录集、依赖的数据表和存储过程,以及一些特殊要求,如需要启用事务等) 2) 外部依赖性描述 (提示: 描述与其他模块之间的依赖关系) 3) 内部依赖性描述 (提示: 描述存储过程间、存储过程和数据表/视图间的依赖关系) 6原型或界面设计 (提示: 包含系统的原型设计或者界面设计图和描述) 5.5.4(项目名称)迭代开发计划表模板 XX项目组第X次迭代开发计划表 序号功能子功能名称功能描述负责人开始日期结束日期状态滞后原因 1 2 3 4 5 填表人:审查人:时间: 注: 本次迭代时间按实际时间填写。“状态”栏3个选项: 待开发、开发中、完成。 5.5.5(项目名称)BugList表模板 XX 项目组第X次迭代 BugList表 序号Bug名称Bug描述解决方法负责人开始日期结束日期状态 1 2 3 4 5 填表人:审查人:时间: 注: “状态”栏3个选项: 待解决、解决中、已解决。 5.5.6(项目名称)总结报告模板 (项目名称) 总结报告 1项目基本情况 项目名称 开发环境运行平台 涉及技术 项目起止时间项目地点 项目组成员 项目描述 2项目的完成情况 (提示: 描述项目总体的完成情况、各模块的完成情况,以及总体代码规模和代码缺陷率) 3个人任务及其工作量总结 (提示: 描述个人任务完成情况及工作量) 姓名职责负责模块代码行数/代码注释行数 合计 4项目进度 (提示: 描述项目计划进度和实际进度) 项目阶段 计划实际 开始日期结束日期开始日期结束日期 项目进度偏移/天 立项 需求 设计 编码 测试 5经验教训及改进建议 (提示: 从实训角度提出团队经验教训及改进建议) 5.5.7(学生姓名)个人总结模板 (学生姓名) 个人总结 学生姓名填写日期 实训项目名称同组成员 项目起止时间项目地点 实训项目简介 实训过程中所承担的工作 实训过程中存在的问题 (团队和个人) 个人的经验与收获 针对实训中个人存在的问题如何在后面的学习中进行提高 5.5.8(项目名称)用户手册编写要求 (项目名称) 用户手册 编写要求: (1) 用户手册包括系统安装手册以及用户使用指导两部分内容。 (2) 系统安装手册主要包括系统运行的具体软硬件环境说明、数据库配置说明等; 用户使用指导则需要以普通用户能够进行系统的基本使用为目标。 (3) 用户使用指导必须针对操作界面进行截图说明,操作界面一般应包含登录界面、主界面、功能界面的截图,截图后应有相应文字说明,能全面展示软件的主要功能。 (4) 用户手册不少于15页,若少于15页,则必须描述清楚全部功能。