附录1:系统分析说明书模板
1 概述
1.1 编写目的
本文档的编写目的是为×××××项目的开发提供:
a. 软件总体要求,作为用户和软件开发人员之间了解的基础;
b. 功能、性能、接口和可靠性的要求,作为软件人员进行设计和编码的基础;
c. 验收标准,作为用户确认测试的依据。
1.2 参考资料
包括所有和需求分析相关的原始资料:
a. 项目来源;
b. 本文档中引用到的规范和资料等;
c. 列出这些规范和资料的作者、编号、标题、发表日期、出版单位或资料来源。
1.3 术语和缩写词*
列出本文档中用到的专门术语的定义和缩写词,缩写词要给出中文译名和英文全称,常用的不需要定义。
2 业务流程分析
2.1 组织机构调查
调查企业的组织结构,绘制组织结构图,并说明各个职能部门的职责。
2.2 现行业务流程
采用UML活动图或跨职能流程图说明日常管理工作的处理过程,可能有多个业务流程。格式可以采用如下形式:
2.2.1 XX流程
流程描述:
相关岗位及主要职责:
流程图
流程详述:
2.2.2 XX流程
流程描述:
相关岗位及主要职责:
流程图
流程详述:
2.3 问题分析*
对现行流程进行分析,找到并说明其中不合理或瓶颈问题,提出应对措施。
3 需求
3.1 功能需求
详细地说明该软件系统的用户,各用户的功能及功能描述。
绘制用例图,并对每个用例建立详细的规格说明,必要的非功能性需求可以附加在用例说明中
3.2 数据需求
绘制简单的领域类图,类应包含属性,操作可选。
3.3 性能需求*
如果对程序有运行时间、存储空间和计算精度的特殊要求,在本节应加以说明。
3.4 非功能需求*
包括可维护性、可移植性等非功能需求。
4 环境
4.1 运行环境
描述运行软件系统所需的软、硬件环境。
4.2 开发环境
描述开发软件系统所需的软、硬件环境。
附录2:系统设计说明书模板
1 概述
1.1 编写目的
本文档的编写目的是:详细定义×××××软件的总体功能;给出系统的结构设计和过程设计,作为程序编写的依据。
1.2 参考资料
包括:
a. 项目来源;
b. 本文档中引用到的规范和资料等;
c. 列出这些规范和资料的作者、编号、标题、发表日期、出版单位或资料来源。
1.3 术语和缩写词*
列出本文档中用到的专门术语的定义和缩写词,缩写词要给出中文译名和英文全称,常用的不需要定义。
2 需求概述
概述系统的特性和需求,扩充软件需求说明中的信息,给出增加的细节,详尽地指出对软件需求说明中有关特性和需求作出的变更。(详细说明见《需求说明》)。
3 总体结构设计
3.1 对外接口设计
构件图:说明本系统和外部系统之间的接口关系(对外的供接口,需要其他系统的接口)。
3.2 内部结构设计
1、架构说明(分层):说明整体架构的层次结构(如界面层、业务层等),每层采用的技术(如界面层采用Windows窗体界面还是Web界面)。
2、类图、包图:可以先绘制包图(每个包中有哪些类,可以按照层来分包,也可以按照子系统分包),类图要完整,包含类的属性和方法、类之间的关系。
3、组件图:绘制系统组件图,说明系统最后实现为哪些组件(如EXE、DLL等),每个组件实现了哪些类,组件之间的依赖关系等
3.3 出错处理设计*
包括对出错输出信息、出错处理对策的说明。
3.4 其它*
说明设计当中对于安全保密、维护等情况的设计考虑。
4 类的详细设计
对系统当中主要的类逐一进行详细设计和说明。
4.1 XX类
4.1.1 描述
用文字形式简单描述该类的主要内容。
4.1.2 属性
4.1.3 公有方法
详细描述类的Public方法,包括功能、输入、输出和实现算法。复杂算法可以采用盒图或程序流程图、类程序语言等方式加以说明。
4.1.4 私有方法
详细描述类的私有或保护方法,包括功能、输入、输出和实现算法。复杂算法可以采用盒图或程序流程图、类程序语言等方式加以说明。
4.2 XX类
4.2.1 描述
用文字形式简单描述该类的主要内容。
4.2.2 属性
列出该类的主要属性及其描述。
属性名 | 属性说明 |
_teacherName(String) | 教师姓名 |
4.2.3 公有方法
详细描述类的Public方法,包括功能、输入、输出和实现算法。复杂算法可以采用盒图或程序流程图、类程序语言等方式加以说明。
方法名 | 方法说明 |
TeacherName | get/set方法 |
Add(Teacher t1) | 增加一名新教师 |
4.2.4 私有方法
详细描述类的私有或保护方法,包括功能、输入、输出和实现算法。复杂算法可以采用盒图或程序流程图、类程序语言等方式加以说明。
……
5 用例实现的详细设计
对《需求分析》文档当中所有用例的具体实现逐一进行说明。
5.1 XX用例
5.1.1 功能说明
用文字形式简单的描述该用例的主要功能。
5.1.2 界面设计
采用用户界面原型(如Windows窗口或网页)描述该用例的操作界面,说明数据的输入形式和验证手段,特殊的界面操作约束关系和控制流程可适当说明。
5.1.3 参与类
列出所有参与该项功能的类。
5.1.4 交互设计
用顺序图描述该用例的具体实现。
5.2 XX用例
5.2.1 功能说明
用文字形式简单的描述该用例的主要功能。
5.2.2 界面设计
采用用户界面原型(如Windows窗口或网页)描述该用例的操作界面,说明数据的输入形式和验证手段,特殊的界面操作约束关系和控制流程可适当说明。
5.2.3 参与类
Login.aspx, LoginControl,
5.2.4 交互设计
用顺序图描述该用例的具体实现。只需要绘制用例规约中的主事件流。
……
6 数据库设计
对程序当中所采用的数据库相关规格说明等进行定义。建议给出数据库表结构,数据类型应符合所选择的DBMS规定(如SQL Server2005或Oracle)。
表1:XXX表
字段名 | 含义 | 类型(长度) | 默认值 | 允许空 | 主键 | 外键 | 备注 |
√ | 其他如取值范围等 | ||||||
表2:XXX表
字段名 | 含义 | 类型(长度) | 默认值 | 允许空 | 主键 | 外键 | 备注 |
√ | 其他如取值范围等 | ||||||
…...
此外,如果需要触发器、存储过程等,需要描述其详细设计。
附录3:课程设计总结模板
1 课程设计目的
[明确实习应达到的目的]
2 课程设计完成情况
[简要描述实习课题要完成的工作有哪些、工作成果有哪些]
3 小组成员具体分工
[每个成员必须独立而且完整地完成部分功能模块(用例)的实现,而不能只是完成像仅仅数据库设计、或某一层类设计、或测试等工作]
4 个人总结
学号 | 姓名 | ||
工作总结: |
学号 | 姓名 | ||
工作总结: |
学号 | 姓名 | ||
工作总结: |
学号 | 姓名 | ||
工作总结: |
5 小组自评评分
[经小组集体讨论,给小组每人一个评分,百分制]
学号: | 姓名 | 评分 | |||
学号: | 姓名 | 评分 | |||
学号: | 姓名 | 评分 | |||
学号: | 姓名 | 评分 |