《软件工程》习题参考答案3

作者名:不详 来源:网友提供 06年6月8日

 

第三章
⒈什么是需求分析?需求分析阶段的基本任务是什么?
需求分析:开发人员准确地理解用户的要求,进行细致的调查分析,将用户非形式的需求陈述转化为完整的需求定义,再由需求定义转换到相应的需求规格说明的过程。
基本任务:
⑴问题识别:双方确定对问题的综合需求,这些需求包括功能需求,性能需求,环境需求,用户界面需求。
⑵分析与综合,导出软件的逻辑模型
⑶编写文档:包括编写"需求规格说明书","初步用户使用手册","确认测试计划","修改完善软件开发计划"
 
⒉什么是结构分析方法?该方法使用什么描述工具?
结构化分析:简称SA,面向数据流进行数据分析的方法。采用自顶向下逐层分解的分析策略。顶层抽象地描述整个系统,底层具体地画出系统工程的每个细节。中间层则是从抽象到具体的过渡。使用数据流图,数据字典,作为描述工具,使用结构化语言,判定表,判定树描述加工逻辑。

⒊结构化分析方法通过哪些步骤来实现?
⑴了解当前系统的工作流程,获得当前系统的物理模型。 ⑵抽象出当前系统的逻辑模型。 ⑶建立目标系统的逻辑模型。 ⑷作进一步补充和优化。

⒋什么是数据流图?其作用是什么?其中的基本符号各表示什么含义?
数据流图(DFD):以图形的方式描述数据在系统中流动和处理的过程。只反映系统必须完成的逻辑功能,是一种功能模型。

⒌画数据流图应注意什么事项?
命名: 不能使用缺乏具体含义的名字,加工名应能反映出处理的功能。
画数据流而不是控制流。 数据流名称只能是名词或名词短语,整个图中不反映加工的执行顺序。
一般不画物质流。
每个加工至少有一个输入数据流和一个输出数据流,反映出此加工数据的来源与加工的结果 。
编号: 某个加工分解成加一张数据流图时,上层图为父图,下层图为子图。子图应编号子图上的所有加工也应编号,子图的编号应与父图的编号相对应。
父图与子图的平衡:子图的输入输出 数据流同父图相应加工的输入输出数据流必须一致
局部数据存储:当某慨数据流图中的数据存储不是父图中相应加工的外部接口,而只是本图中某些加工之间的数据接口,则称这些数据存储为局部数据存储。
注意数据流图的易理解性。

⒍什么是数据字典?其作用是什么?共有哪些条目?
数据字典(DD)用来定义数据库流图中的各个成分的具体含义。有以下四类条目:数据流,数据项,数据存储,基本加工。

具体条目内容及举例如下:
数据流条目
数据流名称:订单
别名:无
简述:顾客订货时填写的项目
来源:顾客
去向:加工1"检验订单"
数据流量:1000份/每周(单位时间内的传输次数)
组成:编号+订货日期+顾客编号+地址+电话+银行帐号+货物名称+规格+数量

数据存储条目
数据存储名称:库存记录
别名:无
简述:存放库存所有可供货物的信息
组成:货物名称+编号+生产厂家+单价+库存量
组织方式:索引文件,以货物编号为关键字
查询要求:要求能立即查询

数据条目
数据项名称:货物编号
别名:G-No,G-num,Goods-No
简述:本公司所有货物的编号
类型:字符串
长度:10
取值范围及含义:
第一位:进口/国产
第2-4位:类别
第5-7位:规格
第8-10位:品名编号

加工条目
加工名:查阅库存
编号:1﹒2
激发条件:接收到合格订单时
优先级:普通
输入:合格合格订单
输出:可供货订单,缺货订单
加工逻辑:根据库存记录
IF 订单项目数量<该项目库存量临界值
THEN 可供货处理
ELSE 此订单缺货,登录,待进货后再处理
ENDIF

