计算机专业研究生复试-软件工程面试简答题.pdfVIP

计算机专业研究生复试-软件工程面试简答题.pdf

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

综述

1.什么是软件工程?目前有哪几种主要的软件工程方法?

软件工程是指导计算机软件开发和维护的一门工程学科.采用工程的概念、原理、技

术、和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的

最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。

软件工程方法主要有传统方法也称为经典软件工程方法或生命周期方法或结构化范型

和面向对象方法。

2.软件的生命周期包括哪些阶段?

软件生命周期又称为软件生存周期或系统开发生命周期,是软件的产生直到报废的生

命周期。软件生存周期包括:

可行性分析:把待开发系统的目标以明确的语言描述出来,并从经济、技术、法律等

多个方面进行可行性分析。

需求分析:弄清用户对软件系统的全部需求,编写需求规格说明书和初步的用户手

册,提交评审。

设计阶段:设计软件系统的模块层次结构、数据库结构、模块控制流程等。

软件实现:根据每个模块的控制流程编出相应的程序。

软件测试阶段:检查并排除软件中的错误,提高软件的可靠性。

运行与维护:改正性维护(由于开发测试的不彻底、不完全),适应性维护(适应环

境变化),完善性维护(使用过程中提出的一些建设性意见),预防性维护(改善软件系

统的可维护性和可靠性)。

3.衡量软件质量的主要指标有哪些?

功能性

可靠性

易用性

效率

可维护性

可移植性

4.常用的软件过程模型包括哪些、分别适合于什么样的软件项目?

1)瀑布模型:将软件生命周期中的各个活动规定为线性连接的模型,包括需求分析、

设计、编码、测试、运行与维护,由前至后、相互衔接的固定顺序,如同瀑布流水逐级下

落。瀑布模型是以文档作为驱动、适合于软件需求很明确的软件项目的模型。

瀑布模型的优点:1)容易理解,管理成本低;2)强调开发的阶段性早期计划及需求

调查和产品测试。

瀑布模型的缺点:1)客户必须能够完整、正确和清晰地表达他们的需要;2)开始2

个或3个阶段,很难评估真正的进度;3)项目结束时,出现大量的集成和测试工作;4)

需求或设计中的错误往往只有到了项目后期才能够被发现,对于项目风险的控制能力较

弱,从而导致项目常常延期完成,开发费用超出预算。

2)V模型:瀑布模型的一个变体,提供了一种验证确认活动应用于早期软件工程工作

中的方法。由于其模型构图形似字母V,所以又称软件测试的V模型。

3)增量模型:以一系列增量方式来开发,它假设可以将需求分段为一系列增量产品,

每一增量可以分别开发。

使用增量模型,第1个增量往往是核心的产品。客户对每个增量的使用和评估都作为

下一个增量发布的新特征和功能,这个过程在每一个增量发布后不断重复,直到产生了最

终的完善产品。增量模型强调每一个增量均发布一个可操作的产品。

增量模型的优点:1)容易理解,管理成本低;2)强调开发的阶段性早期计划及需求

调查和产品测试;3)第一个可交付版本所需要的成本和时间很少;4)开发由增量表示的

小系统所承担的风险不大;5)减少用户需求的变更;6)运行增量投资,即在项目开始

时,可以仅对一个或两个增量投资。

增量模型的缺点:1)如果没有对用户的变更需求进行规划,那么产生的初始增量可能

会造成后来增量的不稳定;2)如果需求不想早期思考的那样稳定和完整,那么一些增量就

可能需要重新开发,重新发布;3)管理发生的成本、进度和配置的复杂性可能会超出组

织的能力。

4)演化模型:是迭代的过程,软件开发人员能逐步开发出更完整的软件版本,适用于

软件需求缺乏准确认识的情况,典型的演化模型有原型模型和螺旋模型。

原型模型:是预期系统的一个可执行版本,反映了系统性的一个选定的子集,一个

原型不必满足目标软件的所有约束,目的是能快速、低成本地构建原型。根据原

型的目的,可分为三种:1)探索型原型:目的是弄清目标的要求,确定所希望

的特性,并探讨多种方案的可行性;2)实验型原型:目的是验证方案或算法的

合理性,是在大规模开发和实现前,用于考查方案是否合适、规格说明是否可靠

等;3)演化型原型:目的是将原型作为目标系统的一部分,通过对原型的多次

改进,逐步将原型演化成最终的目标系统。

螺旋迭代模型:将瀑布模型与演化模型结合起来,螺旋模型将开发过程分为几个

螺旋周期,每个螺旋周期大致和瀑

文档评论(0)

182****9510 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档