习 题
一、选择题(单选或多选)
(1)面向数据流的软件设计方法中,一般将信息流分为( )。
A.变换流和事务流
B.变换流和控制流
C.事务流和控制流
D.数据流和控制流
(2)采用模块化技术的好处有( )。
A.容易测试和调试
B.有助于提高软件的可靠性
C.提高可维护性
D.有助于软件开发工程的组织管理
(3)属于软件设计的基本原理的是( )。
A.数据流分析设计
B.模块规模应该适中
C.事务流分析设计
D.信息隐藏与局部化
(4)面向数据流的设计方法是把( )映射成软件结构。
A.控制结构
B.模块
C.信息流
D.数据对象
(5)软件总体结构设计,顶层扇出的上限是( )。
A.5~9个(https://www.daowen.com)
B.3~4
C.1~2个
D.9~12
二、简答题
(1)总体设计的主要目的和任务是什么?
(2)典型情况下,总体设计有哪几步?
(3)提高内聚性,降低耦合性有哪些准则可以借鉴?
(4)变换分析的步骤是什么?
(5)对总体设计得到的软件结构进行优化,有哪些注意事项?
三、应用题
(1)工资管理系统中的一个子系统有如下功能。
①由基本工资计算应扣除(如水电气费等)的部分;
②根据职工的出勤情况计算奖金;
③根据输入的扣除额及奖金计算工资总额;
④由总工资额计算应扣除税金。
⑤根据计算出总额模块和计算税金模块传递来的有关职工工资详细信息生成工资表。
试根据需求画出该问题的数据流图,并将其转换为软件结构图。
(2)某图书管理系统有以下功能。
①借书:输入读者借书证。系统首先检查借书证是否有效,若有效,对第一次借书的读者,在借书证上建立档案。否则,查阅借书文件,检查该读者所借图书是否超过10本,若已达10本,拒借;若未达10本,办理借书(检查库存,修改库存目录并将读者借书情况录入借书文件)。
②还书:从借书文件中读出与读者有关的记录,查阅所借日期,如超期(3个月)做罚款处理。否则,修改库存目录与借书文件。
③查询:通过借书文件、库存目录文件查询读者情况、图书借阅及库存情况,打印统计表。
根据以上描述绘制该系统模块结构图。