第二部分 快速開(kāi)發(fā) 6-9章 完結(jié)

第二部分快速開(kāi)發(fā)

第六章快速開(kāi)發(fā)中的核心問(wèn)題

一個(gè)標(biāo)準(zhǔn)是否可以適應(yīng)所有情況

你需要怎樣的開(kāi)發(fā)方法

*進(jìn)度計(jì)劃有嚴(yán)格限制的產(chǎn)品

對(duì)于確實(shí)需要全力以赴提高開(kāi)發(fā)速度选酗,而不注重成本跪妥,可預(yù)測(cè)性的產(chǎn)品來(lái)說(shuō),它與典型產(chǎn)品有著不同的時(shí)間價(jià)值曲線:

*表面上的快速開(kāi)發(fā)

某些項(xiàng)目中肌割,客戶卧蜓,用戶,上級(jí)或者產(chǎn)品提出“快速開(kāi)發(fā)”的需求把敞,有時(shí)還希望低費(fèi)用弥奸,低風(fēng)險(xiǎn)。他們其實(shí)也不知道這樣的要求是否過(guò)分奋早,或者是否真的過(guò)分盛霎。

在你得到消息要在限定的時(shí)間內(nèi)“快速開(kāi)發(fā)”時(shí)赠橙,應(yīng)該充分挖掘你所面對(duì)的真實(shí)需求。各種表面上號(hào)稱(chēng)需要“快速開(kāi)發(fā)”的項(xiàng)目愤炸,實(shí)際上是還有其他需求期揪。

1防止失控狀態(tài)

如果一個(gè)軟件組織有失控,拖延工期规个,或者超出預(yù)算的歷史凤薛,如果一個(gè)客戶有被其簽約商拖延工期,超出預(yù)算的歷史诞仓,都會(huì)造成客戶要求“快速開(kāi)發(fā)”枉侧。但是在這種情況下,客戶真正的需求是能在規(guī)定的進(jìn)度和預(yù)算下完成狂芋。

在這種情況下,你真正需要的是較好的風(fēng)險(xiǎn)管理憨栽,預(yù)算管理和進(jìn)度控制來(lái)保證項(xiàng)目順利進(jìn)行帜矾。

2可預(yù)測(cè)性

在很多情況下,客戶需要將軟件產(chǎn)品與市場(chǎng)屑柔,發(fā)布會(huì)屡萤,公司計(jì)劃等其他項(xiàng)目協(xié)調(diào)在一起。這時(shí)你需要較好的風(fēng)險(xiǎn)管理掸宛。

3最低費(fèi)用

對(duì)于軟件開(kāi)發(fā)項(xiàng)目死陆,客戶希望費(fèi)用最低的情況并不罕見(jiàn)。在這種情況下唧瘾,他們口里說(shuō)著快速開(kāi)發(fā)措译,其實(shí)是需要降低費(fèi)用。

但是在實(shí)際上饰序,最短的開(kāi)發(fā)周期跟最低的費(fèi)用并不是同義詞领虹。

4渴望加班

在一些情況下,客戶或者上級(jí)利用他們對(duì)進(jìn)度的關(guān)心求豫,來(lái)掩飾他們希望開(kāi)發(fā)者提供免費(fèi)加班塌衰。

這種情況是很容易區(qū)分的,在這種情況下蝠嘉,客戶強(qiáng)烈關(guān)心進(jìn)度最疆,但是無(wú)法提供與之對(duì)應(yīng)的費(fèi)用或資源。如果客戶對(duì)項(xiàng)目進(jìn)度的關(guān)心讓你感到壓力蚤告,那么它的重要性足以讓客戶增加對(duì)項(xiàng)目的支持努酸。

*你真正需要的是全力以赴的開(kāi)發(fā)

現(xiàn)實(shí)中的項(xiàng)目,客戶希望你在低費(fèi)用罩缴,短時(shí)間里蚊逢,提供質(zhì)量最好的產(chǎn)品层扶。往往你只能三選二。在短時(shí)間里烙荷,提供低質(zhì)量的產(chǎn)品往往是最錯(cuò)誤的做法镜会。因?yàn)槿绻銣?zhǔn)時(shí)發(fā)布了低質(zhì)量的產(chǎn)品,客戶不認(rèn)為你準(zhǔn)時(shí)發(fā)布了產(chǎn)品终抽,而是你發(fā)布了低質(zhì)量的產(chǎn)品戳表。對(duì)應(yīng)到我們項(xiàng)目組,也就是一直存在的細(xì)節(jié)問(wèn)題昼伴。認(rèn)為項(xiàng)目很急匾旭,所以在細(xì)節(jié)問(wèn)題的處理上太粗心。

按時(shí)完成的可能性

我們感覺(jué)開(kāi)發(fā)速度緩慢圃郊,一部分原因是有些工作確實(shí)緩慢价涝,另一部分原因是沒(méi)有達(dá)到預(yù)期的速度,所以顯得緩慢持舆。對(duì)于第二種情況色瘩,我們的對(duì)策是維護(hù)兩套進(jìn)度,一套用來(lái)真實(shí)的控制項(xiàng)目逸寓,另外一套給上海和客戶居兆,用來(lái)降低客戶預(yù)期。

軟件項(xiàng)目包含太多可變因素竹伸,通常不能100%精確地設(shè)定開(kāi)發(fā)進(jìn)度泥栖。

上面的圖表達(dá)了幾個(gè)假定:

l完成一個(gè)項(xiàng)目,都有一個(gè)最快完成速度的極限值勋篓。

l完成一個(gè)項(xiàng)目吧享,沒(méi)有一個(gè)最慢完成速度的極限值。

l完成幾率曲線的前一段和后一段形狀不同生巡。

很多項(xiàng)目最初瞄準(zhǔn)了不可能開(kāi)發(fā)的區(qū)域耙蔑,最終落在了緩慢開(kāi)發(fā)的區(qū)域。

建議安排好項(xiàng)目進(jìn)度孤荣,使按時(shí)完成的可能性達(dá)到50%是比較合理的做法甸陌。

感知與現(xiàn)實(shí)

即使按時(shí)完成任務(wù),要知道開(kāi)發(fā)速度慢的感覺(jué)與事實(shí)上的速度慢一樣能影響你的項(xiàng)目成果盐股。即使我們一直不停的在做钱豁,也沒(méi)有理由期望客戶緘默的等待幾個(gè)月,直到項(xiàng)目結(jié)束疯汁。應(yīng)該意識(shí)到讓客戶定期知道項(xiàng)目的進(jìn)度情況是我們工作的一部分牲尺。

不切實(shí)際的用戶期望

如果項(xiàng)目進(jìn)度制定在一個(gè)不可能的區(qū)域內(nèi),但在有效區(qū)域完成,人們還是認(rèn)為這是一個(gè)失敗的項(xiàng)目谤碳。盡管它是在給定資源條件下溃卡,以有效的進(jìn)度完成。

有時(shí)候蜒简,客服開(kāi)發(fā)速度慢的感覺(jué)瘸羡,需要確保合理的用戶期望,并提供穩(wěn)定的項(xiàng)目進(jìn)展報(bào)告搓茬。

克服慢速開(kāi)發(fā)的感覺(jué)

兩種方法克服慢速開(kāi)發(fā)的問(wèn)題:

l將事實(shí)上的慢速開(kāi)發(fā)重新定位犹赖。

將實(shí)際進(jìn)度縮短,將進(jìn)度移動(dòng)到有效開(kāi)發(fā)區(qū)域卷仑。

l將感覺(jué)上的慢速開(kāi)發(fā)重新定位峻村。

拜托癡心妄想,延長(zhǎng)計(jì)劃進(jìn)度時(shí)間锡凝,縮小計(jì)劃于實(shí)際的差距粘昨。