⒎描述加工逻辑有哪些工具?
加工逻辑的描述:一般用结构化语言,判定表,判定树
结构化语言是介于自然语言和形式语言之间的一种半形式化语言。它的结构可分里层和内层
⑴外层:用来描述控制结构,采用顺序,选择,重复三种基本结构。
①顺序结构:是一组祈使语句,选择语句,重复语句的顺序排列
②选择结构:一般用IF-THEN-ELASE-ENDIF,CASE-OF-ENDCASE等关键词。
③重复结构:一般用DO-WHILE-ENDDO,REPEAT-UNTIL等关键词。
⑵内层:一般采用祈使语句的自然语言短语,使用数据字典中的名词和有限的自定义词,其 动词含义要具体,尽量不使用形容词和副词来修饰。

例:加工逻辑描述为,如果申请者的年龄在21岁以下,要额外收费;如果申请者是21岁以上并是26岁以下的女性,适用于A类保险;如果申请者是26岁以下的已婚男性,或者是26岁以上的男性,适用于B类保险;如果申请者是21岁以下的女性或是26岁以下的单身C类保险。附此之外的其他申请者都适用于A类保险。

⒏什么是IDEF方法?IDEF0方法有哪些特点?
IDEF方法是美国空军针对计算机辅助制造工程项目中用于进行复杂系统分析和设计的方法,是在结构化分析方法基础上提出来的。
包括:
IDEF0描述系统的功能活动及联系,建立系统的功能模型。即反映系统"做什么"折功能。
IDEF1描述系统的信息及联系,建立系统的信息模型。
IDEF2进行系统模拟,建立系统的动态模型。
IDEF0特点:
⑴采用方框和箭头等简单图形符号描述系统的活动和数据流,描述活动所受的约束条件及实现机制。
如下图描述,其中输入为完成某活动时所需的数据,输出指执行活动产生时的数据,控制活动指所受到的约束条件,机制是指活动由谁来完成。

⑵采用严格的自顶向下﹑逐层分解的方式建立系统功能模型。

⒐简述SA方法的优缺点。
SA方法是软件需求分析中公认的,有成效的,技术成熟,使用广泛的一种结构化分析方法。较适用于开发数据处理类型软件的需求分析。利用图形等半形式化工具表达需求,简明,易读,也易于使用。但也存在一些弱点,表现如下:
⑴SA方法仅是一个静态模型,没有反映处理的顺序,即控制流程。
⑵SA方法使用DFD在分析与描述"数据要求"方面是有局限的,只有与数据库技术中的实体联系图(ER图)结合起来,才能较完整地描述用户对系统的需求。
⑶DFD不适合描述人机界面系统的要求,一些人机交互较频繁的软件系统。
⑷SA方法要与形式化方法结合起来,才能更精确地描述软件需求。
⑸要借助需求分析工具,提高需求分析的质量及效率。

⒑某银行的计算机储蓄系统功能是:将储户的存户填写的存款单或存款单输入系统,如果是存款,系统记录存款人姓名﹑住址﹑存款类型﹑存款日期﹑利率等信息,并打印出存款单给储户;如果是取款,系统计算清单给储户。请用DFD,IDEF0描绘该功能的需求,并建立相应数据字典。
答:

数据流名称:取款单、存款单
别名:无
简述:顾客存/取款时填写的单据
来源:顾客
去向:核查
数据流量:200份/天
组成:日期+[取|存款金额]+姓名+地址+[存/取款类型]+密码+{账号}
  
数据流名称:存款凭证
别名:无
简述:顾客存款后得到的凭据
来源:银行存款系统
去向:顾客
数据流量:200份/天
组成:日期+存款金额+储户姓名+储户地址+存款类型+账号+利率+操作员
  
数据流名称:结算单
别名:无
简述:顾客取款时得到的利率清单
来源:银行储蓄系统
去向:顾客
数据流量:200份/天
组成:取款日期+取款金额+储户姓名+储户地址+存款类型+利息+总金额+操作员

数据流名称:存/取款信息
别名:无
简述:系统检查确认后得到的存/取信息
来源:银行储蓄系统
去向:登录
数据流量:200份/天
组成:日期+[存|取款金额]+储户姓名+储户地址+存款类型+账号+利率+密码+操作员

