软件工程方法论对我们经软件开发有多 大用处?谈谈你的看法。

这里写目录标题

  • 一.软件工程
  • 二.软件工程方法论
  • 三.软件过程模型
    • 1.瀑布模型
    • 2.快速原型模型
    • 3.增量模型
    • 4. 螺旋模型
    • 5.喷泉模型
    • 6.Rational统一过程
    • 7.极限编程
    • 8.微软过程
  • 四.总结

一.软件工程

简而言之,就是尽可能的为我们的生活提供方便。

软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。 它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。 在现代 会中,软件应用于多个方面。 典型的软件有电子邮件、嵌入式系统、人机界面、办公套件、操作系统、编译器、数据库、游戏等。

二.软件工程方法论

软件工程方法论有什么用strong>
通过学习软件工程方法论,学习系统的,科学的理论框架,吸收前人的经验,可以提高我们软件开发的速度和质量。

从定义上来说,方法论是指人们认识世界、改造世界的一般方法,是人们用什么样的方式、方法来观察事物和处理问题。软件危机的产生使得软件开发进入了软件工程阶段,软件工程方法就是为了缓解软件生命周期中一系列问题的工具,软件工程方法告诉人们怎么做,怎么取得最高效率。软件工程方法论包含前人开发软件的经验,掌握方法,能够少走弯路、错路,能够指导我们更好地、高效地开发软件。

三.软件过程模型

1.瀑布模型

定义:瀑布模型是一个经典的软件生命周期模型,也叫预测型生命周期、完全计划驱动型生命周期。在这个模型里,在项目生命周期的尽早时间,要确定项目范围及交付此范围所需的时间和成本。

如果采用这个模型的话,一般将软件开发分为软件计划、需求分析、软件设计、软件实现(编码)、测试、运行维护等几个阶段,如下图所示。

快速原型模型的优缺点以及适用范围:

优点
1.克服瀑布模型的缺点,减少由于软件需求不明确带来的开发风险。
2.适合预先不能确切定义需求的软件系统的开发。
缺点
1.所选用的开发技术和工具不一定符合主流的发展;快速建立起来的系统结构加上连续的修改可能会导致产品质量低下。
2.使用前提是要有一个展示性的产品原型,一定程度上可能会限制开发人员的创新。
适用范围
快速原型模型需要迅速建造一个可以运行的软件原型 ,以便理解和澄清问题,使开发人员与用户达成共识,最终在确定的客户需求基础上开发客户满意的软件产品. 快速原型模型允许在需求分析阶段对软件的需求进行初步而非完全的分析和定型。

3.增量模型

定义:把待开发的软件系统模块化,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件。

螺旋模型的特点

螺旋模型强调风险分析,使得开发人员和用户对每个演化层出现的风险有所了解,继而做出应有的反应,因此特别适用于庞大、复杂并具有高风险的系统.

螺旋模型的优缺点以及适用范围:

优点
1.对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件开发的一个重要目标。
2.减少了过多测试(浪费资金)或测试不足(产品故障多)所带来的风险。
3.在螺旋模型中维护只是模型的另一个周期,在维护和开发之间并没有本质区别。
缺点
1.采用螺旋模型需要具有相当丰富的风险评估经验和专门知识,在风险较大的项目开发中,如果未能够及时标识风险,势必造成重大损失。
2.过多的迭代次数会增加开发成本,延迟提交时间。
使用范围
螺旋模型只适合于大规模的软件项目。

5.喷泉模型

定义:喷泉模型是一种以用户需求为动力,以对象为驱动的模型,主要用于描述面向对象的软件开发过程。该模型认为软件开发过程自下而上周期的各阶段是相互迭代和无间隙的特性。

特点

用例驱动、以构架为中心、迭代和增量的软件过程框架。

Rational统一过程的优缺点以及适用范围:

优点

  1. RUP是建立在非常优秀的软件工程原则基础上的,例如迭代,需求驱动,基于结构化的过程开发。
  2. RUP提供了几个方法,例如每一次迭代产生一个工作原型,在每一个阶段的结束决定项目是否继续,这些方法提供了对开发过程的非常直观的管理。
    缺点
  3. RUP仅仅包含了开发过程。它没有完全覆盖软件过程,从图1能够明显看出,它丢失了维护和技术支持这两个重要的阶段。
  4. RUP不支持组织内的多项目开发,导致组织内的大范围的重用无法实现。
  5. RUP缺少开发商的支持。
  6. RUP在度量管理,重用管理,人员管理和测试上有缺陷。
    适用范围
    Rational统一过程的开发活动是 用况驱动 的,该过程重点强调在透彻地理解如何使用被交付系统的基础上建造系统。

7.极限编程

定义:极限编程是由KentBeck在1996年提出的,是一种软件工程方法学,是敏捷软件开发中可能是最富有成效的几种方法学之一。如同其他敏捷方法学,极限编程和传统方法学的本质不同在于它更强调可适应性能性以及面临的困难。1996年三月,Kent终于在为DaimlerChrysler所做的一个项目中引入了新的软件开发观念——XP。

四.总结

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年2月26日
下一篇 2022年2月26日

相关推荐