時(shí)間都去哪里了

*典型的觀點(diǎn)

許多項(xiàng)目開(kāi)始于需求定義之前,如果這一階段沒(méi)有經(jīng)過(guò)良好的定義和管理窜锯,可能會(huì)延續(xù)很長(zhǎng)一段時(shí)間雾棺。

*軟性問(wèn)題

1返工

對(duì)具有缺陷的需求,設(shè)計(jì)衬浑,代碼進(jìn)行返工,普遍需要花費(fèi)整體開(kāi)發(fā)費(fèi)用的40%放刨。在早期對(duì)缺陷進(jìn)行修正是最廉價(jià)的工秩。因而避免返工是一個(gè)縮短項(xiàng)目執(zhí)行時(shí)間的有利機(jī)會(huì)。

2功能蔓延

典型的項(xiàng)目經(jīng)驗(yàn)告訴我們进统,25%的需求會(huì)發(fā)生變化助币,有些時(shí)候更多。對(duì)本質(zhì)的需求變化不加以限制是開(kāi)發(fā)效率的首要錯(cuò)誤螟碎。所以避免功能蔓延眉菱,需求鍍金對(duì)項(xiàng)目進(jìn)度是很有好處的。

3需求定義

一般情況下掉分,需求定義要花費(fèi)項(xiàng)目全部時(shí)間的10%到30%俭缓。而且由于需求收集是一種無(wú)所限制的工作,也就可能會(huì)花費(fèi)大量不必要的時(shí)間酥郭。在需求定義階段適當(dāng)?shù)亩酱倩梗瑢?duì)項(xiàng)目進(jìn)度很有幫助。在需求定義期間不从,包括聯(lián)合應(yīng)用開(kāi)發(fā)惜姐,漸進(jìn)原型,階段交付和不同的風(fēng)險(xiǎn)管理方法椿息,將在其他章節(jié)中介紹歹袁。

4模糊的項(xiàng)目前期

開(kāi)發(fā)速度的權(quán)衡

最初的資源股價(jià)和進(jìn)度往往不能被接受坷衍,這不是因?yàn)轫?xiàng)目經(jīng)理或程序設(shè)計(jì)者的工作有差錯(cuò),而是由于用戶通常希望得到的比他們提供的資源要多条舔。如果工作不能與可行的進(jìn)度和資源想適應(yīng)枫耳,那么他們要么就得到的更少,要么就是導(dǎo)致時(shí)間和資源增加逞刷。

*進(jìn)度嘉涌,費(fèi)用和產(chǎn)品的平衡

*質(zhì)量的權(quán)衡

對(duì)軟件產(chǎn)品的質(zhì)量要求分為兩種:

第一種是要求軟件有較低的缺陷率。由于低缺陷率與短的開(kāi)發(fā)周期分身就是匹配的夸浅,在這種情況下沒(méi)有更好的辦法為了進(jìn)度來(lái)權(quán)衡質(zhì)量仑最。

第二種是要求產(chǎn)品包括高質(zhì)量產(chǎn)品應(yīng)有的特性,可用性帆喇,健壯性警医,有效性等。對(duì)之中質(zhì)量要求的關(guān)注會(huì)延長(zhǎng)開(kāi)發(fā)時(shí)間坯钦,因此也就使我們需要相對(duì)于進(jìn)度去平衡這種質(zhì)量要求预皇。

*個(gè)人效率的權(quán)衡

在嘗試達(dá)到個(gè)人最大生產(chǎn)力和最求進(jìn)度最快之間存在沖突。達(dá)到每個(gè)人最大生產(chǎn)力的最簡(jiǎn)單辦法就是保持小規(guī)模團(tuán)隊(duì)婉刀,而最求進(jìn)度最快最簡(jiǎn)單的方法就是擴(kuò)大團(tuán)隊(duì)人數(shù)吟温。因此意味著快速開(kāi)發(fā)并不總是生產(chǎn)力最高的。

典型的進(jìn)度改進(jìn)模式

如上圖突颊,典型開(kāi)發(fā)過(guò)程中鲁豪,計(jì)劃雖然好看,但是很少有機(jī)會(huì)完成律秃。從典型開(kāi)發(fā)到有效開(kāi)發(fā)要完成的最大部分工作是從癡心妄想轉(zhuǎn)變到有意義的項(xiàng)目計(jì)劃爬橡。如下圖:

如上圖,有效開(kāi)發(fā)的項(xiàng)目中棒动,進(jìn)度的分布范圍是較狹窄的糙申。有兩個(gè)原因:一是人們學(xué)會(huì)了怎樣實(shí)際地設(shè)置目標(biāo),二是人們學(xué)會(huì)了如何較快的開(kāi)發(fā)軟件船惨。

向快速開(kāi)發(fā)前進(jìn)

后續(xù)章節(jié)中將描述實(shí)現(xiàn)快速開(kāi)發(fā)的方法:

l生命期計(jì)劃

l估算

l進(jìn)度計(jì)劃

l面向客戶開(kāi)發(fā)

l激勵(lì)

l團(tuán)隊(duì)合作

l團(tuán)隊(duì)結(jié)構(gòu)

l生產(chǎn)力工具

l項(xiàng)目矯正

以上的部分內(nèi)容我們?cè)谇懊嬖?jīng)講過(guò)柜裸,之所以我們?cè)谙旅孢€要討論,是因?yàn)橐陨蟽?nèi)容是獲得最快開(kāi)發(fā)速度的關(guān)鍵方法粱锐。

第七章生命期計(jì)劃

任何軟件開(kāi)發(fā)都要經(jīng)歷一個(gè)“生命期”粘室,包括從1.0版本在某個(gè)人腦中閃現(xiàn)到6.74b版本在最后一個(gè)用戶的機(jī)器上最后一次使用之間的所有活動(dòng)。

生命期模型的主要功能是為開(kāi)發(fā)活動(dòng)確定一種次序卜范,一種標(biāo)準(zhǔn)衔统。

人們最熟悉的模型是瀑布生命期模型,但是它的弱點(diǎn)也同樣著名。作為一個(gè)項(xiàng)目骨架锦爵,你選擇的生命期模型對(duì)項(xiàng)目的成功和任何其他計(jì)劃一樣重要舱殿,并幫助你一步一步接近目標(biāo)。如果你選擇了合適的生命期模型险掀,就可以提高開(kāi)發(fā)速度沪袭,提高質(zhì)量,加強(qiáng)項(xiàng)目跟蹤控制樟氢,減少成本冈绊,降低風(fēng)險(xiǎn)或改善用戶關(guān)系。選擇了錯(cuò)誤的生命期模型埠啃,也必定會(huì)導(dǎo)致工作拖沓死宣,勞動(dòng)重復(fù),無(wú)謂的浪費(fèi)和挫折碴开。

純瀑布模型

1說(shuō)明

盡管存在許多問(wèn)題毅该,純瀑布模型是其他模型的基礎(chǔ),是一個(gè)比較有效的生命期模型潦牛。

在瀑布模型中眶掌,項(xiàng)目始終按照一定順序的步驟從初始概念進(jìn)展到系統(tǒng)測(cè)試。項(xiàng)目確保在每個(gè)階段結(jié)束時(shí)進(jìn)行檢查巴碗,判定是否可以開(kāi)始下一個(gè)階段的工作朴爬。

文檔驅(qū)動(dòng)。意味著主要工作成果是通過(guò)文檔傳遞橡淆。在瀑布模型中寝殴,各階段不連續(xù)也不交疊。

降低計(jì)劃管理費(fèi)用明垢。因?yàn)槟憧梢灶A(yù)先完成所有計(jì)劃,文檔產(chǎn)生并提供了貫穿生命期過(guò)程的充分說(shuō)明市咽。

