软件工程导论第5版习题十三参考答案.pdf

软件工程导论第5版习题十三参考答案.pdf

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

3、下面叙述对一个计算机辅助设计(CAD)软件的需求:

该CAD软件接受由工程师提供的二维或三维几何图形数据。工程师通过用户界面与

CAD系统交互并控制它,该用户界面应该表现出良好的人机界面设计特征。几何图形数据及

其他支持信息都保存在一个CAD数据库中。开发必要的分析、设计模块,以产生所需要的

设计结果,这些输出将显示在各种不向的图形设备上。应该适当地设计软件,以便与外部设

备交互并控制它们。所用的外部设备包括鼠标、数字化扫描仪和激光打印机。

要求:

(1)进一步精化上述要求,把CAD软件的功能分解成若干个子功能;

(2)用代码行技术估算每个子功能的规模;

(3)用功能点技术估算每个子功能的规模;

(4)从历史数据得知,开发这类系统的平均生产率是620LOC/PM,如果软件工程师的平

均月工资是8000元,请估算开发本系统的工作量和成本;

(5)如果从历史数据得知,开发这类系统的平均生产率是6.5FP/PM,请估算开发本系

统的工作量和成本。

答:

(1)习题中仅对需求做了粗略描述,每项需求都应该进一步扩展,以提供细节需求和定量

约束。例如,在开始估算软件规模之前,需要确定“良好的人机界面设计特征”的具体含义,

以及对“CAD数据库”的规模和复杂度的具体需求。

经过对需求的进一步精化,分解出软件的下述7个主要的子功能:

·用户界面及控制机制;

·二维几何图形分析;

·三维几何图形分析;

·数据库管理;

·计算机图形显示机制;

·外部设备控制;

·设计分析模块。

(2)为了用代码行技术估算软件规模,应该针对每个子功能都分别估计出下述3个值:乐

观值(即最小规模),悲观值(即最大规模)和可能值(即最可能规模)。然后用式(10.1)所示的加

权平均法计算每个子功能的规模,结果示于表l0.4。

(3)使用功能点技术估算软件规模时,对软件的分解是基于信息域特性而不是基于软件功

能。表l0.5给出了对5个信息域特性的估计值。为了计算未调整的功能点数,假设每个信

息域特性的复杂度都是平均级别的。

接下来估计14个技术复杂性因素的值,并且计算Dl的值,表l0.6列出了得到的结果。

然后用下式计算技术复杂性因子:

TCF=0.654–0.01×DI=1.14

最后计算功能点数:

FP=UFP×TCF=318×1.14=363

(4)用代码行技术估算,开发本系统的工作量为:

E==33200/620≈54(人月)

开发本系统的成本为:

8000×54=432000(元)

(5)用功能点技术估算,开发本系统的工作量为:

E=363/6.5≈56(人月)

开发本系统的成本为:

8000×56=448000(元)

4、假设你被指定为项目负责人,你的任务是开发一个应用系统,该系统类似于你的小组以

前做过的那些系统,只不过规模更大且更复杂一些。客户已经写出了完整的需求文档。你将

选用哪种项目组结构?为什么?你打算采用哪种软件过程模型?为什么?

答:

由于待开发的应用系统类似于以前做过的系统,开发人员已经积累了较丰富的经验,没

有多少技术难题需要攻克。为了减少通信开销,充分发挥技术骨干的作用,统一意志统一行

动,提高生产率,加快开发进度,项目组的组织结构以基于主程序员组的形式为宜。

针对待开发的系统,客户已经写出了完整的需求文档,项目组又有开发类似系统的经验,

因此,可以采用广大软件工程师熟悉的瀑布模型来开发本系统。

12、CMM的基本思想是什么?为什么要把能力成熟度划分成5个等级?

答:

CMM的基本思想是,由于软件危机是因我们对软件过程管理不善而引起的,所以新软

件技术的运用并不会自动提高软件的生产率和质量,提高软件生产率和软件质量的关键,是

改进对软件过程的管理。能力成熟度模型有助于软件开发机构建立一个有规律的、成熟的软

件过程。

对软件过程的改进不可能一蹴而就,只能是在完成一个又一个小的改进步骤基础上不断

进行的渐进过程。因此,CMM把软件过程从无序到有序的进化过程分成5个阶段,并把这

些阶段排序,形成5个逐层提高的等级。这5个成熟度等级定义了一个有序的尺度,用以测

量软件机构的软件过程成熟度和评价其软件过程能力,这些等级还

文档评论(0)

176****8341 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档