软件工程导论第五版课后习题答案

软件工程导论第五版课后习题答案

ID:15051446

大小:2.53 MB

页数:43页

时间:2018-08-01

软件工程导论第五版课后习题答案_第1页
软件工程导论第五版课后习题答案_第2页
软件工程导论第五版课后习题答案_第3页
软件工程导论第五版课后习题答案_第4页
软件工程导论第五版课后习题答案_第5页
资源描述:

《软件工程导论第五版课后习题答案》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《软件工程导论》课后习题答案第一章软件工程概论1-11.什么是软件危机?  软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。这些问题表现在以下几个方面:   (1)用户对开发出的软件很难满意。   (2)软件产品的质量往往靠不住。   (3)一般软件很难维护。   (4)软件生产效率很低。   (5)软件开发成本越来越大。   (6)软件成本与开发进度难以估计。   (7)软件技术的发展远远满足不了计算机应用的普及与深入的需要。2.软件危机有那些典型表现?(1)对软件开发成本和进度的估计常常很不准确。(2)用户对“已完成的”软件系统不满意的

2、现象经常发生。(3)软件产品的质量往往靠不住。(4)软件常常是不可维护的。(5)软件通常没有适当的文档资料。(6)软件成本在计算机系统总成本中所占的比例逐年上升。(7)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。3.为什么会产生软件危机?(1)开发人员方面,对软件产品缺乏正确认识,没有真正理解软件产品是一个完整的配置组成。造成开发中制定计划盲目、编程草率,不考虑维护工作的必要性。(2)软件本身方面,对于计算机系统来说,软件是逻辑部件,软件开发过程没有统一的、公认的方法论和规范指导,造成软件维护困难。(3)尤其是随着软件规模越来越大,复杂

3、程度越来越高,原有软件开发方式效率不高、质量不能保证、成本过高、研制周期不易估计、维护困难等一系列问题更为突出,技术的发展已经远远不能适应社会需求。4.怎样克服软件危机?(1)充分吸收和借鉴人类长期以来从事各种工程项目中积累的行之有效的有效原理、概念、技术与方法,特别是吸取几十年来人类从事计算机硬件研究和开发的经验教训。在开发软件的过程中努力作到良好的组织,严格的管理,相互友好的协作。(2)推广在实践中总结出来的开发软件的成功的技术和方法,并研究更好、更有效的技术和方法,尽快克服在计算机系统早期发展阶段形成的一些错误概念和作法。(3)根据不同的应用领域,开发

4、更好的软件工具并使用这些工具。将软件开发各个阶段使用的软件工具集合成一个整体,形成一个很好的软件开发支环环境。总之为了解决软件危机,既要有技术措施(方法和工具),又要有必要的组织管理措施。1-3、1-5、根据历史数据可以做出如下的假设:对计算机存储容量的需求大致按下面公式描述的趋势逐年增加:M=4080e0.28(Y-1960)存储器的价格按下面公式描述的趋势逐年下降:P1=0.3×0.72Y-1974(美分/位)如果计算机字长为16位,则存储器价格下降的趋势为:P2=0.048×0.72Y-1974(美元/字)在上列公式中Y代表年份,M是存储容量(字数),

5、P1和P2代表价格。基于上述假设可以比较计算机硬件和软件成本的变化趋势。要求计算:(1)在1985年对计算机存储容量的需求估计是多少?如果字长为16位,这个存储器的价格是多少?(2)假设在1985年一名程序员每天可开发出10条指令,程序员的平均工资是每月4000美元。如果一条指令为一个字长,计算使存储器装满程序所需用的成本。(3)假设在1995年存储器字长为32位,一名程序员每天可开发出30条指令,程序员的月平均工资为6000美元,重复(1)、(2)题。1-6什么是软件过程?它与软件工程方法学有何关系?软件过程是为了开发出高质量的软件产品所需完成的一系列任务

6、的框架,它规定了完成各项任务的工作步骤。软件过程定义了运用技术方法的顺序、应该交付的文档资料、为保证软件质量和协调软件变化必须采取的管理措施,以及标志完成了相应开发活动的里程碑。软件过程是软件工程方法学的3个重要组成部分之一。4.构成软件项目的最终产品:  应用程序、系统程序、面向用户的文档资料和面向开发者的文档资料。5.什么是软件生存周期?  软件生存周期是指从软件定义、开发、使用、维护到淘汰的全过程。6.软件生存周期为什么划分成阶段?  (1)任何一个阶段的具体任务不仅独立,而且简单,便于不同人员分工协作,从而降低整个软件开发工作的困难程度。  (2)可

7、以降低每个阶段任务的复杂程度,简化不同阶段的联系,有利于工程的组织管理,也便于采用良好的技术方法。  (3)使软件开发的全过程以一种有条不紊的方式进行,保证软件的质量,特别是提高了软件的可维护性。7.应该怎样来划分阶段?  (1)每一个阶段的任务尽可能独立;  (2)同一阶段内的任务性质尽可能相同;  (3)每一个阶段任务的开始和结束有严格的标准。8.软件开发模型有几种?它们的开发方法有可特点?  软件开发模型有瀑布型、渐增型和变换型。  瀑布型开发方法是按照软件生存周期的划分依次实施,每一个阶段有明确规定的任务。它的特点:   (1)各个阶段的顺序性和依赖

8、性;   (2)划分逻辑设计与物理设计,尽可能推迟程

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。