什么是RUP和XP?

RUP,全称为Rational Unified Process,统一软件开发过程,是一个面向对象且基于网络的程序开发方法论。

XP,全称为Extreme Programming,极限编程,是一种强调团队工作的工作方式,它是多种敏捷方式的一种。

RUP描述了如何有效地利用商业的可靠的方法开发和部署软件,是一种重量级过程,适用于大型软件开发大型项目,RUP强调在软件开发的过程中,需要遵守一定的开发流程,目的是为了按照客户需求开发出高质量的软件产品。并且,为了可以使RUP能够可以被更广泛的应用到各种软件开发项目中,RUP强调了本身的可定制性:即任何组织和项目都可以根据自身的需求开发出符合自身的流程,在时间上被分解为四个顺序的阶段,分别是:初始阶段(Inception)、细化阶段(Elaboration)、构造阶段(Construction)和交付阶段(Transition)。每个阶段结束于一个主要的里程碑(Major-Milestones);每个阶段本质上是两个里程碑之间的时间跨度。在每个阶段的结尾执行一次评估以确定这个阶段的目标是否已经满足。如果评估结果令人 满意的话,可以允许项目进入下一个阶段。

XP不同于以往的软件开发理论,没有对软件开发的整个过程进行强制而繁琐的规定,而是给出了一套在实际软件开发过程中需要遵守的活动原则。XP没有强调复杂的过程和繁琐的文档,可以说XP是轻量级的软件开发过程理论。在现代软件开发过程中,能够唯一保持不变的就是不断的变化。客户的需求随时可以更改;竞争对手会在开发过程中推出新的版本,不得不使我们更改原有的软件开发计划和需求定义。XP充分认识到了这个不可更改的现实,整个理论强调了作为软件开发团队要充分适应这种不断的变化,即使是在项目开发的后期。XP与Scrum不同的是,Scrum是一种工作方式的框架,从组织到团队的设计,而XP关注的是具体的工程技术实践。XP旨在通过工程实践的合理搭配使用,使开发者们能够自信地响应客户需求。强调反馈环机制,客户与研发团队之间的反馈环,测试与开发的反馈环,具体代码实现跟单元测试之间的反馈环,结对之间的反馈环。极限编程认为在软件研发过程中,变化是无所不在的,人们不应回避变化,而应该适应变化,通过对反馈的检视,去适应变化。

posted on 2017-09-27 11:19  站在巨人肩上的蜗牛  阅读(778)  评论(0编辑  收藏  举报