软件概要设计书.docx
《软件概要设计书.docx》由会员分享,可在线阅读,更多相关《软件概要设计书.docx(12页珍藏版)》请在冰豆网上搜索。
软件概要设计书
上海中移通信技术工程有限公司
文档编号:
概要设计书
编写:
审核:
批准:
日期:
日期:
日期:
变更记录
版本
文件内容描述
日期
编写
审核
批准
目录
1概述5
2编写目的5
2.1适用范围5
2.2读者对象5
2.3术语和缩写5
2.4参考资料6
2.5设计概述6
2.6设计约束6
2.7设计策略6
2.8技术实现7
3系统概述7
4系统总体结构7
4.1平台架构7
4.2功能架构8
5模块8
5.1模块18
5.1.1子模块19
5.1.2子模块29
5.2模块210
5.2.1子模块110
5.2.2子模块210
6开发复用分析10
7代码检查分析10
8系统集成设计10
8.1模块间的关系图10
8.2集成一览表11
8.3集成方法12
8.4集成环境和集成顺序12
8.5集成描述13
8.5.1内部接口113
8.5.2内部接口213
9外部接口13
9.1外部接口114
9.2外部接口214
10运行环境14
10.1软件平台14
10.2硬件平台15
11非功能需求设计15
11.1系统备份设计15
11.2系统容错设计15
11.3系统性能设计15
12设计约定15
13待解决问题16
概述
<注意:
●所有的正文使用正文格式;
●每段的首行都使用Tab键缩进,不要使用空格进行缩进;
●建议所有的文档编写者完成文档修改后,需要完成以下工作:
确定当前版本、修改版本历史、更新目录、更新页眉、检查文档封面;
●文档中编号的建议:
本文档中基本上将标题都进行了编号,标题类的都使用数字型的分级编号;若在3级分级编号中,还需要再分级,请使用符号编号,符号统一使用“”;
●关于文件名命名问题:
在《配置项标识规范》发布前(发布后,按照此规范要求命名),为了便于历史记录和查找,建议可以先按照以下方式命名:
✧提交小组文档:
文档名称+“_”+“日期简称”;
✧正式发布文档:
文档名称+“V”+版本号。
>
编写目的
<此处填写本文档的目的>
<例如:
XXX项目的目的是:
根据《XXX需求规格说明书》进行功能和体系结构分析设计>
适用范围
<此处填写本文档的适用范围>
<例如:
适用于XXX项目的系统分析和设计过程>
读者对象
<此处填写本文档的读者对象>
术语和缩写
<此处填写本文档中所特有的术语和缩写,常用的术语和缩写统一编写在一个规范文档中>
术语和缩写
解释
备注
参考资料
<此处填写本文档的参考资料>
参考文件
备注
例如:
《XXXX需求规格说明书》
设计概述
<填写设计的概要,包括对各种所使用的设计方法的简要描述>
设计约束
<包括
(1)需求约束。
从需求文档(如《用户需求说明书》和《软件需求规格说明书》)中提取需求约束,例如:
本系统应当遵循的标准或规范
软件、硬件环境(包括运行环境和开发环境)的约束
接口/协议的约束
用户界面的约束
软件质量的约束,如正确性、健壮性、可靠性、效率(性能)、易用性、清晰性、安全性、可扩展性、兼容性、可移植性等等。
(2)隐含约束。
有一些假设或依赖并没有在需求文档中明确指出,但可能会对系统设计产生影响,应当尽可能地在此处说明。
例如对用户教育程度、计算机技能的一些假设或依赖,对支撑本系统的软件硬件的假设或依赖等。
>
<举例:
参照《人力资源_需求规格说明书》,并结合项目的实际情况,系统设计需满足如下约束条件:
1、人力资源系统是B/S构架软件,系统对软硬件环境约束具体内容参见“运行环境”部分。
2、用户界面设计需符合界面清晰、美观,易于操作的设计原则。
4、人力资源系统提供了数据导出及统计分析功能,对系统的安全性、正确性、健壮性、可靠性、易用性、可扩展性等软件质量要求很高,因此系统设计需满足以上软件质量的要求。
5、人力资源系统的用户为公司员工,系统设计时要充分考虑系统操作的便捷性,做到信息提示准确、易于理解,操作方便。
6、系统涉及员工薪资、绩效考核等敏感信息,系统的安全性要求很高,需要着重考虑安全的设计。
>
设计策略
<根据产品的需求与发展战略,确定设计策略(DesignStrategy)。
例如:
✧扩展策略。
说明为了方便本系统在将来扩展功能,现在有什么措施。
✧复用策略。
说明本系统在当前以及将来的复用策略。
✧折衷策略。
说明当两个目标难以同时优化时如何折衷,例如“时-空”效率折衷,复杂性与实用性折衷。
>
<举例:
1.扩展策略
系统的软件设计应采用模块化体系结构,新功能的引入不影响原有的功能模块,具有良好的可扩展性。
2.复用策略
信息查询、统计汇总设计考虑部分通用化设计,便于复用。
3.安全性
人力资源系统中涉及到人事、薪资等敏感信息,系统应具备统一、完善的多级安全机制,以保证系统的安全性。
4.易用性
系统应提供友好的操作界面,便于用户的操作和管理。
5.灵活性
在人事管理中,业务本身具有较多的灵活性,在系统设计时,设计上要充分考虑到灵活性。
>
技术实现
<本系统所采用的技术以及该技术的说明>
<如:
人力资源系统采用B/S构架。
MicrosoftVisualStudio.NET在开发WEB用户界面上有着快速、方便的优势。
因此系统采用的技术构架基于Microsoft.NETFramework2.0,开发环境采用MicrosoftVisualStudio2005。
公司内部信息平台的后台数据库是Oracle,考虑到数据维护的方便性,以及内部信息平台和人力资源系统之间用户认证数据的同步需要,后台数据库选用Oracle。
>
系统概述
<说明本系统“是什么”,描述本系统的主要功能>
系统总体结构
平台架构
<描述系统的平台架构设计,如主机、网络等>
<如果系统使用的主机较少,可直接在此说明。
如果系统使用的主机多于2台,则在《系统平台设计说明书》中详细描述,此处直接参见《系统平台设计说明书》即可。
>
功能架构
<将系统分解为若干模块,绘制功能逻辑图,说明各模块的主要功能,各模块如何协调工作,从而实现原系统的功能。
可以用功能逻辑图表示。
>
<建议分层描述本系统功能模块,功能模块可包含面向用户需求的功能模块,也可包含面向实现的功能模块(如实现数据库的通用访问等),层次建议两到三层。
功能逻辑图例样:
<也可以使用visio画图,此处直接参见>
包结构图和列表
<开发包的层次结构图,并描述每个包定义的范围>
.......................................
模块
模块1
<将模块分解为子模块,说明各子模块的主要功能。
说明各模块如何协调工作,从而实现该模块的功能。
>
子模块1
<对子模块1的功能,技术实现,逻辑处理及对应的数据库表的说明>
子模块2
<对子模块2的功能,技术实现,逻辑处理及相关的表说明>
模块2
子模块1
子模块2
开发复用分析
<请在本处描述需要重新开发或是复用的列表>
模块名称
开发复用
权限管理模块
开发
用户管理
复用
代码检查分析
<请在本处描述需要代码检查的模块名称和代码检查的方法列表>
模块名称
检查方法
权限管理模块
代码走查
用户管理
单元测试
接口设计
<在此处描述本系统内部或与外部系统的接口说明>
内部接口
<举例:
接口1:
OA单点登录接口
登录OA门户后的用户,可直接访问本系统。
OA接口模块主要实现用户身份验证、用户信息初始化功能。
当用户在OA系统点击了本系统的超链时,加载用户验证接口,验证通过后自动进入本系统首页。
用户验证接口,主要实现:
1、取出OA系统传入的用户名信息,访问OA系统后台数据库中的用户登录信息表,验证用户身份。
验证不通过,显示出错提示页面,不能进入本系统首页。
2、验证通过:
根据用户名,访问本系统的用户表,取出本系统的用户ID、用户角色、用户权限等信息。
如果用户信息验证通过,但系统不存在该用户的个人基本信息,则初始化该用户的角色为“访客”角色。
>
外部接口
<举例:
OA的用户表和本系统的用户表之间保持同步,同步程序每天定时运行。
1、同步程序检查本系统的用户表和OA中的用户表,如果OA中有用户但本系统存在,则插入一条记录到用户表中。
同时检测该用户是否存在个人基本信息,如果存在,初始化分配该用户的角色为“员工”。
2、同步程序检查本系统的用户表和OA中的用户表,如果用户在OA中不存在,但在本系统存在,则删除本系统中的用户记录和用户角色记录。
>
运行环境
<系统实际运行时需要的环境:
包括软件和硬件>
软件平台
<举例:
WEB服务器:
●操作系统:
MicrosoftWindows2003企业版/服务器版
●应用框架:
Microsoft.NETFramework2.0
DB服务器:
●操作系统:
MicrosoftWindows2000/2003企业版/服务器版
●数据库:
ORACLE9i
客户端:
●操作系统:
MicrosoftWindows2000/XP;
●浏览器:
MicrosoftInternetExplorer6.0及以上>
硬件平台
<举例:
WEB服务器建议最低配置:
●CPU:
2×2.8G;内存:
4G;硬盘:
2*36G
DB服务器建议最低配置:
●CPU:
2×2.8G;内存:
4G;硬盘:
2*36G
客户端建议最低配置:
●CPU:
1G;内存:
256M;硬盘:
剩余1G>
非功能需求设计
系统备份设计
<请在此处描述本系统的备份设计,包括备份范围、备份工具、备份方式、备份频度(如每周一次,每天一次)、备份文件保留时间、备份存放的地点。
>
<举例:
采用系统自动备份的方法进行定时数据备份。
每天22:
00定时进行数据全备份,备份文件保留一个月。
>
系统容错设计
<请在此处描述本系统的容错设计。
>
<举例:
该系统有大量的数据导入、导出及统计分析功能,故对数据的准确性有严格的要求,在考虑系统容错时首先考虑保证系统数据的准确性。
尽量将错误限制在数据提交给服务器之前,并严格控制用户对数据库的存储操作,如果有不正确操作时,系统需要提供用户错误的原因的提醒信息。
>
系统性能设计
<请在此处描述本系统的系能设计。
>
如果使用缓存,需要描述缓存的数据结构
如果异步队列,队列的结构和队列的存取方式
如果使用负载均衡等技术,详细说明实现方式