软件工程习题解答解析教学文稿Word下载.docx
- 文档编号:21378600
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:35
- 大小:1,022.37KB
软件工程习题解答解析教学文稿Word下载.docx
《软件工程习题解答解析教学文稿Word下载.docx》由会员分享,可在线阅读,更多相关《软件工程习题解答解析教学文稿Word下载.docx(35页珍藏版)》请在冰豆网上搜索。
预防性维护:
修改软件为将来的维护预先准备。
第二章可行性研究
1.已知某软件包具有三个主要功能:
输入数据、更新数据、产生报表。
根据历史资料记载,实现每个功能所需源代码行数估算如下:
①输入数据:
a=l00m=200b=300
②更新数据:
a=200m=300b=400
③产生报表:
a=300m=400b=500
三个功能的软件生产率都是200行/人月,每行成本lO元/行,请用LOC技术估算出该软件包的成本和工作量。
解:
2.某计算机系统投入使用后、5年内每年可节省人民币2O0O元,假设系统的投资额为5000元,年利率为12%。
试计算投资回收期和纯收入。
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(结构化分析)方法中用于表示系统逻辑模型的一种工具,是一种功能模型。
作用:
它以图形的方式描绘数据在系统中流动和处理的过程,反映系统必须完成的逻辑功能.
基本符号有四种:
→,箭头,表示数据流;
○,圆或椭圆,表示加工;
=,双杠,表示数据存储;
□,方框,表示数据的源点或终点.
2.某银行的计算机储蓄系统功能是:
将储户填写的存款单或取款单输入系统,如果是存款,系统记录存款人姓名、住址、存款类型、存款日期、利率等信息,并打印出存款单给储户;
如果是取款,系统计算清单储户。
请用DFD和IDEF0描绘该功能的需求,并建立相应的数据字典。
(1)数据流条目:
数据流名称:
存款单
别名:
无
简述:
储户存款时填写的项目
来源:
储户
去向:
记帐
数据流量:
未知
组成:
姓名+住址+存款类型+存款日期+利率
取款单
储户取款时填写的项目
统计
姓名+住址+取款类型+取款日期+利率
清单
储户取款后得到的项目
记录
姓名+住址+取款类型+取款日期+利率+余额
(2)数据存储条目:
数据存储名称:
账单
存放储户信息及其账目
姓名+住址+余额+存款类型+最后修改日期+利率
组织方式:
查询要求:
能立即查询
(3)数据项条目:
未知
(4)加工条目:
加工名:
分类检查
编号:
激发条件:
接收到存/取款单
优先级:
优先
输入:
存/取款单
输出:
加工逻辑:
IF存款单THEN把存款单输出到统计
ELSE
把取款单输出到统计
ENDIF
根据账单检查此储户是否存在,不存在输出错误{
IF取款数<
余额THEN余额=余额-取款数
输出清单到储户,输出现金到储户
输出错误清单到储户
}
根据账单检查此储户是否存在,不存在则建立此储户{
余额=余额+存款数
输出存款单到储户
}
关于软件工程中的判定树和判定表
判定树又称决策树,是一种描述加工的图形工具,适合描述问题处理中具有多个判断,而且每个决策与若干条件有关。
使用判定树进行描述时,应该从问题的文字描述中分清哪些是判定条件,哪些是判定的决策,根据描述材料中的联结词找出判定条件的从属关系、并列关系、选择关系,根据它们构造判定树。
【例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件以内的方案处理。
上述处理功能用判定树描述,如下图所示
这一判定树比起文字叙述,使人一目了然,清晰地表达了在什么情况下采取什么策略,不易产生逻辑上的混乱。
因而判定树是描述基本处理逻辑功能的有效工具。
==============================================
判定表由四部分组成。
第一部分即①表示的部分,判定标的左上部称为基本条件项,列出各种可能的条件。
第二部分即②表示的部分,判定标的右上部称为条件项,它列出了各种可能的条件组合。
第三部分即③表示的部分,判定标的左下部称为基本动作项,它列出了所有的操作。
第四部分即④表示的部分,判定标的右下部称为动作项,它列出在对条件组合下所选的操作。
【例4.6】以学生的奖学金评定为例,说明判定表的应用。
奖励的目的在于鼓励学生的品学兼优,此处理功能是要合理确定奖学金评定等级。
决定受奖的条件为:
成绩优秀占70%或50%以上,成绩为中或中以下占15%或20%以下,团结纪律为优良或一般者。
奖励方案为一等奖、二等奖、三等奖、鼓励奖四种。
因为受奖条件有些是相容的,相互组合的项较多。
描述此学生奖励政策的判定表如下图所示:
由上图可见,判定表将比较复杂的决策问题简洁、明确、一目了然地描述出来,它是描述条件比较多的决策问题的有效工具。
判定表或判定树都是以图形形式描述数据流的加工逻辑,它结构简单,易懂易读。
尤其遇到组合条件的判定,利用判定表或判定树可以使问题的描述清晰,而且便于直接映射到程序代码。
在表达一个加工逻辑时,判定数、判定表都是好的描述工具,根据需要可以交叉使用。
4.选择一个系统(例如人事档案管理系统、图书管理系统、医院监护系统、足球俱乐部管理系统、财务管理系统、学生选课系统、飞机订票系统等),用SA方法对它进行分析,画出系统的分层DFD图。
∙下面是一个学生选课系统的DFD。
新补充:
1、某图书出版公司希望每月定期向固定客户邮寄最近一个月的图书分类目录。
客户可在其收到的目录上圈定自己要买的书。
出版公司按照客户的反馈信息邮寄图书。
要求为出版公司设计软件,以实现以下功能:
(1)自动生成图书分类目录;
(2)自动处理客户反馈信息。
试用面向数据流的方法给出系统的数据流图,并设计出软件结构图。
第四章概要设计
3.衡量模块独立性的两个标准是什么?
它们各表示什么含义?
两个定性的度量标准:
耦合与内聚性
耦合性:
也称块间联系。
指软件系统结构中各模块间相互联系紧密程度的一种度量。
模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。
内聚性:
也称块内联系。
指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。
模块内元素联系越紧密,内聚性越高。
6.什么是软件结构?
简述软件结构设计优化准则。
软件结构:
软件系统的模块层次结构,反映了整个系统的功能实现,即将来程序的控制体系。
软件结构设计优化准则:
a.划分模块时,尽量做到高内聚,低耦合,保持模块相对独立性,以此为原则优化初始的软件结构。
b.一个模块的作用范围应在其控制范围之内,且判定所在的模块应与受其影响的模块在层次上尽量靠近
c.软件的深度、宽度、扇入、扇出应适当。
D.模块的大小要适中。
E.模块的控制范围模块的接口要简单、清晰、含义明确,便于理解,易于实现、测试与维护。
2、已知模块C中的一个判定影响到模块B,如图所示,它违反了SD的设计原则。
试问:
可以采用哪些手段对结构图作改进,请说明改进办法并画出改进的结构图。
3、已知有一抽象的DFD图如下所示,请用SD方法画出相应的结构图。
答:
4、高考录取统分子系统有如下功能:
(1)计算标准分:
根据考生原始分计算,得到标准分,存入考生分数文件;
(2)计算录取线分:
根据标准分、招生计划文件中的招生人数,计算录取线,存入录取线文件。
试根据要求画出该系统的数据流程图,并将其转换为软件结构图。
(1)数据流图:
(2)软件结构图:
①原始分②标准分③招生计划④录取线
5、图书馆的预定图书子系统有如下功能:
(1)由供书部门提供书目给订购组。
(2)订书组从各单位取得要订的书目。
(3)根据供书目录和订书书目产生订书文档留底。
(4)将订书信息(包括数目,数量等)反馈给供书单位。
(5)将未订书目通知订书者。
(6)对于重复订购的书目由系统自动检查,并把结果反馈给订书者。
试根据要求画出该问题的数据流程图,并把其转换为软件结构图。
(1)数据流图:
(2)软件结构图:
第五章详细设计
1.选择一种将三个数从小到大排序的算法,分别用
(1)流程图,
(2)N-S图,(3)PAD图描述其详细过程。
设数为a,b,c,其详细过程如下:
(1)流程图
(2)N-S图
(3)PAD图
第六章实现
第七章软件测试
1、对下列子程序进行调试:
procedureexample(y,z:
real;
varx:
real)
begin
if(y>
1)and(z=0)thenx:
=x/y;
if(y=2)or(x=l)thenx:
=x+l;
end.
该子程序接受x,y,z的值,并将计算结果x的值返回给调用程序。
答题要求:
(1)画出流程图。
(2)用白盒法设计测试用例,并写出它所满足的是何种覆盖标准、预期结果以及路径。
(1)流程图
(2)用白盒法中条件组合覆盖设计测试用例:
①y=2,z=0,x=4;
②y=2,z=1,x=1;
③y=1,z=0,x=2;
④y=1,z=1,x=1.
2、某报表处理系统要求用户输入处理报表的日期,日期限制在2003年1月至2008年12月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入错误信息。
系统日期规定由年、月的6位数字字符组成,前四位代表年,后两位代表月。
现要求用黑盒测试法中的边界值法写出测试用例。
输入条件测试用例说明测试数据
报表日期的1个数字字符5
类型及长度5个数字字符20035
7个数字字符2003005
有1个非数字字符2003.5
全部是非数字字符MAY---
6个数字字符200305
日期范围在有效范围200301
边界上选取200812
数据200300
200813
月份范围月份为1月200301
月份为12月200312
月份<
1200300
月份>
12200313
3、对以下程序进行测试:
PROCEDUREEX(A,B:
REAL;
VARX:
REAL);
BEGIN
IF(A=3)OR(B>
1)THENX:
=A×
B
IF(A>
2)AND(B=0)THENX:
=A-3
END
先画出程序流程图。
再按不同逻辑覆盖法设计一种(写出名称)测试数据。
语句覆盖 A=3B=0
4、程序功能说明书指出,某程序的输入条件为:
每个学生可以选修1至3门课程,试用黑盒法设计测试用例。
(1)按等价分类法设计测试用例(要求列出设计过程)
(2)按边缘值分析法设计测试用例。
1)合理等价类
选修1门
选修2门
选修3门
不合理等价类
没选课
选3门以上
测试用例
选修=2
选修=0
选修>
3
2)边缘值法
0,1,3,4
5、设被测试的程序段为:
begin
s1;
if(x=0)and(y>
2)
thens2;
if(x<
1)or(y=1)
thens3;
s4;
end
可供选择的测试数据组为:
xy
Ⅰ03
Ⅱ12
Ⅲ-12
Ⅳ31
找出实现
(1)语句覆盖;
(2)条件覆盖;
(3)判定覆盖至少要选择的数据组。
(1)Ⅰ
(2)Ⅰ,Ⅳ(3)Ⅰ,Ⅱ
二.某电力公司有A、B、C、D共四类收费标准,并规定,居民用电每月200度以下按A类收费,200度以上按B类收费。
动力电以每月1万度为分界,非高峰用电不足1万度按B类收费,达到或超过1万度按C类收费。
高峰用电不足1万度按C类收费,达到或超过1万度按D类收费。
试用基于逻辑的测试方法为它设计足够的测试用例实现条件组合的完全覆概。
规则号
1
2
3
4
5
6
居民
用电
200度以下
Y
200度以上
动力用电
非高峰
1万度以下
1万度以上
高峰
收费
标准
A类
▲
B类
C类
D类
测试用例
用电类型
输入数据
预期结果
90度/月
A
110度/月
非
8000度/月
12000度/月
C
9000度/月
11000度/月
D
三.如图显示某程序的逻辑结构。
试为它设计足够的测试用例,分别实现对程序的判定覆概、条件覆概和条件组合覆概。
设计测试方案
覆盖种类
需满足的条件
测试数据
期望结果
判定覆盖
A>
1,B=0
A=2,B=0
执行S1
1,B≠0或
A≤1,B=0或
A≤1,B≠0
A=2,B=1或
A=1,B=0或
A=1,B=1
执行S2
条件覆盖
以下四种情况各出现一次
B=0
A=2,B=0
A≤1
B≠0
A=1,B=1
条件组合
覆盖
1,B≠0
A=2,B=1
A≤1,B=0
A=1,B=0
四.某城市电话号码由三部分组成。
它们的名称和内容分别是:
地区码:
空白或三位数字;
前缀:
非‘0’或‘1’的三位数字;
后缀:
4位数字。
假定被测程序能接受一切符合上述规定的电话号码,拒绝所有不符合规定的电话号码。
根据该程序的规格说明,作等价类的划分,并设计测试方案。
1.划分等价类
输入条件
有效等价类
无效等价类
地区码
1.空白;
2.三位数;
1.
有非数字字符;
2.少于三位数字;
3.多于三位数字。
前缀
3.从200到999之间的三位
4.有非数字字符;
5.起始位为‘0’;
6.起始位为‘1’;
7.少于三位数字;
8.多于三位数字。
后缀
4.四位数字。
9.有非数字字符;
10.少于四位数字;
11.多于四位数字。
§
8-2购物环境与消费行为2004年3月20日设计测试方案
送人□有实用价值□装饰□方案
内容
输入
预期
输出
成功秘诀:
好市口+个性经营前缀
10元以下□10~50元□50~100元□100元以上□后缀
综上所述,DIY手工艺品市场致所以受到认可、欢迎的原因就在于此。
我们认为:
这一市场的消费需求的容量是极大的,具有很大的发展潜力,我们的这一创业项目具有成功的前提。
创新是时下非常流行的一个词,确实创新能力是相当重要的特别是对我们这种经营时尚饰品的小店,更应该勇于创新。
在这方面我们是很欠缺的,故我们在小店经营的时候会遇到些困难,不过我们会克服困难,努力创新,把我们的小店经营好。
空白
当然,在竞争日益激烈的现代社会中,创业是件相当困难的事。
我们认为,在实行我们的创业计划之前,我们首先要了解竞争对手,吸取别人的经验教训,制订相应竞争的策略。
我相信只要我们的小店有自己独到的风格,价格优惠,服务热情周到,就一定能取得大多女孩的信任和喜爱。
200~999之间的三位数字
四位数字
()276-2345
有效
三位数字
(635)805-9321
创业首先要有“风险意识”,要能承受住风险和失败。
还要有责任感,要对公司、员工、投资者负责。
务实精神也必不可少,必须踏实做事;
有非数字字符
(20A)723-4567
无效
少于三位数字
(33)234-5678
多于三位数字
(5555)345-6789
(345)5A2-3456
7
起始位为‘0’
(345)012-3456
8
起始位为‘1’
(345)132-3456
9
(345)92-3456
10
(345)4562-3456
11
(345)342-3A56
12
少于四位数字
(345)342-356
13
多于四位数字
(345)562-34567
第八章软件维护
1、软件维护有哪些内容?
a、校正性维护b、适应性维护c、完善性维护d、预防性维护
第九章
第十章面向对象技术
1、
说明对象、类、类结构、消息的基本概念?
对象:
是客观实体在问题域中的抽象。
类:
具有相似或相同性质的对象的抽象就是类。
类结构:
类的结构通常有一般----具体(分类结构)整体---抽象(组装结构)
消息:
对象之间通信的构造。
2、
面向对象的特征和要素?
特征:
一致性、多态性、分类性、继承性。
要素:
共享、封装、抽象。
第十二章软件工程管理
3、软件开发
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 习题 解答 解析 教学 文稿