[转] 灵活性的项目管理模式 
2007/3/16 16:35:00
传统项目管理模式划分整个项目为五个阶段:启动、计划、执行、控制,结束。灵活性的项目管理模式则不拘泥于此,它倾向于轻型的计划(Light Weight Planing),客户的参与,短期的重复开发周期,经常性的发行(Frequent Releases),简单的设计(Simple Design),以测试为驱动的开发(TDD—Testing Driven Development),重新组合(Refactoring),连续的整合(Continuous Integration),及时文件编辑(Just-in-Time Documentation)。
“灵活性的项目管理模式”是近两年来被业界很多人推崇的新型项目管理模式,主要代表有XP(eXtreme Programming,极限编程),ASD(Adaptive Software Development,适应型软件开发),Scrum,Crytal(透明模式),DSDM(Dynamic Systems Development Method,动态系统开发模式),MSF(Microsoft Solutions Framework,微软解决方案)。
最为著名的是XP(eXtreme Programming,极限编程)。
XP的核心实践包括:
l 规划策略 迅速地制定粗略计划,然后随着事物的不断清晰来逐步完善。
l 成对编程 成对的开发人员编写所有产品代码。
l 测试(单元、验收) 开发人员在他们编写代码的同时编写单元测试。客户在他们定义了素材后编写验收测试。
l 重新划分 在不更改功能性的前提下对代码加以改进。
l 简单设计 总是先尝试使用能够工作的最简单的设计,然后随着现实的不断显现来更改它。
l 集体代码所有权 小组中的任何人都应该有权对代码进行更改来改进它。
l 持续集成 经常进行代码集成。
l 现场客户 现场有一位客户来明确素材,并做出重要的企业决策。
l 小发行版 发行版应该尽可能地小,同时仍然提供足够的企业价值以证明它们值得。
l 一周40小时 长时间地持续工作会扼杀工作绩效。疲劳的开发人员会犯更多错误。
l 编码标准 目标应该是团队中没有人辨认得出是谁写的哪一部分代码。
l 系统比喻 提供了系统各种组件以及它们是如何交互的画面 -- 一种映射,让开发人员了解新的代码部分适合放在哪里。

Scrum,ASD,Crystal 的理念与 XP 也比较相似,都突破了传统项目管理的模式,DSDM偏向于繁重的传统模式,MSF相对比较正式。
Scrum 没有完整的流程定义,每天会进行15分钟的会议,并在每天发表最新的项目工作状态。Scrum适合于团队在同一大房间一起工作。
ASD 提倡的“思索,合作,学习”是我比较倾向的,完成项目必然重要,时间允许的条件下的学习对提升成员的技术能力有莫大帮助。同时它也提到“Time Boxed”方法,在规定时间内要达到预期目标,这点与XP有所出入,XP讲究每日8小时不加班。我会比较倾向于Time Boxed,以便更好的对项目进度进行控制。在开发过程中谁也不知道会发生什么情况导致进度的延迟,倘若遵循XP原则,很难很好的控制项目进度。
Crystal 会因项目大小的不同而采取不同的管理规章。Crystal 注重文档的用途,要求管理人员使用各种文档来帮助管理。这点也是我比较认同的。既便是灵活性的模式,项目在从开始到结束都应具备必要的文档。不仅方便管理,也帮助更好的后期维护。
正如我一直所认为的那样,管理没有固定的唯一的模式,不是一成不变的。它会因为项目而不同(项目大小,目标等),会因为管理者而不同(不同类型管理者),会因为团队成员的组成而不同(队员的技术能力,职业操守等),会因为客户的情况而不同(客户的类型,客户的时间)。
每一个项目,都不能照搬任何一种项目管理模式,而应根据实际情况进行一定的整合,取舍,找到最适合的项目管理模式。在这其中,又可以发现其实团队(沟通/合作)、客户、控制、质量,又是项目管理中固定不变的主题。如何在实际过程中找到灵活型项目管理与项目结果的平衡是重点
wydpmp | 阅读全文 | 回复(1) | 引用通告 | 编辑 | 收藏该日志
Re:[转] 灵活性的项目管理模式
2008/6/18 11:37:00

非常同意“每一个项目,都不能照搬任何一种项目管理模式”。

项目管理没有绝对的模式,只有更有效地使用工具和开放的思想。

rickrun | 个人主页 | 引用 | 返回 | 删除 | 回复

发表评论:

    昵称:
    密码:
    主页:
    标题:
用户公告
时间记忆
我的相册
$show_photo$
最新日志
最新评论
最新回复
我的好友
站点信息