软件工程导论课后解答第五章.docx
《软件工程导论课后解答第五章.docx》由会员分享,可在线阅读,更多相关《软件工程导论课后解答第五章.docx(16页珍藏版)》请在冰豆网上搜索。
软件工程导论课后解答第五章
第五章总体设计
低耦合(5种类型)
1.数据耦合:
数据传递2.控制耦合:
控制信息传递3.特征耦合:
传过多的信息给被调用模块
4.公共环境耦合:
因全局变量,共享通信区5.内容耦合:
诸如一个模块访问另一个模块内部
z高内聚(7种类型)
功能内聚10分顺序内聚9分通信内聚7分过程内聚5分时间内聚3分逻辑内聚1分偶然内聚0分
z面向数据流的设计方法
划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等等设计软件的结构。
也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。
总体设计过程两个阶段
1.系统设计阶段,确定系统的具体实现方案;2.结构设计阶段,确定软件结构。
总体设计过程9个步骤
1设想供选择的方案2选取合理的方案3推荐最佳方案4功能分解5设计软件结构6设计数据库
7制定测试计划8书写文档9审查和审核
划分出组成系统的物理元素——程序、文件、数据库、人工过程和文档等等设计软件的结构。
也就是要确定系统中每个程序是由哪些模块组成的,以及这些模块相互间的关系。
总体设计过程两个阶段
1.系统设计阶段,确定系统的具体实现方案;2.结构设计阶段,确定软件结构。
总体设计过程9个步骤
1设想供选择的方案2选取合理的方案3推荐最佳方案4功能分解5设计软件结构6设计数据库
7制定测试计划8书写文档9审查和审核
1.欲开发一个银行的活期存取款业务的处理系统:
储户将填好的存/取款单和存折交给银行工作人员,然后由系统作以下处理;
(1)业务分类处理:
系统首先根据储户所填的存/取款单,确定本次业务的性质,并将存/取款单和存折交下一步处理;
(2)存款处理:
系统将存款单上的存款金额分别记录在存折和帐目文件中,并将现金存入现金库;最后将存折还给储户;
(3)取款处理:
系统将取款单上的取款金额分别记录在存折和帐目文件中,并从现金库提取现金;最后将现金和存折还给储户。
绘制该系统的数据流图和软件结构图。
顶层
一层
二层
软件结构图
补充1:
请为某仓库的管理设计一个ER模型。
该仓库主要管理零件的订购和供应等事项。
仓库向工程项目供应零件,并且根据需要向供应商订购零件
本问题中共有三类实体,分别是“零件”、“工程项目”和“供应商”。
一种零件可供应多个工程项目,一个工程项目需要使用多种零件,因此,零件与工程项目之间的联系“供应”,是多对多(M'N)联系;类似地,零件与供应商之间的联系“订购”,也是多对多(M'N)联系。
实体类型“零件”的主要属性是:
零件编号,零件名称,颜色,重量。
实体类型“工程项目”的属性主要是:
项目编号,项目名称,开工日期。
实体类型“供应商”的属性主要有:
供应商编号,供应商名称,地址。
联系类型“供应”的属性是,向某工程项目供应的某种零件的数量。
联系类型“订购”的属性是,向某供应商订购的某种零件的数量。
5-3用面向数据流的方法设计下列系统的软件结构
(1)储蓄系统2-2
(2)机票预定系统2-3
为了方便旅客,某航空公司拟开发一个机票预定系统。
旅行社把预定机票的旅客信息(姓名、性别、工作单位、身份证号码、旅行时间、旅行目的地等)输入该系统,系统为旅客安排航班,旅客在飞机起飞前一天凭取票通知和账单交款取票,系统核对无误即印出机票给顾客
(3)患者监护系统2-4
不能是两个分开的子系统,是相同的前台单个处理
可以是两个子系统,预定和取票是不同的处理方式(后台批量和前台单个)
5-4美国某大学有200名教师,校方与教师工会刚刚签订一项协议。
按照协议,所有年工资超过$26000(含$26000)的教师工资将保持不变,年工资少于$26000的教师将增加工资,所增加工资数额按下述方法计算:
给每位教师所赡养的人(包括教师本人)每年补助$100,此外,教师有一年工龄每年再多补助¥50,但是,增加后的年工资总额不能多于$26000。
教师工资档案存储在行政办公室的磁带上,档案中有目前的年工资、赡养的人数、雇佣日期等信息。
需要写一个程序计算并印出每名教师的原工资和调整后的新工资。
要求:
(1)画出此系统的数据流图;
(2)写出需求说明;
(3)设计上述的工资调整程序(要求用HIPO图描绘设计结果),设计时分别采用两种算法,并比较两种算法的优缺点:
(a)搜索工资档案数据,找出年工资少于$26000的人,计算新工资,校核是否超过$26000,存储新工资,印出新旧工资对照表;
(b)把工资档案数据按工资从最低到最高的次序排序,当工资数额超过$26000时即停止排序,计算新工资,校核是否超过限额,存储新工资,印出结果。
(4)你所画出的数据流图适应用那种算法?