软件工程方法论对我们经软件开发有多大用处?


一、软件过程

软件过程是为了获得高质量的软件产品所需要完成的一系列任务的框架,它规定了软件过程是为了获得高质量的软件产品所需要完成的一系列任务的框架,规定了完成各项任务的工作步骤。由于没有一个适用于所有软件项目的任务集合,科学、有效的软件过程应该定义一组适合于所承担的项目特点的任务集合。概括地说,软件过程(软件工程方法论)描述为了开发出客户需要的软件,就要实现三W一H,既什么人(who)、在什么时候(when)、做什么事(what)以及怎样(how)做这些事以实现某一个特定的具体目标。

二、软件工程方法论

软件工程方法论就是根据待开发的软件特点设计相应的开发流程,就是把一个大事情,拆分成一个一个的小事情,再把这些小事情串起来组成一个大事情。经过不断的实践,效果非常明显的开发流程就固定了下来,形成了“开发模型”。要知道,软件工程方法和软件过程是同一种概念。

三、软件过程模型

通常使用软件过程模型简洁地描述软件过程,它规定了把软件生命周期划分成的阶段及各个阶段的顺序。本篇文章介绍了8种典型的软件过程模型。

1.瀑布模型


瀑布模型历史悠久、广为人知,它的优势在于它是规范的、文档驱动的方法;这种模型的问题是,最终开发出的软件产品可能并不是用户真正需要的。
实际的瀑布模型如下:
实际的瀑布模型

2.快速原型模型


快速原型模型正是为了克服瀑布模型的缺点而提出来的。它通过快速构建起一个可在计算机上运行的原型系统,让用户试用原型并收集用户反馈意见的办法,获取用户的真实需求。
快速原型模型图如下:
在这里插入图片描述

3.增量模型


增量模型具有可在软件开发的早期阶段使投资获得明显回报和较易维护的优点,但是,要求软件具有开放的结构是使用这种模型时固有的困难。
增量模型图如下:
在这里插入图片描述

4. 螺旋模型


风险驱动的螺旋模型适用于内部开发的大型软件项目,但是,只有在开发人员具有风险分析和排除风险的经验及专门知识时,使用这种模型才会获得成功。
简化的螺旋模型图如下:
在这里插入图片描述

5.喷泉模型


喷泉模型较好地体现了面向对象软件开发过程无缝迭代的特性,是典型的面向对象的软件过程模型之一。
改进的喷泉模型图如下:
在这里插入图片描述

6.Rational统一过程


1998年首次推出的Rational统一过程(RUP)是一个具有突出优点的软件过程模型,它提供了理想开发环境下软件过程的一种完整而且完美的模式,可以作为对一个项目进行软件开发的良好开端。
RUP软件开发生命周期图如下:
在这里插入图片描述

7.极限编程


近年来推出的以极限编程(XP)为杰出代表的敏捷过程,具有对变化和不确定性的更快速、更敏捷的反应特性,因此能够较好地适应商业竞争环境下对小型项目提出的有限资源和有限开发时间的约束,可以作为对RUP的补充和完善;但是,作为一种软件过程模式,敏捷过程远不如RUP全面和完整。

8.微软过程


多年的实践经验证明,微软过程是非常成功和行之有效的。一方面,可以把微软过程看作RUP的一个精简配置版本,整个过程包含若干个生命周期的持续递进循环,每个生命周期由5个阶段组成,每个阶段精简为由一次迭代完成;另一方面,可以把微软过程看作敏捷过程的一个扩充版本,它扩充了每个生命周期内的各个阶段的具体工作流程。

四.总结

以上就是今天要讲的内容,本文仅仅简单介绍了8种典型的软件过程模型,以及软件过程和软件工程方法论的概念。诚然,为了计算机系统的进一步发展,需要认真研究开发和维护软件的科学技术。应总结计算机软件的历史经验教训,借鉴其他工程领域的管理技术,逐步使软件工程这门新学科发展和完善起来。
学习利用软件工程方法或者说是软件过程都是更好地利用资源,获得高质量的软件产品,设计出科学,有效的软件,所有的软件都要按部就班,使用软件工程方法一步一步地来开发。这就要求我们在平时的学习中打好软件方面基础,做到认真,专注学习。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

南风如意

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值