- 1、本文档共86页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件生命周期阶段划分
软件工程的基本原理 (3)合理控制需求变动。 需求变动性是软件项目与生俱来的特性,不变是不可能的。有变动的要求,就说明已有的成果有需要纠错和改善的地方,但需求变更有可能对项目进展造成冲击,要严格进行配置管理,合理控制需求变更。 在软件开发过程中不要随意改变需求,因为改变某项需求往往需要付出较高的代价,但在实践中用户往往会提出需求变更,因此需要采取科学的产品控制技术。 目前主要实行基准配置管理:基准配置是指经过阶段评审后的软件配置成分,如各个阶段产生的文档或程序代码。 对涉及基准配置的修改,必须经过严格的评审,通过后才能实施修改。 */86 软件工程的基本原理 (4)采用先进的软件设计方法。 好的设计方法可以得到灵活可靠的软件结构,对于提高软件的可靠性、可维护性、应对需求变更的灵活性都非常关键。通常考虑模块化、抽象与信息隐蔽、局部化、一致性等准则。这些准则在本书软件设计部分还会详细阐述。 实践表明:采用先进的技术既可提高软件开发的效率,又可提高软件维护的效率。 80年代及之前:结构化分析、设计技术 90年代:面向对象分析、设计技术 */86 软件工程的基本原理 (5)开发文档要完备,阶段性成果应能清楚地审查。 软件产品是看不见、摸不着的逻辑产品,开发过程难以评价和管理。 根据软件开发项目的总目标及完成期限,规定开发组织的责任和产品标准,使所得的结果能够清楚地审查 */86 软件工程的基本原理 (6)开发小组的人员应少而精。 开发小组人员的素质和数量是影响软件产品质量和开发效率的重要因素。 开发小组人员数目的增加,使相互交流复杂、费用增加。 */86 软件工程的基本原理 (7)承认不断改进软件工程实践的必要性。 遵循前6条基本原理,就能够按照当代软件工程基本原理实现软件的工程化生产,但不能保证赶上时代前进的步伐。 积极主动采纳新的软件技术,且不断总结经验。 */86 第1章 软件工程的基本概念与原理 1.1 软件工程学科的诞生 1.2 软件工程的基本概念和原理 1.3 软件工程研究的主要内容 */86 1.3 软件工程研究的主要内容 1.3.1 软件开发过程 1.3.2 软件工程技术 1.3.3 软件项目管理 1.3.4 计算机辅助软件工程 */86 1.3.1 软件开发过程 在软件工程学科诞生之前,人们只重视编程,很少关注软件开发过程对软件项目的响影。实践证明,软件项目是一项复杂的系统工程,对开发过程的组织与施工管理很大程度上决定了软件的开发效率、软件质量,甚至项目的成败。因此,对软件开发过程的研究与不断改善是软件工程讨论的一项主要内容。 软件生命周期理论把软件开发与维护过程划分为若干个阶段,这是研究软件开发过程的基础。实践中,人们对行之有效的软件过程组织模式进行总结,形成了不同的软件开发过程模型。传统的有瀑布模型、快速原型、增量模型、螺旋模型、喷泉模型等。随着面向对象方法的广泛应用,Rational公司还提出了统一过程模型(简称RUP)。 随着软件过程越来越多的被重视,作为评价软件组织能力成熟度CMM模型也被提出,并得到了广泛的应用。近年来,代表着新的价值观和原则的敏捷联盟所倡导的敏捷过程以及软件过程改进成为讨论的热点。关于软件过程的详细内容,本书放在第二章讨论。 */86 1.3.1 软件开发过程—快速原型模型 1. 基本思想 在获取一组基本的需求定义后,利用高级软件工具的可开发环境,快速地建立一个目标系统的最初版本,并把它交给用户试用、补充和修改,再进行新的版本开发。反复进行这个过程,直到得出系统的“精确解”,即用户满意为止。经过这样一个反复补充和修改的过程,应用系统的“最初版本”就逐步演变为系统的“最终版本”。 原型:一个具体的可执行模型,它实现了系统的若干功能。 原型法:不断地运行系统“原型”来进行启发、揭示和判断的系统开发方法。 */86 1.3.1 软件开发过程—快速原型模型 原型法的主要思路: 根据用户的需求迅速构造一个低成本的用于演示及评价的试验系统(原型) 由用户对原型进行评价 在用户评价的基础上对原型进行修改或重构 。 有了满意的系统原型,同时也积累了使用原型的经验,用户常会提出新目标,从而进一步重新构造原型周期。新目标的范围要比修改或补充不满意的原型大。 (1)渐增型 (2)用于验证软件需求的原型 (3)用于验证设计方案 */86 1.3.1 软件开发过程—快速原型模型 3. 软件原型是软件的最初版本,以最少的费用、最短的时间开发出的、以反映最后软件的主要特征的系统。它具有以下特征: (1)它是一个可实际运行的系统。 (2)它没有固定的生存期。一种极端是扔掉原型(以最简便方式大量借用已有软件,做出最后产品的模型,证实产品设想是成功的,但产品
文档评论(0)