2適合情境

當(dāng)你有一個(gè)穩(wěn)定的產(chǎn)品定義和很容易被理解的技術(shù)解決方案時(shí)痊银,瀑布模型特別合適。在這種情況下施绎,瀑布模型可以幫助你及早發(fā)現(xiàn)問(wèn)題溯革,提供穩(wěn)定的需求。

對(duì)于那些容易理解但很復(fù)雜的項(xiàng)目谷醉,采用瀑布模型很合適致稀。

3缺點(diǎn)

缺乏靈活性。必須在項(xiàng)目開(kāi)始階段就說(shuō)明全部需求俱尼。

編碼修正模型

1說(shuō)明

編碼修正模型是一種不太有用的模型抖单,但是比較常見(jiàn)。如果你沒(méi)有明確的選擇其他生命期模型,也許你就不自覺(jué)的在用編碼修正模型矛绘。編碼修改也被稱(chēng)為魯莽編碼耍休。

當(dāng)你使用編碼修正模型的時(shí)候,你是從一個(gè)大致想法開(kāi)始货矮,可能有一個(gè)正式規(guī)范羊精,可能沒(méi)有,然后你結(jié)合設(shè)計(jì)囚玫,編碼喧锦,調(diào)式和測(cè)試方法,完成開(kāi)發(fā)抓督。如下圖:

2適合情境/優(yōu)點(diǎn)

編碼修正模型有兩個(gè)優(yōu)點(diǎn):第一燃少,不需要什么成本。你不需要在編碼工作之外付出成本本昏,比如項(xiàng)目規(guī)劃供汛,文檔編制,質(zhì)量保證等涌穆。第二怔昨,只需要極少的專(zhuān)業(yè)知識(shí)。任何有編碼技能的人都能使用它宿稀。

對(duì)于一些非常小的趁舀,用完就丟的軟件,原型祝沸,驗(yàn)證程序等矮烹,這種模型還是很合適的

3缺點(diǎn)

對(duì)于其他項(xiàng)目來(lái)說(shuō)罩锐,這種模型是非常危險(xiǎn)的奉狈。因?yàn)樗?b>不提供項(xiàng)目進(jìn)展,質(zhì)量評(píng)估涩惑,風(fēng)險(xiǎn)識(shí)別等仁期。

螺旋模型!

1說(shuō)明

螺旋模型是一種以風(fēng)險(xiǎn)為導(dǎo)向的生命期模型。它把項(xiàng)目分解成一個(gè)個(gè)小項(xiàng)目,每個(gè)小項(xiàng)目都標(biāo)識(shí)一個(gè)或多個(gè)主要風(fēng)險(xiǎn)问麸,直到所有主要風(fēng)險(xiǎn)都被確認(rèn)雌续。“風(fēng)險(xiǎn)”的概念在這里有所外延,它可以是需求或者是框架沒(méi)有被理解清楚,潛在的性能問(wèn)題,根本的技術(shù)問(wèn)題理逊,等等橡伞。

它的基本思路是,從一個(gè)小范圍的關(guān)鍵中心開(kāi)始尋找風(fēng)險(xiǎn)挡鞍,制定風(fēng)險(xiǎn)計(jì)劃骑歹,并交付給下一步驟。如此迭代墨微,每次迭代都把項(xiàng)目擴(kuò)展到更大的規(guī)模道媚。每次迭代都包括一下六個(gè)步驟:

(1)確定目標(biāo),方案和約束條件翘县。

(2)識(shí)別并解決風(fēng)向最域。

(3)評(píng)價(jià)備選方案。

(4)開(kāi)發(fā)本次迭代可供交付的內(nèi)容锈麸,并檢查它們的正確性镀脂。

(5)規(guī)劃下一個(gè)迭代過(guò)程。

(6)交付給下一步驟忘伞,開(kāi)始新的迭代過(guò)程薄翅。

2適合情境/優(yōu)點(diǎn)

可以采用不同的方法把螺旋模型和其他生命期模型結(jié)合在一起使用。比如使用螺旋模型將項(xiàng)目分解氓奈,將風(fēng)險(xiǎn)降低到可以接受的水平后翘魄,再采用瀑布模型或其他模型來(lái)執(zhí)行項(xiàng)目。

通常都是在螺旋模型中舀奶,把其他生命期模型引入作為迭代過(guò)程暑竟。

螺旋模型最重要的優(yōu)勢(shì)就是,隨著成本的增加育勺,風(fēng)險(xiǎn)程度隨之降低但荤。時(shí)間和資金花得越多,風(fēng)險(xiǎn)越小涧至。

螺旋模型至少提供和瀑布模型一樣多的管理控制腹躁。在每個(gè)迭代結(jié)束前都設(shè)置了檢查點(diǎn)。

螺旋模型能使你對(duì)任何無(wú)法逾越的風(fēng)險(xiǎn)都提前預(yù)知南蓬。

3缺點(diǎn)

螺旋模型唯一的缺陷就是比較復(fù)雜纺非。需要責(zé)任心,專(zhuān)注和管理方面的知識(shí)蓖康。通過(guò)目標(biāo)和里程碑,來(lái)決定項(xiàng)目是否已經(jīng)準(zhǔn)備好進(jìn)行下一輪迭代垒手。

如果項(xiàng)目的目標(biāo)明確蒜焊,風(fēng)險(xiǎn)適度,你就沒(méi)有必要采用螺旋模型科贬。

生魚(yú)片模型

1說(shuō)明

純瀑布模型最大的弱點(diǎn)不是這些活動(dòng)本身泳梆,而是模型把活動(dòng)看作是不連續(xù)的鳖悠,有順序的階段來(lái)處理。因此优妙,可以針對(duì)這個(gè)弱點(diǎn)乘综,來(lái)調(diào)正模型,進(jìn)化成各種修改后的瀑布模型套硼,生魚(yú)片模型就是其中一個(gè)卡辰。

傳統(tǒng)瀑布模型允許在階段之間,存在最低限度的重疊邪意。而生魚(yú)片模型建議的是一種大幅度的重疊九妈。

2適合情境/優(yōu)點(diǎn)

對(duì)比純瀑布模型,生魚(yú)片可以充分減少文檔需求雾鬼。

如果你在一個(gè)小的萌朱,定義得很好的項(xiàng)目,那么這種模型可以用到最有效的模型策菜。

3缺點(diǎn)

因?yàn)殡A段是重疊的晶疼,所以將會(huì)導(dǎo)致里程碑非常不明確,很難精確進(jìn)行過(guò)程跟蹤又憨。

具有子項(xiàng)目的瀑布模型

1.說(shuō)明

純瀑布模型的另一個(gè)問(wèn)題是翠霍,必須在上階段全部完成后,才進(jìn)入下一個(gè)階段竟块。但在實(shí)際工作中壶运,系統(tǒng)某些部分可能比較簡(jiǎn)單,有些地方比較復(fù)雜浪秘,而由于復(fù)雜的問(wèn)題蒋情,導(dǎo)致簡(jiǎn)單的部分也無(wú)法開(kāi)始。因此耸携,我們可以把系統(tǒng)分成幾個(gè)相對(duì)獨(dú)立的子項(xiàng)目棵癣,每個(gè)子項(xiàng)目都按自己的節(jié)奏進(jìn)行,這就形成了一個(gè)具有子項(xiàng)目的瀑布模型夺衍。

2.適合情境/優(yōu)點(diǎn)

這種模型比較適合于系統(tǒng)包含多個(gè)相對(duì)獨(dú)立的項(xiàng)目狈谊。

3.缺點(diǎn)

