TOC之关键链项目管理遇到软件工程7原则
編著者:張克強(qiáng) ? ?微博:張克強(qiáng)-敏捷307
軟件工程7原則簡(jiǎn)介
美國(guó)著名軟件工程專家鮑伊姆(B.W.Boehm,也又另譯為勃姆)在總結(jié)軟件工程準(zhǔn)則和信條的基礎(chǔ)上,于1983年提出軟件工程的7條基本原則,也是軟件項(xiàng)目管理應(yīng)該遵循原則。勃姆認(rèn)為,這7條原則是確保軟件產(chǎn)品質(zhì)量和開(kāi)發(fā)效率的最小集合,相互獨(dú)立但結(jié)合得相當(dāng)完備。
1. Manage using a phased life-cycle plan. 用分階段的生命周期計(jì)劃來(lái)管理
2. Perform continuous validation. 進(jìn)行持續(xù)的確認(rèn)
3. Maintain disciplined product control. 堅(jiān)持有紀(jì)律的產(chǎn)品控制
4. Use modern programming practices. 利用現(xiàn)代編程實(shí)踐
5. Maintain clear accountability for results. 維護(hù)對(duì)結(jié)果的清晰責(zé)任追究
6. Use better and fewer people. 使用少而精的人員
7. Maintain a commitment to improve the process. 保持提升過(guò)程的承諾
約束理論TOC的關(guān)鍵鏈項(xiàng)目管理
關(guān)鍵鏈項(xiàng)目管理(Critical Chain Project Management,CCPM)方法是Eliyahu Goldratt博士在其小說(shuō)體專著《關(guān)鍵鏈》(Critical Chain)中提出的一種新的方法,其支持者們認(rèn)為,這是一種全新的、革命性的思維方式,可以有效地縮短工期,提高項(xiàng)目滿足進(jìn)度與預(yù)算約束的能力;但是也有人認(rèn)為,CCPM的獨(dú)特性僅僅體現(xiàn)在這一術(shù)語(yǔ)上。---摘自百度百科
關(guān)鍵鏈被用來(lái)替代關(guān)鍵路徑分析方法。關(guān)鍵鏈區(qū)別于關(guān)鍵路徑的主要特征如下: 使用資源依賴 缺乏尋求最佳方案的方法。這意味著一個(gè)“足夠好”的解決方法已經(jīng)足夠了,因?yàn)?#xff1a; 就目前所知,沒(méi)有任何分析方法能找到一個(gè)絕對(duì)的最佳的(比如,總體的最短關(guān)鍵鏈)。 估算上的固有的不確定性,遠(yuǎn)遠(yuǎn)大于最優(yōu)和接近最優(yōu)(即“足夠好”的解決方案)之間的差異。 插入緩沖 項(xiàng)目緩沖(Project Buffer,縮寫(xiě)為PB) 輸入緩沖(Feeding Buffer,縮寫(xiě)為FB) 資源緩沖(Resource Buffer,縮寫(xiě)為RB) 監(jiān)測(cè)項(xiàng)目的進(jìn)展和緩沖的使用率,而不是規(guī)劃個(gè)別任務(wù)的進(jìn)展速度。?---摘自百度百科
討論的緣起
@TOC中國(guó)?發(fā)了條微博 :1.項(xiàng)目的客戶為什么需要設(shè)定里程碑? 2.客戶希望用里程碑達(dá)到什么目的? ? ?? 張克強(qiáng)-敏捷307 : 好多項(xiàng)目管理類和軟件工程的書(shū)都是這么說(shuō)的。toc 如何破 ?
? ??TOC中國(guó):回復(fù)@張克強(qiáng)-敏捷307:回復(fù)@張克強(qiáng)-敏捷307:破什么?
? ??張克強(qiáng)-敏捷307:《關(guān)鍵鏈》對(duì)此有新做法,我以為你會(huì)提,你是要提否?
張克強(qiáng)-敏捷307:回復(fù)@TOC中國(guó):在軟件開(kāi)發(fā)領(lǐng)域,請(qǐng)查看鮑伊姆-軟件工程七原則,發(fā)表于上世紀(jì)80年代初。
然后,我找到個(gè)介紹鮑伊姆-軟件工程七原則的網(wǎng)絡(luò)文章,做了推薦:?
@張克強(qiáng)-敏捷307?勃姆的軟件工程7條基本原則-文章頁(yè)-PChome手機(jī)版?http://t.cn/Rv6ah88?@TOC中國(guó)開(kāi)始爭(zhēng)論
拯救與逍遙:不同層次的管理人員必須嚴(yán)格按照計(jì)劃各盡其職地管理軟件開(kāi)發(fā)與維護(hù)工作,絕不能受顧客或上級(jí)人員的影響而擅自背離預(yù)定計(jì)劃。【第一條就是自說(shuō)自話了。】? ? ? ? ? ?張克強(qiáng)-敏捷307:怎么自說(shuō)自話了?scrum是符合此條的 拯救與逍遙:SCRUM說(shuō)了“絕不能受顧客或上級(jí)人員的影響而擅自背離預(yù)定計(jì)劃”?
? ? ? ?Glen-Wang:一切經(jīng)PO ? ? ? ?張克強(qiáng)-敏捷307:sprint backlog的修改是需各方同意的,注意原文中的“擅自” ? 拯救與逍遙:一方面說(shuō) “不成功的軟件項(xiàng)目中約有一半左右源自計(jì)劃不周”,另一面有說(shuō)“絕不能受顧客或上級(jí)人員的影響而擅自背離預(yù)定計(jì)劃”。 這不是邏輯混亂嗎?加上“擅自”不過(guò)是留個(gè)退路的修辭。如果了解過(guò)TOC的 CCPM 項(xiàng)目管理方式,就會(huì)知道基于嚴(yán)格里程碑計(jì)劃的復(fù)雜項(xiàng)目,必將失敗。(6月9日 17:23)
? ? ?張克強(qiáng)-敏捷307:回復(fù)@拯救與逍遙:我認(rèn)為其邏輯很正常。計(jì)劃不好,項(xiàng)目容易會(huì)失敗;未經(jīng)各方同意修改計(jì)劃,更容易失敗。另,scrum的review meeting實(shí)質(zhì)上是里程碑評(píng)審,忠實(shí)的滿足了此條軟工原則。 (6月9日 18:27)
張克強(qiáng)-敏捷307:回復(fù)@拯救與逍遙:你要是用toc能證明軟工原則是錯(cuò)的,或者已經(jīng)過(guò)時(shí),你就是新一代軟工大師。如果你真有所得,建議寫(xiě)成論文,有道理的話,發(fā)表出來(lái),想來(lái)轟動(dòng)世界。以上我是認(rèn)真的,絕非嘲諷。(6月9日 18:36)
? ??拯救與逍遙:回復(fù)@張克強(qiáng)-敏捷307:我就問(wèn)一個(gè)問(wèn)題,每個(gè)里程碑都按時(shí)達(dá)成是整個(gè)plan按時(shí)達(dá)成的充分條件 還是 必要條件?至于ccpm項(xiàng)目管理方式已經(jīng)被收入到pmbok中了,論文早已輪不到我這樣的后生晚輩寫(xiě)了。 (6月9日 18:51)
? ? ? ? ? ? ?張克強(qiáng)-敏捷307:你這問(wèn)題本身不恰當(dāng)。pmbok是如何說(shuō)ccpm的?有鏈接否? ? ? ? ? ? ??張克強(qiáng)-敏捷307:pmbok收ccpm可并不一定說(shuō)明軟工原則失效,項(xiàng)目管理與軟件工程有重合,但不等同 ? ? ? ? ? ??拯救與逍遙:我是在pmbok上看到過(guò),不過(guò)說(shuō)的很簡(jiǎn)略。具體哪里要問(wèn)下pmp專家了?@京東PMO蔡德輝?。網(wǎng)上有更多詳細(xì)的介紹,搜一下吧。有本toc的企管小說(shuō)《關(guān)鍵鏈》講這個(gè),有興趣還可以參加近期上海的ccpm的培訓(xùn)班。
? ? ? ? ? ? 李凱-社會(huì)化營(yíng)銷:回復(fù)@拯救與逍遙:這里其實(shí)存在兩種不同的假設(shè):里程碑思維里,大概拖延癥,早完成隱瞞不報(bào),多任務(wù)下帶來(lái)的時(shí)間延長(zhǎng)等問(wèn)題是完全可以消除或控制的,進(jìn)一步就是保護(hù)局部就等于保護(hù)全局。而TOC是承認(rèn)這些不確定性的,因此其對(duì)應(yīng)之策是保護(hù)影響全局的關(guān)鍵路徑,對(duì)其他局部采取寬松政策。(6月9日 19:12)
分析
張克強(qiáng)-敏捷307:我認(rèn)為關(guān)鍵鏈?zhǔn)强紤]了資源瓶頸的關(guān)鍵路徑,軟件項(xiàng)目矩陣管理其實(shí)已經(jīng)覆蓋了關(guān)鍵鏈的要點(diǎn),而且關(guān)鍵鏈下并不是完全取消里程碑,而是識(shí)別了更關(guān)鍵的里程碑。我精讀過(guò)此書(shū)//@拯救與逍遙:有本toc的企管小說(shuō)《關(guān)鍵鏈》拯救與逍遙:那克強(qiáng)認(rèn)為ccpm相對(duì)于傳統(tǒng)方式的特點(diǎn)在哪里呢??
張克強(qiáng)-敏捷307:我已經(jīng)說(shuō)了啊,其效果在軟件領(lǐng)域不會(huì)明顯,在積累大量數(shù)據(jù)的建筑領(lǐng)域也不會(huì)明顯,在其它領(lǐng)域我估計(jì)效果會(huì)不錯(cuò)
? ? ? ??趙智平_極普TOC:CCPM,1顛覆了關(guān)鍵路徑CPM,2去除學(xué)生綜合癥及帕金森綜合癥對(duì)項(xiàng)目的影響,3設(shè)置緩沖因應(yīng)不確定性并給出預(yù)警機(jī)制 拯救與逍遙:在軟件領(lǐng)域不明顯的理由是?
張克強(qiáng)-敏捷307:在軟件開(kāi)發(fā)領(lǐng)域,矩陣管理,敏捷團(tuán)隊(duì),cmmi,各類模型等等已經(jīng)覆蓋并超越了關(guān)鍵鏈,建筑領(lǐng)域類似
? ? ? ??拯救與逍遙:這個(gè)邏輯好奇怪//@張克強(qiáng)-敏捷307:在軟件開(kāi)發(fā)領(lǐng)域 ? ? ? ??張克強(qiáng)-敏捷307:回復(fù)@拯救與逍遙:錦上添花 vs. 雪中送炭啊! ? ? ? ??李凱-社會(huì)化營(yíng)銷:因?yàn)閷?duì)這些方法不懂,所以只能問(wèn)最基本的問(wèn)題:這些方法的追求目標(biāo)是不是與CCPM并不完全一致,實(shí)際上還超越了它? ? ? ? ? ??張克強(qiáng)-敏捷307:竊以為大目標(biāo)是一致的,這些覆蓋并超越了ccpm//@李凱-社會(huì)化營(yíng)銷:因?yàn)閷?duì)這些方法不懂 ? ? ? ? ? ? ? ??李凱-社會(huì)化營(yíng)銷:那么大目標(biāo)是什么呢?超越的部分又是哪些?這是一個(gè)值得學(xué)習(xí)的突破口 ? 趙智平_極普TOC:軟件開(kāi)發(fā)的最大不確定性是什么?是完成任務(wù)的時(shí)間?軟件需求?CCPM處理的最大不確定性是任務(wù)時(shí)間
張克強(qiáng)-敏捷307:敏捷迭代開(kāi)發(fā)利用時(shí)間箱,別的行業(yè)很難模仿
趙智平_極普TOC:為何要迭代?因?yàn)榭梢枣i定需求?需求被鎖定,不確定性為任務(wù)的時(shí)間?//@張克強(qiáng)-敏捷307:敏捷迭代開(kāi)發(fā)利用時(shí)間箱,別的行業(yè)很難模仿
張克強(qiáng)-敏捷307:反過(guò)來(lái),鎖定時(shí)間,擁抱變化//@趙智平_極普TOC:為何要迭代?
趙智平_極普TOC:以時(shí)間緩沖(余量)決定可接受的需求變化,或可引用緩沖侵蝕做決策;需求是最大的不確定性,小批量逐次確認(rèn)//@張克強(qiáng)-敏捷307:反過(guò)來(lái),鎖定時(shí)間,擁抱變化 ?
? ? ? ? ? ?張克強(qiáng)-敏捷307:nod,好多toc術(shù)語(yǔ),敏捷騷年一般不喜歡 ? ? ? ? ? ?深圳老曲:ccpm中對(duì)人性的解釋(不良多工、帕金森定律、學(xué)生綜合癥、墨菲定律等)可以用于敏捷的導(dǎo)入,但ccpm本身缺乏對(duì)軟件開(kāi)發(fā)實(shí)踐的支持。 //@張克強(qiáng)-敏捷307:nod,好多toc術(shù)語(yǔ),敏捷騷年一般不喜歡 ? ? ? ? ? ?趙智平_極普TOC:CCPM可以支持的最大不確定性是任務(wù)時(shí)間及有限度地"擁抱"變化//@深圳老曲: ccpm中對(duì)人性的解釋 深圳老曲:ccpm以及傳統(tǒng)的項(xiàng)目管理,背后的假設(shè)都是項(xiàng)目的內(nèi)容、工期、質(zhì)量是能夠同時(shí)兼顧的。在軟件工程領(lǐng)域,這個(gè)假設(shè)是是不成立的,所以敏捷則是固定時(shí)間、保證質(zhì)量,首先交付價(jià)值最高的功能。 ? ? ? ? ? ? ? ? ? ? ? ?趙智平_極普TOC:如果我懂SDBR及C#,需求已使用UML定義,可以使用CCPM管理開(kāi)發(fā)進(jìn)度嗎? ? ? ? ? ? ? ? ? ? ? ? ?深圳老曲:可惜的是,包括UML在內(nèi)的幾乎所有方法,都不能清晰、準(zhǔn)確地把需求定義出來(lái),特別是比較大或沒(méi)有參考對(duì)象的項(xiàng)目。?
總結(jié)
以上是生活随笔為你收集整理的TOC之关键链项目管理遇到软件工程7原则的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 需求用例分析之七:业务用例之小结
- 下一篇: 苍狼敏捷需求用例分析方法简介并讲义下载