思步网

思步网 首页 行业领域 项目管理 查看内容

阶段、里程碑、基线的区别与联系

2013-4-9 08:25| 发布者: 思步网| 查看: 19976| 评论: 15|原作者: sungubbi

摘要:   在日常交流以及群讨论中,发现不少人对于“阶段和里程碑是同一个概念吗?”“基线是什么?跟阶段或里程碑产物是一回事吗?”“基线是在什么时候产生?”总有一些不同理解,我把这个题目放在论坛里来,各位大虾们 ...
  在日常交流以及群讨论中,发现不少人对于“阶段和里程碑是同一个概念吗?”“基线是什么?跟阶段或里程碑产物是一回事吗?”“基线是在什么时候产生?”……等这些问题存在不同的看法,下面从几个方面做简单的交流。

  软件生命周期:在软件工程术语里,对软件生命周期的定义是“从设计软件产品开始到产品不能再使用时为止的时间周期。软件生存周期通常包括需求阶段、 设计阶段、实现阶段、测试阶段、安装和验收阶段、运行和维护阶段,有时还包括引退阶段”,也就是一个软件产品从开始到消亡的这段时间。

  阶段:从上面的定义中,已经有了一个大阶段的定义了。典型的瀑布模型,我们就可以直接引用到这里定义的几大阶段。我们再看看RUP模型,它也按时间顺序划分为四大阶段:初始阶段(Inception)、细化阶段(Elaboration)、构造阶段(Construction)和交付阶段(Transition)。但我们在项目管理的时候,就又通常会用到小阶段的定义,例如在RUP的初始阶段中,为了便于项目监控我们会设置建模阶段、需求阶段、设计阶段等等。就是冰封伯爵说的不同的角度啦。

  里程碑:在软件工程术语中对它的定义是“项目有关人员或管理人员负责的在预定时间将发生的事件,用来标志工作进度”。在RUP模型里,我们可以把一个大阶段定义为一个里程碑,迭代模型里我们也许会把一个迭代的完成做为一个里程碑,瀑布模型里可能会把编码和测试完成做为一个里程碑等等。里程碑用来识别标志性工作的完成情况,所以通常伴随着管理活动,例如需要收集过去的这段时间是否完成了预定的目标、该输出的产物是否已经完成、进度上是否存在偏差、管理上有什么问题、成本超支情况等等,同时还要评价对未来的工作是否有影响、计划需要变更吗、资源要调整不、有新的风险吗等等,回顾过去展望未来,承上启下。由于里程碑的跨度通常较长,所以在项目中有必要通过设置小的阶段来监控项目的进度,只不过里程碑的评价是由更多的共利益者参与、更正式一些,而阶段活动显得不那么正式一些而已。

  基线:基线是项目进展过程中特定时机的产物,它是项目阶段工作的快照,是未来工作的基础,如果基线发生变化,则需经过评估。以往与开发人员交流时,他们会把基线与里程碑混淆,认为是一个东西。刚才我们说里程碑是一个时间点、伴随着管理活动,而基线的区别在于它生成的是一系列的文档(计划或需求或设计或产品文档)、代码、产品包。

  OK,然后我们来举一个例子。在RUP的生命周期中,我们把每一个大阶段设置为一个里程碑,每个里程碑里又分别设置建模阶段、需求分析阶段、设计分析阶段、编码阶段、测试阶段、交付阶段等,然后我们可能会在需求评审通过后结束需求分析阶段的工作,并且生成了正式的需求文档,然后我们把这些文档设置为需求基线,所有的设计、编码、测试工作依据需求基线来进行,当需求基线发生变更时必须进行评估并通知到关系人。然后我们在交付阶段结束后完成里程碑的工作,进行一次里程碑评估。
发表评论

最新评论

引用 lily_014 2008-5-6 17:49
阶段与里程碑的划分具体要视项目的规模以及实际情况来定义。有些项目采用传统的瀑布模型,他们可能会把阶段点定义为里程碑点,如,需求、设计、实现、测试、发布等。。。但也有些采用迭代开发的,每个迭代结束后看成一个阶段,进行阶段总结来制定下阶段的相应计划等等(这只是举例,还是前面说的那句话,视各个企业的各个项目的情况而定)。
我理解是阶段和里程碑是否是同一个概念,没有一个确切的回答。
对于基线,首先要明确基线的概念和目的,以及在该项目中你对基线的定义。倘若阶段或里程碑的产物是成形的(意思是相对稳定的,简单的例子,需求是不可能不变更的,那么即使是必然要变更的那么如何来管理变更呢?此时在需求基本完成的时候可以定义一条基线代表需求的批准基线,然而在该时可定义一个阶段或里程碑点。将该阶段或里程碑点的产物纳入基线)
先说这么多,下班了,改天想到了继续。。欢迎大家伙拍砖:lol
引用 xixiaojing666 2008-5-7 08:35
阶段:我的理解就是软件工程的一个个阶段,如策划阶段、需求阶段、概要设计阶段。。。。。

