软件项目开发过程模型

2016-02-19 20:07 3 1 收藏

下面是个简单易学的软件项目开发过程模型教程,图老师小编详细图解介绍包你轻松学会,喜欢的朋友赶紧get起来吧!

【 tulaoshi.com - 编程语言 】

 1.     什么是软件项目开发过程模型

项目开发过程模型就是对于项目开发过程的概念建模,从而能够实现在理论上对于软件项目开发过程进行量化分析。

?XML:NAMESPACE PREFIX = O /> 

软件开发过程模型以 Rational Unified Process (简称 RUP )为代表,如下图

 

 

 


  

图 1 、 Rational Unified Process

但是也并不是只有 RUP 一种,比如 Agile Unified Process ( 简称 AUP)

点击查看大图
 
  

  

图 2 、 Agile Unified Process

 

总体来说, RUP 是最细化的项目开发过程模型,不管你采用什么样的开发方式,整个开发过程的每一个过程你都是无法逃掉的(我们后面会讨论这个),因为这代表了整个软件开发实践的客观规律,只是在定义上有所不同,侧重点上有所不同,对于迭代的看法有所不同罢了。

2.     为什么要关注软件项目开发过程模型

如同它的概念所示,软件项目开发过程就是对软件项目开发过程的概念建模,从而能够实现在理论上对于软件项目开发过程进行量化分析。

 

那么,这种量化的分析到底有能有什么好处呢?

 

我们在引子里说过:任何的软件项目都有它存在的目的,都是为了解决一些现实中的问题。可以把这个成为这个项目的目的,可以把需要解决的问题的需求称作这个项目的需求。

 

而对于商用(尤其是企业级应用)软件项目开发而言,最基本也是最重要的目的就是以最小的成本,在项目交付的期限内,提供稳定的、可靠的软件,用以解决用户提交的所需要解决的问题,并且如有可能,必须为现实生活中问题的变更引起的用户需要解决的问题的变更从而要求的软件功能的变更做好预备。

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

 

 l         为了能够把客户的问题描述清楚,必须进行业务建模和需求收集;

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/bianchengyuyan/)

 l         为了能够把收集完的问题需求转变成为可以信息化解决的问题并且解决,必须对其进行软件化设计并进行实现;

 l         为了保证软件产品的质量,必须进行足够多的测试(看看硬件厂商是怎么测试的?);


  

l         为了能够让软件产品正常运转,必须进行软件的部署;

l         而在软件开发的过程当中,对于项目的治理、代码的治理、还有资源的治理,在哪一个软件项目开发中能缺少?

 

综上,对这些过程的建模和定量的分析,并且确定在整个开发过程中各个阶段所占的份额和所拥有的重要性,对于保证项目(尤其是大项目)的平稳开发和增强项目开发治理有着重要的作用。

 

并且,确定了项目开发过程模型,对于确定项目治理方式和提供技术、工具支持有着非常重要的作用。

3.      接下来要讨论的

既然我们已经有了一个明确的定义,并且能够把它分解成为几个部分(当然,我们将会看到,这些部分本身也是十分复杂的)。那么,看上去下一步,我们的任务就是一步一步的分析每一个部分。

 

但是,且慢,这些部分有些是没法讨论的(比如业务建模,它与用户的域专家有关,或者跟一些国家、国际标准有关,跟计算机软件开发没太多的关系——除非是 IDE 之类的),有些是仁者见仁、智者见智的部分(比如设计和实现),有一些可以不必花太多口舌去讨论(比如软件项目的部署和资源治理),这一点 AUP 给我们开了个好头,我们现在需要讨论的就是:

l          需求分析

 l          测试

 l         配置治理

 l          项目治理


来源:https://www.tulaoshi.com/n/20160219/1622790.html

延伸阅读
项目迭代开发手记--文件分割存储用例的实现过程(2)   在第二天早上的开发中我们扩展了第一天迭代开发的用例,我们考虑增加了压缩流的功能,减少数据的存储负担。迭代2:用例:对向数据库提交的二进制流进行压缩;那么从数据库提取的时候要进行解压操作,以获得原始图档数据。通过查询资料我们找到Delphi的ZLib库支持对字节流的压缩...
一、PC串行通信程序机制 常用的PC串行通信程序大多利用BIOSINT14H中断,以查询I/O方式完成异步串行通信。 Windows系统提供中断方式驱动的串行通信驱动程序COMM.DRV。通信程序无需直接对串行端口进行操作,而是通过驱动程序这一编程接口进行间接操作。 Windows操作系统中,串行通信采用“事件通知”方式,支持数据按块传...
本文的写作源于一个真实的大型软件开发项目,我们努力尝试在这个项目中推广应用AOP。在此我们将对曾经面临过的一些实际问题与困难进行分析,试图引发关于面向方面软件开发(AOSD)的一些更深层次的思考。 !-- frame contents -- !-- /frame contents -- 本文的作者将站在开发者的角度做出客观的判定,既不是AOP的狂热鼓吹者,同样也不...
/DownloadFiles\a\2003-09-07\(br> 在多人共同开发一个大型项目时,源代码的维护和版本维护是一件令人头疼的事情,由于多人开发,每个开发人员都拥有此项目的副本,所以如果要手动维护同一个文件多人的修改是十分困难的事情。 /DownloadFiles\a\2003-09-07\(br> 另外,可能你需要的项目的版本不是当前开发的最新的版本, 如果为了这个目...
标签: PHP
PHP的面向对象编程:开发大型PHP项目的方法(一) 这篇文章介绍了在PHP中的面向对象编程(OOP,Object Oriented Programming)。我将向你演示如何通 过使用一些OOP的概念和PHP的技巧来减少编码和提高质量。祝你好运! 面向对象编程的概念: 不同的作者之间说法可能不一样,但是一个OOP语言必须有以下几方面: 抽...

经验教程

568

收藏

22
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部