具有子項(xiàng)目的瀑布模型,主要的風(fēng)險(xiǎn)在于子項(xiàng)目之間的相關(guān)性無(wú)法預(yù)料沟沙。為了解決這個(gè)風(fēng)險(xiǎn)河劝,你可以等到架構(gòu)設(shè)計(jì)完成,排查相關(guān)性之后矛紫,再拆分子項(xiàng)目赎瞎。

降低風(fēng)險(xiǎn)的瀑布模型

1.說(shuō)明

純瀑布模型的另一個(gè)問(wèn)題是,必須在開(kāi)始架構(gòu)設(shè)計(jì)之前颊咬,就完整的定義需求务甥。這在實(shí)際工作中非常困難牡辽。所以我們可以在瀑布模型中引入螺旋模型,以便確定和降低風(fēng)險(xiǎn)敞临。

2.適合情境/優(yōu)點(diǎn)

降低風(fēng)險(xiǎn)的瀑布模型比較適合開(kāi)發(fā)一個(gè)高風(fēng)險(xiǎn)內(nèi)核的項(xiàng)目态辛。不止在需求階段,在項(xiàng)目任何階段都能引入螺旋模型以降低風(fēng)險(xiǎn)挺尿。

3.缺點(diǎn)

降低風(fēng)險(xiǎn)的瀑布模型跟螺旋模型一樣奏黑,就是比較復(fù)雜

漸進(jìn)原型票髓!

1.說(shuō)明

漸進(jìn)原型通常是從最顯著的方面開(kāi)始攀涵,向客戶展示完成的部分,然后根據(jù)反饋信息繼續(xù)開(kāi)發(fā)項(xiàng)目洽沟,一直重復(fù)這一過(guò)程以故,直到用戶認(rèn)為原型已經(jīng)足夠好,然后結(jié)束工作裆操,交付作為最終產(chǎn)品的原型怒详。

2.適合情境/優(yōu)點(diǎn)

在需求變化很快的時(shí)候,用戶很難提出明確需求的時(shí)候踪区,開(kāi)發(fā)人員對(duì)于最佳架構(gòu)沒(méi)有把握的時(shí)候昆烁,漸進(jìn)原型都特別有用。

3.缺點(diǎn)

漸進(jìn)原型主要的缺點(diǎn)是缎岗,你不可能在開(kāi)始的時(shí)候知道產(chǎn)品總時(shí)間需要多久静尼。

另一個(gè)缺點(diǎn)就是,漸進(jìn)原型很容易退化成編碼修正模型传泊。所以要注意鼠渺,真正的漸進(jìn)原型,包含真正的需求分析眷细,設(shè)計(jì)和可維護(hù)的代碼拦盹。漸進(jìn)原型每次重復(fù)時(shí)的實(shí)際進(jìn)展是比較小的。

階段交付溪椎!

1.說(shuō)明

階段交付可以持續(xù)地在確定的階段向用戶展示軟件普舆。和漸進(jìn)原型不同,在前期你就明確的知道整體分為多少階段校读,每個(gè)階段完成哪些內(nèi)容沼侣。

2.適合情境/優(yōu)點(diǎn)

階段交付模型,在整個(gè)周期內(nèi)歉秫,持續(xù)不斷的產(chǎn)出階段性成果蛾洛,把有用的功能交付到客戶手中

階段交付能夠提供有形的階段進(jìn)度產(chǎn)出端考。這樣的進(jìn)度產(chǎn)出能夠使項(xiàng)目進(jìn)度壓力更加可控雅潭。

3.缺點(diǎn)

階段交付的主要缺點(diǎn)是,如果管理層面和技術(shù)層面缺乏仔細(xì)的規(guī)劃却特,工作就無(wú)法進(jìn)行扶供。

使用階段交付模型需要注意的問(wèn)題是:

在管理層面上,你需要確信所規(guī)劃的階段對(duì)用戶非常有意義裂明,而且在工作安排上保證員工能及時(shí)在階段最后期限完成椿浓。

在技術(shù)層面上,你需要確信考慮了不同產(chǎn)品組成部分的技術(shù)依賴性闽晦。通常會(huì)犯的一個(gè)錯(cuò)誤就是把一個(gè)在第二階段就需要用到的組件扳碍,放在了第四個(gè)階段才開(kāi)發(fā)。

面向進(jìn)度的設(shè)計(jì)

1.說(shuō)明

面向進(jìn)度的設(shè)計(jì)模型仙蛉,類(lèi)似于階段交付笋敞,相同點(diǎn)是都在連續(xù)的階段規(guī)劃產(chǎn)品。差異是面向進(jìn)度設(shè)計(jì)模型荠瘪,在開(kāi)始的時(shí)候不必知道究竟能達(dá)到什么樣的預(yù)定目標(biāo)夯巷。你可能規(guī)劃了五個(gè)階段,由于一些限制哀墓,僅僅完成了前三個(gè)階段趁餐。

2.適合情境/優(yōu)點(diǎn)

面向進(jìn)度的設(shè)計(jì)模型,能確保你在一個(gè)確定的日期發(fā)布產(chǎn)品篮绰。

該模型的關(guān)鍵在于按優(yōu)先級(jí)區(qū)分系統(tǒng)特性后雷,規(guī)劃開(kāi)發(fā)階段。比如windows系統(tǒng)中包括了一些小程序吠各,比如計(jì)算器臀突,寫(xiě)字板,畫(huà)筆等走孽,可以為這些小程序采用面向進(jìn)度的設(shè)計(jì)模型惧辈,來(lái)保證他們不影響windows的開(kāi)發(fā)和發(fā)布。

是否使用本模型磕瓷,取決于你對(duì)自己的工作規(guī)劃是否有信心盒齿。如果你非常有信息,那么面向進(jìn)度的設(shè)計(jì)是個(gè)低效的模型困食,如果你不是那么自信边翁,這個(gè)模型就很有用了。

3.缺點(diǎn)

面向進(jìn)度的設(shè)計(jì)模型硕盹,最大的缺點(diǎn)是如果你不明白所有階段符匾,就會(huì)浪費(fèi)時(shí)間去指定,架構(gòu)和設(shè)計(jì)你不需要的特性瘩例。

漸進(jìn)交付啊胶!

1.說(shuō)明

漸進(jìn)交付是一種跨越了漸進(jìn)原型和階段交付兩種模型的生命期甸各。漸進(jìn)交付跟漸進(jìn)原型比較類(lèi)似,區(qū)別是取決于你計(jì)劃滿足用戶需求的程度焰坪。如果你計(jì)劃滿足用戶的絕大部分需求趣倾,漸進(jìn)交付就跟漸進(jìn)原型差不多。如果你計(jì)劃滿足少量的需求某饰,漸進(jìn)交付就跟階段交付差不多儒恋。

漸進(jìn)交付于漸進(jìn)原型最大的差別不在方法上,而是工作重點(diǎn)上黔漂。漸進(jìn)原型中诫尽,你強(qiáng)調(diào)系統(tǒng)看得見(jiàn)的樣子,然后回來(lái)補(bǔ)系統(tǒng)漏洞炬守;在漸進(jìn)交付中牧嫉,你在乎的是系統(tǒng)的核心。

增量開(kāi)發(fā)方法

增量開(kāi)發(fā)方法包括螺旋型模型减途,漸進(jìn)原型驹止,階段交付,漸進(jìn)交付观蜗。

面向開(kāi)發(fā)工具的設(shè)計(jì)

商品軟件

當(dāng)你興沖沖的準(zhǔn)備做一個(gè)新系統(tǒng)時(shí)臊恋,一個(gè)常常被忽略的選擇就是可以直接購(gòu)買(mǎi)商品軟件。

為項(xiàng)目選址最快的生命期模型墓捻!

第一章到第七章 完成

第八章以后見(jiàn)另外一篇

第八章?估算