里程碑(MILESTONE):是项目流程过程中一个关键的时间点,或者说到达这个时间点的时候,项目必须处于一个什么状态,这个状态起着承上启下的作用。
在里程碑点,需要召开里程碑会议。通过该会议,由领导或者说项目经理觉得该项目进展到目前为止是可行的后,再继续下一阶段任务的开展。一个里程碑是一个检查点。
一般来说,一个里程碑的达成可能有若干种工作产品进行了若干次的基线化动作。

基线(BASE LINE):基线是指项目进展到一定阶段后,将已基本稳定的资源纳入基线库。每个基线纳入的资源是逐级递增的。
被基线化的工作产品的变更是需要走严格的变更管理流程的。

[ 本帖最后由 xixiaojing666 于 2008-5-7 08:37 编辑 ]
引用 xixiaojing666 2008-5-7 08:40
原帖由 lily_014 于 2008-5-6 17:49 发表
阶段与里程碑的划分具体要视项目的规模以及实际情况来定义。有些项目采用传统的瀑布模型,他们可能会把阶段点定义为里程碑点,如,需求、设计、实现、测试、发布等。。。但也有些采用迭代开发的,每个迭代结束后看成 ...


我觉得阶段和里程碑点是完全不同的两个概念。在不是很重要的项目里程碑点可以少于阶段个数,但是在重要的项目里程碑点也可以大于或等于阶段个数。

我自己的理解,欢迎大家讨论!:lol
引用 xixiaojing666 2008-5-7 08:42
原帖由 sungubbi 于 2008-5-6 13:54 发表
  在日常交流以及群讨论中,发现不少人对于“阶段和里程碑是同一个概念吗?”“基线是什么?跟阶段或里程碑产物是一回事吗?”“基线是在什么时候产生?”总有一些不同理解,我把这个题目放在论坛里来,各位大虾们 ...


基线是什么时候产生的?我觉得这个没有明确的答案,可以在阶段结束时产生,也可以在阶段中的某个点产生。
引用 lily_014 2008-5-7 10:09
原帖由 xixiaojing666 于 2008-5-7 08:35 发表
阶段:我的理解就是软件工程的一个个阶段,如策划阶段、需求阶段、概要设计阶段。。。。。

里程碑(MILESTONE):是项目流程过程中一个关键的时间点,或者说到达这个时间点的时候,项目必须处于一个什么状态,这个状 ...


那么,我可不可以在需求阶段或概要设计阶段结束后设里程碑点呢?这个没有争议吧?
没错,阶段可能是某个短时间内结束后(前面也举例了,如在某个迭代结束后),而里程碑点是项目的关键点,如需求完成了,设计做完了,编码也写完了等等。但我也可以把各个阶段点看成里程碑点(软件的几个生命周期)也是没问题的。所以,我说的是根据项目的规模及实际情况来设定。只是把事情做了,目的是一样的达到了,只是叫法不同而己。
引用 冰封伯爵 2008-5-7 21:23
阶段和里程碑是两个不同的概念,从不同的角度看待会有不同的理解;从生命周期模型图中来看,一个阶段可以划分多个里程碑阶段;如果从项目计划MPP中看的话,一个里程碑阶段也可以由多个不同阶段组成;关键是看:看问题的角度。
我个人认为基线目的是:将过程及项目执行中各阶段的相关输出产物纳入公司资产库并做基线识别,以方便跟踪分析,等;
(三者的联系是:阶段及里程碑中的输出产物都将做基线识别,它们三者是不可分割的,都互相联系)

属个人观点,请大家多多指点,期待专业的回答。
引用 sungubbi 2008-5-7 22:25
我的想法和xixiaojing666比较接近,我再增加一个软件生命周期的概念。

软件生命周期:在软件工程术语里,对软件生命周期的定义是“从设计软件产品开始到产品不能再使用时为止的时间周期。软件生存周期通常包括需求阶段、 设计阶段、实现阶段、测试阶段、安装和验收阶段、运行和维护阶段,有时还包括引退阶段”,也就是一个软件产品从开始到消亡的这段时间。

阶段:从上面的定义中,已经有了一个大阶段的定义了。典型的瀑布模型,我们就可以直接引用到这里定义的几大阶段。我们再看看RUP模型,它也按时间顺序划分为四大阶段:初始阶段(Inception)、细化阶段(Elaboration)、构造阶段(Construction)和交付阶段(Transition)。但我们在项目管理的时候,就又通常会用到小阶段的定义,例如在RUP的初始阶段中,为了便于项目监控我们会设置建模阶段、需求阶段、设计阶段等等。就是冰封伯爵说的不同的角度啦。

