网站大量收购独家精品文档,联系QQ:2885784924

东北大学软件工程复试大全软件工程.docxVIP

东北大学软件工程复试大全软件工程.docx

  1. 1、本文档共18页,可阅读全部内容。
  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.可维护性:软件易于理解、修改和扩展,以便在软件生命周期中能够方便地进行维护。

5.可移植性:软件能在不同的硬件平台和操作系统上运行。

(三)软件工程的基本原理

1.用分阶段的生命周期计划严格管理:将软件生命周期划分为若干阶段,每个阶段都有明确的任务和目标,通过制定详细的计划来管理软件开发过程。

2.坚持进行阶段评审:在每个阶段结束时进行评审,及时发现和纠正错误,确保阶段成果的质量。

3.实行严格的产品控制:对软件产品的需求、设计、实现等进行严格的控制,确保软件产品符合用户需求和质量标准。

4.采用现代程序设计技术:运用先进的程序设计语言、工具和方法,提高软件的开发效率和质量。

5.结果应能清楚地审查:软件开发过程中的各种文档和代码应清晰、规范,便于审查和理解。

6.开发小组的人员应该少而精:选择高素质、有经验的人员组成开发小组,提高开发效率和质量。

7.承认不断改进软件工程实践的必要性:随着技术的发展和实践经验的积累,不断改进软件工程的方法和技术。

二、软件生命周期

(一)软件定义时期

1.问题定义

明确要解决的问题是什么,对问题进行简要的描述,确定项目的目标和规模。

2.可行性研究

从技术、经济和操作等方面研究问题是否可行,是否有解决问题的可能方案。包括技术可行性分析、经济可行性分析和操作可行性分析。

(二)需求分析时期

1.需求获取

通过与用户沟通、调研等方式,获取用户对软件系统的功能、性能、可靠性等方面的需求。

2.需求分析

对获取的需求进行分析和整理,确定软件系统的逻辑模型,明确软件系统应该做什么。

3.编写需求规格说明书

将需求分析的结果以文档的形式记录下来,形成需求规格说明书,作为软件开发的依据。

(三)软件设计时期

1.总体设计

确定软件系统的总体结构,包括模块划分、模块之间的接口和调用关系等。设计软件的总体架构,如分层架构、客户端/服务器架构等。

2.详细设计

对总体设计中的每个模块进行详细设计,确定模块的内部算法和数据结构。使用详细设计工具,如流程图、N-S图等,描述模块的实现细节。

(四)编码时期

根据详细设计的结果,使用选定的程序设计语言编写程序代码。遵循编码规范,保证代码的可读性、可维护性和正确性。

(五)测试时期

1.单元测试

对每个模块进行单独测试,检查模块是否正确实现了规定的功能。

2.集成测试

将各个模块组装起来进行测试,检查模块之间的接口是否正确,模块组合后是否能实现预期的功能。

3.系统测试

对整个软件系统进行测试,检查软件系统是否满足用户的需求和质量标准。包括功能测试、性能测试、可靠性测试等。

4.验收测试

由用户对软件系统进行验收测试,确认软件系统是否符合用户的实际需求,能否投入使用。

(六)维护时期

1.改正性维护

修改软件在测试和运行过程中发现的错误。

2.适应性维护

修改软件以适应环境的变化,如硬件升级、操作系统更新等。

3.完善性维护

根据用户的需求变化,对软件进行功能扩展和性能优化。

4.预防性维护

对软件进行维护,以提高软件的可维护性和可靠性,预防未来可能出现的问题。

三、软件开发模型

(一)瀑布模型

1.特点

按照软件生命周期的阶段依次进行软件开发,每个阶段都有明确的输入和输出,如同瀑布流水一样,前一个阶段完成后才进入下一个阶段。

2.优点

阶段明确,文档驱动,便于管理和控制软件开发过程。

3.缺点

缺乏灵活性,后期发现前期错误时修改成本高,不适合需求不明确或变化频繁的项目。

(二)快速原型模型

1.特点

快速构建软件的原型,让用户对软件的功能和界面有初步的认识,然后根据用户的反馈对原型进行修改和完善,最终形成软件产品。

文档评论(0)

150****7735 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档