關(guān)于軟件估算抖仅,首先你需要考慮怎樣利用數(shù)據(jù)做出合理的估算。其次砖第,如果你提出的估算不能被接受撤卢,那么估算再準(zhǔn)也沒(méi)有任何意義,所以也要考慮軟件工程進(jìn)度安排中的人際因素梧兼。

1.軟件估算的故事

軟件開(kāi)發(fā)是一個(gè)逐進(jìn)的過(guò)程放吩,所以估算也是漸進(jìn)的過(guò)程。

1.軟件和建筑

你詢問(wèn)建筑師10萬(wàn)元是否能建一座兩室兩廳的房子羽杰,建筑師會(huì)告訴你可以渡紫。如果開(kāi)工之后你才對(duì)他說(shuō)你需要大理石壁爐,鍍金家具考赛,意大利瓷磚和良好的地理位置惕澎,那么最終你房子的造價(jià)可能是最初的好幾倍。

2.軟件開(kāi)發(fā)是一個(gè)漸進(jìn)的過(guò)程

只有詳細(xì)的了解到每個(gè)功能颜骤,才有可能做出準(zhǔn)確的估算唧喉。產(chǎn)品概念到需求說(shuō)明到概要設(shè)計(jì)到詳細(xì)設(shè)計(jì)到最終編碼,而在每個(gè)階段,都可能做出影響最終編碼的決策八孝,這種不確定性董朝,也就導(dǎo)致了估算的不確定性。以下是一些常見(jiàn)的問(wèn)題:

l客戶會(huì)中途需要X功能嗎干跛?

l客戶需要的X功能益涧,是要便宜的版本還是昂貴的版本?

lX功能驯鳖,如果實(shí)施了便宜版本,客戶以后會(huì)不會(huì)想要改成昂貴的版本久免?

lX功能的質(zhì)量級(jí)別是什么浅辙?

l把X功能和其他功能結(jié)合起來(lái)需要多少工作量?

所以阎姥,能夠提前做出的決策越多记舆,估算的精確度就越高。

3.可能細(xì)化的數(shù)量


從上表可以看出呼巴,對(duì)項(xiàng)目的整體估算泽腮,在開(kāi)始是比較籠統(tǒng)的(即使需求說(shuō)明書(shū)完成之后),隨著項(xiàng)目的進(jìn)行衣赶,才逐漸變得精確起來(lái)诊赊。


從上表中可以看出,估算應(yīng)該是一個(gè)范圍府瞄,而不是一個(gè)定數(shù)碧磅。以你的估算乘以樂(lè)觀系數(shù),就得出樂(lè)觀估算遵馆,乘以悲觀系數(shù)鲸郊,就得到悲觀估算。

如果客戶堅(jiān)持需要得到估算货邓,你也覺(jué)得可以給到秆撮,是可以提交到客戶的。當(dāng)然大部分情況下换况,最好是記錄在自己手里职辨,而不是公布。

在同時(shí)使用工作量系數(shù)和進(jìn)度系數(shù)時(shí):

一定要注意區(qū)分工作量系數(shù)和進(jìn)度系數(shù)(原因后章中會(huì)解釋)戈二。

一定要先估算工作量拨匆,再估算進(jìn)度。進(jìn)度是從工作量推出來(lái)的挽拂。

如果你先粗略的估算了進(jìn)度惭每,就最好不要使用工作量系數(shù)。

4.估算與控制

客戶總是希望提供的資源少些,而得到的功能多些台腥。兩者總是無(wú)法同時(shí)滿足的宏赘,于是最終的結(jié)果只有兩種,功能趨于與資源匹配黎侈,或者資源趨于與功能匹配察署。如下圖:


5.合作

到目前為止,我們討論的是估算的難度峻汉,原因也是情有可原的贴汪。但是人們總是希望能夠得到準(zhǔn)確的估算,而我們也同樣有義務(wù)給他們提供休吠。

這里的建議是扳埂,主動(dòng)告知客戶你能提供的部分,如果你知道什么時(shí)間會(huì)有更好的估算瘤礁,也告知他們阳懂。不要讓他們游離在項(xiàng)目之外,告訴他們關(guān)于里程碑的信息柜思。通過(guò)對(duì)客戶描述項(xiàng)目估算的整體設(shè)想岩调,幫助他們理解整個(gè)項(xiàng)目的戰(zhàn)略方針。并告訴他們你將在產(chǎn)品定義赡盘,需求說(shuō)明号枕,概設(shè)和詳設(shè)結(jié)束時(shí)修訂估算

l估算與實(shí)際的交匯點(diǎn)


6.項(xiàng)目估算概要

l準(zhǔn)確與精確

準(zhǔn)確是指估算與結(jié)果相近陨享。

精確是指估算的數(shù)位很多堕澄。

例子:對(duì)于數(shù)學(xué)常數(shù)“派(3.141592658)”來(lái)說(shuō),3是準(zhǔn)確的霉咨,但不一定精確蛙紫,3.3232是精確的,但不是準(zhǔn)確的途戒。

通常在軟件估算中坑傅,精確是準(zhǔn)確的敵人。40到70個(gè)人月的工作量喷斋,是你能做到的準(zhǔn)確和精確的估算唁毒,如果客戶一定要求精確,你將估算做到55個(gè)人月星爪,精確度提高了浆西,但實(shí)際并不準(zhǔn)確。

2.軟件估算的步驟

1.估算產(chǎn)品規(guī)模

最有效的估算需要從規(guī)模開(kāi)始顽腾。通常這是最消耗腦力的一步近零,也是人們常常跳過(guò)這步的原因诺核。這里提到的規(guī)模,包含功能集的廣度與深度久信,以及復(fù)雜度等窖杀。

2.估算工作量

3.估算進(jìn)度

一旦規(guī)模和工作量估算出來(lái)之后,進(jìn)度通常是微不足道的(原因?qū)⒃诤笳陆忉?裙士。但是得到一個(gè)多方都認(rèn)可的進(jìn)度估算入客,卻是項(xiàng)目中最困難的部分。

4.提供某一范圍的估算

隨著項(xiàng)目的進(jìn)行腿椎,范圍也許將發(fā)生變化桌硫,所以提供出來(lái)的估算是基于項(xiàng)目范圍的。當(dāng)范圍變化時(shí)啃炸,也需要同步修訂估算铆隘,以提高精確度。

3.估算產(chǎn)品規(guī)模

對(duì)于產(chǎn)品規(guī)模的估算肮帐,可以用以下幾種方法:

使用規(guī)模估算算法

使用規(guī)模估算軟件

類(lèi)比估算

無(wú)論何種估算方法,準(zhǔn)確的項(xiàng)目歷史記錄是長(zhǎng)期成功的關(guān)鍵边器。

1.功能點(diǎn)估算(參數(shù)估算)

功能點(diǎn)數(shù)量建立在以下各項(xiàng)的數(shù)量和復(fù)雜度上:

l輸入

l輸出

l查詢

l內(nèi)部邏輯文件

l外部接口文件

一個(gè)中等復(fù)雜的輸入點(diǎn)训枢,我們可以近似看作兩個(gè)一般復(fù)雜的輸入點(diǎn),于是如果我們建立了一套復(fù)雜程度轉(zhuǎn)換系數(shù)忘巧,就能算出系統(tǒng)全部折算成一般復(fù)雜點(diǎn)的量恒界。如下圖:


2.估算技巧

l避免沒(méi)有準(zhǔn)備的估算

l留出估算的時(shí)間,并做好計(jì)劃

匆忙的估算不會(huì)是準(zhǔn)確的估算砚嘴。對(duì)于有些大型項(xiàng)目十酣,估算本身就是一個(gè)單獨(dú)的項(xiàng)目。

l使用以前的項(xiàng)目數(shù)據(jù)(類(lèi)似PMP的類(lèi)比估算)

