小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

軟件項(xiàng)目管理

 鳳舞天煌 2007-06-19
軟件項(xiàng)目管理是為了使軟件項(xiàng)目能夠按照預(yù)定的成本、進(jìn)度、質(zhì)量順利完成,而對(duì)人員(People)、產(chǎn)品(Product)、過程(Process)和項(xiàng)目(Project)進(jìn)行分析和管理的活動(dòng)。

      軟件項(xiàng)目管理的根本目的是為了讓軟件項(xiàng)目尤其是大型項(xiàng)目的整個(gè)軟件生命周期(從分析、設(shè)計(jì)、編碼到測(cè)試、維護(hù)全過程)都能在管理者的控制之下,以預(yù)定成本按期,按質(zhì)的完成軟件交付用戶使用。而研究軟件項(xiàng)目管理為了從已有的成功或失敗的案例中總結(jié)出能夠指導(dǎo)今后開發(fā)的通用原則,方法,同時(shí)避免前人的失誤。

      軟件項(xiàng)目管理的提出是在20世紀(jì)70年代中期的美國(guó),當(dāng)時(shí)美國(guó)國(guó)防部專門研究了軟件開發(fā)不能按時(shí)提交,預(yù)算超支和質(zhì)量達(dá)不到用戶要求的原因,結(jié)果發(fā)現(xiàn)70%的項(xiàng)目是因?yàn)楣芾聿簧埔鸬?,而非技術(shù)原因。于是軟件開發(fā)者開始逐漸重視起軟件開發(fā)中的各項(xiàng)管理。到了20世紀(jì)90年代中期,軟件研發(fā)項(xiàng)目管理不善的問題仍然存在。據(jù)美國(guó)軟件工程實(shí)施現(xiàn)狀的調(diào)查,軟件研發(fā)的情況仍然很難預(yù)測(cè),大約只有10%的項(xiàng)目能夠在預(yù)定的費(fèi)用和進(jìn)度下交付。

      1995年,據(jù)統(tǒng)計(jì),美國(guó)共取消了810億美元的商業(yè)軟件項(xiàng)目,其中31%的項(xiàng)目未做完就被取消,53%的軟件項(xiàng)目進(jìn)度通常要延長(zhǎng)50%的時(shí)間,只有9%的軟件項(xiàng)目能夠及時(shí)交付并且費(fèi)用也控制在預(yù)算之內(nèi)。

      軟件項(xiàng)目管理和其他的項(xiàng)目管理相比有相當(dāng)?shù)奶厥庑?。首先,軟件是純知識(shí)產(chǎn)品,其開發(fā)進(jìn)度和質(zhì)量很難估計(jì)和度量,生產(chǎn)效率也難以預(yù)測(cè)和保證。其次,軟件系統(tǒng)的復(fù)雜性也導(dǎo)致了開發(fā)過程中各種風(fēng)險(xiǎn)的難以預(yù)見和控制。Windows這樣的操作系統(tǒng)有1500萬(wàn)行以上的代碼,同時(shí)有數(shù)千個(gè)程序員在進(jìn)行開發(fā),項(xiàng)目經(jīng)理都有上百個(gè)。這樣龐大的系統(tǒng)如果沒有很好的管理,其軟件質(zhì)量是難以想象的。

      軟件項(xiàng)目管理的內(nèi)容主要包括如下幾個(gè)方面:人員的組織與管理,軟件度量,軟件項(xiàng)目計(jì)劃風(fēng)險(xiǎn)管理,軟件質(zhì)量保證,軟件過程能力評(píng)估,軟件配置管理等。

      這幾個(gè)方面都是貫穿、交織于整個(gè)軟件開發(fā)過程中的,其中人員的組織與管理把注意力集中在項(xiàng)目組人員的構(gòu)成、優(yōu)化;軟件度量把關(guān)注用量化的方法評(píng)測(cè)軟件開發(fā)中的費(fèi)用、生產(chǎn)率、進(jìn)度和產(chǎn)品質(zhì)量等要素是否符合期望值,包括過程度量和產(chǎn)品度量?jī)蓚€(gè)方面;軟件項(xiàng)目計(jì)劃主要包括工作量、成本、開發(fā)時(shí)間的估計(jì),并根據(jù)估計(jì)值制定和調(diào)整項(xiàng)目組的工作;風(fēng)險(xiǎn)管理預(yù)測(cè)未來(lái)可能出現(xiàn)的各種危害到軟件產(chǎn)品質(zhì)量的潛在因素并由此采取措施進(jìn)行預(yù)防;質(zhì)量保證是保證產(chǎn)品和服務(wù)充分滿足消費(fèi)者要求的質(zhì)量而進(jìn)行的有計(jì)劃,有組織的活動(dòng);軟件過程能力評(píng)估是對(duì)軟件開發(fā)能力的高低進(jìn)行衡量;軟件配置管理針對(duì)開發(fā)過程中人員、工具的配置、使用提出管理策略。因?yàn)榇蠹覍?duì)人力資源管理和軟件過程能力比較有興趣,下面就詳細(xì)的對(duì)這兩方面展開討論。

一.軟件項(xiàng)目的計(jì)劃

      軟件項(xiàng)目計(jì)劃是一個(gè)軟件項(xiàng)目進(jìn)入系統(tǒng)實(shí)施的啟動(dòng)階段,主要進(jìn)行的工作包括:確定詳細(xì)的項(xiàng)目實(shí)施范圍、定義遞交的工作成果、評(píng)估實(shí)施過程中主要的風(fēng)險(xiǎn)、制定項(xiàng)目實(shí)施的時(shí)間計(jì)劃、成本和預(yù)算計(jì)劃、人力資源計(jì)劃等。

      軟件項(xiàng)目管理過程從項(xiàng)目計(jì)劃活動(dòng)開始,而第一項(xiàng)計(jì)劃活動(dòng)就是估算:需要多長(zhǎng)時(shí)間、需要多少工作量、以及需要多少人員。此外,我們還必須估算所需要的資源(硬件及軟件)和可能涉及到的風(fēng)險(xiǎn)。

      為了估算軟件項(xiàng)目的工作量和完成期限,首先需要預(yù)測(cè)軟件規(guī)模。度量軟件規(guī)模的常用方法有直接的方法——LOC(代碼行),間接的方法——FP(功能點(diǎn))。這兩種方法各有優(yōu)缺點(diǎn),應(yīng)該根據(jù)軟件項(xiàng)目的特點(diǎn)選擇適用的軟件規(guī)模度量方法。

      根據(jù)項(xiàng)目的規(guī)??梢怨浪愠鐾瓿身?xiàng)目所需的工作量,我們可以使用一種或多種技術(shù)進(jìn)行估算,這些技術(shù)主要分為兩大:分解和經(jīng)驗(yàn)建模。分解技術(shù)需要?jiǎng)澐殖鲋饕能浖δ?,接著估算?shí)現(xiàn)每一個(gè)功能所需的程序規(guī)?;蛉嗽聰?shù)。經(jīng)驗(yàn)技術(shù)的使用是根據(jù)經(jīng)驗(yàn)導(dǎo)出的公式來(lái)預(yù)測(cè)工作量和時(shí)間。可以使用自動(dòng)工具來(lái)實(shí)現(xiàn)某一特定的經(jīng)驗(yàn)?zāi)P汀?/font>

      精確的項(xiàng)目估算一般至少會(huì)用到上述技術(shù)中的兩種。通過比較和協(xié)調(diào)使用不同技術(shù)導(dǎo)出的估算值,我們可能得到更精確的估算。軟件項(xiàng)目估算永遠(yuǎn)不會(huì)是一門精確的科學(xué),但將良好的歷史數(shù)據(jù)與系統(tǒng)化的技術(shù)結(jié)合起來(lái)能夠提高估算的精確度。

      當(dāng)對(duì)軟件項(xiàng)目給予較高期望時(shí),一般都會(huì)進(jìn)行風(fēng)險(xiǎn)分析。在標(biāo)識(shí)、分析和管理風(fēng)險(xiǎn)上花費(fèi)的時(shí)間和人力可以從多個(gè)方面得到回報(bào):更加平穩(wěn)的項(xiàng)目進(jìn)展過程;更高的跟蹤和控制項(xiàng)目的能力;由于在問題發(fā)生之前已經(jīng)做了周密計(jì)劃而產(chǎn)生的信心。

      對(duì)于一個(gè)項(xiàng)目管理者,他的目標(biāo)是定義所有的項(xiàng)目任務(wù),識(shí)別出關(guān)鍵任務(wù),跟蹤關(guān)鍵任務(wù)的進(jìn)展情況,以保證能夠及時(shí)發(fā)現(xiàn)拖延進(jìn)度的情況。為此,項(xiàng)目管理者必須制定一個(gè)足夠詳細(xì)的進(jìn)度表,以便監(jiān)督項(xiàng)目進(jìn)度并控制整個(gè)項(xiàng)目。

      常用的制定進(jìn)度計(jì)劃的工具主要有Gantt圖和工程網(wǎng)絡(luò)兩種。Gantt圖具有悠久歷史、直觀簡(jiǎn)明、容易學(xué)習(xí)、容易繪制等優(yōu)點(diǎn),但是,它不能明顯地表示各項(xiàng)任務(wù)彼此間的依賴關(guān)系,也不能明顯地表示關(guān)鍵路徑和關(guān)鍵任務(wù),進(jìn)度計(jì)劃中的關(guān)鍵部分不明確。因此,在管理大型軟件項(xiàng)目時(shí),僅用Gantt圖是不夠的,不僅難于做出既節(jié)省資源又保證進(jìn)度的計(jì)劃,而且還容易發(fā)生差錯(cuò)。

      工程網(wǎng)絡(luò)不僅能描繪任務(wù)分解情況及每項(xiàng)作業(yè)的開始時(shí)間和結(jié)束時(shí)間,而且還能清楚地表示各個(gè)作業(yè)彼此間的依賴關(guān)系。從工程網(wǎng)絡(luò)圖中容易識(shí)別出關(guān)鍵路徑和關(guān)鍵任務(wù)。因此,工程網(wǎng)絡(luò)圖是制定進(jìn)度計(jì)劃的強(qiáng)有力的工具。通常,聯(lián)合使用Gantt圖和工程網(wǎng)絡(luò)這兩種工具來(lái)制定和管理進(jìn)度計(jì)劃,使它們互相補(bǔ)充、取長(zhǎng)補(bǔ)短。

      進(jìn)度安排是軟件項(xiàng)目計(jì)劃的首要任務(wù),而項(xiàng)目計(jì)劃則是軟件項(xiàng)目管理的首要組成部分。與估算方法和風(fēng)險(xiǎn)分析相結(jié)合,進(jìn)度安排將為項(xiàng)目管理者建立起一張計(jì)劃圖。