里程碑:在软件工程术语中对它的定义是“项目有关人员或管理人员负责的在预定时间将发生的事件,用来标志工作进度”。在RUP模型里,我们可以把一个大阶段定义为一个里程碑,迭代模型里我们也许会把一个迭代的完成做为一个里程碑,瀑布模型里可能会把编码和测试完成做为一个里程碑等等。里程碑用来识别标志性工作的完成情况,所以通常伴随着管理活动,例如需要收集过去的这段时间是否完成了预定的目标、该输出的产物是否已经完成、进度上是否存在偏差、管理上有什么问题、成本超支情况等等,同时还要评价对未来的工作是否有影响、计划需要变更吗、资源要调整不、有新的风险吗等等,回顾过去展望未来,承上启下。由于里程碑的跨度通常较长,所以在项目中有必要通过设置小的阶段来监控项目的进度,只不过里程碑的评价是由更多的共利益者参与、更正式一些,而阶段活动显得不那么正式一些而已。

基线:基线是项目进展过程中特定时机的产物,它是项目阶段工作的快照,是未来工作的基础,如果基线发生变化,则需经过评估。以往与开发人员交流时,他们会把基线与里程碑混淆,认为是一个东西。刚才我们说里程碑是一个时间点、伴随着管理活动,而基线的区别在于它生成的是一系列的文档(计划或需求或设计或产品文档)、代码、产品包。

OK,然后我们来举一个例子。在RUP的生命周期中,我们把每一个大阶段设置为一个里程碑,每个里程碑里又分别设置建模阶段、需求分析阶段、设计分析阶段、编码阶段、测试阶段、交付阶段等,然后我们可能会在需求评审通过后结束需求分析阶段的工作,并且生成了正式的需求文档,然后我们把这些文档设置为需求基线,所有的设计、编码、测试工作依据需求基线来进行,当需求基线发生变更时必须进行评估并通知到关系人。然后我们在交付阶段结束后完成里程碑的工作,进行一次里程碑评估。

以上分析+总结,请补充。
引用 rainshadow96 2008-6-4 17:10
学习. :) :)
引用 思步 2008-6-4 20:55
其实,说白了就很简单:

阶段是一个模糊的概念,表示“起始(或中间某点)——中间某点(或终点)”大致的Scope;
里程碑是关键的成果点,事务“转折点”;
基线是所有事物初步的基准点,在一定程度上,仅用于配置管理。
引用 tongwds 2008-7-10 11:32
里程碑(MILESTONE):是项目流程过程中一个关键的时间点,在这个时间点上一般会召开里程碑会议,讨论项目处于一个什么状态,项目进度是否可行,可否继续开展下一阶段的工作任务,里程碑点起到承上启下的作用,是项目过程中的重要检查点。

      在里程碑检查点需要达成项目配置、项目度量、QA审计、项目状态报告、问题/风险管控、需求变更管理等关键性活动的完成。当其中任何一种情况达不到预期最低要求时,则面临项目暂停、挂起、关闭等情况。

      一个里程碑的达成一般伴随着若干种工作产品的基线化,伴随着阶段工作产品的完成。

      瀑布模型的里程碑普遍定义为阶段结束点,比如计划阶段(项目计划书发布)、开发阶段(所有需求已实现编码);

      迭代模型开发的,则把迭代一个版本定义为一个阶段,每个版本迭代结束点视为阶段里程碑,阶段里程碑点总结并制定下阶段的计划;
引用 思步网 2013-4-9 08:27
推荐。
引用 华安 2014-9-9 12:42
学习下我只是路过,不发表意见……
引用 Soul、专情ゝ 2014-12-29 20:50
没人回帖。。。我来个吧!
引用 笑淡了就罢@ 2015-2-13 14:59
我了个去,顶了
引用 、唱忐忑 2015-9-12 22:55
看帖要回,回帖才健康,在踩踩,楼主辛苦了!

查看全部评论(15)



思步组织思步科技|思步网|火花学堂|思步文库|思步问答|思步英才|天下心
© 2007 思步网 浙ICP备10212573号-4(首次备案号:浙ICP备07035264号)|邮箱:service#step365.com(将#换成@)|服务热线:0571-28827450
在线培训课程|求职招聘|思步文库|官方微信|手机APP|思步问答|微博平台|官方QQ群|交流论坛|软件工程透析|关于我们|申请友链|
点击这里给我发消息     点击这里给我发消息
思步 step365 过程改进 CMMI中文 质量保证 质量管理 流程体系 需求跟踪矩阵 敏捷开发 Scrum 软件度量 项目评审 全员改进 流程管理 人力资源 6sigma 信息安全 ISO27001认证 IT服务管理 ISO20000认证 ISO9000认证 软件测试 SQA 配置管理 IPD 软件工程 PMP认证 PMP试题 PMBOK中文 精益研发 agile 顾问式管理培训
返回顶部