数据流名称:付款信息
别名:无
简述:存储系统处理的取款信息
来源:银行储蓄系统
去向:付款处理
数据流量:200份/天
组成:日期+取款金额+储户姓名+储户地址+存款类型+账号+利息+总金额+操作员

数据存储名称:账卡
别名:无
简述:存放用户信息及存取款情况
组成:储户姓名+储户地址+账号+|日期|+[存/取款金额]+存款类型+利率+密码+操作员
组织方式:数据文件,以储户姓名或账号为关键字进行索引
查询要求:要求能立即查询并修改

数据项名称:存款类型
别名:无
简述:国家规定的几类存款方式
类型:字符串
长度:2位
取值范围及含义:00:定期; 01:零存整取;10:活期;11:定/活两便
  
加工名:核查
编号:
激发条件:接受存款单或取款单
输入:存款单或取款单
输出:认定的合格的村/取款信息
加工逻辑:根据账卡及用户存/取款单据
if 单据=存款单 then
   存款单据是否填写规范,是否与现金一致
else
   审核是否为有效取款单,取款金额不得超出存款金额,密码是否正确
  
⒒某图书管理系统有以下功能:
⑴借书:输入读者借书证。系统首先检查借书证是否有效,若有效,对于第一次借书的读者,在借书证上建立档案。否则,查阅借书文件,检查该读者所借图书是否超过10本,若已达10,拒借,末达10本,办理借书(检查库存,修改库存目录并将读者借书情况录入借书文件。)
⑵还书:从借书文件中读出与读者有关的记录,查阅所借日期,如超期(3个月)作罚款处理。否则,修改库存目录与借书文件。
⑶查询:通过借书文件,库存目录文件查询读者情况﹑图书借阅及库存情况,打印统计表。
解:






数据字典
数据流名称:借书
别名:借书单
简述:读者借书时填写的单据
来源:读者
去向:审核借书
数据流量:250份/天
组成:借书证编号+借阅日期+书名+借阅方式+密码+借阅人

数据流名称:还书
别名:无
简述:读者还书时附带的数据
来源:读者
去向:审核还书
数据流量:250份/天
组成:借书证编号+借阅日期+书名+借阅方式

数据存储名称:借书文件
别名:无
简述:借书证编号+借阅日期+书名+借阅方式+密码+借阅人+操作员
查询要求:要求能立即查询并修改

数据存储名称:库存文件
别名:无
简述:存放图书出/入库信息
组成:书名+出版社+作者+出版日期+入库数据+总数量+(内容简介)+当前库存量
组织方式:数据文件,以书名为关键字进行索引
查询要求:要求能立即查询并修改

加工名:审核借书证
编号:1.1
激发条件:接受到借书证
输入:借书证
输出:认定合格的借书证
加工逻辑:根据借书文件及读者借书证
if 借书证编号在借书文件存在 and 未过期 and 密码正确 then
        借书证有效
else 借书证无效
  
⒓某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,高中文化程度当电工。20岁至40岁之间,中学文化程度,男性当钳工,女性当车工,大学文化程度都当技术员。年龄在40岁以上者,中学文化程度当材料员,大学文化程度当技术员。请用结构化语言﹑判定表或判定树描述上述问题的加工逻辑。
结构化语言:
CASE 年龄<20
   CASE 文化程度 初中
      分配工种 脱产学习
   CASE 文化程度 高中
      分配工种 电工
ENDCASE
CASE 年龄<=40.AND.>=20
   CASE 文化程度 初中.OR.高中
      CASE 性别 男
         分配工种 钳工
       CASE 性别 女
         分配工种 车工
       ENDCASE
   ENDCASE
   CASE 文化程度 大学
      分配工种 技术员
   ENDCASE
ENDCASE
CASE 年龄>40
   CASE 文化程度 初中.OR.高中
      分配工种 材料员
   CASE 文化程度 大学
      分配工种 技术员
   ENDCASE
ENDCASE