二.軟件項(xiàng)目的控制

      對(duì)于軟件開發(fā)項(xiàng)目而言,控制是十分重要的管理活動(dòng)。下面介紹軟件工程控制活動(dòng)中的質(zhì)量保證和配置管理。其實(shí)上面所提到的風(fēng)險(xiǎn)分析也可以算是軟件工程控制活動(dòng)的一類。而進(jìn)度跟蹤則起到連接軟件項(xiàng)目計(jì)劃和控制的作用。

      軟件質(zhì)量保證(SQA,Software Quality Insurance)是在軟件過程中的每一步都進(jìn)行的“保護(hù)性活動(dòng)”。SQA主要有基于非執(zhí)行的測(cè)試(也稱為評(píng)審)、基于執(zhí)行的測(cè)試(即通常所說的測(cè)試)和程序正確性證明。

      軟件評(píng)審是最為重要的SQA活動(dòng)之一。它的作用是,在發(fā)現(xiàn)及改正錯(cuò)誤的成本相對(duì)較小時(shí)就及時(shí)發(fā)現(xiàn)并排除錯(cuò)誤。審查和走查是進(jìn)行正式技術(shù)評(píng)審的兩類具體方法。審查過程不僅步數(shù)比走審多,而且每個(gè)步驟都是正規(guī)的。由于在開發(fā)大型軟件過程中所犯的錯(cuò)誤絕大數(shù)是規(guī)格說明錯(cuò)誤或設(shè)計(jì)錯(cuò)誤,而正式的技術(shù)評(píng)審發(fā)現(xiàn)這兩類錯(cuò)誤的有效性高達(dá)75%,因此是非常有效的軟件質(zhì)量保證方法。

      軟件配置管理(SCM,Software configuration management)是應(yīng)用于整個(gè)軟件過程中的保護(hù)性活動(dòng),它是在軟件整個(gè)生命周期內(nèi)管理變化的一組活動(dòng)。

      軟件配置由一組相互關(guān)聯(lián)的對(duì)象組成,這些對(duì)象也稱為軟件配置項(xiàng),它們是作為某些軟件工程活動(dòng)的結(jié)果而產(chǎn)生的。除了文檔、程序和數(shù)據(jù)這些軟件配置項(xiàng)之外,用于開發(fā)軟件的開發(fā)環(huán)境也可置于配置控制之下。

      一旦一個(gè)配置對(duì)象已被開發(fā)出來(lái)并且通過了評(píng)審,它就變成了基線。對(duì)基線對(duì)象的修改導(dǎo)致建立該對(duì)象的版本。版本控制是用于管理這些對(duì)象而使用的一組規(guī)程和工具。

      變更控制是一種規(guī)程活動(dòng),它能夠在對(duì)配置對(duì)象進(jìn)行修改時(shí)保證質(zhì)量和一致性。配置審計(jì)是一項(xiàng)軟件質(zhì)量保證活動(dòng),它有助于確保在進(jìn)行修改時(shí)仍然保持質(zhì)量。狀態(tài)報(bào)告向需要知道關(guān)于變化的信息的人,提供有關(guān)每項(xiàng)變化的信息。

三、軟件項(xiàng)目管理的組織模式

      軟件項(xiàng)目可以是一個(gè)單獨(dú)的開發(fā)項(xiàng)目,也可以與產(chǎn)品項(xiàng)目組成一個(gè)完整的軟件產(chǎn)品項(xiàng)目。如果是訂單開發(fā),則成立軟件項(xiàng)目組即可;如果是產(chǎn)品開發(fā),需成立軟件項(xiàng)目組和產(chǎn)品項(xiàng)目(負(fù)責(zé)市場(chǎng)調(diào)研和銷售),組成軟件產(chǎn)品項(xiàng)目組。公司實(shí)行項(xiàng)目管理時(shí),首先要成立項(xiàng)目管理委員會(huì),項(xiàng)目管理委員會(huì)下設(shè)項(xiàng)目管理小組、項(xiàng)目評(píng)審小組和軟件產(chǎn)品項(xiàng)目組。

      3.1、項(xiàng)目管理委員會(huì)項(xiàng)目管理委員會(huì)是公司項(xiàng)目管理的最高決策機(jī)構(gòu),一般由公司總經(jīng)理、副總經(jīng)理組成。主要職責(zé)如下:
(1)依照項(xiàng)目管理相關(guān)制度管理項(xiàng)目;
(2)監(jiān)督項(xiàng)目管理相關(guān)制度的執(zhí)行;
(3)對(duì)項(xiàng)目立項(xiàng)、項(xiàng)目撤消進(jìn)行決策;
(4)任命項(xiàng)目管理小組組長(zhǎng)、項(xiàng)目評(píng)審委員會(huì)主任、項(xiàng)目組組長(zhǎng).

      3.2、項(xiàng)目管理小組項(xiàng)目管理小組對(duì)項(xiàng)目管理委員會(huì)負(fù)責(zé),一般由公司管理人員組成。主要職責(zé)如下:
(1)草擬項(xiàng)目管理的各項(xiàng)制度;
(2)組織項(xiàng)目階段評(píng)審;
(3)保存項(xiàng)目過程中的相關(guān)文件和數(shù)據(jù);
(4)為優(yōu)化項(xiàng)目管理提出建議。

      3.3、項(xiàng)目評(píng)審小組項(xiàng)目評(píng)審小組對(duì)項(xiàng)目管理委員會(huì)負(fù)責(zé),可下設(shè)開發(fā)評(píng)審小組和產(chǎn)品評(píng)審小組,一般由公司技術(shù)專家和市場(chǎng)專家組成。主要職責(zé)如下:
(1)對(duì)項(xiàng)目可行性報(bào)告進(jìn)行評(píng)審;
(2)對(duì)市場(chǎng)計(jì)劃和階段報(bào)告進(jìn)行評(píng)審;
(3)對(duì)開發(fā)計(jì)劃和階段報(bào)告進(jìn)行評(píng)審;
(4)項(xiàng)目結(jié)束時(shí),對(duì)項(xiàng)目總結(jié)報(bào)告進(jìn)行評(píng)審。

      3.4、軟件產(chǎn)品項(xiàng)目組軟件產(chǎn)品項(xiàng)目組對(duì)項(xiàng)目管理委員會(huì)負(fù)責(zé),可下設(shè)軟件項(xiàng)目組和產(chǎn)品項(xiàng)目組。軟件項(xiàng)目組和產(chǎn)品項(xiàng)目組分別設(shè)開發(fā)經(jīng)理和產(chǎn)品經(jīng)理。成員一般由公司技術(shù)人員和市場(chǎng)人員構(gòu)成。主要職責(zé)是:根據(jù)項(xiàng)目管理委員會(huì)的安排具體負(fù)責(zé)項(xiàng)目的軟件開發(fā)和市場(chǎng)調(diào)研及銷售工作。

四、軟件項(xiàng)目管理的內(nèi)容

      從軟件工程的角度講,軟件開發(fā)主要分為六個(gè)階段:需求分析階段、概要設(shè)計(jì)階段、詳細(xì)設(shè)計(jì)階段、編碼階段、測(cè)試階段、安裝及維護(hù)階段。不論是作坊式開發(fā),還是團(tuán)隊(duì)協(xié)作開發(fā),這六個(gè)階段都是不可缺少的。根據(jù)公司實(shí)際情況,公司在進(jìn)行軟件項(xiàng)目管理時(shí),重點(diǎn)將軟件配置管理、項(xiàng)目跟蹤和控制管理、軟件風(fēng)險(xiǎn)管理及項(xiàng)目策劃活動(dòng)管理四方面內(nèi)容導(dǎo)入軟件開發(fā)的整個(gè)階段。在20世紀(jì)80年代初,著名軟件工程專家B.W.Boehm總結(jié)出了軟件開發(fā)時(shí)需遵循的七條基本原則,同樣,在進(jìn)行軟件項(xiàng)目管理時(shí),也應(yīng)該遵循這七條原則。它們是:
(1)用分階段的生命周期計(jì)劃嚴(yán)格管理;
(2)堅(jiān)持進(jìn)行階段評(píng)審;
(3)實(shí)行嚴(yán)格的產(chǎn)品控制;
(4)采用現(xiàn)代程序設(shè)計(jì)技術(shù);
(5)結(jié)果應(yīng)能夠清楚地審查;
(6)開發(fā)小組地人員應(yīng)該少而精;
(7)承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性。

五、編寫《軟件項(xiàng)目計(jì)劃書》

      項(xiàng)目組成立的第一件事是編寫《軟件項(xiàng)目計(jì)劃書》,在計(jì)劃書中描述開發(fā)日程安排、資源需求、項(xiàng)目管理等各項(xiàng)情況的大體內(nèi)容。計(jì)劃書主要向公司各相關(guān)人員發(fā)放,使他們大體了解該軟件項(xiàng)目的情況。對(duì)于計(jì)劃書的每個(gè)內(nèi)容,都應(yīng)有相應(yīng)具體實(shí)施手冊(cè),這些手冊(cè)是供項(xiàng)目組相關(guān)成員使用的。

六、軟件配置管理

      是否進(jìn)行配置管理與軟件的規(guī)模有關(guān),軟件的規(guī)模越大,配置管理就顯得越重要。軟件配置管理簡(jiǎn)稱SCM(Software Configuration Management的縮寫),是在團(tuán)隊(duì)開發(fā)中,標(biāo)識(shí)、控制和管理軟件變更的一種管理。配置管理的使用取決于項(xiàng)目規(guī)模和復(fù)雜性以及風(fēng)險(xiǎn)水平。

      6.1、目前軟件開發(fā)中面臨的問題:在有限的時(shí)間、資金內(nèi),要滿足不斷增長(zhǎng)的軟件產(chǎn)品質(zhì)量要求;開發(fā)的環(huán)境日益復(fù)雜,代碼共享日益困難,需跨越的平臺(tái)增多;程序的規(guī)模越來(lái)越大;軟件的重用性需要提高;軟件的維護(hù)越來(lái)越困難。

      6.2、軟件配置管理應(yīng)提供的功能:
      在ISO9000.3中,對(duì)配置管理系統(tǒng)的功能作了如下描述:唯一地標(biāo)識(shí)每個(gè)軟件項(xiàng)的版本;標(biāo)識(shí)共同構(gòu)成一完整產(chǎn)品的特定版本的每一軟件項(xiàng)的版本;控制由兩個(gè)或多個(gè)獨(dú)立工作的人員同時(shí)對(duì)一給定軟件項(xiàng)的更新;控制由兩個(gè)或多個(gè)獨(dú)立工作的人員同時(shí)對(duì)一給定軟件項(xiàng)的更新;按要求在一個(gè)或多個(gè)位置對(duì)復(fù)雜產(chǎn)品的更新進(jìn)行協(xié)調(diào);標(biāo)識(shí)并跟蹤所有的措施和更改;這些措施和更改是在從開始直到放行期間,由于更改請(qǐng)求或問題引起的。

      6.3、版本管理軟件配置管理分為版本管理、問題跟蹤和建立管理三個(gè)部分,其中版本管理是基礎(chǔ)。版本管理應(yīng)完成以下主要任務(wù):
 
      建立項(xiàng)目;
      重構(gòu)任何修訂版的某一項(xiàng)或某一文件;
      利用加鎖技術(shù)防止覆蓋; ?當(dāng)增加一個(gè)修訂版時(shí)要求輸入變更描述;
      提供比較任意兩個(gè)修訂版的使用工具;
      采用增量存儲(chǔ)方式;
      提供對(duì)修訂版歷史和鎖定狀態(tài)的報(bào)告功能;
      提供歸并功能;
      允許在任何時(shí)候重構(gòu)任何版本;
      權(quán)限的設(shè)置;
      晉升模型的建立;
      提供各種報(bào)告。

