软件工程概论课后答案_第1页
软件工程概论课后答案_第2页
软件工程概论课后答案_第3页
软件工程概论课后答案_第4页
软件工程概论课后答案_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件工程概论课后答案一、选择题1.软件工程的出现是由于()A.程序设计方法学的影响B.软件产业化的需要C.软件危机的出现D.计算机的发展

答案:C解析:软件危机的出现促使人们去寻找一种科学的软件开发方法,从而导致了软件工程的诞生。

2.软件工程三要素是()A.方法、工具和过程B.方法、工具和平台C.方法、平台和过程D.工具、平台和过程

答案:A解析:软件工程三要素包括方法、工具和过程。方法是完成软件开发的各项任务的技术方法;工具是为运用方法而提供的自动的或半自动的软件工程支撑环境;过程是为了获得高质量的软件所需要完成的一系列任务的框架。

3.瀑布模型的关键不足在于()A.过于简单B.不能适应需求的动态变更C.过于灵活D.各个阶段需要进行评审

答案:B解析:瀑布模型是一种线性的软件开发模型,要求软件开发严格按照需求分析、设计、编码、测试、维护等阶段顺序进行,前一个阶段完成后才能进入下一个阶段。这种模型的关键不足在于不能适应需求的动态变更,如果在开发过程中需求发生了变化,那么需要对前面已经完成的阶段进行大量的修改,成本较高。

4.快速原型模型的主要特点之一是()A.开发完毕才见到产品B.及早提供全部完整的软件产品C.开发完毕后才见到工作软件D.及早提供工作软件

答案:D解析:快速原型模型的主要特点是快速构建软件原型,让用户尽早看到工作软件,以便获取用户反馈,及时调整需求和设计。

5.软件生命周期中花费费用最多的阶段是()A.详细设计B.软件编码C.软件测试D.软件维护

答案:D解析:软件维护阶段是软件生命周期中花费费用最多的阶段,因为在软件交付使用后,需要不断地对软件进行修改、完善和优化,以适应新的需求和环境变化。

二、填空题1.软件工程是一门指导计算机软件开发和()的工程学科。

答案:维护

2.软件是程序、数据及()的集合。

答案:相关文档

3.软件危机主要表现在()和软件维护困难两个方面。

答案:软件开发生产率低、软件质量难以保证

4.软件生命周期包括软件定义、()和软件维护三个阶段。

答案:软件开发

5.软件开发模型有瀑布模型、快速原型模型、()、螺旋模型等。

答案:增量模型

三、简答题1.简述软件工程的定义。答案:软件工程是一门指导计算机软件开发和维护的工程学科,它采用工程化的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。

2.软件危机产生的原因是什么?答案:软件本身的特点:软件是逻辑产品,缺乏可见性;软件的规模越来越大,复杂度不断增加;软件的维护成本高。软件开发和维护方法不当:缺乏有效的软件开发方法和工具;软件开发过程中没有严格的规范和标准;软件开发人员与用户之间沟通不畅。软件开发和维护人员的问题:软件开发人员技术水平有限;软件开发人员对用户需求理解不够;软件开发人员缺乏团队合作精神。

3.简述瀑布模型的优缺点。答案:优点:阶段明确,每个阶段都有明确的输入和输出,便于管理和控制。文档驱动,强调文档的完整性和准确性,有利于软件的维护和升级。缺点:不能适应需求的动态变更,一旦需求发生变化,修改成本较高。软件开发周期较长,用户需要等待较长时间才能看到软件产品。风险后置,在项目后期才能发现前期阶段的错误,增加了项目的风险。

4.简述快速原型模型的开发过程。答案:快速分析:在较短时间内对用户需求进行快速分析,确定系统的基本功能和需求。快速设计:根据快速分析的结果,进行快速设计,确定系统的总体架构和主要模块。快速实现:根据快速设计的结果,快速实现软件原型,通常采用一些快速开发工具和技术。运行原型:将软件原型交给用户运行,让用户对原型进行评价和反馈。评价修改:根据用户的反馈,对原型进行评价和修改,不断完善原型,直到满足用户需求为止。

5.简述软件维护的类型及其含义。答案:改正性维护:在软件交付使用后,由于发现软件中的错误而进行的维护。适应性维护:为了使软件适应新的环境和需求而进行的维护,如操作系统升级、硬件升级等。完善性维护:为了增强软件的功能和性能而进行的维护,如增加新的功能、优化算法等。预防性维护:为了提高软件的可维护性和可靠性而进行的维护,如对软件进行重构、优化代码结构等。