l使用以開(kāi)發(fā)人員為基礎(chǔ)的估算

l走查估算(類(lèi)似PMP的群體決策)

項(xiàng)目成員分別估算各自的部分际长,然后開(kāi)走查會(huì)議比較所有的估算耸采,分析討論估算差別,直到對(duì)估算達(dá)成一致意見(jiàn)工育。

l分類(lèi)法估算

簡(jiǎn)單地把內(nèi)容分為容易虾宇,中等和難,每一類(lèi)分配固定的規(guī)模如绸,累加各個(gè)規(guī)模數(shù)值得到總的項(xiàng)目規(guī)模嘱朽。

l詳細(xì)的較低層次的查表估算(類(lèi)似PMP里的自下而上的估算)

估算建立在詳細(xì)檢查項(xiàng)目活動(dòng)的基礎(chǔ)上,通常檢查的越仔細(xì)估算越準(zhǔn)確怔接。這點(diǎn)類(lèi)似于PMP里的自下而上的估算搪泳。

l不要忽略普通任務(wù)

人們通常不會(huì)主動(dòng)忽略任務(wù),但是如果分配給估算的時(shí)間不夠扼脐,就常常忽略一些普通任務(wù)岸军,比如:數(shù)據(jù)轉(zhuǎn)換,定制,安裝凛膏,測(cè)試杨名,版本管理,給客戶演示猖毫,會(huì)議台谍,缺陷修正,缺陷跟蹤吁断,集成趁蕊,評(píng)審,休假仔役,節(jié)假日掷伙,員工請(qǐng)假,公司和部門(mén)會(huì)議等又兵。

l使用軟件估算工具

l使用幾種不同的估算技術(shù)任柜,并比較結(jié)果

l在項(xiàng)目進(jìn)行中改變估算方法

項(xiàng)目初始階段,用估算算法或查表估算沛厨,

PMP里的估算方法

l專(zhuān)家判斷

l類(lèi)比估算

通過(guò)類(lèi)似的項(xiàng)目來(lái)估算宙地。

適合項(xiàng)目早期使用。

成本低逆皮,耗時(shí)少宅粥,準(zhǔn)確性低。

如果本質(zhì)越類(lèi)似电谣,估算團(tuán)隊(duì)越專(zhuān)業(yè)秽梅,準(zhǔn)確性越好。

l參數(shù)估算

基于歷史數(shù)據(jù)和項(xiàng)目參數(shù)的估算剿牺。

例如:曾經(jīng)4個(gè)蘋(píng)果20元企垦,則20/4=5元/個(gè),那么估算10個(gè)蘋(píng)果晒来,應(yīng)該是50元竹观。

l三點(diǎn)估算

三角分布:Te = (To + Tm + Tp) / 3

貝塔分布:Te = (To + 4Tm + Tp) / 6

l群體決策技術(shù)

l儲(chǔ)備分析

應(yīng)急儲(chǔ)備,應(yīng)對(duì)已知-未知風(fēng)險(xiǎn)潜索。

管理儲(chǔ)備臭增,應(yīng)對(duì)未知-未知風(fēng)險(xiǎn),不在進(jìn)度基準(zhǔn)中竹习。

3.估算的表達(dá)方式

軟件估算包含很大的風(fēng)險(xiǎn)和不確定性誊抛,好的估算應(yīng)該捕捉到這些風(fēng)險(xiǎn)和不確定性。

l加減限定

使用加減限定的估算方式整陌,可以表明估算中的風(fēng)險(xiǎn)和不確定性拗窃。即使你被迫在不顯示的時(shí)間段完成工作瞎领,也可以通過(guò)加減的方式表達(dá)估算結(jié)果,讓周?chē)娜嗣靼走M(jìn)度風(fēng)險(xiǎn)随夸。

缺點(diǎn)在于九默,有時(shí)候人們只關(guān)注估算值,而忽略了加減限定部分宾毒。

例子:一個(gè)項(xiàng)目驼修,估算6個(gè)月,+-2個(gè)月诈铛。

l范圍

為應(yīng)對(duì)加減限定的缺點(diǎn)乙各,可以采用范圍估算

例子:一個(gè)項(xiàng)目幢竹,估算4到8個(gè)月耳峦。

l風(fēng)險(xiǎn)量化

風(fēng)險(xiǎn)量化可以將加減估算擴(kuò)展到解釋加減代表的意義

例子:

記錄下風(fēng)險(xiǎn)項(xiàng)之后焕毫,可以向客戶提出減少風(fēng)險(xiǎn)的措施蹲坷。當(dāng)你用風(fēng)險(xiǎn)量化估算時(shí),一定要準(zhǔn)備好回答關(guān)于怎樣確定風(fēng)險(xiǎn)和怎樣利用潛在的可能縮短進(jìn)度的問(wèn)題邑飒。

l基于情況

風(fēng)險(xiǎn)量化很大程度上就是基于情況的循签,所以可以用最佳情況,一般情況和最差情況來(lái)描述估算幸乒。

例子:

計(jì)劃情況總是趨向于最佳情況懦底,而當(dāng)前實(shí)際情況總是趨向于最差情況唇牧。

準(zhǔn)備好向客戶解釋分別發(fā)生什么罕扎,才會(huì)導(dǎo)致最佳情況和最差情況。

l粗略的日期和時(shí)間段

如果是粗略的估算丐重,就使用顯得粗略的數(shù)字腔召,比如3x97或10人年,而不要用誤導(dǎo)性的精確的數(shù)字扮惦,比如2017-03-07臀蛛,或520人周。

不論怎樣粗略的估算崖蜜,如果估算是3x50左右浊仆,最終還是能對(duì)應(yīng)到相應(yīng)的日期,怎么處理這個(gè)日期帶來(lái)的誤導(dǎo)性呢豫领?

l把握性因素

1.估算工作量

盡管對(duì)于軟件項(xiàng)目來(lái)說(shuō)抡柿,工作量估算并不是必須的,但是它對(duì)進(jìn)度估算有著非常重要的作用等恐。

2.估算進(jìn)度

進(jìn)度估算公式:

3(常量)× 人月(工作量)的三分之一次方

例如:

如果工作量預(yù)估為65個(gè)人月洲劣,則總進(jìn)度計(jì)算為:

3乘以65人月的三分之一次方= 12月

所以這個(gè)公式還在暗示备蚓,你需要65人月/12月= 5到6個(gè)開(kāi)發(fā)人員。

這個(gè)進(jìn)度估算公式只是作為參考囱稽,我覺(jué)得按找PMP里的畫(huà)甘特圖要好一些郊尝。

1基于承諾的進(jìn)度表

有些組織直接從時(shí)間需求出發(fā)逆推安排進(jìn)度,而不是從估算出發(fā)正推進(jìn)度战惊。這種做法使團(tuán)隊(duì)基于承諾的文化中流昏,要求開(kāi)發(fā)人員做出進(jìn)度承諾而非進(jìn)度估算。

這種做法有一些優(yōu)點(diǎn):有利于開(kāi)發(fā)者對(duì)進(jìn)度的關(guān)注样傍,有利于開(kāi)發(fā)者在接受任務(wù)后士氣高昂横缔,有利于開(kāi)發(fā)者自愿加班。

當(dāng)然缺點(diǎn)也比較明顯:開(kāi)發(fā)者通常缺乏經(jīng)驗(yàn)而比較樂(lè)觀衫哥,通常進(jìn)度將延誤30%左右茎刚。沒(méi)有數(shù)據(jù)可供檢查。容易挫傷士氣等等撤逢。

我們?cè)诘谝徊糠值牡诙乱呀?jīng)討論過(guò)基于承諾的開(kāi)發(fā)膛锭,在快速開(kāi)發(fā)中,承諾有一定的作用蚊荣。但如果基于承諾的計(jì)劃用正常的方式去做初狰,并不能縮短進(jìn)度掂摔。

