《软件项目管理概要设计说明书》由会员分享,可在线阅读,更多相关《软件项目管理概要设计说明书(26页珍藏版)》请在金锄头文库上搜索。
1、概要设计说明书1导言1.1 目的本文档的目旨在推动软件工程的规范化,对本系统的业务流程、软件架构、功能模块设计、数据库设计、接口设计等做了分析和说明,使设计人员遵循统一的软件设计规范,降低系统实现的风险,做到系统设计文档的规范性与全面性,以利于整个系统的实现、测试、维护等。1.2 范围本文档用于软件设计阶段的概要设计,它的依据的基线是需求分析规格书 ,它的下游是详细设计说明书 ,并为详细设计说明书提供测试的依据。软件概要设计的范围是:软件系统业务流程分析、总体结构设计、全局数据库和数据结构设计、外部接口设计、主要部件功能分配设计、部件之间的接口设计等方面的内容。该范围应覆盖需求规格说明书中的功
2、能点列表、性能点列表。1.3 命名规则1.3.1 变量对象命名规则:1、局部变量:采用驼峰式命名规则,第一单词全小写,其他单词首字母大写。例如:userName。2、全局变量:首字母为大写的 P,后面与局部变量的命名一致。例如:PuserName。3、函数名:。采用驼峰式命名规则,第一单词全小写,其他单词首字母大写例如:addUser()。4、常量:所有字母均要小写。例如:name。5、类:首字母为大写的 C,其他的单词首字母都大写。例如:CUser。6、对象:与局部变量命名规则一致。例如:userOne。1.3.2 数据库对象命名规则:1、数据库表名:采用驼峰式命名规则。例如:cpInfo。
3、2、字段名:表名首字母小写加下划线加相应单词小写。若表名首字母相同的,则在字段名的前两个字母为表名的前两个字母小写。例如:u_name。3、索引名:“index_”加相应的名称。例如:index_name。4、视图名:首字母为大写的 V,后面加相应的名称。例如:Vpest。1.4 术语定义术语定义如表 1 所示。表 1 术语定义表序 号 术 语 名 称 术 语 定 义1 总体结构软件系统的总体逻辑结构。按照不同的设计方法,有不同的总体逻辑结构。若采用面向功能或面向数据的设计方法,则总体逻辑结构为一树形的功能模块结构图。若采用面向对象或面向部件(构件)的设计方法,则总体逻辑结构为部件(构件)的组
4、装图2 外部接口本软件系统与其他软件系统之间的接口,接口设施可以是中间件。接口描述包括:传输方式、带宽、数据结构、传输频率、传输量、传输协议3 数据结构 数据结构包括:数据库表的结构、其他数据结构等4 概念数据模型 CDM 关系数据库的逻辑设计模型,叫做概念数据模型。主要内容包括一张逻辑 E-R 图及其相应的数据字典5 物理数据模型 PDM 关系数据库的物理设计模型,叫做物理数据模型。主要内容包括一张物理表关系图及其相应的数据字典6 视图 在基表或其他视图之上建立的一张虚表,叫做视图,它具有物理表的许多性质,在数据处理和授权上很有用7 角色 数据库中享有某些特权操作的用户,叫做角色。角色的权利
5、通过授权来实现8 子系统具有相对独立功能的小系统叫做子系统。一个大的软件系统可以划分为多个子系统,每个子系统可由多个模块或多个部件组成9 模块 具有功能独立、能被调用的信息单元叫做模块。模块是结构化设计中的概念10 内部接口软件系统内部各子系统之间、各部件之间、各模板之间的接口,叫做内部接口。接口描述包括:调用方式、入口信息、出口信息等11 相关文件相关文件是指当本文件内容变更后,可能引起变更的其他文件。如需求分析报告、详细设计说明书、测试计划、用户手册12 参考资料 参考资料是指本文件书写时用到的其他资料。如各种有关规范、模板、标准、准则1.5 参考资料1 用户需求报告2 软件开发合同3 数
6、据库设计规范4 命名规范1.6 相关文档1 详细设计说明书2 源程序清单3 测试计划及报告4 用户使用手册2业务流程分析2.1 业务流程分析依据前面的需求分析说明书,我们从整个系统中提取了普通用户和管理员两实体(操作员) 。从用户和管理员两个角度对本系统的业务流程进行分析说明,绘制出如图 1 所示的业务流程图。用户管理员是 否 为会 员登录是否注册柑橘虫病诊断是游客是 否 为 新害 虫否给出相应的信息存储新害虫特征登录是 否 为管 理 员是否 警告是智能诊断新的害虫分析归类简单诊断是 否 符 合用 户 条 件否是浏览留言发表留言 回复留言用户信息修改浏览其他信息删除留言留言信息提取系统日常维护
7、是 否 有 新害 虫 信 息否一般性维护信息存储图 1 业务流程图 2.1.1系统的计算模式依据用户的要求和整个系统的特征,我们这个系统采用 B/S 的计算模式,如图 2 所示。图中符号说明:1、图中红色 实绩箭头为系统管理员所拥有的操作。2、图中蓝色虚线箭头为普通用 户不可操作,但要沿箭 头方向 传送数据。3、图中黑色虚线方框表示需要人工 处理过程。W E B 服 务 器数 据 库 服 务 器数 据 存 储管 理 员多 个 用 户 工 作 站图 2 柑橘虫害专家系统计算模式2.1.2 用户操作流程首先,用户要先注册登录,或以游客的身份登录本网站。登录后可以进行浏览本站内的信息、柑橘虫害诊断、
8、浏览用户的留言信息、发表或回复留言、修改用户的基本信息(游客不拥有后面两项操作权限)等操作。如果这些链接满足用户的要求条件,则系统进行查询给出相应的信息;反之则进行智能诊断操作,这要求用户输入一些柑橘害虫的描述。这里系统给用户的信息包括这些柑橘害虫的信息、柑橘虫病的信息以及害虫天敌的信息。系统根据用户给出的描述判断时运是否为数据库中没有存在的新害虫的特征描述。若数据库存在这种害虫特征,则给出相应信息;若没有,则存储这些新特征,由系统管理员来做下一步的处理。在用户诊断柑橘虫害后也可以进行浏览、发表或回复相关主题的留言。2.1.2 管理员操作流程同样管理员只有登录后才能进行相应的操作。浏览用户留言
9、信息、发表新留言、回复用户留言、删除用户留言、从用户留言中提取出有关柑橘虫害的息、系统的日常维护。系统的日常维护包括系统的一般性维护和对用户提交的新害虫的特征的管理。一旦发现有用户提交了新的害虫的信息,管理员要组织相关的专家对这些信息进行分析归类,将分析的结果存储到数据库中,以便用户的下次的查询。2.2 系统各模块时序图2.2.1 用户信息管理模块时序图,如下图3所示图 3 用户信息处理时序图摘要:用户注册、专家注册用户时,用户信息表单将注册信息提交给用户信息控制者,用户信息控制者再将注册信息保存到系统。用户登录时,用户信息表单将登录信息提交给用户信息控制者,用户信息控制者从系统读取信息进行验
10、证,并返回登录结果。登录后的用户修改信息时用户信息表单将修改后的信息提交给用户信息控制者,用户信息控制者再将信息保存到系统。管理员浏览用户时,用户信息表单向用户信息控制者提出请求,用户信息控制者从系统读出已有用户信息,用户信息表单将返回的用户信息显示出来。管理员对已有用户的信息进行修改时,用户信息表单将修改后的信息提交到用户信息控制者,用户信息控制再保存到系统。用户信息表单的方法:提交用户信息 submitUserInfo(),请求用户信息requestUserInfo,提交编辑用户信息 submitEditUserInfo(),显示注册结果showRegistResult()显示登录结果 s
11、howLoginResult(),显示删除结果showDeleteResult(),显示用户信息 showUserInfo()。用户信息控制者的方法:保存用户信息 saveUserInfo(),提交登录信息submitUserInfo(),保存用户信息 saveUserInfo(),请求用户信息requestUserInfo(),提交删除用户信息 submitDeleteUserInfo()。用户的方法:注册 regist (),登录 login(),浏览个人信息 scan(),编辑个人信息 editUserInfo()。专家的方法:注册 regist (),登录 login(),浏览个人信息
12、 scan(),编辑个人信息 editUserInfo()。管理员的方法:登录 login(),浏览用户 scan(),删除用户 delete()。界定分析:边界类:用户信息表单类。用户信息表单为系统与用户交互的图形界面,故为边界类。控制类:用户信息控制者。用户信息控制者负责系统的功能实现,故为控制类。实体类:用户、专家、管理员。2.2.2 柑橘虫病信息管理模块时序图,如图 4 所示。图 4 柑橘虫病信息管理模块时序图摘要:用户或管理员浏览虫害病信息时,虫害病信息控制表单将请求浏览的种类发送给虫害病信息控制者,虫害病信息控制者从系统读取要浏览的数据返回给虫害病信息表单,虫害病信息表单将其显示出
13、来。管理员编辑虫害病信息时,虫害病信息表单将编辑的信息发送给虫害病信息控制者,虫害病信息控制者再保存到系统,并返回保存结果。虫害病信息表单的方法:请求虫害病信息 requestCpdInfo(),提交虫病信息 submitCpdInfo(),显示虫害病信息 showCpdInfo(),显示编辑结果showEditResult()。虫害病信息控制者的方法:请求虫害病信息 requestCpdInfo(),提交新的虫病信息 submitCpdInfo() 。用户:浏览 scan()。管理员:浏览 scan(),编辑虫害病信息 editCpdInfo()。界定分析:边界类:虫害病信息表单。虫害病信息
14、表单为系统与用户交互的图形界面,故为边界类。控制类:虫害病信息控制者。虫害病信息控制者负责系统的功能实现,故为控制类。实体类:用户、管理员。2.2.3 柑橘害虫信息管理模块时序图,如图 5 所示。图 5 柑橘害虫信息管理模块时序图摘要:用户或管理员浏览害虫信息时,害虫信息控制表单将请求的浏览发送给害虫信息控制者,害虫信息控制者从系统读取要浏览的数据返回给害虫信息表单,害虫信息表单将其显示出来。管理员编辑害虫信息时,害虫信息表单将编辑的信息发送给害虫信息控制者,害虫信息控制者再保存到系统,并返回保存结果。害虫信息表单的方法:请求害虫信息 requestCpInfo(),提交害虫信息submitC
15、pInfo(),显示害虫信息 showCpInfo(),显示保存结果 showSaveResult(),提交害虫与天敌匹配信息 submitLinkCpd()。害虫信息控制者的方法:请求害虫信息 requestPestsInfo(),保存害虫信息 saveCpInfo(),保存害虫与天敌匹配信息 saveLinkCpd()。用户:浏览 scan()。管理员:浏览 scan(),编辑害虫信息 editCpInfo(),linkCpd()。界定分析:边界类:害虫信息表单。害虫信息表单为系统与用户交互的图形界面,故为边界类。控制类:害虫信息控制者。害虫信息控制者负责系统的功能实现,故为控制类。实体类
16、:用户、管理员。2.2.4 天敌信息管理模块时序图,如图 6 所示。图 6 天敌信息管理模块时序图摘要:用户只能向天敌信息表单提出浏览查询柑橘害虫的天敌的基本信息的请求,天敌信息表单将这个请求发送给天敌信息控制者,控制类又将这请求发送给系统,系统将查询结果返回给控制者从而反馈给用户。而管理员可以向控制者发出浏览查询、编辑、与害虫的匹配处理、取消与害虫的匹配处理 4 个请求,控制者据请求的不同做出不同的信息判断并发送给系统,系统也将逐个返回信息。天敌信息表单的方法:请求天敌信息 requestEnemyInfo(),显示天敌信息showEnemyInfo(),提修改 submitEdit(),显示保存结果 showSaveResult(),提交天敌与害虫匹配信息 submitLinkPests(),显示天敌与害虫匹配信息showLinkPests(),提交取消天敌与害虫匹配关联 submitUnlinkPes