七. 人員組織與管理

      軟件開發(fā)中的開發(fā)人員是最大的資源。對(duì)人員的配置、調(diào)度安排貫穿整個(gè)軟件過程,人員的組織管理是否得當(dāng),是影響對(duì)軟件項(xiàng)目質(zhì)量的決定性因素。

      首先在軟件開發(fā)的一開始,要合理的配置人員,根據(jù)項(xiàng)目的工作量、所需要的專業(yè)技能,再參考各個(gè)人員的能力、性格、經(jīng)驗(yàn),組織一個(gè)高效、和諧的開發(fā)小組。一般來(lái)說,一個(gè)開發(fā)小組人數(shù)在5到10人之間最為合適,如果項(xiàng)目規(guī)模很大,可以采取層級(jí)式結(jié)構(gòu),配置若干個(gè)這樣的開發(fā)小組。

      在選擇人員的問題上,要結(jié)合實(shí)際情況來(lái)決定是否選入一個(gè)開發(fā)組員。并不是一群高水平的程序員在一起就一定可以組成一個(gè)成功的小組。作為考察標(biāo)準(zhǔn),技術(shù)水平、與本項(xiàng)目相關(guān)的技能和開發(fā)經(jīng)驗(yàn)、以及團(tuán)隊(duì)工作能力都是很重要的因素。一個(gè)一天能寫一萬(wàn)行代碼但卻不能與同事溝通融洽的程序員,未必適合一個(gè)對(duì)組員之間通訊要求很高的項(xiàng)目。還應(yīng)該考慮分工的需要,合理配置各個(gè)專項(xiàng)的人員比例。例如一個(gè)網(wǎng)站開發(fā)項(xiàng)目,小組中有頁(yè)面美工、后臺(tái)服務(wù)程序、數(shù)據(jù)庫(kù)幾個(gè)部分,應(yīng)該合理的組織各項(xiàng)工作的人員配比。對(duì)于一個(gè)中型農(nóng)技110網(wǎng)站,對(duì)數(shù)據(jù)采集量要求較高,一個(gè)人員配比方案可以是2個(gè)美工、2個(gè)后臺(tái)服務(wù)程序編寫、3個(gè)數(shù)據(jù)采集整理人員。

     可以用如下公式來(lái)對(duì)候選人員能力進(jìn)行評(píng)分,達(dá)到一定分?jǐn)?shù)的則可以考慮進(jìn)入開發(fā)組,但這個(gè)公式不包含對(duì)人員數(shù)量配比的考慮。
     Score=∑WiCi(i=1to8)
      Ci是對(duì)項(xiàng)目組人員各項(xiàng)能力的評(píng)估。其值含義如下

      在決定一個(gè)開發(fā)組的開發(fā)人員數(shù)量時(shí),除了考慮候選人素質(zhì)以外,還要綜合考慮項(xiàng)目規(guī)模、工期、預(yù)算、開發(fā)環(huán)境等因素的影響,下面是一個(gè)基于規(guī)模、工期和開發(fā)環(huán)境的人員數(shù)量計(jì)算公式:
      L=Ck*K1/3*td4/3
      L:開發(fā)規(guī)模,以代碼行LOC為度量td:開發(fā)時(shí)間K:人員數(shù)
      Ck:技術(shù)常數(shù)表示開發(fā)環(huán)境的優(yōu)劣
      取值2000:表示開發(fā)環(huán)境差,沒有系統(tǒng)的開發(fā)方法,缺乏文檔規(guī)范化設(shè)計(jì);
      取值8000:表示開發(fā)環(huán)境較好;
      取值11000:表示開發(fā)環(huán)境優(yōu)。

      在組建開發(fā)組時(shí),還應(yīng)充分估計(jì)到開發(fā)過程中的人員風(fēng)險(xiǎn)。由于工作環(huán)境、待遇、工作強(qiáng)度、公司的整體工作安排和其他無(wú)法預(yù)知的因素,一個(gè)項(xiàng)目尤其是開發(fā)周期較長(zhǎng)的項(xiàng)目幾乎無(wú)可避免的要面臨人員的流入流出。如果不在項(xiàng)目初期對(duì)可能出現(xiàn)的人員風(fēng)險(xiǎn)進(jìn)行充分的估計(jì),作必要的準(zhǔn)備,一旦風(fēng)險(xiǎn)轉(zhuǎn)化為現(xiàn)實(shí),將有可能給整個(gè)項(xiàng)目開發(fā)造成巨大的損失。以較低的代價(jià)進(jìn)行及早的預(yù)防是降低這種人員風(fēng)險(xiǎn)的基本策略。具體來(lái)說可以從以下幾個(gè)方面對(duì)人員風(fēng)險(xiǎn)進(jìn)行控制:

      a.保證開發(fā)組中全職人員的比例,且項(xiàng)目核心部分的工作應(yīng)該盡量由全職人員來(lái)?yè)?dān)任, 以減少兼職人員對(duì)項(xiàng)目組人員不穩(wěn)定性的影響。
      b.建立良好的文檔管理機(jī)制,包擴(kuò)項(xiàng)目組進(jìn)度文檔、個(gè)人進(jìn)度文檔、版本控制文檔、整體技術(shù)文檔、個(gè)人技術(shù)文檔、源代碼管理等。一旦出現(xiàn)人員的變動(dòng),比如某個(gè)組員因病退出,替補(bǔ)的組員能夠根據(jù)完整的文檔盡早接手工作。
      c.加強(qiáng)項(xiàng)目組內(nèi)技術(shù)交流,比如定期開技術(shù)交流會(huì),或根據(jù)組內(nèi)分工建立項(xiàng)目組內(nèi)部的開發(fā)小組,是開發(fā)小組內(nèi)的成員能夠相互熟悉對(duì)方的工作和進(jìn)度,能夠在必要的時(shí)候替對(duì)方工作。
      d.對(duì)于項(xiàng)目經(jīng)理,可以從一開始就指派一個(gè)副經(jīng)理在項(xiàng)目中協(xié)同項(xiàng)目經(jīng)理管理項(xiàng)目開發(fā)工作,如果項(xiàng)目經(jīng)理退出開發(fā)組,副經(jīng)理可以很快接手。但是只建議在項(xiàng)目經(jīng)理這樣的高度重要的崗位采用這種冗余復(fù)制的策略來(lái)預(yù)防人員風(fēng)險(xiǎn),否則將大大增加項(xiàng)目成本。
      e.為項(xiàng)目開發(fā)提供盡可能好的開發(fā)環(huán)境,包括工作環(huán)境、待遇、工作進(jìn)度安排等等,同 時(shí)一個(gè)優(yōu)秀的項(xiàng)目經(jīng)理應(yīng)該能夠在項(xiàng)目組內(nèi)營(yíng)造一種良好的人際關(guān)系和工作氛圍。良好的開發(fā)環(huán)境對(duì)于穩(wěn)定項(xiàng)目組人員以及提高生產(chǎn)效率都有不可忽視的作用。

八.軟件過程能力評(píng)估

      軟件過程能力描述了一個(gè)開發(fā)組織開發(fā)軟件開發(fā)高質(zhì)量軟件產(chǎn)品的能力?,F(xiàn)行的國(guó)際標(biāo)準(zhǔn)主要有兩個(gè):ISO9000.3和CMM

      ISO9000.3是ISO9000質(zhì)量體系認(rèn)證中關(guān)于計(jì)算機(jī)軟件質(zhì)量管理和質(zhì)量保證標(biāo)準(zhǔn)部分。它從管理職責(zé)、質(zhì)量體系、合同評(píng)審、設(shè)計(jì)控制、文件和資料控制、采購(gòu)、顧客提供產(chǎn)品的控制、產(chǎn)品標(biāo)識(shí)和可追溯性、過程控制、檢驗(yàn)和試驗(yàn)、檢驗(yàn)/測(cè)量和試驗(yàn)設(shè)備的控制、檢驗(yàn)和試驗(yàn)狀態(tài)、不合格品的控制、糾正和預(yù)防措施、搬運(yùn)/貯存/包裝/防護(hù)和交付、質(zhì)量記錄的控制、內(nèi)部質(zhì)量審核、培訓(xùn)、服務(wù)、統(tǒng)計(jì)系統(tǒng)等二十個(gè)方面對(duì)軟件質(zhì)量進(jìn)行了要求。

      CMM(能力成熟度模型)是美國(guó)卡納基梅隆大學(xué)軟件工程研究所(CMU/SEI)于1987年提出的評(píng)估和指導(dǎo)軟件研發(fā)項(xiàng)目管理的一系列方法,用5個(gè)不斷進(jìn)化的層次來(lái)描述軟件過程能力?,F(xiàn)在CMM是2.0版本。

      ISO9000和CMM的共同點(diǎn)是二者都強(qiáng)調(diào)了軟件產(chǎn)品的質(zhì)量。所不同的是,ISO9000強(qiáng)調(diào)的是衡量的準(zhǔn)則,但沒有告訴軟件開發(fā)人員如何達(dá)到好的目標(biāo),如何避免差錯(cuò)。CMM則提供了一整套完善的軟件研發(fā)項(xiàng)目管理的方法。它可告訴軟件開發(fā)組織,如果要在原有的水平上提高一個(gè)等級(jí),應(yīng)該關(guān)注哪些問題,而這正是改進(jìn)軟件過程的工作。

      CMM描述了五個(gè)級(jí)別的軟件過程成熟度(初始級(jí),可重復(fù)級(jí),已定義級(jí),已定量管理級(jí),優(yōu)化級(jí)),成熟度反映了軟件過程能力的大小。

      初始級(jí)特點(diǎn)是軟件機(jī)構(gòu)缺乏對(duì)軟件過程的有效管理,軟件過程是無(wú)序的,有時(shí)甚至是混亂的,對(duì)過程幾乎沒有定義,其軟件項(xiàng)目的成功來(lái)源于偶爾的個(gè)人英雄主義而非群體行為,因此它不是可重復(fù)的;可重復(fù)級(jí)的特點(diǎn)是軟件機(jī)構(gòu)的項(xiàng)目計(jì)劃和跟蹤穩(wěn)定,項(xiàng)目過程可控,項(xiàng)目的成功是可重復(fù)的;已定義級(jí)的特點(diǎn)在于軟件過程已被提升成標(biāo)準(zhǔn)化過程,從而更加具有穩(wěn)定性、可重復(fù)性和可控性;已定量管理級(jí)的軟件機(jī)構(gòu)中軟件過程和軟件產(chǎn)品都有定量的目標(biāo),并被定量地管理,因而其軟件過程能力是可預(yù)測(cè)的,其生產(chǎn)的軟件產(chǎn)品是高質(zhì)量的;優(yōu)化級(jí)的特點(diǎn)是過程的量化反饋和先進(jìn)的新思想、新技術(shù)促進(jìn)過程不斷改進(jìn),技術(shù)和過程的改進(jìn)改進(jìn)被作為常規(guī)的業(yè)務(wù)活動(dòng)加以計(jì)劃和管理。

      CMM是科學(xué)評(píng)價(jià)一個(gè)軟件企業(yè)開發(fā)能力的標(biāo)準(zhǔn),但要達(dá)到較高的級(jí)別也非常困難,根據(jù)1995年美國(guó)所做的軟件產(chǎn)業(yè)成熟度的調(diào)查,在美國(guó)的軟件產(chǎn)業(yè)中,CMM成熟度等級(jí)為初始級(jí)的竟占70%,為可重復(fù)級(jí)的占15%,為定義級(jí)的所占比例小于10%,為管理級(jí)的所占比例小于5%,為優(yōu)化級(jí)的所占比例小于l%。而國(guó)內(nèi)企業(yè)的水平就更加堪優(yōu),到目前為止,只有東軟一家達(dá)到優(yōu)化級(jí),少數(shù)幾家能夠達(dá)到可定義級(jí)。盡快改變這種局面,科學(xué)化、規(guī)范化、高效的進(jìn)行軟件開發(fā)活動(dòng),從整體提高我國(guó)軟件行業(yè)的水平,是國(guó)內(nèi)軟件企業(yè)的當(dāng)務(wù)之急,也是專業(yè)人員應(yīng)該為自己制定的目標(biāo)。如果有一天也能指揮一個(gè)數(shù)千人的龐大開發(fā)隊(duì)伍,操作Windows這樣巨型規(guī)模的軟件項(xiàng)目,并生產(chǎn)出高質(zhì)量的產(chǎn)品,才有理由宣稱自己的軟件項(xiàng)目管理能力達(dá)到了一個(gè)“自主自足”的水平。

