您的位置:首页 > 其它

Rational统一建模过程的十大要素

2009-01-11 23:40 239 查看
为了有效的应用 Rational 统一过程 (RUP),首先要理解它的关键目标,并且弄清楚每一个目标为什么重要,他们是怎么样结合在一起,共同帮助你的开发团队满足涉众需求,生产出优质产品的。

首要的是抓住要点

有天晚上,我的邻居 Randy 过来求助。他正在为周末野营和徒步旅行作准备,但是不知道带些什么东西才好。他知道,我经常领导和参加野外旅行,而且我能够很快的决定在有限的包裹里塞些什么东西,他还记得我曾经给他提过,我有一张我拥有的所有设备和衣服的清单。“那么,我可以借那张清单吗?”他问道。

“当然,但是恐怕帮助不大。”我解释道。你看,在我的外出设备清单中有好几百项,涉及很多种类型的外出,从背包攀登到滑雪,旅行时间从几天的短途旅行到很多天的远征探险。我知道,如果没有相应的指南,Randy 将会陷入冗长的清单之中,以致弄不清,就他相对简单的外出而言,什么才是他真正需要的。

始于要素,逐步递增

因此,我提出看一下 Randy 在他的鼓鼓囊囊的包里面都已经装了那些东西。我们可以看以看,他是否可以少带些什么以减轻负担,或者是还有什么该带的却没有带。过了一会儿,我已经能肯定,他真正缺少的不是别的,而是对野外旅行的理解,也就是说,抓不住野外旅行的要点。

我拿出一张空白的纸,列出以下十个项目:(1)

地图(Map)

指南针(Compass)

太阳镜和防晒油(Sunglasses 和 sunscreen)

额外的食物和水(Extra food 和 water)

额外的衣服(Extra clothing)

头上戴的小灯(Headlamp)

急救箱(First-aid kit)

打火机(Fire-starter)

火柴(Matches)

刀子(Knife)

“你看,Randy 。这就是你真正需要的。如果你从这十大要素出发,那么,无论遇到什么旅行,再来考虑还需要增加哪些内容就变得容易多了。”多年前,我第一次登山时,靠的就是这张清单,现在我仍然使用它,无论我准备的旅行时那种类型、要去多长时间。每一项的膨胀或者压缩取决于旅行本身。始于简短的清单,然后需要时再扩展,这是一种方式; 始于冗长的清单,然后再来决定不采用什么,这是另一种方式。但是两种方式相比,前者显然要容易得多。

把这一课应用到 RUP 中

当我帮助项目组就 RUP 的很多元素进行排序时,常常听到这样的问题:“我怎样对所有这些内容进行排序?而且决定在我的项目里究竟需要哪些要素?”“RUP 包括这么多的信息。它一定是针对大项目的――我真的能在我的小项目使用它吗?”

我断定,这些人真正需要的是“ RUP 的十大要素”,就像我给我的朋友 Randy 的简单的清单一样。这个 RUP 的清单,可以作为任何项目的符合情理的起点,无论小项目、中型项目还是大型项目。这个列表会聚焦在被我称之为“精华或要素”的东西上,可能是 RUP 的,也可能是任何有效软件过程的。

迭代式开发循环模型

在所有成员领悟到提交合格产品所需要的关键过程元素之前,项目往往陷入某个特定主题的细节的沼泽中。然后,当项目拖后时,大家就会怪罪以前被过分强调的某些活动,或者是怪罪大家不理解其用处的某些活动,“嘿,我早就告诉你需求管理(或者是用例、收集项目度量数据、使用配置管理、使用缺陷跟踪工具、召开项目状态会议里面的一个或几个)会放慢我们的进度!你不信!”

有一个“精华或要素”列表让团队成员采用一种更系统、更全面的方式来思考和执行整个软件开发过程。一旦一个过程框架或“构架”到位了,团队成员就能更有效的面对和处理单个的问题域(大部分时间我得承认,需求管理应该在列表的顶部)。同样,一开始就标识显然的问题以及相关的风险,并且确定处理他们的优先级,也是很重要的,这样,团队才能在早期就根据需要采取相应的解决或缓解对策。

RUP 的十大要素

那么,在 RUP 的十大要素中应该包括哪些内容呢?下面是我的意见:

1. 开发前景

2. 达成计划

3. 标识和减小风险

4. 分配和跟踪任务

5. 检查商业理由

6. 设计组件构架

7. 对产品进行增量式的构建和测试

8. 验证和评价结果

9. 管理和控制变化

10. 提供用户支持

让我们逐一的审视这些要素,看一看它们什么地方适合 RUP,找出它们能够成为十大要素的理由。

1. 开发一个前景

有一个清晰的前景是开发一个满足涉众真正需求的产品的关键。

前景抓住了 RUP 需求流程的要点:分析问题,理解涉众需求,定义系统,当需求变化时管理需求。

前景给更详细的技术需求提供了一个高层的、有时候是合同式的基础。正像这个术语隐含的那样,它是软件项目的一个清晰的、通常是高层的视图,能被过程中任何决策者或者实施者借用。它捕获了非常高层的需求和设计约束,让前景的读者能理解将要开发的系统。它还提供了项目审批流程的输入,因此就与商业理由密切相关。最后,由于前景构成了“项目是什么?”和“为什么要进行这个项目?”,所以可以把前景作为验证将来决策的方式之一。

对前景的陈述应该能回答以下问题,需要的话这些问题还可以分成更小、更详细的问题:

月华唐
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: