作业:
1.什么是Rup?
答:(1)RUP(它的英文全称:Rational Unified Process)既统一软件开发过程或统一软件过程)是一个面向对象且基于网络的程序开发方法论。它 可以为所有方面和层次的程序开发提供指导方针,模版以及事例的支持。RUP和类似的产品把面向过程的方面(例如定义的阶段,技术和实 践)和其他开发的组件(例如文档,模型,手册以及代码等)整合在一个统一的框架内。
拓展:
(2)RUP中的软件生命周期在时间上被分解为四个顺序的阶段。
a:初始阶段:初始阶段的目的是为系统建立商业案例并确定项目的边界。
b:细化阶段:细化阶段的目标是分析问题领域,建立健全的体系结构基础,编制项目计划,淘汰项目中最高风险的元素。
c:构造阶段:在构建阶段,所有的剩余的构件和应用程序功能被开发并集成为产品,所有的功能被详细测试。
d:交付阶段:交付阶段的重点是确保软件对最终用户是可用的。
. (3)统一软件开发过程RUP的工作流(Core Workflows)
RUP中有九个核心工作流。其中包括6个是核心过程工作流(Core Process Workflows),3个是核心支持工作流(Core Supporting Workflows)。分别为:商业建模,需求,分析和设计,实现,测试,部署,配置和变更管理,项目管理,环境。
2.什么是xp?
答:极端编程(Extreme Programming,XP)是一门针对业务和软件开发的规则,它的作用在于将两者的力量集中在共同的、可以达到的目标上。它是 以符合客户需要的软件为目标而产生的一种方法论,XP使开发者能够更有效的响应客户的需求变化,哪怕是在软件生命周期的后期。它强调,软件 开发是人与人合作进行的过程,因此成功的软件开发过程应该充分利用人的优势,而弱化人的缺点,突出了人在软件开发过程中的作用。极端编 程属于轻量级的方法,认为文档、架构不如直接编程来的直接。
3.什么是敏捷过程?
答:(1)敏捷过程(Agile Process)是一种以人为核心、迭代、循序渐进的开发方法,敏捷过程必须具有适应性;
(2)任何一个敏捷过程都可以由所强调的三个关键假设来识别,这三个假设可适用于大多数软件项目:
1. 提前预测哪些需求是稳定的而哪些需求会变更非常困难。同样,预测项目进行中客户优先级的变更也很困难。
2. 对很多软件来说,设计和构建是交错进行的。也就是,两种活动应当顺序开展以保证通过构建实施来验证设计模型,而在通过构建验证之前很难估计应该设计到什么程度。
3. 从制定计划的角度来看,分析、设计、构建和测试并不像我们所设想的那么容易预测。
(3)敏捷过程的价值观:
个体和交互 胜过 过程和工具
可以工作的软件 胜过 面面俱到的文档
客户合作 胜过 合同谈判
响应变化 胜过 循环计划
(4)典型的敏捷过程模型:
XP(极限编程)、FDD(特性驱动开发)、Scrum以及敏捷的统一过程等。。。。。