概要设计说明书
【阐明编写概要设计说明书的目的,指明读者对象。】
本文档的编写目的是根据项目需求说明书,阐述系统结构,数据定义,接口设计等内容…【展开补充】
应包括
● 项目的委托单位、开发单位和主管部门
● 该软件系统与其他系统的关系。
列出本文档中所用到的专门术语的定义和缩写词的愿意。
● 列出这些资料的作者、标题、编号、发表日期、出版单位或资料来源
●项目经核准的计划任务书、合同或上级机关的批文;项目开发计划;需求规格说明书;测试计划(初稿);用户操作手册
● 文档所引用的资料、采用的标准或规范。
【系统目标的描述,系统将要为用户提供什么样的服务,将文字补充丰富】
系统将为三种角色用户提供服务,分别是老师、管理员、学生。将系统需要的功能按照三种角色要求可归纳为下图的功能结构图:
在上面的功能结构图中,其中老师模块实现的功能包括:
l 教师可以进入系统修改自己的资料。
l 教师可查看别的老师申报的课题。
l 教师可以申报毕设课题。
l 教师可以筛选学生填报的本人的志愿。
管理员模块的功能:
l 管理员可以进入系统审核教师申报的课题,并且将审核通过的课题向学生开放,将审核未过的课题退回教师重新修改。
l 在教师学生互选过程进行到一定时间阶段,管理员可以将未选课题和未定题学生进行随机匹配。
l 管理员可以对选题结果进行统计生成报表,并将报表通过教务系统开放接口提交。
学生模块的功能:
l 学生可以进入系统浏览搜索查看已向学生开放的课题。
l 学生可以选择专业对口的课题进行收藏。
l 学生可以从收藏的课题中填报10个课题志愿。
l 学生可以查看选题状态和结果。
【用例分析的结果(用例图和用例描述)】
根据上面需要实现的系统目标,可以画出以下用例图表达:
对用例图中各业务用例,说明如下:
l 目标
本用例的目标是由教师填写课题相关信息申报课题。
l 事件流
教师申报课题的基本业务流程如下:
1) 由教师填写课题资料,资料包括:课题编号、课题名称、课题类型、课题面向专业、课题工作内容、课题对学生要求。
2) 教师提交课题,通过数据验证后,将合格的课题提交到课题数据库(数据文件)中,将验证不合格课题返回修改。
3) 向用户输出提示信息现实操作结果。
l 特殊需求
本操作必须由教师身份的用户执行。
l 前置条件
操作之前,教师必须使用用户名密码登录。
l 后置条件
l 目标
本用例由教师选择自己所出课题的毕设学生。
l 事件流
教师筛选志愿的基本业务流程如下:
1) 教师查看所属课题的志愿选择状态和统计,包括:每个课题的当前状态(开放和关闭),选择当前课题的所有志愿,选择当前课题的学生状态。
2) 教师从选择课题的志愿中,选取一个状态为尚未定题的学生,确定其为当前课题选题人。
3) 将课题与选题人提交,写入数据库(数据文件)。
4) 修改课题状态为已选关闭,修改填写本课题的其它志愿状态为落选。
5) 修改本课题选题人的当前志愿为中选,修改选题人的其它志愿为自动取消。
l 特殊需求
本操作必须由教师身份的用户执行。
l 前置条件
操作之前,教师必须使用用户名密码登录。
筛选志愿的课题必须处于开放状态。
被选学生必须填报了该课题志愿,并且学生状态为未选定课题。
l 后置条件
根据用例分析中系统功能需求,系统整体业务流程如下(活动图):【根据用例分析中的功能需求,组织我们的业务流程】
系统业务分成三个模块实现,如下图(包图)所示:
根据教师模块功能,教师模块所包含的类有:
教师类
教师记录操作
教师申报界面类(对应的需求说明中界面流程设计)
教师筛选界面类
类图:
模块主要业务描述(时序图或活动图)
类抽象
类图
管理员模块的主要业务:(时序图,或者活动图)
【对模块的设计进行整合】
系统类的抽象
类图的优化合并
各功能操作类根据层次原则组成整体系统结构。
【从垂直方向将系统结构按照功能划分,然后在水平方向按照层次结构合并和组合同一层次的模块(包)或类,形成一个垂直划分和水平划分相结合的体系结构。】
【可以是一个包图,由于设计时分的不够详细,用方框表示】
从需求说明书中表态数据、动态数据、数据词典形成规范的数据结构设计
l 表结构
数据库的定义规则
教师表(Teachers)
学生表(STUDENTS)
l 数据文件
1) 教师信息文件
工号,姓名,学院,系,专业,教授课程;
00001111,张三,信息学院,电子信息,软件工程;
00001112,李四,建设学院,土木工程,桥梁;
2) 学生信息文件
3) 管理员文件
4) 课题文件
5) 志愿文件
数据文件名:ini配置格式
[配置节]
配置项名=配置项值
Xml
1) 教师信息文件
<teachers>
<teacher>
<tid/>
<name/>
<college/>
<depart/>
<courses/>
</teacher>
<teacher>
<tid/>
<name/>
<college/>
<depart/>
<courses/>
</teacher>
</teachers>
2) 学生信息文件
3) 管理员文件
4) 课题文件
5) 志愿文件
ini配置文件
[节点]
key = value
l 动态数据
https://
动态交易密钥
【包括用户界面、软件接口与硬件接口。】
与教务系统提交选题统计报表
写明如何使用此外部接口
由系统整体结构图(系统类图)从垂直或水平方向的模块划分来设计模块。
1) 课题申报
+/-/# int ProjectApply(string prjname, string prjmajor, string prjdesc, string prjdemand …)
u 输入
参数分析
u 输出
返回结果
u 处理
处理流程,复杂业务可使用时序图
u 约束
2) 志愿筛选
int AppSelect(string ,int ,….)
u 输入
参数分析
u 输出
返回结果
u 处理
处理流程,复杂业务可使用时序图
u 约束
做课题类分析时,可以为课题类建立状态图。
1) 课题添加
int Add (….)
u 输入
参数分析
u 输出
返回结果
u 处理
处理流程,复杂业务可使用时序图
u 约束
2) 课题开放
int Open(username, projectid)
u 输入
参数分析
u 输出
返回结果
u 处理
处理流程,复杂业务可使用时序图
u 约束
3) 课题关闭
int Close()
u 输入
参数分析
u 输出
返回结果
u 处理
处理流程,复杂业务可使用时序图
u 约束
组件图做组件设计
【描述保障系统安全的方法,从防止非授权访问,防止数据泄露,防止攻击,防止灾难性后果等方面】
登录/权限
备份恢复
说明为方便维护工作的设施,如维护模块等。
补丁升级策略
远程协助/远程登录管理
《系统概要设计说明书》模板
写作要点:
1. 1.1编写目的:描述这份软件系统概要设计报告是基于哪份软件产品需求规格说明书编
写的,开发这个软件产品意义、作用、以及最终要达到的意图。注意,如果这份软件系统概要设计报告只与整个系统的某一部分有关系,那么只定义软件系统概要设计报告中说明的那个部分或子系统。
答:概要设计说明书根据公交运营调度系统需求说明书编制,目的是实现系统的总体设计,明确系统的总体结构和数据结构,即划分出系统的功能模块,
设计出系统的数据库数据结构,为下一步的对每个模块进行设计的详细设计工作提供依据,同时为系统的测试、修改和维护提供依据。
2. 1.2预期读者和阅读建议:列举本软件系统概要设计报告所针对的各种不同的预期读者,
描述文档中,其余部分的内容及其组织结构,并且针对每一类读者提出最适合的文档阅读建议。
3. 1.3参考资料:列举编写软件产品概要设计报告时所用到的项目中的其他文档或资料。
注意,为了方便读者查阅,所有参考资料应该按一定顺排列,尽可能详细的提供资料的信息,比如标题、版本。
4. 术语与缩略语:描述在本文使用的独特的术语、定义和缩略语。注意不是整个项目共用
的术语、定义和缩略语,并且缩略语列表中必须按照滋补的升序排列。
5. 2.1限制和约束:简要描述起到限制和约束作用的各种可能存在的条件,并且说明在这
些条件下,应该实现的系统目标。这些条件可能包括:技术条件、资金状况、开发环境、时间限制。
6. 2.2设计原则和设计要求:描述设计人员的进行概要设计的方法和决策,通常包括:命名
规则、模块独立性原则、边界设计原则、数据库设计规则、安全性和保密原则、系统易操作性要求、系统可维护性要求。
7. 3系统的软件架构:描述如何将系统分解为子系统,绘制逻辑图,并用文字说明子系统
的主要功能和子系统间是如何协调工作的。注意,在描述系统分解为子系统共的时候要给出分解的原因。列举子系统时,可以使用下表
? 子系统编号 给出本系统中指定子系统的顺序编号:如果本系统末划分为多个子系统,仅由一
个运行模块组成;则本项内容仍需要描述,但是本表内容只有一行。
? 子系统英文名称
给出本子系统的英文名称,该名称是在应用软件中实际使用的可执行文件名称,
必须能够说明该子系统的特点。
?
? 子系统中文名称 给出本子系统的中文名称,该名称必须能够说明该子系统的特点。 业务职能
描述该子系统完成的核心业务。
8. 4子系统过的结构和模块功能:描述如何将子系统分解为模块,绘制逻辑图,并用文字
说明模块的主要功能和模块间是如何协调工作的。注意,在描述子系统分解为模块的时候要给出分解的原因。列举模块时,可以使用下表。
9. 5.1接口设计:描述个模块之间的接口。可使用下表:
?
?
? 接口类型 接口性质 相关对象 指出该接口所传输的数据在该模块中起到的作用。 指出该接口在通讯中起到的作用,可以是输入、输出、双向。
给出直接使用本接口的系统对象,这里的系统对象,可以是操作界面,也可以是系统特性
10. 5.2.1结构设计:包括概念结构设计、逻辑结构设计和物理结构设计。
? 概念结构设计:说明本数据库将反映的现实世界中的实体、属性和它们之间的关系等
的原始数据形式,包括各数据项、记录、系、文卷的标识符、定义、类型、度量单位
和值域,建立本数据库的每一幅用户视图。
? 逻辑结构设计:说明把上述原始数据进行分解、合并后重新组织起来的数据库全局逻
辑结构,包括所确定的关键字和属性、重新确定的记录结构和文卷结构、所建立的各个文卷之间的相互关系,形成本数据库的数据库管理员视图。
? 物理结构设计:建立系统程序员视图,包括:数据在内存中的安排,包括对索引区、
缓冲区的设计;所使用的外存设备及外存空间的组织、包括索引区、数据块的组织与划分;访问数据的方式方法。
11. 5.2.2运用设计:包括数据字典设计和安全保密设计。
? 对数据库设计中涉及到的各种项目,如数据项、记录、系、文卷、模式、子模式等一
般要建立起数据字典,以说明它们的标识符、同义名及有关信息。在本节中要说明对此数据字典设计的基本考虑。
? 说明在数据库的设计中,将如何通过区分不同的访问者、不同的访问类型和不同的数
据对象,进行分别对待而获得的数据库安全保密的设计考虑。
12. 6难点及解决方案:列出可能的疑难问题,并尽可能能给出基本解决思路。
13. 7文档历史:使用下表。
概要设计说明书编写规范概要设计说明书一引言1编写目的从该阶段开发正式进入软件的实际开发阶段本阶段完成系统的大致设计并明确系统的数据…
概要设计说明书1引言11编写目的阐明编写概要设计说明书的目的指明读者对象本文档的编写目的是根据项目需求说明书阐述系统结构数据定义接…
XXX项目概要设计说明书XXX项目概要设计说明书公司实施部门项目经理生效日期总7页第1页文档编号XXX项目概要设计说明书目录1编制…
北京华安通联信息技术有限公司HATL文档编号编写审核批准软件概要设计说明书模板V10HATLSDS20xx001文档名称软件概要设…
概要设计说明书实例概要设计说明书一引言1编写目的从该阶段开发正式进入软件的实际开发阶段本阶段完成系统的大致设计并明确系统的数据结构…
实验报告课程名称软件工程导论课题名称图书管理系统概要设计报告专业计算机科学与技术班级学号20xx030103姓名大蚊子指导教师张铁…
lt项目名称gt系统概要设计报告版本lt11gt注以下提供的模板用于有限公司CMMI标准的模版其中用尖括号括起来并以蓝色显示的文本…
目录1引言11编写目的12项目背景13定义14参考资料2任务概述21目标22运行环境23需求概述24条件与限制31处理流程32总体…
XXX系统概要设计V10Enter软件公司评审日期年月日软件XXX系统概要设计XXX目录1导言311目的312范围313缩写说明3…
lt项目名称gt系统概要设计报告版本lt11gt注以下提供的模板用于有限公司CMMI标准的模版其中用尖括号括起来并以蓝色显示的文本…
概要设计说明书编写规范概要设计说明书一引言1编写目的从该阶段开发正式进入软件的实际开发阶段本阶段完成系统的大致设计并明确系统的数据…