UML-2-迭代、进化和敏捷
1、UP
UP:Unified Process,统一过程。RUP:Rational Unified Process,Rational 公司制定的UP,是对UP的精细化。
UP的过程:
初始 |
不是需求,而是对项目做可行性研究。 |
细化 |
不是需求或设计,而是迭代实现核心架构并解决高风险问题阶段。 |
构造 |
对遗留下来的风险较低和比较简单的元素迭代实现,准备部署。 |
移交 |
测试、部署 |
高风险问题:如能够处理500个并发交易,数据库单表数据量过大如何解决。
UP科目:
UP的科目和瀑布模型很类似。
2、迭代
迭代是UP的实现方法。而实现迭代的开发模型包含:快速原型模型、增量模型、螺旋模型、喷泉模型
而瀑布模型:计划《--》需求分析《--》系统设计《--》编码《--》测试《--》上线、维护
如何迭代分析和设计?
每次迭代内容:
A、高阶需求分析。
B、从高阶列表中筛选10%列表项(具有重要架构意义、产品最关心的高业务价值业务、高风险)
C、对B中列出的需求,深入分析。
D、建模、设计,画UML草图
E、开发、测试
核心思想:80%的时间完成20%的核心功能。
3、敏捷开发
敏捷开发是采用时间定量的迭代开发实践。原则是优先完成客户最需要的,其实施力求灵敏、简洁。比如:小系统可不用画uml,大系统可画,但尽量简单,可画草图或白板作图。不必追求uml专业软件。
4、总结
1)、敏捷-----》迭代-----》UP
迭代是UP的开发实践。而实现迭代的开发模型包含:快速原型模型、增量模型、螺旋模型、喷泉模型。
而敏捷开发是采用时间定量的迭代开发实践。
2)、UP关键
首先解决高业务价值、高风险问题。
然后制定核心架构。
其他都是低阶问题。