可以是两个子系统,预定和取票是不同的处理方式(后台批量和前台单个)
旅行航空航班信息 社公司
预定信息P2.1 设置航班P1 旅客信息录入预定信息 P2.1航班信息安排航班
机票顾客
P2.3 打印取票单据 取票通知机票账单
账单P3.1核对取票凭证
顾客
P3.2取票通知 交款
机票
P3.3
打印机票 机票预定系 统 单账机票发放子 机票预定子机系统 息票系统信息定知单 通预航班信知效有通 账通知单取票凭证处单 打印及发放预定信息处交款理机票 理打印取票单 安排航班据 预定信 息 录入预定信 设置航班录入取票凭核对取票凭息 证证 票信息机通知单信息航班信息机票通知账单单账单信息机票有效通知
P2
P3危及病人信息分析信号
F2生理信号产生警告信息
F5安全范围D2患者安全范围E2 F4警告信息病人 P7制定安 E1全范围F2生理信号D3生理信息护士
P5 定时的生理信号更新日志 F2生理信号P1 F2生理信号定时的接收信号生理信号
F6日志 P4E3 定时取样F3日前、时间时钟生理信号
F6日志D1患者日志E1
护士 F1要求报告P6 产生病情报告 患者监护系 统号 信危理日志机信息生 患者生理信监护信息输监护处理 号获取出 围范号 信理 生 制定生理信定时取样接收信号更新日志报警病情报告 生理信号分析信号号安全范围 取得时间
理定时生信号范围生理信号定时生理信号生理信信息危机生理信号息时间危机信生信理生时定号信理志日日志号号
5-4美国某大学有200名教师,校方与教师工会刚刚签订一项协议。按照协议,所有年工资超过$26000(含$26000 )的教师工资将保持不变,年工资少于$26000的教师将增加工资,所增加工资数额按下述方法计算:给每位教师所赡养的人(包括教师本人)每年补助$100,此外,教师有一年工龄每年再多补助¥50,但是,增加后的年工资总额不能多于$26000。
教师工资档案存储在行政办公室的磁带上,档案中有目前的年工资、赡养的人数、雇佣日期等信息。需要写一个程序计算并印出每名教师的原工资和调整后的新工资。
要求:(1)画出此系统的数据流图;(2)写出需求说明;
(3)设计上述的工资调整程序(要求用HIPO图描绘设计结果),设计时分别采用两种算法,并比较两种算法的优缺点:
(a)搜索工资档案数据,找出年工资少于$26000的人,计算新工资,校核是否超过$26000,存储新工资,印出新旧工资对照表;
(b)把工资档案数据按工资从最低到最高的次序排序,当工资数额超过$26000时即停止排序,计算新工资,校核是否超过限额,存储新工资,印出结果。
(4)你所画出的数据流图适应用那种算法? E1 E1行政办 原工资档案调资后工资档案行政办工资调资系统公室公室 调资后工资档案 工资档案 E1P1P5行政办 原工资档案导入原工输出工资调资后工资档案公室 资档案对照表 E1 行政办 调资后工资档案调资标准工资档案公室 P4P2 核对工资输入调资 标准P3 调资标准调整工资 调资标准 调资标准工资标准
导入调资档案 导入工输入调 资档案资标准 导入调资档 案 导入工输入调 资档案资标准
工资调资系统调资打印工资对照表检索需调资工资数据计算新工资校核新工资更新新工资数据工资调资系统调资打印工资对照表工资数据整理排序计算新工资校核新工资更新新工资数据
第六章 习题参考答案 一.回答问题
1.详细设计的目的?
为软件结构图(SC图或HC图)中的每一个模块确定采用的算法和块内数据结构,用某种选定的表达工具给出清晰的描述.
2.详细设计的主要任务?
编写软件的“详细设计说明书”.软件人员要完成的工作:
(1) 为每一个模块确定采用的算法, 选择某种适当的工具表达算法的过程,写出模块的详细过程描述.
(2) 确定每一模块使用的数据结构.
(3) 确定模块结构的细节,包括对系统外部的接口和用户界面,对系统内部其它模块的接口,以及关于模块输入数据、输出数据及局部数据的全部细节.
(4) 为每一个模块设计出一组测试用例,以便在编码阶段对模块代码(即程序)进行预定的测试.
3.结构化程序设计的基本原则?
在详细设计中所有模块都使用单入口、单出口的顺序、选择、循环三种基本控制结构.
4.比较面向数据流和面向数据结构两类设计方法的异同? 相同点:
(1) 遵守结构程序设计“由顶向下”逐步细化的原则,并以其为共同的基础; (2) 均服从“程序结构必须适应问题结构”的基本原则,各自拥有从问题结构(包括数据结构)导出程序结构的一组映射规则。
不同点:
(1) 面向数据流的设计以数据流图为基础,在分析阶段用DFD表示软件的逻辑模型,在设计阶段按数据流类型,将数据流图转换为软件结构。面向数据结构的设计以数据结构为基础,从问题的数据结构出发导出它的程序结构。
(2) 面向数据流的设计的最终目标是软件的最终SC图,面向数据结构的设计的最终目标是程序的过程性描述。
5.比较Jackson方法和LCP方法的异同?
Jackson与LCP设计方法都是以数据结构为出发点,以程序的过程描述为最终目标,设计步骤基本相似。它们的主要差别是:
(1)使用不同的表达工具,其中LCP方法中的表达工具Warnier图
比Jackson设计方法中的表达工具Jackson图有更大的通用性; (2)Jackson方法的步骤和指导原则有一定的灵活性,而LCP设计 方法则更加严密。
6.详细设计的描述工具应具备什么功能?
无论哪类描述工具不仅要具有描述设计过程,如控制流程、处理功能、数据组织及其它方面的细节的能力,而且在编码阶段能够直接将它翻译为用程序设计语言书写的源程序。
二.给出一组数从小到大的排序算法,分别用下列工具描述其详细过程: (1) (1) 流程图;(2)N—S图;(3)PAD图;(4)PDL语言。