承諾應(yīng)該是現(xiàn)實(shí)的付燥,可行的,否則將導(dǎo)致團(tuán)隊(duì)不斷失敗航夺。

不論基于承諾還是其他估算媳叨,只有準(zhǔn)確的進(jìn)度表才是項(xiàng)目的保障腥光。

2 Jones的一階估算

一階估算基于功能點(diǎn)總數(shù)。先獲得功能點(diǎn)總數(shù)糊秆,然后從下表中選取合適的冪次將功能點(diǎn)數(shù)升冪武福。

3.大致的進(jìn)度估算

1可能的最短進(jìn)度

l假定

可能的最短進(jìn)度中,包含著非常多非常樂(lè)觀的假設(shè)痘番。這些假設(shè)包括:

1)員工捉片。你假設(shè)你的團(tuán)隊(duì)都是頂尖員工,每個(gè)人都目標(biāo)明確汞舱,每個(gè)人都努力工作伍纫,和睦相處,且不存在人員調(diào)整問(wèn)題昂芜。

2)管理莹规。你假設(shè)項(xiàng)目有理想的管理,開(kāi)發(fā)人員不需要分散精力到與技術(shù)無(wú)關(guān)的事情说铃。

3)工具支持访惜。你假設(shè)高效工具唾手可得嘹履。

4)方法。你假設(shè)所有開(kāi)發(fā)和管理方法债热,都是有效和沒(méi)有失誤的砾嫉。

5)壓縮。你假設(shè)所有工作都已經(jīng)壓縮到了最優(yōu)窒篱。

l兩個(gè)事實(shí)

1)存在一個(gè)最短時(shí)間焕刮,而且無(wú)法超越它。在某些時(shí)候墙杯,增加開(kāi)發(fā)人員將會(huì)減低開(kāi)發(fā)速度配并,而不是像想象的那樣加快速度。

2)當(dāng)你把進(jìn)度縮短到比普通進(jìn)度更短高镐,費(fèi)用將迅速上漲溉旋。當(dāng)你的工具和方法到位,可以簡(jiǎn)單的通過(guò)增加開(kāi)發(fā)人員的方式來(lái)縮短進(jìn)度嫉髓,PMP稱(chēng)為進(jìn)度壓縮观腊。然而不論加多少人,始終都有一個(gè)可能的最短進(jìn)度算行。

進(jìn)度壓縮因子=期望進(jìn)度/初始速度

上面是進(jìn)度壓縮因子的公式梧油,用來(lái)計(jì)算進(jìn)度壓縮的比例。比如你最初預(yù)估需要12個(gè)月(初始速度)完成州邢,現(xiàn)在必須在10個(gè)月(期望速度)內(nèi)完成儡陨,那么進(jìn)度壓縮因子就是12/10=0.83。

壓縮進(jìn)度工作量=初始工作量/進(jìn)度壓縮因子

上面是壓縮進(jìn)度工作量的公式量淌,其含義是進(jìn)度壓縮17%骗村,工作量需要增加21%。比如進(jìn)度壓縮因子是0.83类少,初始工作量是78人月叙身,那么壓縮進(jìn)度工作量就是78/0.83=94人月渔扎。

大量研究表明硫狞,即使進(jìn)度壓縮,也是有一個(gè)限度的晃痴,不可能獲得0.75以下的進(jìn)度壓縮因子残吩。

4.估算修正

應(yīng)該在整個(gè)項(xiàng)目過(guò)程中,持續(xù)進(jìn)行估算修正倘核。

但是估算修正有一些需要注意到地方泣侮。如下:

當(dāng)你做估算修正時(shí),將100人月增加到135人月后紧唱,人們會(huì)覺(jué)得項(xiàng)目已經(jīng)陷入麻煩中活尊。這是可笑的隶校,因?yàn)?00人月的估算是基于當(dāng)時(shí)的情況。作為項(xiàng)目經(jīng)理如何避免這個(gè)情況呢蛹锰?如下:

可以將估算表達(dá)方式改成范圍深胳。隨著進(jìn)度的推進(jìn),持續(xù)修正范圍铜犬。

1估算再修正舞终!

假定有一個(gè)6個(gè)月的進(jìn)度計(jì)劃,你計(jì)劃4周內(nèi)完成第一個(gè)里程碑癣猾,而實(shí)際花了5周才完成敛劝,當(dāng)你錯(cuò)過(guò)進(jìn)度日期時(shí),你有以下幾個(gè)選擇:

1.在后續(xù)進(jìn)度中加快速度纷宇,彌補(bǔ)這一周的損失夸盟。

2.把這一周的延遲加到整個(gè)項(xiàng)目中。

3.按比例延遲整個(gè)進(jìn)度計(jì)劃像捶。這個(gè)例子中就是(5-)4/4=25%满俗,即整體進(jìn)度全部延遲25%。

人們通常容易選擇第一個(gè)方案作岖,但是調(diào)查表明項(xiàng)目幾乎不能彌補(bǔ)損失的時(shí)間唆垃,而總是傾向于更加拖延。

估算的不準(zhǔn)確與傾向性是遍布整個(gè)進(jìn)度計(jì)劃的痘儡,如果第一個(gè)里程碑不準(zhǔn)確辕万,那么有理由認(rèn)為所有里程碑都有同樣的傾向。所以第二種方案看起來(lái)很正常沉删,但是是沒(méi)有多少道理支撐的渐尿。

第三種方案是最符合邏輯和經(jīng)驗(yàn)的。但也是最困難的矾瑰。你也可以晚一些做決定砖茸,通過(guò)監(jiān)控第二個(gè)里程碑來(lái)獲得更多信息。但是如果你在第二個(gè)里程碑延遲之后殴穴,仍不愿意整體修正凉夯,那今后就幾乎不可能進(jìn)行整體修正了。

當(dāng)然采幌,錯(cuò)過(guò)里程碑之后并非只有估算再修正這種方式劲够。也可以通過(guò)調(diào)整范圍,或者成本來(lái)解決休傍。其本質(zhì)就是借助三重約束(范圍-時(shí)間-成本)來(lái)調(diào)控項(xiàng)目征绎。唯一不能做的就是期望項(xiàng)目追趕進(jìn)度的同時(shí)保持進(jìn)度,產(chǎn)品和成本不變磨取。

第七章進(jìn)度計(jì)劃

項(xiàng)目估算和進(jìn)度計(jì)劃是我們面對(duì)的兩大難題人柿,在二者中我認(rèn)為后者更為迫切柴墩。

前面一章中我們著重描述如何制定精確的項(xiàng)目估算,本章則闡述如何使其為他人所接受凫岖。

1.過(guò)分樂(lè)觀的進(jìn)度計(jì)劃

1過(guò)分樂(lè)觀的進(jìn)度計(jì)劃產(chǎn)生的不良后果

l計(jì)劃的精確性

過(guò)分樂(lè)觀的計(jì)劃拐邪,常常無(wú)法完成。

l計(jì)劃的質(zhì)量

l堅(jiān)持執(zhí)行計(jì)劃

l功能范圍縮小

l項(xiàng)目推進(jìn)

l客戶關(guān)系

l倉(cāng)促收尾

2超負(fù)荷的進(jìn)度壓力

當(dāng)面臨無(wú)法如期完成的局面時(shí)隘截,客戶和管理人員第一反應(yīng)就是想開(kāi)發(fā)人員施壓扎阶,加班加點(diǎn)追趕進(jìn)度。而超負(fù)荷的進(jìn)度壓力很大程度是由過(guò)分樂(lè)觀的進(jìn)度計(jì)劃導(dǎo)致婶芭。進(jìn)度壓力將引發(fā)多種問(wèn)題东臀。

