软件工程习题解答解析.docx
- 文档编号:745213
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:38
- 大小:330.67KB
软件工程习题解答解析.docx
《软件工程习题解答解析.docx》由会员分享,可在线阅读,更多相关《软件工程习题解答解析.docx(38页珍藏版)》请在冰豆网上搜索。
软件工程习题解答解析
期考试题题型构成:
选择题20道40分
填空题10道20分
应用题5道40分
软件工程习题解答
一、软件生存周期各阶段的基本任务?
1.问题定义:
(1)回答要解决的问题是什么。
(2)系统分析员应该提出关于问题性质、工程目标和规模的书面报告。
(3)经过和用户讨论,澄清含糊不清的地方,改正理解不正确的地方,得出一份双方都满意的文档。
(4)问题定义是软件生命周期中最简短的阶段。
2.可行性研究:
(1)前一阶段定义的问题有可行的解决办法吗?
(2)系统分析员要进行一次大大压缩和简化了的系统分析和设计。
导出高层逻辑模型(用数据流图表示)。
确定工
程规模和目标,准确估计系统的成本和效益。
(3)使用部门的负责人根据可行性研究的结果决定是否继续进行该工程的开发工作。
3.需求分析:
(1)主要确定目标系统必须具备哪些功能。
(2)系统分析员和用户密切配合,充分交流,得出经用户确认的系统逻辑模型(数据流图、数据字典、算法描述)
4.总体设计:
(1)回答如何解决问题。
(2)系统分析员应使用系统流程图或其他工具描述每种可能系统;估计每种方案的成本和效益。
推荐一较好的系统一其详细计划。
设计软件的结构(用层次图或结构图描述)。
5.详细设计:
(1)回答应该怎样具体地实现这个系统。
(2)设计出程序的详细规格说明(用HIPO层次图加输入/处理/输出图)或PDL语言(过程设计语言)。
6.编码和单元测试:
(1)写出正确的容易理解,容易维护的程序模块。
(2)程序员:
选取一种适当的用高级语言书写程序(或汇编语言)。
仔细测试编写出的每一个模块。
7.综合测试:
(1)通过各种类型的测试,使软件达到预定的要求。
(2)最基本的测试是集成测试和验收测试方法。
集成测试是根据设计的软件结构,把经过单元测试检验的模块按某种选定的策略装配起来,在装配的过程中对程
序进行必要的测试。
验收测试是按照需求规格说明书的规定,由用户对目标系统进行验收。
(3)用正式文档将测试计划、详细测试方案以及实际测试结果保存。
(4)以正式或非正式的方式对用户进行培训。
8•软件维护:
(1)使系统持久地满足用户的需要。
(2)四类维护:
改正性维护:
诊断和改正使用过程中发现的软件错误。
适应性维护:
修改软件以适应环境变化。
完善性维护:
根据用户要求,改进或扩充软件。
预防性维护:
修改软件为将来的维护预先准备。
第二章可行性研究
1•已知某软件包具有三个主要功能:
输入数据、更新数据、产生报表。
根据历史资料记载,实现每个功能所需源代码行数估算如下:
1输入数据:
a=IOOm=200b=300
2更新数据:
a=200m=300b=400
3产生报表:
a=300m=400b=500
三个功能的软件生产率都是200行/人月,每行成本I0元/行,请用LOC技术估算岀该软件包的成本和工
作量。
解:
功能
估算代码行数
生产率
(行/人月)
每行成本
(元/行)
成本(元)
人力
(人月)
a
in
b
le
输岀数据
100
200
300
200
200
10
2000
1
「更新数据
200
300
400
300
200
10
3000
1.5
产生报表
300
400
500
400
200
10
4000
2
「合计
900
9000
4.5
2.某计算机系统投入使用后、5年内每年可节省人民币2O0O元,假设系统的投资额为5000元,年利率为12%。
试计算投资回收期和纯收入。
解:
年
将未值F(元)
现在值P(元)
累计的现在值(元)
2D00
1.12
1785,71
1785.71
2
2000
L25
1600.00
3385.71
3
2000
1.40
1428.57
4814.28
4
2000
L57
1273.89
6088.17
5
2m
L76
1136.36
72羽.53
1、投资回收期
最初投资额为5000元,经过3年后可以节省4814.28元,比最初投资还少185.72元,
第4年一年再次节省1273.89元,则
185.72-1273.89=0.15
3+0.15=3.15
因此这项工程的投资回收期是3.15年。
2、纯收入
7224.53-5000=2224.53元>0,值得投资。
第三章需求分析
1.什么是数据流图?
其作用是什么?
其中的基本符号各表示什么含义?
数据流图:
简称DFD,是SA(结构化分析)方法中用于表示系统逻辑模型的一种工具,是一种功能模型。
作用:
它以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能.基本符号有四种:
T,箭头,表示数据流;O,圆或椭圆,表示加工;=,双杠,表示数据存储;口,方框,表示数据的源点或终点
2.某银行的计算机储蓄系统功能是:
将储户填写的存款单或取款单输入系统,如果是存款,系统记录存款人姓名、
住址、存款类型、存款日期、利率等信息,并打印出存款单给储户;如果是取款,系统计算清单储户。
请用DFD
和IDEF0描绘该功能的需求,并建立相应的数据字典。
(1)数据流条目:
数据流名称:
存款单别名:
无简述:
储户存款时填写的项目来源:
储户去向:
记帐数据流量:
未知组成:
姓名+住址+存款类型+存款日期+利率数据流名称:
取款单别名:
无
简述:
储户取款时填写的项目
来源:
储户
去向:
统计
数据流量:
未知
组成:
姓名+住址+取款类型+取款日期+利率
数据流名称:
清单
别名:
无
简述:
储户取款后得到的项目
来源:
记录
去向:
储户
数据流量:
未知
组成:
姓名+住址+取款类型+取款日期+利率+余额
(2)数据存储条目:
数据存储名称:
账单别名:
无
简述:
存放储户信息及其账目
组成:
姓名+住址+余额+存款类型+最后修改日期+利率组织方式:
未知查询要求:
能立即查询
(3)数据项条目:
未知
(4)加工条目:
加工名:
分类检查编号:
无激发条件:
接收到存/取款单优先级:
优先输入:
存/取款单
输出:
存/取款单
加工逻辑:
IF存款单THEN把存款单输出到统计ELSE
把取款单输出到统计
ENDIF
加工名:
统计
编号:
无激发条件:
取款单
优先级:
无
输入:
取款单
输出:
清单加工逻辑:
根据账单检查此储户是否存在,不存在输出错误{
IF取款数<余额THEN余额=余额-取款数
输出清单到储户,输出现金到储户
ELSE
输出错误清单到储户
ENDIF
}
加工名:
记录
编号:
无激发条件:
存款单
优先级:
无
输入:
存款单
输出:
存款单
余额=余额+存款数
输出存款单到储户
}
关于软件工程中的判定树和判定表
判定树又称决策树,是一种描述加工的图形工具,适合描述问题处理中具有多个判断,而且每个决策与若干条件
有关。
使用判定树进行描述时,应该从问题的文字描述中分清哪些是判定条件,哪些是判定的决策,根据描述材料中的联结词找出判定条件的从属关系、并列关系、选择关系,根据它们构造判定树。
【例4.5】某工厂对工人的超产奖励政策为:
该厂生产两种产品A和B。
凡工人每月的实际生产量超过计
划指标者均有奖励。
奖励政策为:
对于产品A的生产者,超产数N小于或等于100件时,每超产1件奖励2元;N大于100件小于等于150件时,大于100件的部分每件奖励2.5元,其余的每件奖励金额不变;N大于150件时,超过150件的部分每件
奖励3元,其余按超产150件以内的方案处理。
对于产品B的生产者,超产数N小于或等于50件时,每超产1件奖励3元;N大于50件小于等于100件时,大于50件的部分每件奖励4元,其余的每件奖励金额不变;N大于100件时,超过100件的部分每件奖励
5元,其余按超产100件以内的方案处理。
上述处理功能用判定树描述,如下图所示
判定树又称决策树,是一种描述加工的图形工具,适合描述问题处理中具有多个判断,而且每个决策与若干条件有关。
使用判定树进行描述时,应该从问题的文字描述中分清哪些是判定条件,哪些是判定的决策,根据描述材料中的联结词找出判定条件的从属关系、并列关系、选择关系,根据它们构造判定树。
产量超过计划指标者均有奖励。
奖励政策为:
对于产品A的生产者,超产数N小于或等于100件时,每超产1件奖励2元;N大于100件小于等于150件时,大于100件的部分每件奖励2.5元,其余的每件奖励金额不变;N大于150件时,超过150件的部分每件奖励3元,其余按超产150件以内的方案处理。
对于产品B的生产者,超产数N小于或等于50件时,每超产1件奖励3元;N大于50件小于等于100件时,大于50件的部分每件奖励4元,其余的每件奖励金额不变;N大于100件时,超过100件的部分每件奖励5元,其余按超产100件以内的方案处理。
上述处理功能用判定树描述,如下图所示
厂产品A
奖励政秦一
I—产品B*
KM^lOO
100 2X100 300+2*5X(11-100) 45O+3X(N-150) 1<»^50 N<100 N>100 3>50 15O+4X(N-50) 350+5X(H-IOQ) 这一判定树比起文字叙述,使人一目了然,清晰地表达了在什么情况下采取什么策略,不易产生逻辑上的混乱。 因而判定树是描述基本处理逻辑功能的有效工具。 判定表由四部分组成 第一部分即①表示的部分,判定标的左上部称为基本条件项,列出各种可能的条件。 第二部分即②表示的部分,判定标的右上部称为条件项,它列出了各种可能的条件组合。 第三部分即③表示的部分,判定标的左下部称为基本动作项,它列出了所有的操作。 第四部分即④表示的部分,判定标的右下部称为动作项,它列出在对条件组合下所选的操作。 【例4.6】以学生的奖学金评定为例,说明判定表的应用。 奖励的目的在于鼓励学生的品学兼优,此处理功能是要合理确定奖学金评定等级。 决定受奖的条件为: 成绩优秀占70%或50% 以上,成绩为中或中以下占15%或20%以下,团结纪律为优良或一般者。 奖励方案为一等奖、二等奖、三等奖、鼓励奖四种。 因为受奖条件有些是相容的,相互组合的项较多。 描述此学生奖励政策的判定表如下图所示: ft 已修谍程各料威绩 比攀 忧秀ATM优需鼻50X中灿疋wis*中S.? 9* YYYYHNTfJI-■-二YYYTYYHNYYNH--Yy--yr 状态 团皓紀洼评分 tt良-ffi YKYNYNYNNYNYNYNT 奖励方 一轸奖-聊奖三等奖戴励奖 * 判定规则 举*♦ * 由上图可见,判定表将比较复杂的决策问题简洁、明确、一目了然地描述出来,它是描述条件比较多的决策问题的有效工具。 判定表或判定树都是以图形形式描述数据流的加工逻辑,它结构简单,易懂易读。 尤其遇到组合条件的判定,利用判定表或判定树可以使问题的描述清晰,而且便于直接映射到程序代码。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 习题 解答 解析
![提示](https://static.bdocx.com/images/bang_tan.gif)