homework
什么是RUP?
1、RUP是风险驱动的、基于Use Case技术的、以架构为中心的、迭代的、可配置的软件开发流程 2、我们可以针对RUP所规定出的流程,进行客户化定制,定制出适合自己组织的实用的软件流程。 因此RUP是一个流程定义平台,是一个流程框架。
RUP相当于计划,为开发提供步骤。所以说RUP是面向过程的。
RUP的宗旨:高效、准时满足需求
什么是XP?
是一门针对业务和软件开发的规则,它的作用在于将两者的力量集中在共同的、可以达到的目标上。它是以符合客户需要的软件为目标而产生的一种方法论,XP使开发者能够更有效的响应客户的需求变化,哪怕是在软件生命周期的后期。它强调,软件开发是人与人合作进行的过程,因此成功的软件开发过程应该充分利用人的优势,而弱化人的缺点,突出了人在软件开发过程中的作用。极端编程属于轻量级的方法,认为文档、架构不如直接编程来的直接。
XP的核心思想:
从长远看,早期发现错误以及降低复杂度可以节约成本。极限编程强调我们将任务/系统细分为可以在较短周期解决的一个个子任务/模块,并且强调测试、代码质量和及早发现问题。通常,通过一个个短小的迭代周期,我们就可以获得一个个阶段性的进展,并且可以及时形成一个版本供用户参考,以便及时对用户可能的需求变更作出响应.
XP的方法:
-
规划策略(The Planning Game);
-
结对编程(Pair programming)
-
测试(Testing)
-
重构(Refractoring)
-
简单设计(Simple Design)
-
代码集体所有权(Collective Code Ownership)
-
持续集成(Continuous Integration)
-
现场客户(On-site Customer)
-
小型发布(Small Release)
-
每周40小时工作制(40-hour Week)
-
编码规范(Code Standards)
-
系统隐喻(System Metaphor)
什么是敏捷过程?
敏捷过程(agile process)是一种以人为核心、迭代、循序渐进的开发方法。它是由17个工程师为了解决日益庞大的开发团队和繁琐的开发过程、大量的文档中解脱开发人员的工作量达成的一项共识。在敏捷过程中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。简言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。
敏捷过程是全一个全新的新理论。他不同于原来的6Sigma,ISO9000和CMM。细心的人们可以发现,敏捷过程也借鉴了大量软件工程中的方法。迭代与增量开发,这两种在任何一本软件工程教材中都会被提到的方法,在敏捷开发模式中扮演了很重要的角色。再向前追溯,我们还也可见到瀑布式与快速原型法的影子,也许还有更多。
改善,而非创新。敏捷过程可理解为在原有软件开发方法基础上的整合——取其精华,去其糟粕。因此敏捷过程继承了不少原有方法的优势。“在敏捷软件开发的过程中,我们每两周都会得到一个可以工作的软件,”Fowler介绍,“这种非常短的循环,使终端客户可以及时、快速地看到他们花钱构建的软件是一个什么样的结果。”
敏捷过程的价值观:
个体和交互 胜过 过程和工具
可以工作的软件 胜过 面面俱到的文档
客户合作 胜过 合同谈判
响应变化 胜过 循环计划
鼓励和侧重左侧的内容,不是完全的支持。她强调人的作用,希望在开发团队中有优秀的开发人员。
浙公网安备 33010602011771号