九. 為什么要有項(xiàng)目管理?

      沒有項(xiàng)目管理,項(xiàng)目也有可能成功。但沒有管理的項(xiàng)目,很難保證項(xiàng)目的利潤(rùn)空間,對(duì)公司來(lái)說,虧損的風(fēng)險(xiǎn)就大。所以我們要有項(xiàng)目管理,以保證公司在總體上是盈利的,注意不是每一個(gè)項(xiàng)目都要盈利。

      另外,有了項(xiàng)目管理,就有了管理改進(jìn)的基礎(chǔ),無(wú)論剛開始的項(xiàng)目管理多么糟糕,只要有管理,就有了改進(jìn)的可能性,至于能不能得到改進(jìn),以及改進(jìn)的快慢,則取決于兩個(gè)因素:一個(gè)是人,特別是各級(jí)管理者;另一個(gè)是利益。關(guān)鍵是"利益",準(zhǔn)確的說是"利益的分配",在權(quán)責(zé)利明確的前提下,人才能充分的發(fā)揮作用。還需要指出的是"利益"是多元的,這里的多元不僅指利益的具體形式,而且指利益的受眾是多元的,包括客戶方相關(guān)人員個(gè)人的利益。


十. 為什么要有專職的項(xiàng)目經(jīng)理?

      專業(yè)化是一個(gè)趨勢(shì),因?yàn)樵趯I(yè)化的條件下,可以有效降低成本,提高利潤(rùn)率。項(xiàng)目經(jīng)理的工作內(nèi)容歸根到底只有一項(xiàng):識(shí)別并管理風(fēng)險(xiǎn)。這項(xiàng)工作的目的是控制項(xiàng)目成本。

      由于項(xiàng)目的風(fēng)險(xiǎn)是多方面的,而且風(fēng)險(xiǎn)的表現(xiàn)形式也是多種多樣的。從風(fēng)險(xiǎn)范圍上來(lái)說,既有公司內(nèi)部風(fēng)險(xiǎn),也有和客戶交流、合作的風(fēng)險(xiǎn);從風(fēng)險(xiǎn)的類型上來(lái)說,既有管理風(fēng)險(xiǎn),也有技術(shù)風(fēng)險(xiǎn);從風(fēng)險(xiǎn)產(chǎn)生的階段來(lái)說,包括了從業(yè)務(wù)分析到上線后維護(hù)的項(xiàng)目周期各個(gè)階段。

      我認(rèn)為一個(gè)項(xiàng)目經(jīng)理是否優(yōu)秀,主要是看他/她能在多大程度上提前識(shí)別并消除風(fēng)險(xiǎn),而不是彌補(bǔ)和解決了多少問題(風(fēng)險(xiǎn)未被及時(shí)識(shí)別或妥善處理,就會(huì)轉(zhuǎn)換成問題)。當(dāng)然能彌補(bǔ)和解決問題的項(xiàng)目經(jīng)理也是相當(dāng)合格的,但還不夠優(yōu)秀。

十一. 項(xiàng)目組的范圍界限在哪里?

      項(xiàng)目組的范圍界限可以有三種劃分:

      1、包括客戶方所有參與該項(xiàng)目的立項(xiàng)、調(diào)研、審批、測(cè)試和使用人員,包括開發(fā)商市場(chǎng)開發(fā)、管理審批、商務(wù)談判、后勤保障和具體負(fù)責(zé)該項(xiàng)目開發(fā)的人員;

      2、包括客戶方項(xiàng)目經(jīng)理、業(yè)務(wù)需求提出人和測(cè)試人,包括開發(fā)商具體負(fù)責(zé)該項(xiàng)目開發(fā)的人員;

      3、僅包括開發(fā)商具體負(fù)責(zé)該項(xiàng)目開發(fā)的人員。

      大部分人在思想上可以接受范圍1,而在實(shí)務(wù)中接受的是范圍3。而我個(gè)人認(rèn)為項(xiàng)目經(jīng)理,特別是開發(fā)商方面的項(xiàng)目經(jīng)理應(yīng)該采用的是范圍2。

      對(duì)項(xiàng)目組范圍理解不同,將影響項(xiàng)目經(jīng)理對(duì)工作的處理方式,范圍1實(shí)際上是很虛的,在項(xiàng)目管理實(shí)務(wù)操作中沒有太大的意義;而范圍3實(shí)質(zhì)是把客戶方和該項(xiàng)目有密切關(guān)系的人與開發(fā)商具體負(fù)責(zé)該項(xiàng)目開發(fā)的人對(duì)立起來(lái),也就是所謂的甲方、乙方。在這種對(duì)立的前提下處理項(xiàng)目的分歧和矛盾,效果肯定要打折扣。

      而按范圍2來(lái)理解,在項(xiàng)目管理實(shí)務(wù)中項(xiàng)目經(jīng)理就必須要讓客戶方和該項(xiàng)目有密切關(guān)系的人也接受這一觀點(diǎn),從而拆除雙方之間的"障礙",達(dá)到相互信任、相互尊重、共同協(xié)商解決問題的良性氛圍,以達(dá)到降低項(xiàng)目外部風(fēng)險(xiǎn)的目的。當(dāng)然,這樣就增大了項(xiàng)目經(jīng)理工作的難度,但對(duì)項(xiàng)目的成功則是很重要的。

十二. 怎樣才能算是一個(gè)成功的項(xiàng)目?

      對(duì)"成功項(xiàng)目"的標(biāo)準(zhǔn)解釋為:項(xiàng)目范圍、項(xiàng)目成本、項(xiàng)目開發(fā)時(shí)間、客戶滿意度四點(diǎn)達(dá)到要求。我認(rèn)為其實(shí)只有一點(diǎn)--利益。項(xiàng)目范圍、客戶滿意度主要代表客戶的利益,項(xiàng)目成本主要代表開發(fā)商的利益,項(xiàng)目開發(fā)時(shí)間同時(shí)影響雙方的利益。但每一個(gè)人關(guān)心的"利益"是不同的。