四、综合题1.某公司要开发一个销售管理系统,要求能够实现客户信息管理、销售订单管理、库存管理、统计报表生成等功能。请你用软件工程的方法设计该系统的开发过程。答案:需求分析:与客户沟通,了解客户对销售管理系统的功能需求,包括客户信息管理、销售订单管理、库存管理、统计报表生成等方面的具体要求。对客户需求进行详细分析,确定系统的功能模块、输入输出数据、性能要求等。编写需求规格说明书,明确系统的功能和性能要求,作为后续开发的依据。总体设计:根据需求规格说明书,进行系统的总体设计,确定系统的总体架构和模块划分。设计各个模块的功能、接口和数据结构,绘制系统总体结构图和模块结构图。编写总体设计说明书,包括系统总体架构、模块划分、接口设计、数据结构设计等内容。详细设计:对各个模块进行详细设计,确定模块的内部算法和数据处理流程。设计数据库结构,包括数据库表的结构、字段定义、索引设计等。编写详细设计说明书,包括模块详细设计、数据库设计等内容。编码:根据详细设计说明书,选择合适的编程语言和开发工具进行编码实现。编写各个模块的代码,注意代码的规范性和可读性。进行单元测试,对各个模块进行单独测试,确保模块功能正确。测试:集成测试:将各个模块集成在一起进行测试,检查模块之间的接口和交互是否正确。系统测试:对整个系统进行全面测试,检查系统是否满足需求规格说明书中的功能和性能要求。验收测试:邀请客户对系统进行验收测试,确保系统符合客户的实际需求。维护:改正性维护:在系统运行过程中,发现软件中的错误时,及时进行修改。适应性维护:当系统运行环境发生变化时,对系统进行相应的调整和修改。完善性维护:根据用户的需求和业务发展的需要,对系统进行功能增强和性能优化。预防性维护:定期对系统进行维护和优化,提高系统的可维护性和可靠性。

2.假设你要开发一个在线购物系统,用户可以在该系统中浏览商品、下单购买、查询订单状态等。请描述该系统可能采用的软件开发模型,并说明理由。答案:该在线购物系统可能采用快速原型模型。

理由如下:快速原型模型能够快速构建软件原型,让用户尽早看到工作软件,便于获取用户反馈。对于在线购物系统来说,用户对系统的界面和操作流程有直观的感受非常重要,通过快速原型可以及时了解用户的需求和意见,对原型进行调整和完善。该系统的需求可能存在一定的不确定性,在开发过程中可能会根据用户的使用情况和市场反馈不断调整功能。快速原型模型可以较好地适应这种需求的动态变更,及时修改原型以满足新的需求。采用快速原型模型可以缩短开发周期,尽快将产品推向市场,提高市场竞争力。在快速构建原型的基础上,逐步完善系统功能,最终形成完整的在线购物系统。

五、案例分析题阅读以下案例,回答问题。

某软件公司开发了一款办公自动化软件,在项目开发过程中,采用了瀑布模型。项目开始时,需求分析做得比较详细,设计也比较规范。但是,在编码阶段发现需求文档中存在一些遗漏和不准确的地方,需要对需求进行修改。由于采用瀑布模型,修改需求需要对前面已经完成的设计和编码进行大量的调整,导致项目进度延迟,成本增加。

1.请分析该项目采用瀑布模型存在的问题。答案:不能适应需求的动态变更:瀑布模型要求软件开发严格按照阶段顺序进行,前一个阶段完成后才能进入下一个阶段。当在编码阶段发现需求文档存在问题时,由于已经完成了设计和部分编码工作,修改需求需要对前面的工作进行大量调整,增加了项目的成本和进度风险。风险后置:瀑布模型在项目后期才能发现前期阶段的错误,如需求分析阶段的问题在编码阶段才暴露出来,此时修改成本较高,项目进度也会受到影响。

2.如果要重新开发该办公自动化软件,你会选择哪种软件开发模型?为什么?答案:如果要重新开发该办公自动化软件,选择快速原型模型较为合适。

原因如下:快速原型模型能够快速构建软件原型,让用户尽早看到工作软件,便于获取用户反馈。在办公自动化软件的开发中,用户对软件的功能和操作界面有直观的感受非常重要,通过快速原型可以及时了解

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论