软件工程导论(第六版)课后习题答案(3)
状态机J:{书在图书馆S1,书被借出S2,书被预约S3}
输入集K:{书上条形码,借阅卡条形码,终端输入各种命令}
转换函数T:如图4.4.1所示
初始态S:{书在图书馆S1,书被借出S2}
终态集F:{书被借出S2,书被预约S3}
二)图书馆终端管理员模式的有穷状态机描述
状态机J:{管理员设置状态,书入库,书出库(删除),预约}
输入集K:{终端输入管理员命令,书的各种状态(S1,S2,S3}
转换函数T:如图4.4.2所示
初始态S:{管理员设置状态}
终态集F:{
二)图书馆终端用户模式的有穷状态机描述
状态机
J:{读者查询状态,查询结果}
输入集K:{终端输入用户查询命令,书的各种状态(S1
,S2,S3)}
转换函数T:如图4.4.3所示
初始态S:{终态集F:{
5,试用Petri网说明第四题所述图书馆中一本书的循环过程,在规格说明中应该包括操作H、C及R。
答:其中P1表示书在图书馆P2表示书在读者手上,P3书被预约
6,试用Z语言对第四题所描述图书馆图书流通系统做一个完整的规格说明。 答:(这题真的不会!) BOOK_STATE
第五章
5.1为每种类型的模块耦合举一个具体的例子。
答:耦合式对一个软件结构内不同模块之间互联程度的度量。耦合强弱取决于接口的复杂度,进入或访问某一模块的点,以及通过接口的数据。一般模块之间的可能的连接方式有七种,构成耦合的七种类型,它们的关系为:
低 耦合性 高
强
独立性 弱 下面举例说明以上耦合:
A. 非直接耦合:两个模块没有直接的关系(模块1和模块2),独立性最强 B.数据耦合:即一个模块访问另一个模块的时候,彼此之间是通过数据参数来交换输入、输出信息的,这种耦合为数据耦合。这种耦合较为松散,模块间独立性较强。
G.内容耦合:如果出现以下情况之一,两个模块就发生了内容耦合 ① 一个模块访问另一个模块的内部数据。
② 一个模块不通过正常入口儿转到另一个模块的内部
③ 两个模块有一部分程序代码重叠(只可能发生在汇编程序中) ④ 一个模块有多个入口(这意味着一个模块有几种功能)
Sub AA(….) … … Goto L … End sub Sub BB(..) … … L: … … End sub
5.2为每种类型的模块内聚举一个例子
答:内聚标志着一个模块内各个元素之间彼此结合的紧密程度,它是信息隐藏和局部化概念的自然扩展。 低内聚:
A. 偶然内聚:如果一个模块完成一组任务,这些任务彼此间即使有关系,关系也是很松散的。这就叫做
偶然内聚
偶然内聚的例子:在模块T 中有A,B,C三条语句,至少从表面上看来这三条语句没什么联系,只是因为D,E,F,G中都有这三条语句,为了节省空间才把这三条语句作为一个模板放在一起。
B. 逻辑内聚:如果一个模块完成的任务在逻辑上属于相同或相似的一类(例如一个模块产生各种类型的全
部输出),称为逻辑内聚
逻辑内聚的例子:某一个模块将打印,年,月,日,具体打印什么,将由传入的控制标志所决定。 C. 时间内聚:一个模块包含的任务必须在同一段时间内执行(例如,模块完成各种初始化工作),称为时
间内聚
时间内聚的例子:将多个变量的初始化放在同一个模块中实现。 中内聚:
A. 过程内聚:如果一个模块内的处理元素是相关的,而且必须以特定次序执行,称为过程内聚 过程内聚的例子:一个子程序,将开始读取学生的学号,然后是姓名,最后将读取分数,是由于特定的顺序而将这些操作组合在一起的
B. 通讯内聚:如果模块中所有的元素都使用同一个输入数据和(或)产生同一个输出数据,则称为通讯
内聚
通讯内聚的例子:有一个子程序,它将打印实验报告,并且在完成后重新初始化传进来的实验数据。这个程序具有通讯内聚性。因为这两个操作由于使用同一个数据源联系在了一起。 高内聚:
A. 顺序内聚:如果一个模块内的处理元素和同一个功能密切相关,而且这些处理必须顺序执行(通常一
个处理元素的输出数据作为下一个处理元素的输入数据),则称为顺序内聚。
顺序内聚的例子:有一个子程序,通过给出的生日,先计算出年龄。再根据年龄算出退休的时间,则这个程序具有顺序内聚性。
B. 功能内聚:如果模块内所有的元素属于一个整体完成一个单一的功能,则成为功能内聚。 功能内聚的例子:一个程序中所有的操作都是为了算出一个人的年龄
5.3用面向数据流的方法设计下列系统的软件结构 ①储蓄系统
银行储蓄系 统存款 取款 单 单
率 利
利 存 息清单 单码 密
业务单据录 入利 率存款单
储蓄业务处理存款单
单据输出利息
存单
款
单
存款利 率设置
存款单据输 取款单 入 据输入
存款
取款
存单
存单
密码
取
利率
清单
利息
密码
利息清单
②机票预订系统
生理 定时 信号范 围 生理 信号
生
理
信
号
患者监护系 统危 日 机信息 志机票预定系 统信 息 知 单
患者生理信 号获取机票预定子机生理信号
票
单 监护处理 账定时生理信号
监护信息输 出 机票发放子系统息
通
信息
机票
预定信息处 生 理信息
理
取票凭证处 理
危机信
信
通 账单 知 单
通
有
账单
预 航 号
定
信
范班信息
息 围
系统信 生理信息 信号 机票 理 生 定时 号
机
票
制定生理信 号安全范围航班
定时取样 接收信号 更新日志 息 生理信号 分析信号预 定 信时间
通知 单 账单
安排航班
打印取票单 据
号 生理信
危机信 息
单 知
通 效
知
日志
日志
交款
打印及发放 机票
效 有
报警通
病情报告
知
设置航班
录入预定信 息
录入取票凭 证
核对取票凭 证
③患者监护系统
取得时间
5.4 美国某大学有 200 名教师,校方与教师工会刚刚签订一项协议。按照协议, 所有年工资超过$26000(含$26000 )的教师工资将保持不变,年工资少于$26000 的教师将增加工资,所增加工资数额按下述方法计算:给每位教师所赡养的人(包 括教师本人)每年补助$100,此外,教师有一年工龄每年再多补助¥50,但是,增 加后的年工资总额不能多于$26000。
教师工资档案存储在行政办公室的磁带上,档案中有目前的年工资、赡养的人 数、雇佣日期等信息。需要写一个程序计算并印出每名教师的原工资和调整后的新 工资。
要求:(1)画出此系统的数据流图;(2)写出需求说明;
(3)设计上述的工资调整程序(要求用 HIPO 图描绘设计结果),设计时分别采 用两种算法,并比较两种算法的优缺点:
(a)搜索工资档案数据,找出年工资少于$26000 的人,计算新工资,校核是 否超过$26000,存储新工资,印出新旧工资对照表;
相关推荐:
- [资格考试]石油钻采专业设备项目可行性研究报告编
- [资格考试]2012-2013学年度第二学期麻风病防治知
- [资格考试]道路勘测设计 绪论
- [资格考试]控烟戒烟知识培训资料
- [资格考试]建设工程安全生产管理(三类人员安全员
- [资格考试]photoshop制作茶叶包装盒步骤平面效果
- [资格考试]授课进度计划表封面(09-10下施工)
- [资格考试]麦肯锡卓越工作方法读后感
- [资格考试]2007年广西区农村信用社招聘考试试题
- [资格考试]软件实施工程师笔试题
- [资格考试]2014年初三数学复习专练第一章 数与式(
- [资格考试]中国糯玉米汁饮料市场发展概况及投资战
- [资格考试]塑钢门窗安装((专项方案)15)
- [资格考试]初中数学答题卡模板2
- [资格考试]2015-2020年中国效率手册行业市场调查
- [资格考试]华北电力大学学习实践活动领导小组办公
- [资格考试]溃疡性结肠炎研究的新进展
- [资格考试]人教版高中语文1—5册(必修)背诵篇目名
- [资格考试]ISO9001-2018质量管理体系最新版标准
- [资格考试]论文之希尔顿酒店集团进入中国的战略研
- 全国中小学生转学申请表
- 《奇迹暖暖》17-支2文学少女小满(9)公
- 2019-2020学年八年级地理下册 第六章
- 2005年高考试题——英语(天津卷)
- 无纺布耐磨测试方法及标准
- 建筑工程施工劳动力安排计划
- (目录)中国中央空调行业市场深度调研分
- 中国期货价格期限结构模型实证分析
- AutoCAD 2016基础教程第2章 AutoCAD基
- 2014-2015学年西城初三期末数学试题及
- 机械加工工艺基础(完整版)
- 归因理论在管理中的应用[1]0
- 突破瓶颈 实现医院可持续发展
- 2014年南京师范大学商学院决策学招生目
- 现浇箱梁支架预压报告
- Excel_2010函数图表入门与实战
- 人教版新课标初中数学 13.1 轴对称 (
- Visual Basic 6.0程序设计教程电子教案
- 2010北京助理工程师考试复习《建筑施工
- 国外5大医疗互联网模式分析




