加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

统一过程模型

(2011-05-03 22:37:33)
标签:

校园

分类: 学习心得

关于RUP的迭代式开发方法

关键词:RUP 、迭代式、软件开发

摘要:RUP中的每个阶段可以进一步分解为迭代。一个迭代是一个完整的开发循环,产生一个可执行的产品版本,是最终产品的一个子集,它增量式地发展,从一个迭代过程到另一个迭代过程到成为最终的系统。 传统上的项目组织是顺序通过每个工作流,每个工作流只有一次,也就是我们熟悉的瀑布生命周期。这样做的结果是到实现末期产品完成并开始测试,在分析、设计和实现阶段所遗留的隐藏问题会大量出现,项目可能要停止并开始一个漫长的错误修正周期。

引言

统一建模语言好像一个在线的指导者,它可以为所有方面和层次的程序开发提供指导方针,模版以及事例支持。 RUP和类似的产品--例如面向对象的软件过程OOSP),以及OPEN Process都是理解性的软件工程工具--把开发中面向过程的方面和其他开发的组件整合在一个统一的框架内。

软件开发的早期阶段就想完全、准确的捕获用户的需求几乎是不可能的。实际上,我们经常遇到的问题是需求在整个软件开发工程中经常会改变。迭代式开发允许在每次迭代过程中需求可能有变化,通过不断细化来加深对问题的理解。迭代式开发不仅可以降低项目的风险,而且每个迭代过程都可以执行版本结束,可以鼓舞开发人员。

 

正文

RUP的迭代开发模式

  RUP中的每个阶段可以进一步分解为迭代。一个迭代是一个完整的开发循环,产生一个可执行的产品版本,是最终产品的一个子集,它增量式地发展,从一个迭代过程到另一个迭代过程到成为最终的系统。 传统上的项目组织是顺序通过每个工作流,每个工作流只有一次,也就是我们熟悉的瀑布生命周期。这样做的结果是到实现末期产品完成并开始测试,在分析、设计和实现阶段所遗留的隐藏问题会大量出现,项目可能要停止并开始一个漫长的错误修正周期。

  一种更灵活,风险更小的方法是多次通过不同的开发工作流,这样可以更好的理解需求,构造一个健 壮的体系结构,并最终交付一系列逐步完成的版本。这叫做一个迭代生命周期。在工作流中的每一次顺序的通过称为一次迭代。软件生命周期是迭代的连续,通过 它,软件是增量的开发。一次迭代包括了生成一个可执行版本的开发活动,还有使用这个版本所必需的其他辅助成分,如版本描述、用户文档等。因此一个开发迭代在某种意义上是在所有工作流中的一次完整的经过,这些工作流至少包括:需求工作流、分析和设计工作流、实现工作流、测试工作流。其本身就像一个小型的瀑布项目。

 RUP迭代模型

矩形标注: 每个迭代产生一个可执行的发布版本  统一过程模型

           1-1

 

迭代方法是RUP推荐的方法,通常有以下原因使它优于线性方法或瀑布方法

•它可以使你考虑需求的改变。实际上,需求是不断变化的。需求的改变和需求的扩展经常给项目造成很大的麻烦,导致不能按时交付,赶不上进度,不能满足客户需求,使得开发人员灰心丧气。

•降低了产品无法按照既定进度进入市场的风险。通过在开发早期就确定风险,可以尽早来解决而不至于在开发后期匆匆忙忙。

 •降低了在一个增量上的开支风险。如果开发人员重复某个迭代,那么损失只是这一个开发有误的迭代的花费。

•加快了整个开发工作的进度。因为开发人员清楚问题的焦点所在,他们的工作会更有效率

•由于用户的需求并不能在一开始就作出完全的界定,它们通常是在后续阶段中不断细化的。因此,迭代过程这种模式使适应需求的变化会更容易些。

                                            

计划迭代项目

•需要多少个迭代?

•每个迭代要进行多长时间?

•如何确定一个迭代的内容和目标?

•如何跟踪迭代的进展?

 

迭代计划

每个迭代周期都有一个细度粒的迭代计划。一个项目通常同时有两个活跃的迭代计划:

•当前迭代计划(为当前迭代指定的计划),它用来跟踪进展情况。

•下一个迭代计划(为即将开始的迭代制定计划),针对当前迭代后半部分情况定制它,要在当前迭代计划结束时准备好。

迭代计划是使用传统的制定计划的技术和工具完成的,它详细说明了任务并给个人和团队分配了任务。因为迭代过程是动态的,会随着目标和战略的改变而调整,所以根本不用花过多的时间做一个超越当前计划范围的详细计划。这样的计划很难维持,不久就会过时,执行计划的组织也不会重视它,所以必须有正确的时间范围、正确的粒度,才能做出好的、详尽的迭代计划。

 

制定一个迭代计划

制定一个迭代计划必须遵循以下4个步骤:

1)为迭代的成功定义目标准则。在携带结束时的迭代评估评审中使用这些准则,以判断迭代式成功还是失败。

2)明确为达到目标要开发或更新的、具体的、可度量的制品以及要完成的活动。

3)从一个典型的迭代工作分解结构开始,并考虑其必定要发生的实际活动。

4)估计每个活动的持续时间和工作量,注意要控制在预算的范围之内。

 

RUP二维过程结构图

统一过程模型

   1-2

 

管理迭代

工作流细节由以下活动组成:由项目经理执行的安排人员、初始化迭代、评估迭代、以及由项目评审员执行的迭代评审准则评审、迭代接受评审活动。这个工作流的细节包括开始、结束、评审迭代等活动。目的是获取执行迭代所需的资源,分配将要完成的工作,最后还要评估迭代的结果。一个迭代结束与迭代接受评审,它依据迭代评估制品,判断迭代是否达到了它的目标。

 

 

 

 

 

 

 

 

参考文献

RUP导论》﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍   Philippe Kruchten

《软件工程--理论、方法与实践》 ﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍   孙家广、刘强

《软件工程形式化方法与语言》 ﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍﹍   李莹、吴江琴

《大道至简软件工程实践者的思想》 ﹍﹍﹍﹍﹍﹍﹍﹍   周爱民

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有