l產(chǎn)品質(zhì)量

l賭博心理

由于過(guò)分樂(lè)觀的進(jìn)度計(jì)劃按照規(guī)范的開(kāi)發(fā)方法是無(wú)法實(shí)現(xiàn)的,因此開(kāi)發(fā)人員和管理人員都將抱著賭一把的心態(tài)犀农,而不是估算風(fēng)險(xiǎn)值惰赋。比如說(shuō):“我不確定這款工具能不能提高生產(chǎn)力,但是注定無(wú)法如期完成的話呵哨,為什么不試試呢赁濒?”

l激勵(lì)效應(yīng)

緊湊的進(jìn)度計(jì)劃可以激發(fā)開(kāi)發(fā)人員的挑戰(zhàn)天性,但當(dāng)進(jìn)度計(jì)劃變得過(guò)分樂(lè)觀時(shí)孟害,將導(dǎo)致開(kāi)發(fā)人員付出了巨大的努力拒炎,卻仍然被看作是失敗者。因此挨务,任何期望過(guò)分緊湊的進(jìn)度計(jì)劃來(lái)產(chǎn)生激烈作用的嘗試注定失敗击你。

l創(chuàng)造性思維

l精疲力竭

l中途退出

l長(zhǎng)期進(jìn)行快速開(kāi)發(fā)

l開(kāi)發(fā)人員與管理人員的關(guān)系

3底線

對(duì)于過(guò)分樂(lè)觀的進(jìn)度計(jì)劃,這樣的計(jì)劃不起作用谎柄,不但沒(méi)有縮短丁侄,反而還讓工期變長(zhǎng)了。

2.戰(zhàn)勝進(jìn)度壓力

進(jìn)度壓力是軟件項(xiàng)目的通病朝巫,將導(dǎo)致兩個(gè)層面的錯(cuò)誤:從局部來(lái)看鸿摇,它鼓勵(lì)走捷徑,而實(shí)際上這會(huì)損害項(xiàng)目本身劈猿;從全局來(lái)看拙吉,它鼓勵(lì)救火行為。

對(duì)于軟件進(jìn)度計(jì)劃設(shè)定方面相關(guān)的三個(gè)主要因素有:

l主管愿望

l對(duì)過(guò)于樂(lè)觀的計(jì)劃缺乏認(rèn)識(shí)

l缺乏談判技巧

1有原則的談判

l將人從困境中解脫

任何談判都是首先與人有關(guān)糙臼,其次才是利益與立場(chǎng)庐镐。首先要對(duì)管理者多加理解恩商,他們可能受限于上司变逃,客戶或者投資機(jī)構(gòu)的壓力。大多數(shù)中層管理人員之所以堅(jiān)持開(kāi)發(fā)人員按照不可能的進(jìn)度計(jì)劃進(jìn)行執(zhí)行怠堪,并非是由于愚蠢或不通情理揽乱,而很可能是由于對(duì)技術(shù)缺乏認(rèn)知名眉,或受迫于上司。作為開(kāi)發(fā)人員凰棉,應(yīng)該怎么處理呢损拢?

第一,應(yīng)該以合作的態(tài)度努力改善與管理層的關(guān)系撒犀,設(shè)法讓他們理解軟件估算的漸進(jìn)原則和過(guò)分樂(lè)觀的進(jìn)度計(jì)劃帶來(lái)的危害福压。盡量成為一個(gè)建議者,而不是扮演對(duì)立的角色或舞。

第二荆姆,不要堅(jiān)持談判各方都需要達(dá)到絕對(duì)平衡。最簡(jiǎn)單的方式是當(dāng)對(duì)方發(fā)脾氣時(shí)映凳,不要爭(zhēng)鋒相對(duì)耐心的等他把話說(shuō)完胆筒,并表示理解,然后重申雙方應(yīng)該探尋一個(gè)雙贏的方案诈豌。

l關(guān)注共同利益仆救,不要過(guò)分堅(jiān)持立場(chǎng)

l提出對(duì)雙方都有利的備選方案

l堅(jiān)持客觀標(biāo)準(zhǔn)

當(dāng)談判陷入僵局時(shí),你應(yīng)該嘗試使用客觀標(biāo)準(zhǔn)將其打破矫渔。只能向客觀標(biāo)準(zhǔn)妥協(xié)彤蔽,而不能向壓力屈服。

以下是堅(jiān)持客觀標(biāo)準(zhǔn)的一些方針:

1)談判不要局限于估算本身

你可以就估算的輸入條件進(jìn)行談判庙洼,而不要糾結(jié)于估算本身铆惑。輸入條件就是前面說(shuō)的可以靈活變通的選項(xiàng)。

2)堅(jiān)持以專(zhuān)業(yè)的組織進(jìn)行估算

3)堅(jiān)持科學(xué)的估算過(guò)程

4)頂住壓力

也許每個(gè)人承受壓力的程度不同送膳,但當(dāng)客戶员魏,管理人員或市場(chǎng)人員不停的要求增加新需求,卻又不愿意延長(zhǎng)進(jìn)度時(shí)叠聋,最好的辦法就是禮貌的拒絕這種要求撕阎。與其承擔(dān)后期進(jìn)度和成本的嚴(yán)重超支,不如在前期就頂住壓力碌补。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末虏束,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子厦章,更是在濱河造成了極大的恐慌镇匀,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,185評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件袜啃,死亡現(xiàn)場(chǎng)離奇詭異汗侵,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,652評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門(mén)晰韵,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)发乔,“玉大人,你說(shuō)我怎么就攤上這事雪猪±干校” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 163,524評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵只恨,是天一觀的道長(zhǎng)译仗。 經(jīng)常有香客問(wèn)我,道長(zhǎng)官觅,這世上最難降的妖魔是什么古劲? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,339評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮缰猴,結(jié)果婚禮上产艾,老公的妹妹穿的比我還像新娘。我一直安慰自己滑绒,他們只是感情好闷堡,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,387評(píng)論 6 391
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著疑故,像睡著了一般杠览。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上纵势,一...
    開(kāi)封第一講書(shū)人閱讀 51,287評(píng)論 1 301
  • 那天踱阿,我揣著相機(jī)與錄音,去河邊找鬼钦铁。 笑死软舌,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的牛曹。 我是一名探鬼主播佛点,決...
    沈念sama閱讀 40,130評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼黎比!你這毒婦竟也來(lái)了超营?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 38,985評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤阅虫,失蹤者是張志新(化名)和其女友劉穎演闭,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體颓帝,經(jīng)...
    沈念sama閱讀 45,420評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡米碰,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,617評(píng)論 3 334
  • 正文 我和宋清朗相戀三年窝革,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片见间。...
    茶點(diǎn)故事閱讀 39,779評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡聊闯,死狀恐怖工猜,靈堂內(nèi)的尸體忽然破棺而出米诉,到底是詐尸還是另有隱情,我是刑警寧澤篷帅,帶...
    沈念sama閱讀 35,477評(píng)論 5 345
  • 正文 年R本政府宣布史侣,位于F島的核電站,受9級(jí)特大地震影響魏身,放射性物質(zhì)發(fā)生泄漏惊橱。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,088評(píng)論 3 328
  • 文/蒙蒙 一箭昵、第九天 我趴在偏房一處隱蔽的房頂上張望税朴。 院中可真熱鬧,春花似錦家制、人聲如沸正林。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,716評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)觅廓。三九已至,卻和暖如春涵但,著一層夾襖步出監(jiān)牢的瞬間杈绸,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,857評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工矮瘟, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留瞳脓,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,876評(píng)論 2 370
  • 正文 我出身青樓澈侠,卻偏偏與公主長(zhǎng)得像篡殷,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子埋涧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,700評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容