软件系统设计报告Word文件下载.docx
《软件系统设计报告Word文件下载.docx》由会员分享,可在线阅读,更多相关《软件系统设计报告Word文件下载.docx(15页珍藏版)》请在冰豆网上搜索。
定义重要的术语、缩写词或缩略语;
缩略语、术语
全称、解释
表格2–缩略语
2.系统概述
主要从系统需求的角度,描述系统;
描述的输入是用户需求(式样)。
2.1系统部署图
给出系统部署图,并进行简要说明。
使用Visio描画,表示方法参见图例。
图例参见:
例图如下:
图1–系统部署图
下面应该对部署图进行说明。
2.2硬件环境
描述系统的硬件环境:
以及对系统有影响的关键硬件信息。
硬件名称
基本要求
推荐配置
CPU
1GPentium
1.6GPentium
硬盘
20G
40G
内存
512M
1G
显卡
显示器
其它
表格4–系统关键硬件信息
2.3软件环境
描述系统的软件环境:
OS、以及对系统正常工作提供支持的所有软件对象(如3D的插件等);
以及使用到的第三方接口。
2.3.1OS环境
说明操作系统及其版本号。
系统名称
版本号
提供商
表格5–OS环境
2.3.2依赖软件
说明依赖软件、组件、服务信息。
软件名称
备注
表格6–依赖软件
2.3.3开发环境
说明开发工具等信息。
使用语言
VisualS
2005
C++
Microsoft
表格7–开发环境
2.4系统安装
描述对系统安装方法/方式的考虑,如提供那些安装方法/方式。
2.5系统启动
描述系统启动的操作步骤。
2.6系统退出
描述系统退出的操作步骤。
3.关键技术
描述采用的新技术、新的技术方向(如VOIP),以及可能带来的风险或技术难点。
先应该描述技术点(表)和关键算法(表)。
然后对每个技术点和算法进行描述。
技术点列表如下:
技术点略称
状态
No.1
XXX1
No.2
XXX2
表格8–技术点列表
状态包括:
掌握、了解、了解中;
用于跟踪是否存在风险。
关键算法列表如下:
算法略称
YYY1
YYY2
表格9–关键算法列表
3.1技术点描述
逐个对技术点进行描述。
描述每个技术点的内容、解决方法、状态等。
3.1.1XXX1技术点
3.1.2XXX2技术点
3.2关键算法描述
逐个对关键算法进行描述。
对每个算法进行详细说明。
3.2.1YYY1关键算法
3.2.2YYY2关键算法
4.结构设计
4.1软件架构图
描述系统的软件架构图,并对图中的模块进行说明。
使用UML的包图或Visio图描述软件架构图,软件架构图的描述方法参照图例。
软件架构图主要体现系统的内部架构,及及外部的关系。
内部重点描述模块组成(层次)关系,对于小系统,一般架构图就可以描述全部模块的关系,因此也就不需要后续的模块关系图。
如果系统比较大,此处可以只画出系统中的一级模块,更详细的结构在后面的模块关系图中描述。
及外部的关系,主要表达及那些外部对象进行交互,以及如何及外部进行交互的。
例图如下:
图2–软件架构图
以下对软件架构图进行描述。
4.2模块关系图
请画出模块关系图。
使用包图描述,模块关系图的描述方法参照软件架构图的图例。
模块关系图主要体现系统的内部架构。
重点描述模块组成(层次)关系,对于小系统,一般架构图就可以描述全部模块的关系,因此也就不需要模块关系图。
根据需要,模块关系图中的某个(些)模块还可以放大,进行更进一步的描述。
4.3模块功能说明
请参照模块关系图,将各个模块功能进行详细说明。
如,
No
模块名称
概述
Interface
此模块主要负责对xml文件进行修改,添加命令行,以及执行xml文件等操作
Navigator
负责xml命令的解析及执行
3
Control
脚本API的功能实现模块,被Navigator模块调用
4
5
6
7
8
9
10
11
4.4系统的初始化、退出描述
请使用时序图描述系统初始化、退出的处理过程。
使用Rose或Visio描述时序图,描述方法参照图例。
时序图的对象应该是对象或者模块。
系统初始化时序图的一个例子如下:
图5–系统初始化时序
系统退出的时序图如下:
图6–系统退出时序
4.5系统状态图
描述系统的状态图。
状态图描述方法参照图例。
不是所有系统都有状态图,但对于有明显状态变化的系统(例如复杂的画面迁移)需要描述状态图。
如果状态图不足以描述,可以增加状态迁移表进行补充。
图8–系统状态图
状态图说明列表:
From
To
事件
行为
Start
WaitInit
APPMgr启动
如FCPMgr通讯正常,每隔10秒要一次初始化信息。
Normal
接收到
FCPInit包
根据屏幕初始化设备信息、初始化AppCtrl和MsgBoxCtrl、启动ADMgr、RollMgr。
向应用派发状态改变事件。
表格12–状态迁移表
5.并发设计
5.1线程结构
描述线程的组成、线程之间的关系、线程及模块关系。
使用线程关系图描述线程关系、通过模块线程关系图描述线程的部署。
1.线程组成:
通过线程列表,对线程的职责、生命周期进行说明;
No.
线程名
职责
生命周期
Aca1
….
全局
Aca2
Aca4
表格14–线程列表
2.线程关系。
图9–线程关系图
3.线程及模块关系。
图10–线程及模块关系图
需要使用文字描述线程及模块的关系,一个模块有那个(些)线程。
如Aca1模块中有Aca1线程、Aca2模块中有Aca2线程、Aca5模块中有Aca5线程。
6.模块内设计
识别出模块的数据结构----Class,以及Class之间的关系,并根据需要,描述状态转化图、算法描述、主要数据结构等关键技术细节。
6.1XX模块设计
6.1.1类的关系图
请描述类图,描述方法参见图例:
图13–XX模块类关系图
6.1.2类的说明
将类图提及的类的功能进行说明。
ClassList
ClassName
Description
MForm
生成初始运行界面
CFindDlg
查找类(起到查找字符串功能)
CAboutBox
用于显示About对话框
CStringTable
备用
CSettingsDlg
6.1.3接口说明
列出子模块对外的宏定义、类型定义、枚举定义、结构体和联合体定义。
说明子模块对外的函数。
Ø
XXX接口
InterFaceSpecification
Name
CopyBuild()
InterfaceDescription
从上下载脚本中指定的parttype版本目录到指定目录下。
Prototype
COPYBUILD_EXPORTboolCopyBuild(constTCHAR*buildScript,constTCHAR*partType,constTCHAR*installType,constTCHAR*,constTCHAR*destination)
ParameterList
Type
I/O
buildScript
constTCHAR*
I
Build脚本的路径。
partType
partType类型对应的值,如-1(ANY)
installType
InstallType类型对应的值。
的路径。
destination
复制的目标路径。
ReturnValue
Value
true
复制成功。
false
复制失败,如ini文件总没有相关信息,路径错误等。
6.1.4算法描述
描述出模块内的关键算法。
如该算法是系统的核心算法,可以在系统核心算法中描述。
如模块内容没有算法,则本节可以不进行描述。
6.2YY模块设计
…..