东北大学硕士学位论文 第二章 软件需求分析
正常使用时不应该出错,若运行是遇到不可恢复的系统错误,也必须保证数据库的完好无损。
2.6 性能需求
(1)数据精确度
查询时应保证查全率,所有相应域包含查询关键字的记录都应能查到。
查询时应保证查准率,查到的记录应与给定的单项或组合项查询条件完全匹配。 (2) 时间特性
一般操作的响应时间应在1~2秒内,对U盘和打印机的操作,以及数据的导入和导出也应在可接受的时间内完成。
2.7 软件属性需求
(1) 正确性:要求发布的软件达到用户的预期目标,运行时基本无错误。 (2) 可靠性:在一般条件下,应不出故障。
(3) 效率:对于浏览,查询,增加,删除,更新和密码设置的一般操作,要求及时响应,在1~2秒内。
(4) 易实用性:要求能尽量为用户的使用提供方便,软件界面符合目前流行的界面规范。
(5) 可维护性:要求本软件在运行中发现错误时,能快速,准确对其进行定位,诊断和修改。
(6) 可测试性:设计时尽可能减少测试本软件的各项功能所需要的工作量。 (7) 复用性:设计时尽可能采取模块化的方法进行设计,对系统内各模块接口尽可能达到高内聚,低耦合的程度,以提高各模块的复用性。
(8) 安全保密性:要求提供身份验证,只允许通过身份验证的用户使用本软件。对于三次密码输入不正确的,应强行关闭。
(9) 可理解性对于本软件提供的各种菜单命令,各种信息提示,应易于用户理解。 (10) 互联性:要求提供数据的导入和导出接口,以易于同其他系统的连接。
- 21 -
东北大学硕士学位论文 第三章 软件设计
第三章 软件设计
软件设计是在做好需求的基础上来完成的,具体是在本章完成两方面的工作,一方面是将软件需求的DFD图通过SD方法转换为SC图,即进行模块化设计或称为总体设计;另一方面是对每一模块进行详细设计即过程设计,这部分工作在这里使用的表达工具是PDL语言。
3.1 顶层软件设计
3.1.1 顶层结构化设计
[10][11]
顶层的SC图是软件系统的整体框架。在转换过程中对于用户名和密码进行合法性检查的二层DFD图2.3,它的类型是变换型,对于顶层的DFD图2.2,它的类型是事务型,通过SD方法建立了顶层SC图,如图3.1所示。
基于人事信息管理模糊评判系统的设计与实现 用户登记 1 读入用户名和密码1 1 3 3 用户判定3 身份验证2 2 退出系统21 超级用户31 一般用户32 用户管理311 系统维护312 人事信息管理313 3.1 顶层SC图
查询314 能力评价321 Figure 3.1 top layer SC chart
说明:1.用户名和密码;2.非法用户名或密码;3.合法用户名和密码 3.1.2 顶层SC图重要模块的过程设计 (1)2模块(身份验证)的过程设计
- 22 -
东北大学硕士学位论文 第三章 软件设计
for 每一读入的用户名和密码
Check 用户信息表
If 用户名和密码 与 用户信息表中相应信息吻合 Back 数据流 3
Else call 21模块退出系统
(2)3模块(用户判定)的过程设计 for 合法的用户名和密码
Check 用户信息表中对应该用户和密码的用户权限 If 用户权限是超级用户
Then call 31超级用户模块 Else call 32一般用户模块
(3)31模块(超级用户)的过程设计 For Each 用户功能选择
Case 用户管理: call 311用户管理模块 Case 系统维护: call 312系统维护模块
Case人事信息管理: call 313人事信息管理模块 Case 查询: call 314查询模块
(4)32模块(一般用户)的过程设计 Each function for the user choice
Case 查询: call 314用户管理模块 Case 能力评价: call 321能力评价模块
- 23 -
东北大学硕士学位论文 第三章 软件设计
3.2 用户管理层软件设计
3.2.1 用户管理层结构化设计
将图2.4按照SD方法转换为SC图,其数据流图的类型是事务型。转换后的SC图见图3.2。
用户管理311 添加用户3111 4 读数据31111 4 5 删除用户3112 4 5 修改用户3113 4 修改31131 添加31112 删除31121 图3.2 用户管理层SC图
Figure 3.2 user management SC chart
说明:4.用户名和密码;5.用户名
3.2.2 用户管理层SC图重要模块的过程设计
(1)311模块(用户管理)的过程设计 For Each 用户功能选择
Case 添加用户: call 3111用户管理模块 Case 删除用户: call 3112系统维护模块 Case修改: call 3113人事信息管理模块
(2)3111模块(添加用户)的过程设计
Call 31111模块 Read 用户信息(用户名和密码及权限) Call 31112模块 write用户信息添加到用户信息文件F1中 Return 上一级模块
(3)3112模块(删除用户)的过程设计
- 24 -
东北大学硕士学位论文 第三章 软件设计
Call 31111模块 Read 用户信息(用户名) Call 31121模块 从F1文件中delete 该用户信息 Return 上一级模块
(4)3113模块(修改用户)的过程设计 Call 31111模块 Read 用户信息(用户名) Call 31131模块 按读入的用户信息进行修改 Return 上一级模块
(5)31111模块(读用户信息)的过程设计 对调用此操作的功能进行判断
If addition或是update then type 用户名和密码及用户级别并存入变量x中 If delete then type用户名并存入变量x中 Return 上一级模块
(5)31121模块(删除用户)的过程设计 Open 用户信息表文件(F1) By x Check 相应用户 If find
then delete 该用户信息
else display 该用户不存在的信息并返回上一级菜单 Update F1文件 Close F1文件 Return 上一级模块
(6)31112模块(添加用户)的过程设计 Open 用户信息表文件(F1) Write x 到用户信息表文件(F1) Update F1文件 Close F1文件 Return 上一级模块
(7)31131模块(修改用户)的过程设计 Open 用户信息表文件(F1)
- 25 -