西西河

主题:【原创】CMM, PSP, TSP -- BlueRiver

共:💬19 🌺6 新:
全看分页树展 · 主题
家园 【原创】CMM, PSP, TSP

看到河里开始讨论软件开发,心里甚喜。我自己也是做这行的。前几年参加过CMM3的准备工作,现在工作的公司也号称CMM5的。PSP和TSP我并没有仔细了解过。不过既然讨论到了,就先看看它们的历史吧。我这算是抛砖引玉了。

要说他们的关系,他们的一个相同之处就是“出身”相同,都出自卡内基梅隆大学的软件工程学院(Carnegie Mellon SEI)。后两者更是一个叫Watts Humphrey(汉弗莱)的大佬一手弄出来的。

出身相同,辈分可不同。老大是CMM,上个世纪80年代末,90年代初就有了。我们常说的其实应该是SW-CMM,就是The Capability Maturity Model for Software。早在5年前,SEI就用CMMI(Capability Maturity Model Integration)替代了CMM,SEI早就不再提供对CMM的技术支持啦。(CMMI一点也不了解,希望有人补充。)

CMM之后是PSP。接触过CMM的人知道,CMM定义了很多KPA,就是软件开发过程中应该做的事。一个项目有那些阶段,每个阶段应该做些什么,CMM都有比较清楚的归纳。不过具体到干事,谁做什么,该怎么做,就没有下文了。我估计这是Watts Humphrey又弄了PSP的原因。当然按照“官方”的说法,是为了“把CMM的基本原则应用于单个程序员的软件开发工作”(SEI Fellow Watts Humphrey decided to apply the underlying principles of the CMM to the software development practices of a single developer. )。

弄了PSP还是不够,因为好汉不敌人多。如果其他项目成员,项目经理都鄙视CMM、PSP什么的,个人只有心有余而力不足了(原话是“it was almost impossible to maintain the discipline required for PSP practices if the surrounding environment did not encourage and demand them”。)帮人帮到底,老汉又弄出了TSP。CMM是针对整个公司的,PSP是给个人用的,TSP则起了承上启下的作用,适用于一个项目组。这一来就全乎了。不过TSP好像不是随便用的,原话是“TSP was designed to be a CMM level 5 process for project teams.”这样看来,TSP的起点是比较高的。要想用,最好先打点基础。

这算是简单说了一下CMM,PSP,TSP的来历和关系。还有一点比较有趣的。SEI自己有提出了“Mapping TSP and CMMI”。简单说就是TSP和CMM/CMMI其实有很多重复。想想也是,一个项目组该做的当然包括整个项目周期的事了。

全看分页树展 · 主题


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河