软件工程导论作业答案Word文档下载推荐.docx
- 文档编号:19212184
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:26
- 大小:747.97KB
软件工程导论作业答案Word文档下载推荐.docx
《软件工程导论作业答案Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《软件工程导论作业答案Word文档下载推荐.docx(26页珍藏版)》请在冰豆网上搜索。
22371*4000=89484000(美元)
(3)1995年对存储容量的需求,估计为
M=4080e0.28(1995-1960)=73577679字
字长为32位,则这个存储器的价格为
P=0.003*32*0.721995-1974*73577679=7127(美元)
在1995年一名程序员每天可开发出30条指令,每月开发600条指令,需要的工作量是73577679/600=122629人月,成本为122629*6000=735776790美元
1-6什么是软件过程?
它与软件工程方法学有何关系?
答:
●软件过程:
是为了获得高质量软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
它定义了运用技术方法的顺序、应该交付的文档资料、为保证软件质量和协调软件变化必须采取的管理措施,以及标志完成了相应开发活动的里程碑。
●软件工程方法学:
通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学,也称范型。
软件过程是软件工程方法学的3个重要组成部分之一。
1-7什么是软件生命周期模型?
软件生命周期划分成哪些阶段。
简单描述重要的过程模型。
●软件生命周期(各阶段)软件生命周期由软件定义、软件开发和运行维护三个时期组成。
1.软件定义时期划分为三个阶段:
问题定义、可行性研究和需求分析
2.开发时期:
总体设计、详细设计、编码和单元测试、综合测试。
3维护时期:
主要任务是使软件持久地满足用户的需要
生命周期模型规定了把生命周期划分成哪些阶段及各个阶段的执行顺序,因此,也成为过程模型。
–瀑布模型:
1.可强迫开发员采用规范的方法2.严格地规定了每个阶段必须提交的文件3.要求每个阶段交出的所有产品都必须经过质量保证小组的仔细验证。
–缺点:
传统的瀑布模型过于理想化,是由文档驱动的。
–快速原型模型:
通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用户反馈意见的方法,获取用户真正的需要。
–增量模型:
能在较短时间内向用户提交可完成部分工作的产品;
逐步增加产品功能可以使用户有较充实的时间学习和适应新产品,从而减少一个全新的软件可能给客户组织带来的冲击。
螺旋模型:
对可选方案和约束条件的强调有利于已有软件的重用;
减少了过多测试;
维护只是螺旋模型中另一个周期。
1-11说明敏捷过程的适用范围。
敏捷过程具体对变化和不确定性的更快速、更敏捷的反应特性,而且在快速的同时仍然能保持可持续的开发速度,因此较适用于开发可用资源及开发时间都有较苛刻约束的小型项目。
第二章
2-1在软件开发的早期阶段为什么要进行可行性研究?
应该从那些方面研究目标系统的可行性?
并非任何问题都有简单明显的解决办法,事实上,许多问题不可能在预定的系统规模或时间期限之内解决。
如果没有可行的解,那么花费在这项工程上的任何时间、人力、软硬件资源和经费,都是无谓的浪费。
可行性研究的目的,就是用最小的代价在尽可能短的时间内确定问题是否能否解决。
●可行性研究的任务:
1.进一步分析和澄清问题;
2.导出系统的逻辑模型;
3.从逻辑模型出发,提出若干种系统实现方案4.研究每种实现方案的可行性:
●技术上的可行性——使用现有的技术能实现这个系统吗?
●经济上的可行性——这个系统的经济效益能超过它的开发成本吗?
(投资与效益)
●操作可行性——系统的操作方式在这个用户组织内行得通吗?
●社会、政策允许的可行性
2-4答:
问题定义:
本题要开发一个病人监护系统,实现对病人症状的自动监护,形成病人日志记录,减少人力的浪费。
在监控过程中,随时接受病人的生理信息(脉搏、体温、血压、心电图),对病人的不正常生理信息(超出医生规定的安全范围的信息)发出警告,并向护士发出警告信息。
护士还可以根据需要打印病人的病情报告。
2-5北京某高校可用的电话号码由以下几类:
校内电话号码由4位数字组成,第一位数字不是零;
校外电话又分为本市电话和外地电话两类,拨校外电话先拨0,若是本地电话再接着拨8位数字(固话第一位不是0)或11位数字(移动电话第一位为1);
若是外地电话,则拨3位区码再拨8位电话号码(固话第一位不是0),或拨0再拨11位数字(移动电话第一位为1)。
请用数据定义的方法,定义上述电话号码。
●电话号码=[校内电话号码|校外电话号码]
●校内电话号码=非零数字+3位数字//后面继续定义
●校外电话号码=[本市号码|外地号码]
●本市号码=数字零+8位数字
●外地号码=数字零+3位数字+8位数字
●非零数字=[1|2|3|4|5|6|7|8|9]
●数字零=0
●3位数字=3{数字}3//3至3个数字
●8位数字=非零数字+7位数字
●7位数字=7{数字}7
●数字=[0|1|2|3|4|5|6|7|8|9]
第三章
3-1为什么要进行需求分析?
通常对软件系统有哪些需求?
为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求,不论软件工程师把设计和编码工作做得如何出色,不能真正满足用户需求的程序只会令用户失望。
需求分析的任务不是确定系统怎样完成它的工作,而是确定系统必须完成哪些工作,对目标系统提出完整、清晰、准确、具体的要求。
一、综合需求
功能需求、性能需求、可靠性和可用性需求、出错处理需求、接口需求、约束、逆向需求、将来可能提出的要求
二、数据要求
三、行为建模机制
3-2怎样与用户沟通以获取真实需求?
一访谈:
正式访谈、非正式访谈、情景分析技术
二面向数据流自顶向下求精
三简易的应用规格说明技术
四快速建立软件原型
3-3银行计算机储蓄系统
一、系统的分层数据流图
二、ER模型
✓本问题中共有两类实体,分别是“储户”和“储蓄所”,在它们之间存在“存取款”关系。
因为一位储户可以在多家储蓄所存取款,一家储蓄所拥有多位储户,所以“存取款”是多对多(M:
N)关系。
✓储户的属性主要有姓名、住址、电话号码和身份证号码,储蓄所的属性主要是名称、地址和电话号码,而数额、类型、到期日期、利率和密码则是关系类型存取款的属性。
3-4机票预订系统
某航空公司拟开发一个机票预定系统。
旅行社把预订机票的旅客信息(姓名、性别…等)输入进该系统,系统为旅客安排航班,印出取票通知和账单,旅客在飞机起飞的前一天凭取票通知和账单交款取票,系统核对无误即印出机票给旅客。
3-5
●从问题陈述可知,本系统数据源点是“病人”和“护士”,他们分别提供生理信号和要求病情报告的信息。
进一步分析问题陈述,从系统应该“定时记录病人情况以形成患者日志”这项要求可以想到,还应该有一个提供日期和时间信息的“时钟”作为数据源点。
●从问题陈述容易看出,本系统的数据终点是接收警告信息和病情报告的护士。
●系统对病人生理信号的处理功能主要是“接收信号”、“分析信号”和“产生警告信息”。
●此外,系统还应该具有“定时取样生理信号”、“更新日志”和“产生病情报告”的功能。
●为了分析病人生理信号是否超出了医生规定的安全范围,应该存储“患者安全范围”信息。
此外,定时记录病人生理信号所形成的“患者日志”,显然也是一个数据存储。
第一种方法
第二种方法
3-6
第五章
5-3答:
一、储蓄系统
二、机票预订系统
5-4答:
适合于第1种算法
第六章
6-3答:
6-4答:
6-5答:
(1)
(3)
6-7答:
6-8答:
17-13+2=6
第七章
7-4答:
7-5答:
(2)
7-8答:
(1)假设在程序的平均无故障时间和测试时间t之间存在线性关系
MTTF=at+b
根据题意可知,当t=1时,MTTF=10,当t=2时,MTTF=15,代入方程,可得
MTTF=5+5t
a.为使MTTF=100,t=19,即需要19个月的集成测试。
b.
MTTF=100h时,EC(t)=42,还有3个错误潜伏在程序中。
7-10
本题中采用了分别测试法,因此可以估算出刚开始测试时程序中错误总数为:
ET=24/6*20=80
因为:
10=24000/K(ET-20)k=40
所以为使MTTF达到60h,必须改正60=24000/40*(80-EC)得EC=70还需改正50
第八章
8-2答:
通常“对一个已有的软件做重大修改”意味着对软件功能做较大变更或增加较多新功能,这往往需要修改软件的体系结构。
因此,了解原有软件的总体情况是很重要的。
程序的规格说明书准确地描述了对软件系统的数据要求、功能需求、性能需求、可靠性和可用性需求,出错处理需求、接口需求、约束、逆向需求及将来可能提出的需求,对了解已有软件的总体情况有很大帮助。
在对已有软件做重大修改之前仔细阅读、认真研究这份文档,可以避免许多修改错误。
因此,应该选取这份文档。
有经验的软件工程师通过阅读含有适当数量注解的源程序,不难搞清程序的实现算法,没有描述详细设计结果的文档并不会给维护工作带来太大困难。
此外,为了修改程序代码,原有程序的清单是必不可少的。
因此,为了对这个软件做重大修改,应该选取的第二份文档是源程序清单。
8-3答略
第九章
9-2答:
对象是用面向对象方法学开发软件时对客观世界实体的抽象,它是由描述实体属性的数据及可以对这些数据施加的所有操作封装在一起构成的统一体。
传统的数据是用传统方法学开发软件时对客观世界实体的抽象。
但是,这种抽象是不全面的:
数据智能描述实体的静态属性,不能描述实体的动态行为。
必须从外界对数据施加操作,能能改变数据实现实体应有的行为。
对象与传统数据有本质区别,他不是被动地等待外界对它施加操作,相反,它是进行处理的主体。
必须发消息请求对象主动地执行它的某些操作,处理他的私有数据。
而不能直接从外界对他的私有数据进行草组。
9-5答:
所谓模型,就是为了理解事物而对事物做出的一种抽象,是对事物的一种无歧义的书面描述。
通常,模型由一组图示符号和组织这些符号的规则组成,利用它们来定义和描述问题域中的术语和该念。
更进一步讲,模型是一种思维工具,利用这种工具可以把知识规范地表示出来。
在开发软件的过程中,为了更好地理解客户要求解决的问题,往往需要建立问题域的模型。
为了开发复杂的系统,系统分析员应该从不同角度抽象出目标系统的特性,使用精确地表示方法构造系统的模型,验证模型是否满足客户对目标系统的需求,并在设计过程中主见吧和实现有关的细节加紧模型中,直至最终用程序实现这个模型。
对于那些因过分复杂而不能直接理解的系统,特别需要建立模型,建模的目标主要是为了降低复杂性。
人的头脑每次只能处理少量信息,模型通过把系统的重要部分分解为人的头脑一次能处理的若干个字部分,从而减少了系统的复杂程度。
9-9答:
9-10答:
第十章
10-4答:
第十三章
13-3答:
(1)习题中仅对需求做了粗略描述,每项需求都应该进一步扩展,以提供细节需求和定量约束。
例如,在开始估算软件规模之前,需要确定“良好的人机界面设计特征”的具体含义,以及对“CAD数据库”的规模和复杂度的具体需求。
经过对需求的进一步精化,分解出软件的下述7个主要的子功能。
用户界面及控制机制
二维几何图形分析
三维几何图形分析
数据库管理
计算机图形显示机制
外部设备控制
设计分析模块
(2)为了用代码行技术估算软件规模,应该针对每个子功能都分别估计出下述3个值:
乐观值(即最小规模)、悲观值(即最大规模)和可能值(即最可能规模)。
然后用加权平均法计算每个子功能的规模。
结果如下:
功能
乐观值
可能值
悲观值
估计值
1500
2200
3500
2300
3800
5400
6400
.5300
4600
6900
8600
6800
1850
3200
5450
3350
3100
4900
7000
4950
1400
2150
2600
2100
6200
8500
10200
8400
估算出的总代码行数
33200
(3)使用功能点技术估算软件规模时,对软件的分解时基于信息域特性而不是基于软件功能,下表给出了5个信息域特性的估计值,为了计算未调整的功能点数,假设每个信息域特性的复杂度都是平均级别的。
未调整的功能点数
信息域值
特性系数
UFP数
输入数
20
24
30
4
96
输出数
12
15
22
16
5
80
查询数
28
88
文件数
10
40
外部接口数
2
3
7
14
总计数值
318
接下来估计14个技术复杂性因素的值,并且计算DI的值。
得到如下结果
因素
数据通信
复杂的计算
分布式数据处理
可重用性
性能标准
安装方便
高负荷硬件
操作方便
高处理率
可移植性
联机数据输入
可维护性
终端用户效率
DI
49
联机更新
计算技术复杂性因子TCF=0.65+0.01*DI=1.14
最后计算功能点数:
FP=UFP*TCF=318*1.14=363
(4)用代码行技术估算,开发本系统的工作量为
E=33200/620=54人月
开发成本为54*8000=432000元
(5—)用功能点技术估算,开发本系统的工作量为
E=363/6.5=56人月
开发成本为56*8000=448000元
13-4答:
由于待开发的应用系统类似于以前做过的系统,开发人员已经积累了丰富的经验,没有多少技术难题需要攻克。
为了减少通信开销,充分发挥技术骨干的作用,统一意志统一行动,提高生产率,加快开发速度,项目组的组织结构以基于主程序员的组织形式为好。
针对待开发的系统,客户已经写出了完整的需求文档,项目组又有开发类似系统的经验,因此,可以采用广大软件工程师熟悉的瀑布模型来开发系统。
13-10答:
IEEE把基线定义为:
已经通过了正式复审的规格说明或中间产品,它可以作为进一步开发的基础,并且只有通过正式的变化控制过程才能改变它。
基线就是通过了正式复审的软件配置项。
◆在软件配置项变成基线之前,可以迅速而非正式地修改它。
◆一旦建立了基线之后,虽然仍然可以实现变化,但是,必须应用特定的、正式的过程来评估、实现和验证每个变化。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 导论 作业 答案