十三. 軟件項(xiàng)目管理的成功原則

      1平衡原則

  在我們討論軟件項(xiàng)目為什么會(huì)失敗時(shí)可以列出了很多的原因,答案有很多,如管理問題、技術(shù)問題、人員問題等等,但是有一個(gè)根本的思想問題是最容易忽視的,也是軟件系統(tǒng)的用戶、軟件開發(fā)商、銷售代理商最不想正視的,那就是:需求、資源、工期、質(zhì)量四個(gè)要素之間的平衡關(guān)系問題。

  需求定義了"做什么",定義了系統(tǒng)的范圍與規(guī)模,資源決定了項(xiàng)目的投入(人、財(cái)、物),工期定義了項(xiàng)目的交付日期,質(zhì)量定義了做出的系統(tǒng)好到什么程度,這四個(gè)要素之間是有制約平衡關(guān)系的。如果需求范圍很大,要在較少的資源投入下,很短的工期內(nèi),很高的質(zhì)量要求來(lái)完成某個(gè)項(xiàng)目,那是不現(xiàn)實(shí)的,要么需要增加投資,要么工程延期;如果需求界定清楚了,資源固定了,對(duì)系統(tǒng)的質(zhì)量要求很高,則可能需求延長(zhǎng)工期。

  對(duì)于上述四個(gè)要素之間的平衡關(guān)系最容易犯的一個(gè)錯(cuò)誤,就是鼓吹"多快好省"四個(gè)字,"多快好省",多么理想的境界?。啃枨笤蕉嘣胶?,工期越短越好,質(zhì)量越高越好,投入越少越好,這是用戶最常用的口號(hào)。

多:需求越多越好嗎?

  軟件系統(tǒng)實(shí)施的基本原則是"全局規(guī)劃,分步實(shí)施,步步見效",需求可以多,但是需求一定要分優(yōu)先級(jí),要分清企業(yè)內(nèi)的主要矛盾與次要矛盾,根據(jù)PARETO的80-20原則,企業(yè)中的80%的問題可以用20%的投資來(lái)解決,如果你要大而全,對(duì)不起,你那20%的次要問題是需要你花費(fèi)80%的投資的!而這一點(diǎn)恰恰是很多軟件用戶所不能忍受的。

快:真能快起來(lái)嗎?

  "快"是用戶、軟件開發(fā)商都希望的。傳統(tǒng)企業(yè)里強(qiáng)調(diào)資金的周轉(zhuǎn)情況,軟件企業(yè)里強(qiáng)調(diào)的是人員的周轉(zhuǎn)情況,開發(fā)人員應(yīng)盡快做完一個(gè)項(xiàng)目再做另外一個(gè)項(xiàng)目,通過快速的啟動(dòng)項(xiàng)目、結(jié)束項(xiàng)目來(lái)承擔(dān)更多的項(xiàng)目,來(lái)獲利。但是"快"不是主觀的拍腦袋定工期就可以完成的,工期的定義一定要基于資源的狀況、需求的多少與質(zhì)量的需求來(lái)進(jìn)行推算的。軟件畢竟需要一行代碼一行代碼的寫出來(lái),他的工作量是客觀的,并非?quot;人有多大膽,地有多大產(chǎn)"式的精神鼓動(dòng)就可以短期完成的。

?。菏〉绞裁闯潭龋?

  "一分錢一分貨",這是中國(guó)的俗話,他是符合價(jià)值規(guī)律的。甲方希望少投入,乙方希望降低自己的生產(chǎn)成本,省到乙方僅能保本的時(shí)候,再省,乙方就虧損了。

  正視這四個(gè)要素之間的平衡關(guān)系是軟件用戶、開發(fā)商、代理商成熟理智的表現(xiàn),否則系統(tǒng)的成功就失去了一塊最堅(jiān)實(shí)的理念基礎(chǔ)。

  企業(yè)實(shí)施IT系統(tǒng)的首要目標(biāo)是要成功,而不是失敗,企業(yè)可以容忍小的成功,但不一定容忍小的失敗,所以需要真正理解上述四個(gè)要素的平衡關(guān)系,確保項(xiàng)目的成功。

      2高效原則

  在需求、資源、工期、質(zhì)量四個(gè)要素中,很多的項(xiàng)目決策者是將進(jìn)度放在首位的,現(xiàn)在市場(chǎng)的競(jìng)爭(zhēng)越來(lái)越激烈,"產(chǎn)品早上市一天,就早掙一天錢,掙的就比花的多,所以一定要多掙",基于這樣一個(gè)理念,軟件開發(fā)越來(lái)越追求開發(fā)效率,大家從技術(shù)、工具、管理上尋求更多更好的解決之道。

  基于高效的原則,對(duì)項(xiàng)目的管理需要從幾個(gè)方面來(lái)考慮:
  要選擇精英成員
  目標(biāo)要明確,范圍要清楚
  溝通要及時(shí)、充分
  要在激勵(lì)成員上下工夫

      3分解原則

  "化繁為簡(jiǎn),各個(gè)擊破"是自古以來(lái)解決復(fù)雜問題的不二法門,對(duì)于軟件項(xiàng)目來(lái)講,可以將將大的項(xiàng)目劃分成幾個(gè)小項(xiàng)目來(lái)做,將周期長(zhǎng)的項(xiàng)目化分成幾個(gè)明確的階段。

  項(xiàng)目越大對(duì)項(xiàng)目組的管理人員、開發(fā)人員的要求越高,參與的人員越多,需要協(xié)調(diào)溝通的渠道越多,周期越長(zhǎng),開發(fā)人員也容易疲勞,將大項(xiàng)目拆分成幾個(gè)小項(xiàng)目,可以降低對(duì)項(xiàng)目管理人員的要求,減少項(xiàng)目的管理風(fēng)險(xiǎn),而且能夠充分地將項(xiàng)目管理的權(quán)力下放,充分調(diào)動(dòng)人員的積極性,目標(biāo)會(huì)比較具體明確,易于取得階段性的成果,使開發(fā)人員有成就感。

  作者主管過的一個(gè)產(chǎn)品開發(fā)項(xiàng)目代號(hào)為SB,該項(xiàng)目前期投入了5人做需求,時(shí)間達(dá)3個(gè)多月,進(jìn)入開發(fā)階段后,投入了15人,時(shí)間達(dá)10個(gè)月之久,陸續(xù)進(jìn)行了3次封閉開發(fā),在此過程中經(jīng)歷了需求的裁剪、開發(fā)人員的變更、技術(shù)路線的調(diào)整,項(xiàng)目組成員的壓力極大,大家疲憊不堪,產(chǎn)品上市時(shí)間拖期達(dá)4個(gè)月。項(xiàng)目完工后總結(jié)下來(lái)的很致命的一個(gè)教訓(xùn)就是應(yīng)該將該項(xiàng)目拆成3個(gè)小的項(xiàng)目來(lái)做,進(jìn)行階段性版本化發(fā)布,以緩解市場(chǎng)上的壓力,減少項(xiàng)目組成員的挫折感,提高大家的士氣。

      4實(shí)時(shí)控制原則

  在一家大型的軟件公司中,有一位很有個(gè)性的項(xiàng)目經(jīng)理,該項(xiàng)目經(jīng)理很少談起什么管理理論,也未見其有什么明顯的管理措施,但是他連續(xù)做成多個(gè)規(guī)模很大的軟件項(xiàng)目,而且應(yīng)用效果很好。作者一直很奇怪他為什么能做的如此成功,經(jīng)過仔細(xì)觀察,終于發(fā)現(xiàn)他的管理可以用"緊盯"2字來(lái)概括,即每天他都要仔細(xì)檢查項(xiàng)目組每個(gè)成員的工作,從軟件演示到內(nèi)部的處理邏輯、數(shù)據(jù)結(jié)構(gòu)等,一絲不茍,如果有問題,改不完是不能去休息的。正是在他這種簡(jiǎn)單的措施下,支撐他完成了很多大的項(xiàng)目,當(dāng)然他也是相當(dāng)?shù)男量?,通常都是在凌晨才去休息。我們并非要推崇這種做法,這種措施也有他的問題,但是,這種實(shí)踐卻說明了一個(gè)很樸實(shí)的道理:如果你沒有更好的辦法,就要辛苦一點(diǎn),實(shí)時(shí)控制項(xiàng)目的進(jìn)展,要將項(xiàng)目的進(jìn)展情況完全的實(shí)時(shí)的置于你的控制之下。

  上述的方法中對(duì)項(xiàng)目經(jīng)理的個(gè)人能力、犧牲精神要求是很高,我們需要有一種進(jìn)行實(shí)時(shí)控制項(xiàng)目進(jìn)度的機(jī)制,依靠一套規(guī)范的過程來(lái)保證實(shí)時(shí)監(jiān)控項(xiàng)目的進(jìn)度。如在微軟的管理策略中強(qiáng)?quot;每日構(gòu)建",這確實(shí)是是一種不錯(cuò)的方法,即每天要進(jìn)行一次系統(tǒng)的編譯鏈接,通過編譯鏈接來(lái)檢查進(jìn)度、檢查接口、發(fā)現(xiàn)進(jìn)展中的問題、大家互相鼓勵(lì)互相監(jiān)督。

  實(shí)時(shí)控制確保項(xiàng)目經(jīng)理能夠及時(shí)發(fā)現(xiàn)問題、解決問題,保證項(xiàng)目具有很高的可見度,保證項(xiàng)目的正常進(jìn)展。

      5分類管理原則

  對(duì)于不同的軟件項(xiàng)目其項(xiàng)目目標(biāo)差別很大,項(xiàng)目規(guī)模也是不同的,應(yīng)用領(lǐng)域是不同的,采用的技術(shù)路線差別也很大,因而,針對(duì)每個(gè)項(xiàng)目的不同特點(diǎn),其管理的方法、管理的側(cè)重點(diǎn)應(yīng)該是不同的。就像古人講的,"因材施教","對(duì)癥下藥"。對(duì)于小項(xiàng)目你肯定不能象管理大項(xiàng)目那樣去做,對(duì)于產(chǎn)品開發(fā)類的項(xiàng)目,你也不可能象管理系統(tǒng)集成類的項(xiàng)目那樣去做,項(xiàng)目經(jīng)理需要根據(jù)項(xiàng)目的特點(diǎn),制訂不同的項(xiàng)目管理的方針政策。如,下表是作者為一家應(yīng)用軟件公司制訂的項(xiàng)目管理的方針:

  在該案例中,將項(xiàng)目分成了訂單類項(xiàng)目與非訂單類項(xiàng)目,非訂單類項(xiàng)目是指由公司根據(jù)市場(chǎng)的需求開發(fā)一個(gè)標(biāo)準(zhǔn)產(chǎn)品的項(xiàng)目,而訂單類是指針對(duì)某個(gè)具體的客戶定制軟件的項(xiàng)目,訂單類的項(xiàng)目根據(jù)需要協(xié)調(diào)的資源的范圍有劃分成了公司級(jí)、部門級(jí)、個(gè)人級(jí)三類,非訂單類根據(jù)估算的工作量的大小也分成了A、B、C三類,估算的工作量超過720人天的為A類,超過360人天的為B類,360人天以下的為C類。不同類的項(xiàng)目管理的側(cè)重點(diǎn)是不同的,從立項(xiàng)手續(xù)的完備性、計(jì)劃的嚴(yán)格層度、周報(bào)的完備層度、規(guī)范的嚴(yán)格層度、跟蹤的實(shí)時(shí)性、是否進(jìn)行階段總結(jié)、是否核算項(xiàng)目成本、是否嚴(yán)格進(jìn)行階段評(píng)審等多個(gè)方面來(lái)考慮,以確保管理的可行性。

      6簡(jiǎn)單有效原則

  項(xiàng)目經(jīng)理在進(jìn)行項(xiàng)目管理的過程中,往往會(huì)得到開發(fā)人員這樣的抱怨"太麻煩了,浪費(fèi)時(shí)間,沒有用處",這是很普遍的一種現(xiàn)象。當(dāng)然這樣的抱怨要從2個(gè)方面來(lái)分析,一方面從開發(fā)人員本身可能存在不理解,或者逆反心理的情況,另一方面,項(xiàng)目經(jīng)理也要反思:我所采取的管理措施是否簡(jiǎn)單有效?搞管理不是搞學(xué)術(shù)研究,沒有完美的管理,只有有效的管理,而項(xiàng)目經(jīng)理往往試圖堵住所有的漏洞,解決所有的問題,恰恰是這種理想,會(huì)使項(xiàng)目的管理陷入一個(gè)誤區(qū),作繭自縛,最后無(wú)法實(shí)施有效的管理,導(dǎo)致項(xiàng)目的失敗。

      7規(guī)??刂圃瓌t

  該原則是和上面提到的其他原則相配合使用的,即要控制項(xiàng)目組的規(guī)模,不要人數(shù)太多,人數(shù)多了,進(jìn)行溝通的渠道就多了,管理的復(fù)雜度就高了,對(duì)項(xiàng)目經(jīng)理的要求也就高了。在微軟的MSF中,有一個(gè)很明確的原則就是要控制項(xiàng)目組的人數(shù)不要超過10人,當(dāng)然這不是絕對(duì)的,也和項(xiàng)目經(jīng)理的水平有很大關(guān)系。但是人員"貴精而不貴多",這是一個(gè)基本的原則,這和我們上面提到的高效原則、分解原則是相輔相成的。
 
十四. 軟件項(xiàng)目管理在管理思維中的空白

  空白1:為效益而實(shí)施項(xiàng)目管理
  
  為什么我們要實(shí)施項(xiàng)目管理,是為了提高項(xiàng)目的效益。這里所指的項(xiàng)目的效益是一個(gè)綜合性的指標(biāo),包括低風(fēng)險(xiǎn)、高產(chǎn)出等。為此我們不難得出我們?cè)趯?shí)施項(xiàng)目管理應(yīng)該掌握的度。即:引入項(xiàng)目管理后所產(chǎn)生的效益減去項(xiàng)目管理的成本后必須大于未引入項(xiàng)目管理時(shí)的效益。由于引入項(xiàng)目管理后所產(chǎn)生的效益與項(xiàng)目管理的復(fù)雜度(項(xiàng)目管理的成本)并非線性相關(guān)的,因此項(xiàng)目管理的復(fù)雜度必然存在一個(gè)最優(yōu)值,這就是我們應(yīng)該把握的度。也許上面的說法比較抽象。一個(gè)實(shí)際行之可效的判斷項(xiàng)目管理的度規(guī)則就是:大家認(rèn)可并且能夠準(zhǔn)確地理解和實(shí)施。拿美國(guó)項(xiàng)目管理專家James P Lewis的話說就是KISS原則(Keep it simple and stupid),拿物理學(xué)家愛因斯坦的話說就是:Keep it simple but not too simple.

  空白2:考慮所處環(huán)境
  
  任何系統(tǒng)都是建立在一個(gè)具體的系統(tǒng)環(huán)境中的,一般情況下受上一級(jí)系統(tǒng)影響最為顯著,這是系統(tǒng)論的觀點(diǎn)。項(xiàng)目管理是企業(yè)管理的下屬層次,因此在很大程度上項(xiàng)目管理的成功與否常常受企業(yè)管理的制度制約(比如說設(shè)備采購(gòu)的批復(fù)等待會(huì)延誤工期),這就是為什么常常會(huì)出現(xiàn)計(jì)劃不如變化來(lái)的快的原因。因?yàn)槲覀冊(cè)谥贫ㄓ?jì)劃時(shí)根本就沒有考慮自身和客戶雙方的企業(yè)管理的環(huán)境,所以我們的計(jì)劃在實(shí)施過程中會(huì)受到企業(yè)管理環(huán)境因素的影響。我敢跟你打賭:在沒有人事激勵(lì)機(jī)制常常拖欠或故意克扣員工工資但獲得CMM5認(rèn)證的公司開發(fā)效率不會(huì)比一個(gè)沒有實(shí)施項(xiàng)目管理的開發(fā)團(tuán)隊(duì)的效率高多少。因?yàn)閻毫拥墓救耸轮贫榷髿⒘碎_發(fā)人員的天才和積極性。因此,作為一個(gè)項(xiàng)目管理者,審視自身的項(xiàng)目所處的企業(yè)環(huán)境并做出準(zhǔn)確的判斷是非常有必要的。缺少良好的項(xiàng)目環(huán)境,項(xiàng)目管理者的心血常常白費(fèi)。這往往是我們中的一些項(xiàng)目經(jīng)理在不同的公司里項(xiàng)目管理表現(xiàn)大相徑庭的原因。
  
  此外,正是基于企業(yè)環(huán)境這樣一個(gè)觀點(diǎn),目前美國(guó)PMI,日本ENAA等提出了項(xiàng)目管理成熟度模型(OPM3和P2M),改變了傳統(tǒng)PMBOK的缺陷(忽略外部因素和自身的靈活性)。有興趣的項(xiàng)目管理者可以參看有關(guān)項(xiàng)目管理成熟度和企業(yè)管理方面(建議參看職業(yè)經(jīng)理人方面)的資料。

  空白3:合理評(píng)判軟件項(xiàng)目管理
  
  我們總是把過多的項(xiàng)目失敗歸罪到項(xiàng)目經(jīng)理的名頭上。他們的角色常常是替罪羊而不是領(lǐng)導(dǎo)者,他們擁有的更多的是責(zé)任而絕非職權(quán)。實(shí)際上項(xiàng)目失敗并非完全決定于項(xiàng)目管理,比如說信息系統(tǒng)過低的報(bào)價(jià)。一個(gè)項(xiàng)目按時(shí)在預(yù)算范圍內(nèi)完成了而另外一個(gè)則沒有按時(shí)完成,這不意味著第一個(gè)項(xiàng)目管理得比較好。因?yàn)榍罢呖赡苁琼?xiàng)目時(shí)間和成本寬松的項(xiàng)目而后者根本就是不可能完成的項(xiàng)目。前者項(xiàng)目管理的意義在于獲得較高的項(xiàng)目效益而后者的意義在于避免更大的項(xiàng)目損失。很可惜,充滿了浮躁的軟件企業(yè)沒有諸如此類的意識(shí),一些項(xiàng)目在未開始前注定就是失敗的,項(xiàng)目經(jīng)理們一上手便被扣以一責(zé)任人的鐐銬。因此,項(xiàng)目管理有無(wú)具體效果,需要合理地進(jìn)行評(píng)判,單純以出效益為上的觀點(diǎn)未必有失偏頗。

  空白4:心理學(xué)的必要性
  
  沒有一個(gè)領(lǐng)域像軟件項(xiàng)目管理中人的因素更為重要,在軟件領(lǐng)域沒有實(shí)現(xiàn)自動(dòng)化之前,一切試圖取代人的主要作用的機(jī)制都是收效甚微的。人的行為是心智活動(dòng)的表現(xiàn)。開發(fā)人員的心理活動(dòng)決定了其在開發(fā)的表現(xiàn)。合適的壓力能夠勾起開發(fā)人員的成功欲望但是過大的壓力卻直接影響著項(xiàng)目參與者的身心健康。特別是后者一直以來(lái)都未能引起軟件開發(fā)界的重視。很多人曾經(jīng)有過不明不白的辭職經(jīng)歷,在沒有學(xué)習(xí)《管理心理學(xué)》之前,筆者對(duì)這些人的"過激"行為有時(shí)想想都覺得奇怪。作為一個(gè)軟件項(xiàng)目管理者,不了解和掌握管理心理學(xué),很難針對(duì)復(fù)雜多變的人的因素采取合理的應(yīng)對(duì)措施,同時(shí)自身的心理健康也未必能夠得到保證。為此筆者建議有條件的軟件企業(yè),可以通過聘用心理顧問來(lái)處理員工的心理問題,以此緩和由于工作壓力而導(dǎo)致的員工之間矛盾沖突和項(xiàng)目坍塌。

  空白5:尊重常識(shí),系統(tǒng)性考慮問題
  
  這個(gè)觀點(diǎn)筆者在《軟件項(xiàng)目管理原則談》已經(jīng)重申過。就像不要指望人一秒鐘跑二十米一樣指望項(xiàng)目中有過多的奇跡出現(xiàn)??上覀冎械拇蠖囗?xiàng)目管理者在進(jìn)行項(xiàng)目管理時(shí)依然實(shí)施"大躍進(jìn)"。我們的管理者都知道自然規(guī)律不可違抗性,但是卻很少有人意識(shí)到一些社會(huì)規(guī)律的不可違抗性。他們總以為唯物的主觀能動(dòng)性能夠替代實(shí)際,產(chǎn)生奇跡。加班被認(rèn)為是解決資源匱乏的唯一途徑,通過開發(fā)人員"無(wú)上"的生產(chǎn)力來(lái)達(dá)成項(xiàng)目的成功。很少有人會(huì)意識(shí)到加班造成的疲勞會(huì)再次使工作效率降低這一事實(shí)。這是一種缺乏常識(shí)和系統(tǒng)性思考問題的表現(xiàn)。諸如此類的表現(xiàn)還有"唯工具論"和"唯方法論"。
  
  實(shí)際上,項(xiàng)目管理涉及各個(gè)方方面面,一味提高某一方面作用而忽略該方面對(duì)其它方面的影響,并不能提高項(xiàng)目管理的層次和最終產(chǎn)出,這是制止我們的項(xiàng)目管理者走偏激(極端)立場(chǎng)的一劑良藥,希望項(xiàng)目管理者們能有所意識(shí)。

  空白6:學(xué)會(huì)思考
  
  項(xiàng)目管理不是拿來(lái)主義,需要項(xiàng)目管理者進(jìn)行認(rèn)真的思考。這就是為什么我們項(xiàng)目管理者中不乏PMP和IPMP但是項(xiàng)目卻未能如愿以償?shù)脑?。理論和?shí)踐的差距極大地挫傷項(xiàng)目管理者的積極性。"證書無(wú)用論"所持的觀點(diǎn)其依據(jù)也在于此。理論是一種完美的抽象,而現(xiàn)實(shí)是各種條件的集合。我們的項(xiàng)目管理者在實(shí)踐上往往生搬硬套而忽略其依存條件,這就是招聘項(xiàng)目經(jīng)理"唯經(jīng)驗(yàn)論"的來(lái)源。一位項(xiàng)目管理者跟我交流的時(shí)候提到無(wú)法使用掙值(Earned Value)的概念,原因是公司人事部和財(cái)務(wù)部不愿意出示員工的收入清單。我建議他將掙值換為掙時(shí)(Earned Time),以時(shí)間替代成本。從項(xiàng)目進(jìn)度的意義上來(lái)看這兩者其實(shí)是一致的,問題馬上得到了解決??上У氖俏覀兊捻?xiàng)目管理者往往未學(xué)會(huì)思考具體概念的真正含義之前并匆匆上驢,提著長(zhǎng)槍去和風(fēng)車做斗爭(zhēng)去了(注:唐吉訶德)。

  空白7:學(xué)會(huì)計(jì)劃
  
  現(xiàn)實(shí)中我們往往用補(bǔ)救措施代替計(jì)劃,其效果便如軟件缺陷的放大效應(yīng)。在項(xiàng)目經(jīng)理的招聘中,你聽到的只是幾個(gè)項(xiàng)目管理白癡問你項(xiàng)目出了什么問題應(yīng)該怎樣解決的提問,這些項(xiàng)目管理白癡在不斷地做各種問題假設(shè),而你必須根據(jù)假設(shè)采取各種符合這些項(xiàng)目管理白癡口味的回答。但是,作為項(xiàng)目管理的來(lái)說,項(xiàng)目管理的真正意義在于事先預(yù)防各種偏離項(xiàng)目目標(biāo)的問題出現(xiàn)而不是在于解決問題。古話說得好"磨刀不誤砍柴工"。你不能期望癌癥有100%的治愈率,但是你可以通過合理的生活習(xí)慣和鍛煉來(lái)防止癌癥的出現(xiàn)。我們?cè)谶M(jìn)行項(xiàng)目管理時(shí),首先應(yīng)該考慮如何防止問題的出現(xiàn),雖然它不能保證所有的問題(風(fēng)險(xiǎn))都可以避免,但是通過計(jì)劃,你將擁有更多問題(風(fēng)險(xiǎn))應(yīng)對(duì)儲(chǔ)備,能夠在問題出現(xiàn)時(shí)有備無(wú)患。一個(gè)只會(huì)在問題出現(xiàn)時(shí)考慮應(yīng)對(duì)措施的項(xiàng)目經(jīng)理只是一個(gè)失敗的項(xiàng)目經(jīng)理。其項(xiàng)目結(jié)果無(wú)異是把健康交給醫(yī)生而不是自己。作為項(xiàng)目管理的定位來(lái)說,項(xiàng)目管理應(yīng)該是"管理會(huì)計(jì)"的角色而不是"成本會(huì)計(jì)"的角色。
  
  最后,以某電影的臺(tái)詞來(lái)結(jié)束本文;人為什么犯???簡(jiǎn)單的東西想復(fù)雜了,復(fù)雜的東西想簡(jiǎn)單了,人就會(huì)犯病"。拿這句臺(tái)詞來(lái)形容我們目前的項(xiàng)目管理狀況一點(diǎn)也不為過。軟件項(xiàng)目管理是一個(gè)從"自發(fā)"走向"自覺"的過程,也是一個(gè)從經(jīng)驗(yàn)主義走向理性主義的過程。軟件項(xiàng)目管理是一個(gè)主動(dòng)的管理,而這一切,需要廣大項(xiàng)目管理者的項(xiàng)目管理思維和積極實(shí)踐。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多