版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 關(guān)于軟件開發(fā)人力計(jì)劃的最佳研究方案張觀多摘要:信息化是我們當(dāng)今這個(gè)社會(huì)的主流,而是促進(jìn)信息化的工具主要是軟件,所以如何尋找軟件開發(fā)人力計(jì)劃最佳方案就成為我們生活中必須要面對(duì)的問題。人在信息系統(tǒng)項(xiàng)目中既是成本,又是資本。一般來說,人力成本占信息系統(tǒng)項(xiàng)目成本構(gòu)成的主要部分,這就要求我們從成本角度去衡量人力資源,盡量使人力資源的投入最小、產(chǎn)出最大。在項(xiàng)目開發(fā)中,人越多越好嗎?當(dāng)項(xiàng)目進(jìn)度延遲時(shí),是否應(yīng)該增加人力投入?效果如何?會(huì)不會(huì)越幫越忙?這些問題是人力計(jì)劃要解決的。 對(duì)于這些問題,我提出了3個(gè)解決方案:1赫夫型開發(fā);2 人員進(jìn)度權(quán)衡;3 Brooks定律;1赫夫型開發(fā):是通過尋找最優(yōu)二叉樹的方式
2、把軟件開發(fā)中的任務(wù)與人力進(jìn)行分配從而確定最佳的人力安排。2人員進(jìn)度權(quán)衡定律:從估算軟件開發(fā)工作量角度出發(fā),得出公式:E=L3(C3Rt4d)進(jìn)行研究。(公式后面有解析)3 Brooks定律:這個(gè)定律是指軟件開發(fā)中“時(shí)間與人員不能線性互換”在軟件開發(fā)中追加人力時(shí)要考慮的問題。關(guān)鍵字:軟件開發(fā) 人力資源管理 策略研究1. 軟件開發(fā)的發(fā)展歷程2.1傳統(tǒng)的軟件生產(chǎn)模式2.2軟件工廠的兩種生產(chǎn)模式3.軟件項(xiàng)目開發(fā)的流程3.1 項(xiàng)目立項(xiàng)3.2 項(xiàng)目計(jì)劃3.3需求獲取與分析3.4 系統(tǒng)概要設(shè)計(jì)3.5系統(tǒng)詳細(xì)設(shè)計(jì)3.6 編碼實(shí)現(xiàn)3.7 測試3.8產(chǎn)品發(fā)布3.9周期性活動(dòng)4 軟件開發(fā)人力計(jì)劃安排所存在的主要問題
3、41項(xiàng)目經(jīng)理缺乏宣講能力,程序員缺乏溝通能力42 軟件質(zhì)量的價(jià)值觀念模糊43開發(fā)流程意識(shí)缺乏44時(shí)間管理能力比較低45 缺少必要的信心和激情46相互的合作并不協(xié)調(diào)47無效的內(nèi)耗占據(jù)了開發(fā)過程的主體48 模糊不清的角色職責(zé)定義5 軟件開發(fā)存在主要問題的分析6,軟件開發(fā)人力計(jì)劃最佳方案探討 61 團(tuán)隊(duì)開發(fā)的人員分配和薪水界定62 營造高效軟件開發(fā)團(tuán)隊(duì)6.2.1 具有明確且有挑戰(zhàn)性的共同目標(biāo)6.2.2 團(tuán)隊(duì)具有很強(qiáng)的凝聚力6.2.3具有融洽的交流環(huán)境6.2.4 具有共同的工作規(guī)范和框架6.2.5采用合理的開發(fā)過程6.3項(xiàng)目時(shí)間管理6.3.1項(xiàng)目計(jì)劃6.3.2安排進(jìn)度表6.3.3進(jìn)度控制6.3.4項(xiàng)目
4、進(jìn)度計(jì)劃的表示方法7 具體解決方案7.1 赫夫曼樹型開發(fā)72 人員進(jìn)度權(quán)衡定律73 Brooks定律7.4 用做人力計(jì)劃的Rayleigh-Norden曲線8.總結(jié)1軟件開發(fā)的發(fā)展歷程傳統(tǒng)的軟件生產(chǎn)模式主要是指自1946年有了數(shù)字計(jì)算機(jī)以后到20世紀(jì)70年代中期以前這段時(shí)間軟件生產(chǎn)所采用的主要模式,大致經(jīng)歷了程序設(shè)計(jì)模式、軟件作坊模式和軟件工程模式。 程序設(shè)計(jì)模式:是20世紀(jì)60年代中期以前的這段時(shí)期軟件生成所采用的主要模式。在這個(gè)階段,軟件的生產(chǎn)就是程序設(shè)計(jì),軟件的規(guī)模很小,通常由程序設(shè)計(jì)人員即軟件使用者根據(jù)特定的要求,通過當(dāng)時(shí)的編程語言提供的算法來編寫相應(yīng)的專用軟件。 軟件作坊模式:軟件作
5、坊模式主要是從20世紀(jì)60年代中期開始到70年代中期這段時(shí)間。軟件作坊一般是由少數(shù)幾個(gè)或幾十個(gè)人組成的軟件生產(chǎn)團(tuán)體,他們是專門應(yīng)別人的要求而編寫軟件的。沒有什么軟件生產(chǎn)的理論和方法,軟件生產(chǎn)仍然是少數(shù)幾個(gè)人頭腦風(fēng)暴的結(jié)果,除了源代碼以外往往沒有軟件的說明書等文檔。 軟件工程模式:軟件工程模式是從20世紀(jì)70年代中期之后開始的這段時(shí)間。它提供了一種新的系統(tǒng)化、規(guī)范化、數(shù)量化的工程原則和方法進(jìn)行軟件的開發(fā)和維護(hù)。按照工程化的原則和方法來組織管理軟件的開發(fā)與維護(hù)工作;是擺脫軟件危機(jī)的一個(gè)主要出路。 2.2軟件工廠的兩種生產(chǎn)模式 1)基于軟件開發(fā)的軟件工廠 這種形式的軟件工廠是以軟件工程和軟件的生命周
6、期作為軟件公司的管理和開發(fā)的指導(dǎo)思想,著重軟件的開發(fā)和管理。其最主要的體現(xiàn)在三個(gè)方面,其一是在公司的組織劃分和項(xiàng)目及人員管理上深入貫徹落實(shí)軟件工程思想,強(qiáng)調(diào)軟件開發(fā)的“工程”性,把軟件的設(shè)計(jì)、開發(fā)、測試、維護(hù)和管理當(dāng)作一項(xiàng)系統(tǒng)工程來抓,表明軟件不僅僅是編寫代碼的工作,而需要各個(gè)學(xué)科的綜合應(yīng)用和各部門團(tuán)隊(duì)之間的通力合作,才能得以實(shí)現(xiàn)。其二是嚴(yán)格項(xiàng)目管理和改進(jìn)軟件過程。承認(rèn)軟件開發(fā)是具有相當(dāng)風(fēng)險(xiǎn)的工作,為了降低風(fēng)險(xiǎn),使項(xiàng)目能夠按照預(yù)定的成本、進(jìn)度和質(zhì)量順利完成,而對(duì)軟件開發(fā)的成本、人員、進(jìn)度、質(zhì)量和風(fēng)險(xiǎn)等進(jìn)行科學(xué)地分析和管理,同時(shí)結(jié)合先進(jìn)的管理軟件和工具軟件,如引進(jìn)先進(jìn)的國際管理標(biāo)準(zhǔn)IS09000
7、和CMM等,對(duì)公司的工作流程進(jìn)行分析、整理、改進(jìn)和完善,形成適合自己公司發(fā)展的軟件過程和相關(guān)文檔,并指導(dǎo)軟件項(xiàng)目的開發(fā)。其三是廣泛地使用軟件復(fù)用技術(shù)。在公司級(jí)別上建立軟件復(fù)用類庫,對(duì)各知識(shí)領(lǐng)域的可復(fù)用構(gòu)件進(jìn)行分類和提煉,并在全公司上下和各個(gè)項(xiàng)目之間廣泛推行和落實(shí),從而提升各個(gè)團(tuán)隊(duì)乃至整個(gè)公司的軟件生產(chǎn)質(zhì)量和生產(chǎn)力。 2)基于軟件集成的軟件工廠 以軟件集成為核心的軟件工廠,強(qiáng)調(diào)的是軟件“集成”。就像傳統(tǒng)行業(yè)的產(chǎn)品生產(chǎn)線一樣,軟件工廠拿到軟件需求,通過軟件的需求分析和設(shè)計(jì),確定要達(dá)到相關(guān)功能和性能所需要的各種軟件構(gòu)件,在軟件工廠的集成平臺(tái)上通過集成而生產(chǎn)出符合用戶要求的軟件,它是一個(gè)高度自動(dòng)化的軟
8、件生產(chǎn)模式。基于集成的軟件工廠,它的主要工作大致可以分為兩個(gè)階段。第一個(gè)階段是軟件的需求分析和設(shè)計(jì)。在這一階段,軟件公司針對(duì)不同的軟件需求,集中公司的信息技術(shù)專家、管理專家、行業(yè)專家和項(xiàng)目開發(fā)人員組成項(xiàng)目組,對(duì)軟件的需求進(jìn)行分析,設(shè)計(jì)出生產(chǎn)工藝方案,然后按方案對(duì)所需要的軟件構(gòu)件(中間件、模塊等)進(jìn)行選型和配置。第二個(gè)階段是在軟件集成平臺(tái)上對(duì)各種軟件構(gòu)件進(jìn)行組裝、集成和客戶化,以最終生產(chǎn)出符合客戶要求的軟件產(chǎn)品。由此可見,以集成為核心的軟件工廠,它不強(qiáng)調(diào)軟件的開發(fā),或者說它不怎么關(guān)心軟件的開發(fā),而是通過使用各種軟件集成工具來搭建軟件集成平臺(tái),依照領(lǐng)域標(biāo)準(zhǔn)和支持這些標(biāo)準(zhǔn)的領(lǐng)域中間件和構(gòu)件為原料來實(shí)
9、現(xiàn)軟件生產(chǎn)自動(dòng)化的。 總之,軟件的生產(chǎn)模式是隨著軟件需求、軟件的復(fù)雜度及軟件理論和軟件技術(shù)的不斷變化而發(fā)展變化的。雖然說在同一時(shí)期,可能有幾種不同的軟件生產(chǎn)模式同時(shí)存在,但卻只有一種模式是占主導(dǎo)地位的;就像近幾十年來軟件工程模式一直都是主流模式一樣,但在未來甚至是未來相當(dāng)長一段時(shí)間之內(nèi),軟件工廠的模式將會(huì)成為我們軟件生產(chǎn)的主要模式.3.軟件項(xiàng)目開發(fā)的流程一個(gè)基本的軟件開發(fā)流程,通常包括項(xiàng)目立項(xiàng)、計(jì)劃、需求獲取與分系、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測試、軟件發(fā)布和軟件維護(hù)階段,如圖所示。3.1 項(xiàng)目立項(xiàng)此階段工作以項(xiàng)目經(jīng)理為主,技術(shù)經(jīng)理為輔。項(xiàng)目經(jīng)理:全面規(guī)劃項(xiàng)目工作的內(nèi)容,確定目標(biāo)市場、技術(shù)指標(biāo)和
10、應(yīng)用要求,劃定項(xiàng)目工作范圍和交付成果,明確項(xiàng)目實(shí)現(xiàn)的總體設(shè)想和實(shí)施方案;明確項(xiàng)目需要用到的各種資源,與技術(shù)經(jīng)理共同預(yù)估項(xiàng)目的工作量和成本;提交項(xiàng)目任務(wù)書,報(bào)公司上級(jí)領(lǐng)導(dǎo)審批,進(jìn)行立項(xiàng)評(píng)審。技術(shù)經(jīng)理:負(fù)責(zé)確定項(xiàng)目中的新技術(shù)的可行性;協(xié)助項(xiàng)目經(jīng)理明確項(xiàng)目需要用到的各種資源,協(xié)助預(yù)估項(xiàng)目的工作量和成本。3.2 項(xiàng)目計(jì)劃立項(xiàng)通過的項(xiàng)目才能進(jìn)入正式的開發(fā)工作,此階段工作同樣以項(xiàng)目經(jīng)理為主,技術(shù)經(jīng)理為輔。項(xiàng)目經(jīng)理:召集關(guān)鍵技術(shù)人員(可以是其他項(xiàng)目組的成員),詳細(xì)估算項(xiàng)目的工作量和成本;明確各階段的活動(dòng)內(nèi)容,以及各階段需要完成的軟件工作產(chǎn)品,制定工作拆分表(WBS),作為項(xiàng)目開展工作和詳細(xì)計(jì)劃的基礎(chǔ);對(duì)項(xiàng)目
11、進(jìn)行一系列的風(fēng)險(xiǎn)評(píng)估,進(jìn)行詳細(xì)進(jìn)度計(jì)劃安排,落實(shí)時(shí)間進(jìn)度、資源(人員、設(shè)備)、技術(shù)、資金等,完成軟件開發(fā)計(jì)劃及進(jìn)度表;組織項(xiàng)目組成員和高層對(duì)此階段完成的文檔進(jìn)行評(píng)審。技術(shù)經(jīng)理:參與詳細(xì)估算項(xiàng)目的工作量和成本;協(xié)助項(xiàng)目經(jīng)理完成軟件開發(fā)計(jì)劃及進(jìn)度表;參與評(píng)審本階段提交的文檔。3.3需求獲取與分析從這一階段開始,項(xiàng)目開發(fā)管理的重心開始轉(zhuǎn)移,一直到測試任務(wù)完成以前,項(xiàng)目開發(fā)的工作都是以技術(shù)經(jīng)理為主導(dǎo),項(xiàng)目經(jīng)理只是輔助監(jiān)督技術(shù)經(jīng)理按照流程的標(biāo)準(zhǔn)和要求完成任務(wù)。需求的獲取是一個(gè)不斷反復(fù)、不斷深化的過程,可能需要多次,并一直到軟件開發(fā)活動(dòng)結(jié)束為止。為使需求調(diào)研更有效果、針對(duì)性更強(qiáng),此階段開始前,建議由項(xiàng)目經(jīng)
12、理和技術(shù)經(jīng)理共同準(zhǔn)備一份需求調(diào)研問卷,將需要調(diào)研的問題詳細(xì)羅列在問卷中,并根據(jù)問卷展開調(diào)研。問卷中的問題最初以客戶的高層需求為主,隨著設(shè)計(jì)與開發(fā)的深入,問題逐漸細(xì)化為系統(tǒng)實(shí)現(xiàn)的技術(shù)細(xì)節(jié)。技術(shù)經(jīng)理:與項(xiàng)目經(jīng)理共同準(zhǔn)備需求調(diào)研問卷,審核問卷中的問題;參與需求調(diào)研;調(diào)研結(jié)束后,根據(jù)項(xiàng)目需求報(bào)告界定的工作范圍和應(yīng)用方案的設(shè)計(jì)思路,進(jìn)一步深入細(xì)化應(yīng)用方案,描述將要開發(fā)的系統(tǒng)中包含的業(yè)務(wù)流程、約定、數(shù)據(jù)源、報(bào)表格式等,整理成軟件需求規(guī)格說明書或軟件用例說明書;指導(dǎo)測試組完成系統(tǒng)測試用例;參與評(píng)審本階段提交的需求文檔。項(xiàng)目經(jīng)理:參與準(zhǔn)備需求調(diào)研問卷,審核問卷中的問題;參與需求調(diào)研;協(xié)助技術(shù)經(jīng)理整理軟件需求規(guī)
13、格說明書;指導(dǎo)測試組完成軟件測試計(jì)劃;組織項(xiàng)目組成員對(duì)完成的需求文檔進(jìn)行評(píng)審。3.4 系統(tǒng)概要設(shè)計(jì)此階段主要是根據(jù)項(xiàng)目需求分析,對(duì)將要建立的滿足用戶需求的計(jì)算機(jī)系統(tǒng)進(jìn)行分析。技術(shù)經(jīng)理:在系統(tǒng)分析過程中,指導(dǎo)設(shè)計(jì)人員(共同參與)劃分需求的功能模塊或包(Package),對(duì)每一個(gè)模塊進(jìn)行分析和抽象,找出描述模塊及系統(tǒng)責(zé)任所需的類及對(duì)象,最終產(chǎn)生一個(gè)符合用戶需求,能夠直接反映模塊和系統(tǒng)職責(zé)的分析模型;完成提交系統(tǒng)概要設(shè)計(jì)說明書;指導(dǎo)測試組完成軟件集成測試用例;參與評(píng)審本階段提交的概要設(shè)計(jì)文檔。項(xiàng)目經(jīng)理:組織項(xiàng)目組成員或其他項(xiàng)目組的設(shè)計(jì)人員對(duì)完成的設(shè)計(jì)文檔進(jìn)行評(píng)審。3.5系統(tǒng)詳細(xì)設(shè)計(jì)技術(shù)經(jīng)理:根據(jù)項(xiàng)目
14、需求分析和概要設(shè)計(jì),針對(duì)具體實(shí)現(xiàn)中的人機(jī)界面、數(shù)據(jù)存儲(chǔ)、任務(wù)管理等內(nèi)容,指導(dǎo)設(shè)計(jì)人員(共同參與)進(jìn)一步分析和細(xì)化,詳細(xì)定義各個(gè)模塊或包(Package)中的類和對(duì)象的屬性與方法,以及它們之間的聯(lián)系,完成包括UI設(shè)計(jì)、對(duì)象設(shè)計(jì)和數(shù)據(jù)庫表設(shè)計(jì);提交系統(tǒng)詳細(xì)設(shè)計(jì)說明書、數(shù)據(jù)庫設(shè)計(jì)說明書;參與評(píng)審本階段提交的設(shè)計(jì)文檔及模型。項(xiàng)目經(jīng)理:組織項(xiàng)目組成員對(duì)本階段完成的詳細(xì)設(shè)計(jì)文檔及模型進(jìn)行評(píng)審。3.6 編碼實(shí)現(xiàn)這一階段的任務(wù)基本上由技術(shù)經(jīng)理指導(dǎo)完成,只有在非常關(guān)鍵的代碼模塊或必要時(shí)(如外購軟件等),才由項(xiàng)目經(jīng)理組織代碼的評(píng)審。技術(shù)經(jīng)理:根據(jù)系統(tǒng)詳細(xì)設(shè)計(jì)的結(jié)果,通過具體的程序語言、數(shù)據(jù)庫或者硬件設(shè)備指導(dǎo)程序員
15、(共同參與)實(shí)現(xiàn)設(shè)計(jì)中的數(shù)據(jù)結(jié)構(gòu)和算法;核查程序員完成的代碼模塊;指導(dǎo)開發(fā)人員(共同參與)集成各模塊或子系統(tǒng)。項(xiàng)目經(jīng)理:組織項(xiàng)目組成員對(duì)本階段提交的工作產(chǎn)品進(jìn)行評(píng)審(可選)。3.7 測試測試階段的任務(wù)雖然主要由測試組完成,但測試工作的開展離不開技術(shù)經(jīng)理的指導(dǎo),而且更需要項(xiàng)目經(jīng)理協(xié)調(diào)軟件開發(fā)小組與測試組之間的關(guān)系。目前,對(duì)于測試的管理和跟蹤多數(shù)采用回歸測試的方式。技術(shù)經(jīng)理:當(dāng)軟件的各個(gè)子系統(tǒng)或整個(gè)系統(tǒng)完成后,指導(dǎo)測試組完成集成測試和系統(tǒng)測試任務(wù);評(píng)審和核實(shí)測試組提交的集成測試報(bào)告和系統(tǒng)測試報(bào)告;根據(jù)測試結(jié)果分派任務(wù)給開發(fā)人員,指導(dǎo)(或共同參與)對(duì)軟件產(chǎn)品進(jìn)行修改。項(xiàng)目經(jīng)理:協(xié)調(diào)軟件開發(fā)組與測試組
16、之間的關(guān)系,指派測試任務(wù)給測試組;組織項(xiàng)目組成員對(duì)本階段提交的工作產(chǎn)品進(jìn)行評(píng)審。3.8產(chǎn)品發(fā)布本階段的任務(wù)主要是完成產(chǎn)品的包裝,這是軟件開發(fā)的收尾工作,項(xiàng)目組的管理重任移交到項(xiàng)目經(jīng)理。項(xiàng)目經(jīng)理:組織人員整理項(xiàng)目組內(nèi)部的開發(fā)文檔,如需求、設(shè)計(jì)、編碼、測試以及各種開發(fā)管理文檔資料;分派完成用戶文檔的任務(wù),包括安裝指南,使用手冊,技術(shù)手冊,培訓(xùn)教材等;指派撰寫產(chǎn)品宣傳資料的工作,例如產(chǎn)品介紹資料,演示光盤等;組織用戶對(duì)完工的項(xiàng)目(提交的軟件產(chǎn)品)按照驗(yàn)收步驟進(jìn)行驗(yàn)收,完成用戶驗(yàn)收?qǐng)?bào)告。技術(shù)經(jīng)理:協(xié)助整理項(xiàng)目組內(nèi)部的開發(fā)文檔,如需求、設(shè)計(jì)、編碼、測試以及各種開發(fā)管理文檔資料;開發(fā)軟件產(chǎn)品的安裝程序;參
17、與評(píng)審本階段提交的工作產(chǎn)品。3.9周期性活動(dòng)在項(xiàng)目開發(fā)過程中,有一些活動(dòng)是貫穿整個(gè)軟件開發(fā)過程的,我們將這些活動(dòng)稱之為周期性活動(dòng),包括項(xiàng)目計(jì)劃調(diào)整、項(xiàng)目活動(dòng)的跟蹤與監(jiān)控、風(fēng)險(xiǎn)再評(píng)估、配置管理、質(zhì)量保證等,活動(dòng)的結(jié)果主要由項(xiàng)目經(jīng)理或指定人員定期或在事件驅(qū)動(dòng)下更新(評(píng)審或?qū)忛啠┸浖_發(fā)計(jì)劃、項(xiàng)目問題日志、項(xiàng)目報(bào)告、項(xiàng)目風(fēng)險(xiǎn)日志、會(huì)議紀(jì)要、工作任務(wù)單、項(xiàng)目度量數(shù)據(jù)收集等文檔。在項(xiàng)目中同時(shí)設(shè)立項(xiàng)目經(jīng)理和技術(shù)經(jīng)理,可以有效實(shí)現(xiàn)項(xiàng)目技術(shù)和管理上的分工合作。項(xiàng)目經(jīng)理擅長管理,與客戶交流時(shí)可以加強(qiáng)說服力,可以更直接地了解客戶的要求,對(duì)客戶提出變更請(qǐng)求管理更加合理,也更有助于文檔的管理與評(píng)審活動(dòng)的開展。技術(shù)經(jīng)理
18、是技術(shù)權(quán)威,可以專注于技術(shù)研發(fā)工作,有助于提高軟件開發(fā)的效率和產(chǎn)品質(zhì)量。當(dāng)然,這種模式下的項(xiàng)目經(jīng)理不僅要有豐富的軟件開發(fā)和管理經(jīng)驗(yàn),不只是做計(jì)劃、總結(jié)匯報(bào)、安排工作,同樣也需要具備軟件開發(fā)的技術(shù)背景。只有這樣,才可以在開發(fā)過程中發(fā)現(xiàn)技術(shù)問題,并有助于更深入地了解項(xiàng)目技術(shù)架構(gòu)和細(xì)節(jié),保持項(xiàng)目中有關(guān)概念的一致性。技術(shù)經(jīng)理也不能只顧埋頭苦干,也要兼顧項(xiàng)目的管理,要激發(fā)技術(shù)人員的創(chuàng)造性和積極性。項(xiàng)目經(jīng)理與技術(shù)經(jīng)理之間也要經(jīng)常溝通,項(xiàng)目經(jīng)理和技術(shù)經(jīng)理在完成各自工作的同時(shí),都要及時(shí)通知對(duì)方,避免形成項(xiàng)目組內(nèi)部的幫派4軟件開發(fā)人力計(jì)劃安排所存在的主要問題41項(xiàng)目經(jīng)理缺乏宣講能力,程序員缺乏溝通能力項(xiàng)目經(jīng)理是
19、頭頭,所以,兵熊熊一個(gè),將熊熊一窩。項(xiàng)目經(jīng)理有時(shí)候心里很清楚一個(gè)事情該怎么做,但是他手下的兵卻不是很清楚,有些能力強(qiáng)的兵,就會(huì)多做一些事情,結(jié)果卻導(dǎo)致了更大的浪費(fèi)。項(xiàng)目經(jīng)理經(jīng)常說:我心里有數(shù),我認(rèn)為我能控制局面。而事實(shí)往往不是這樣。 項(xiàng)目團(tuán)隊(duì)56個(gè)人,經(jīng)常會(huì)對(duì)任務(wù)、分工、質(zhì)量等理解不一樣,這很成問題。最后導(dǎo)致項(xiàng)目效率很低。 程序員很多人都沒有自信,也許是因?yàn)樗麄儗?duì)自己的知識(shí)和技術(shù)沒有自信,也許是他們對(duì)這個(gè)行業(yè)和職業(yè)不熟悉,所以,他們害怕在團(tuán)隊(duì)中表現(xiàn),害怕與別人交流。程序員經(jīng)常靦腆的一天都不說一句話,這簡直是對(duì)軟件工廠和軟件開發(fā)的一個(gè)誣蔑,試想一個(gè)足球隊(duì)中的隊(duì)員相互之間不配合和傳球,是不是對(duì)足球
20、這個(gè)運(yùn)動(dòng)的一個(gè)誣蔑。我真有想法,拿鞭子抽打這些不說話的程序員,直到他們學(xué)會(huì)與其它人溝通,直到他們與其他人配合默契。42 軟件質(zhì)量的價(jià)值觀念模糊質(zhì)量意識(shí),應(yīng)該是這樣一個(gè)意識(shí),1/3時(shí)間來做東西,2/3時(shí)間來做檢查?,F(xiàn)在是商品社會(huì),技術(shù)不再是一個(gè)問題,而質(zhì)量確實(shí)很難滿足,所以,我們要求程序員改變開發(fā)軟件的思想,1/3時(shí)間編碼,2/3做檢驗(yàn),我們管理者,要以成功率來考核程序員,而不要以完成時(shí)間來考核,我們管理者要安排足夠的時(shí)間來做檢驗(yàn),而不要以項(xiàng)目必須交付為理由,逼迫程序員僅僅交付代碼而忽視質(zhì)量。43開發(fā)流程意識(shí)缺乏開發(fā)流程,似乎對(duì)于很多程序員來說比較陌生,尤其是沒有經(jīng)過專業(yè)教育和訓(xùn)練的人來說,轉(zhuǎn)行
21、做程序員,很難理解開發(fā)流程是個(gè)什么東西,為什么要有它。44時(shí)間管理能力比較低程序員的效率很難衡量,時(shí)間是程序員的資源,每天8小時(shí),是有限的,要想知道程序員的效率,就要知道他們每刻都在干什么?45 缺少必要的信心和激情也許你會(huì)發(fā)現(xiàn)周圍的一些同事僅僅是為了薪水而工作,在執(zhí)行工作的時(shí)候即使發(fā)現(xiàn)了上層領(lǐng)導(dǎo)忽略的問題依然照糊 涂畫瓢也不反饋問題所在,即便他是個(gè)天才,但成功不會(huì)屬于他的,因?yàn)槌晒Υ骨嘤谟屑で榈娜瞬?,其?shí)這些同事并不是一開始就缺少激情的,原因也許是失去了信 心,而暫時(shí)做糊涂人而已,無論如何,缺少信心和激情的團(tuán)隊(duì),只會(huì)是一盤散沙。46相互的合作并不協(xié)調(diào)在一個(gè)開發(fā)團(tuán)隊(duì)中偶爾有部分人不愿意與整個(gè)團(tuán)
22、隊(duì)合作,也許是這些人性格比較保守,也許是有某些不平衡的心態(tài),也許是他們還沒有明白目標(biāo)是什么,也許他們并沒有體驗(yàn)到團(tuán)隊(duì)開發(fā)成功的快樂。不管怎樣,這種情況的出現(xiàn)必然影響融洽的交流環(huán)境。47無效的內(nèi)耗占據(jù)了開發(fā)過程的主體也許是一些良的傳統(tǒng)觀念和思想的沿襲,一些軟件開發(fā)團(tuán)隊(duì)出現(xiàn)了排擠其它有異議的成員、推卸責(zé)任、相互指責(zé)、貪功等,這種情況是最壞的,但卻事實(shí)存在。沒有凝聚力的團(tuán)隊(duì)是不可能做得很好的。48 模糊不清的角色職責(zé)定義軟件開發(fā)是由不同角色的成員共同協(xié)作完成的,但目前國內(nèi)的一些開發(fā)團(tuán)隊(duì)卻沒有對(duì)各種角色成員的職責(zé)做出明 確的定義,成員就無法明確知道自己的目標(biāo),很簡單的道理,都不知道要做的是什么,能按時(shí)
23、準(zhǔn)確的完成嗎?如果每人都按自己想象中的職責(zé)去工作,那么有多少工 作沖突、多少遺漏,誰能給出正確的估計(jì)?沒有明確的職責(zé)定義人力資源的安排可能合理嗎?結(jié)果可能是找了個(gè)資格較老的程序員做了項(xiàng)目經(jīng)理,找了個(gè)沒有理會(huì)對(duì) 象概念的人去做面向?qū)ο蟮南到y(tǒng)分析,找個(gè)不顧網(wǎng)絡(luò)安全、網(wǎng)絡(luò)流量、事務(wù)特性、運(yùn)行費(fèi)用的人去設(shè)計(jì)一個(gè)分布式系統(tǒng).有才華的人也許只能跺在被窩里激呼懷 才不遇或許能做個(gè)美夢安慰自己。5軟件開發(fā)存在主要問題的分析做為項(xiàng)目經(jīng)理,要經(jīng)常組織大家開會(huì),讓大家充分溝通,項(xiàng)目經(jīng)理設(shè)法要讓團(tuán)隊(duì)成員對(duì)某一個(gè)問題的認(rèn)識(shí),高度一致,記得老董培訓(xùn)我時(shí),要求的是每個(gè)項(xiàng)目組成員,在描述某個(gè)問題時(shí),說出來的話,應(yīng)該一字不差,
24、那是何等的嚴(yán)格的要求,我現(xiàn)在的團(tuán)隊(duì)在素質(zhì)上比當(dāng)時(shí)的團(tuán)隊(duì)要低一些,但是,我覺得也應(yīng)該高要求,嚴(yán)格要求,尤其對(duì)項(xiàng)目經(jīng)理要嚴(yán)格要求。應(yīng)該保持團(tuán)隊(duì)成員之間,對(duì)項(xiàng)目計(jì)劃、進(jìn)度、分工、質(zhì)量,有高度的認(rèn)識(shí)統(tǒng)一,必須,描述非常一致,不能有不同的理解。 項(xiàng)目經(jīng)理還有一個(gè)職責(zé),就是要宣講團(tuán)隊(duì)的開發(fā)流程以及團(tuán)隊(duì)文化,項(xiàng)目組的成員,在具體工作中,經(jīng)常會(huì)迷失在細(xì)節(jié)工作中,而不會(huì)關(guān)注開發(fā)流程,也會(huì)疏忽團(tuán)隊(duì)問題,項(xiàng)目經(jīng)理應(yīng)該象中國軍隊(duì)的指導(dǎo)員一樣,確保團(tuán)隊(duì)成員,對(duì)開發(fā)流程的信心以及嚴(yán)格的遵守,潛意識(shí)中的遵守,對(duì)團(tuán)隊(duì)文化高度的認(rèn)同,這就要求項(xiàng)目經(jīng)理非常善于演講,或者非常具有個(gè)人魅力。國內(nèi)的項(xiàng)目經(jīng)理很多都是技術(shù)出身,以不善言辭
25、為自豪,或者擋箭牌,其實(shí),他們會(huì)很有損于團(tuán)隊(duì)的高效率以及團(tuán)隊(duì)的文化。 程序員很多人都沒有自信,也許是因?yàn)樗麄儗?duì)自己的知識(shí)和技術(shù)沒有自信,也許是他們對(duì)這個(gè)行業(yè)和職業(yè)不熟悉,所以,他們害怕在團(tuán)隊(duì)中表現(xiàn),害怕與別人交流。程序員經(jīng)常靦腆的一天都不說一句話,這簡直是對(duì)軟件工廠和軟件開發(fā)的一個(gè)誣蔑,試想一個(gè)足球隊(duì)中的隊(duì)員相互之間不配合和傳球,是不是對(duì)足球這個(gè)運(yùn)動(dòng)的一個(gè)誣蔑。我真有想法,拿鞭子抽打這些不說話的程序員,直到他們學(xué)會(huì)與其它人溝通,直到他們與其他人配合默契。 程序員經(jīng)驗(yàn)很重要,但是,工作方式的掌握更重要。 程序員首先要對(duì)工作做好分析工作,不要急著開工,要預(yù)估一下可能出現(xiàn)的問題,根據(jù)經(jīng)驗(yàn),提出問題,
26、很多程序員,這點(diǎn)就很差,接到任務(wù)后很少分析,認(rèn)為領(lǐng)導(dǎo)給的任務(wù),一定沒問題,即便有問題也得按照要求完成,所以,沒必要提問題,提了也沒用,而且會(huì)得到的是批評(píng)和置疑,還不如不問。 程序員對(duì)于工作中遇到的問題,經(jīng)常是自己假想一種解決方案,經(jīng)常會(huì)說:我想、我以為、我覺得,這些話簡直讓項(xiàng)目經(jīng)理覺得他是不是沒有腦子,怎么可以“我以為”、“我想”、“我覺得”呢?耽誤自己的時(shí)間,換耽誤大家的時(shí)間,以及企業(yè)的資產(chǎn)。很多程序員做程序經(jīng)常是個(gè)人英雄主義,光想著自己怎么完成,而不想團(tuán)隊(duì)或者項(xiàng)目,這點(diǎn)意識(shí),要扭轉(zhuǎn)過來,太難了,不過不轉(zhuǎn)變,項(xiàng)目開發(fā)遲早都會(huì)失敗。 所以只能溝通講解,告訴為什么不能每個(gè)人分一個(gè)模塊做,怎樣降低
27、人員流失的風(fēng)險(xiǎn),怎樣防止一個(gè)人做一個(gè)模塊,由于個(gè)人能力的不足或缺陷,導(dǎo)致該模塊的失敗,從而導(dǎo)致整個(gè)項(xiàng)目的失敗。 只能通過講解,讓每個(gè)程序員知道,開發(fā)流程是如何幫助我們整個(gè)項(xiàng)目保證進(jìn)度和質(zhì)量的,開發(fā)流程是怎樣保證我們的工作沒有疏漏,開發(fā)流程是怎樣讓我們的工作井然有序,開發(fā)流程怎樣讓一個(gè)復(fù)雜的軟件一步步實(shí)現(xiàn),開發(fā)流程怎樣實(shí)現(xiàn)幾十個(gè)人系統(tǒng)工作,而不出漏洞。6,軟件開發(fā)人力計(jì)劃最佳方案探討 61 團(tuán)隊(duì)開發(fā)的人員分配和薪水界定首先,每個(gè)項(xiàng)目小組的人數(shù)不能太多,否則組員之間彼此通信將占用大量的時(shí)間。此外,通常我們不能把一個(gè)子系統(tǒng)劃分成大量獨(dú)立的單元模塊,如果項(xiàng)目小組人數(shù)太多,則每個(gè)組員所負(fù)責(zé)實(shí)現(xiàn)的單元模塊
28、與其他成員的接口將更復(fù)雜,不僅出現(xiàn)接口錯(cuò)誤的可能性增加,而且系統(tǒng)測試也會(huì)變得既困難又費(fèi)時(shí)。一般說來,每個(gè)項(xiàng)目小組的規(guī)模應(yīng)該比較小,以29名成員為宜。如果項(xiàng)目屬于中小型規(guī)模且建設(shè)時(shí)間在一年以內(nèi),那么項(xiàng)目小組可以采用工作包負(fù)責(zé)人制。工作包負(fù)責(zé)人既負(fù)責(zé)該工作包的日常管理工作,同時(shí)又是該工作包的技術(shù)負(fù)責(zé)人,在其他成員中再挑選一位為助理,協(xié)助工作包負(fù)責(zé)人做好各方面的工作。如果項(xiàng)目屬于大中型規(guī)模,建設(shè)時(shí)間在一年以上,那么就必須考慮項(xiàng)目建設(shè)人員因各種原因發(fā)生變動(dòng)的情況。這時(shí),項(xiàng)目小組具體構(gòu)成最好如圖1所示。這里的系統(tǒng)開發(fā)人員既可以是程序員,也可以是測試員。采用這種按技術(shù)水平分層的構(gòu)成模式主要基于兩點(diǎn)考慮:第
29、一,信息系統(tǒng)建設(shè)中既有創(chuàng)造性很強(qiáng)的事務(wù),也有經(jīng)驗(yàn)性很強(qiáng)的事務(wù)和照葫蘆畫瓢的簡單性事務(wù),如果所有活動(dòng)都讓高級(jí)人員去完成,則導(dǎo)致成本上升,造成人力資源的浪費(fèi),還會(huì)引起高級(jí)人員的不滿;第二,由于項(xiàng)目建設(shè)時(shí)間太長,容易發(fā)生人員更替,并且由于信息系統(tǒng)開發(fā)技術(shù)主要靠“干中學(xué)”,中級(jí)和初級(jí)開發(fā)人員在系統(tǒng)建設(shè)過程中會(huì)成長起來,如果一旦發(fā)生上一層次人員變動(dòng),下層人員由于一直參與項(xiàng)目的研發(fā),基本上可以“無縫”地接手工作。 如果項(xiàng)目小組成員不發(fā)生人員更替,則項(xiàng)目小組的整體素質(zhì)將隨時(shí)間的推移而提高,從而使項(xiàng)目的進(jìn)度加快。一般來說,初、中、高級(jí)人員最初的薪水可以按類似3710的比例定位。當(dāng)然,隨著初中級(jí)人員技術(shù)水平的提
30、高,他們的薪水也應(yīng)該不斷提高,因?yàn)樗麄冊谕瑯訒r(shí)間內(nèi)可以完成更多、更復(fù)雜的工作。62 營造高效軟件開發(fā)團(tuán)隊(duì) 高效軟件開發(fā)團(tuán)隊(duì)的特征高效的軟件開發(fā)團(tuán)隊(duì)是建立在合理的開發(fā)流程及團(tuán)隊(duì)成員密切的合作的基礎(chǔ)之上的,成員共同的迎接挑戰(zhàn)、有效的計(jì)劃、協(xié)調(diào)和管理各自的工作以至完成明確的目標(biāo),高效的開發(fā)團(tuán)隊(duì)具有如下特征:6.2.1 具有明確且有挑戰(zhàn)性的共同目標(biāo)一個(gè)具有明確的而且有挑戰(zhàn)性目標(biāo)的團(tuán)隊(duì)比目標(biāo)不明確或不具有很大的挑戰(zhàn)性目標(biāo)的團(tuán)隊(duì)效率高得多,通常技術(shù)人員往往會(huì)因?yàn)橥瓿闪四硞€(gè)明確的任務(wù),而且這個(gè) 任務(wù)的完成具有挑戰(zhàn)性的意義而感到自豪,反過來團(tuán)隊(duì)成員為了獲取這種自豪的感覺而更加積極的工作從而帶來團(tuán)隊(duì)開發(fā)的高效率
31、,如作為系統(tǒng)設(shè)計(jì)人員很清楚的知 道在什么時(shí)候要做到什么,什么時(shí)候開始做,什么時(shí)候必須完成,為了完成工作必須面臨哪些挑戰(zhàn),怎么解決這些困難等為設(shè)計(jì)出一個(gè)高質(zhì)量的軟件項(xiàng)目提供了重要 保證,而模模糊糊的去設(shè)計(jì)一個(gè)系統(tǒng)或模模糊糊的就去編寫代碼是非常危險(xiǎn)的,而且會(huì)為此付出高昂代價(jià),因此高效的軟件開發(fā)團(tuán)隊(duì)具有挑戰(zhàn)性的共同目標(biāo)。6.2.2 團(tuán)隊(duì)具有很強(qiáng)的凝聚力在一個(gè)高效的軟件開發(fā)團(tuán)隊(duì)中,成員們凝聚為一個(gè)整體共同進(jìn)行工作,他們是相互支持、互相交流、互相尊重的, 而不是相互推卸責(zé)任、保守、相互指責(zé)的,在一些散亂的開發(fā)團(tuán)隊(duì)中往往存在這樣的問題,一些程序員是比較保守的,明明知道另外的模塊中需要用到一段與自己已 經(jīng)編
32、寫完成但有些難度的程序代碼,他也不愿拿出來給其它程序員共享,不愿與系統(tǒng)設(shè)計(jì)人員交流,這樣給項(xiàng)目的進(jìn)度造成了些不可度量的因素。6.2.3具有融洽的交流環(huán)境在一個(gè)開發(fā)團(tuán)隊(duì)中,每個(gè)人行使自己的職責(zé),如需求分析人員制定需求規(guī)格說明、系統(tǒng)設(shè)計(jì)人員做系統(tǒng)概要設(shè)計(jì)和詳 細(xì)設(shè)計(jì)、項(xiàng)目經(jīng)理配置項(xiàng)目開發(fā)環(huán)境并且制定項(xiàng)目計(jì)劃等,但每個(gè)人的工作不可能做到完美的,如系統(tǒng)概要設(shè)計(jì)的文檔可能有個(gè)別地方詞不達(dá)意,做詳細(xì)設(shè)計(jì)的時(shí)候 就可能會(huì)造成誤解,項(xiàng)目經(jīng)理制定計(jì)劃時(shí)可能忽略了某種風(fēng)險(xiǎn)的存在而造成執(zhí)行者過于緊張的壓力等等情況都需要大家通過交流、反饋的手段然后協(xié)商解決的,因此 高效的軟件開發(fā)團(tuán)隊(duì)是具有融洽的交流環(huán)境的,而不是那種
33、簡單的命令執(zhí)行式的。6.2.4 具有共同的工作規(guī)范和框架高效軟件開發(fā)團(tuán)隊(duì)具有規(guī)范性及共同框架的工作,對(duì)于項(xiàng)目管理具有規(guī)范的項(xiàng)目開發(fā)計(jì)劃,對(duì)于分析設(shè)計(jì)具有 規(guī)范和統(tǒng)一框架的文檔及審評(píng)標(biāo)準(zhǔn),對(duì)于代碼具有程序規(guī)范條例,對(duì)于測試有規(guī)范且可推理的測試計(jì)劃及測試報(bào)告等等。并且所有成員都明白自己的職責(zé),知道必須 完成什么計(jì)劃?由誰來完成?什么時(shí)候開始?什么時(shí)候結(jié)束?按什么順序?等,總之一個(gè)高效的開發(fā)團(tuán)隊(duì)無論是工作內(nèi)容還是工作流程都具有不同程度的規(guī)范性和標(biāo) 準(zhǔn)風(fēng)格的框架。6.2.5采用合理的開發(fā)過程軟件的開發(fā)不同于一般商品的研發(fā)和生產(chǎn),開發(fā)過程中會(huì)面臨著各種難以預(yù)測的風(fēng)險(xiǎn),比如需求的變化、人員的異 動(dòng)、技術(shù)的
34、瓶頸、同行的競爭等,高效的軟件開發(fā)團(tuán)隊(duì)往往是采用了合理的開發(fā)過程去控制開發(fā)過程中的風(fēng)險(xiǎn)、提高軟件的質(zhì)量、降低開發(fā)費(fèi)用,這樣的團(tuán)隊(duì)會(huì)根據(jù) 自身的必要程度決定要執(zhí)行哪些工作?如配置管理、資源管理、版本控制、代碼控制等,團(tuán)隊(duì)還合理的分劃并定義開發(fā)過程的里程碑,決定每項(xiàng)活動(dòng)內(nèi)容的底線和審 評(píng)標(biāo)準(zhǔn),決定各項(xiàng)活動(dòng)的先后關(guān)系或迭代的關(guān)系等??傊咝У能浖_發(fā)團(tuán)隊(duì)的開發(fā)過程的原則是高效率、高質(zhì)量、低成本。6.3項(xiàng)目時(shí)間管理項(xiàng)目時(shí)間管理主要有計(jì)劃、安排進(jìn)度、進(jìn)度控制幾個(gè)階段。6.3.1項(xiàng)目計(jì)劃將項(xiàng)目工作分解為更小、更易管理的工作包也叫活動(dòng)或任務(wù),這些小的活動(dòng)應(yīng)該是能夠保障完成交付產(chǎn)品的可實(shí)施的詳細(xì)任務(wù)。在項(xiàng)目實(shí)
35、施中,要將所有活動(dòng)列成一個(gè)明確的活動(dòng)清單,并且讓項(xiàng)目團(tuán)隊(duì)的每一個(gè)成員能夠清楚有多少工作需要處理?;顒?dòng)清單應(yīng)該采取文檔形式,以便于項(xiàng)目其他過程的使用和管理。當(dāng)然,隨著項(xiàng)目活動(dòng)分解的深入和細(xì)化,工作分解結(jié)構(gòu)可能會(huì)需要修改,這也會(huì)影響項(xiàng)目的其他部分。例如成本估算,在更詳盡地考慮了活動(dòng)后,成本可能會(huì)有所增加,因此完成活動(dòng)定義后,要更新項(xiàng)目工作分解結(jié)構(gòu)上的內(nèi)容。6.3.2安排進(jìn)度表項(xiàng)目的進(jìn)度計(jì)劃意味著明確定義項(xiàng)目活動(dòng)的開始和結(jié)束日期,這是一個(gè)反復(fù)確認(rèn)的過程。進(jìn)度表的確定應(yīng)根據(jù)項(xiàng)目網(wǎng)絡(luò)圖、估算的活動(dòng)工期、資源需求、資源共享情況、項(xiàng)目執(zhí)行的工作日歷、進(jìn)度限制、最早和最晚時(shí)間、風(fēng)險(xiǎn)管理計(jì)劃、活動(dòng)特征等統(tǒng)一考慮
36、。進(jìn)度限制即根據(jù)活動(dòng)排序考慮如何定義活動(dòng)之間的進(jìn)度關(guān)系。一般有兩種形式:一種是加強(qiáng)日期形式,以活動(dòng)之間前后關(guān)系限制活動(dòng)的進(jìn)度,如一項(xiàng)活動(dòng)不早于某活動(dòng)的開始或不晚于某活動(dòng)的結(jié)束;另一種是關(guān)鍵事件或主要里程碑形式,以定義為里程碑的事件作為要求的時(shí)間進(jìn)度的決定性因素,制定相應(yīng)時(shí)間計(jì)劃。在制定項(xiàng)目進(jìn)度表時(shí),先以數(shù)學(xué)分析的方法計(jì)算每個(gè)活動(dòng)最早開始和結(jié)束時(shí)間與最遲開始和結(jié)束日期得出時(shí)間進(jìn)度網(wǎng)絡(luò)圖,再通過資源因素、活動(dòng)時(shí)間和可冗余因素調(diào)整活動(dòng)時(shí)間,最終形成最佳活動(dòng)進(jìn)度表。6.3.3進(jìn)度控制進(jìn)度控制主要是監(jiān)督進(jìn)度的執(zhí)行狀況,及時(shí)發(fā)現(xiàn)和糾正偏差、錯(cuò)誤。在控制中要考慮影響項(xiàng)目進(jìn)度變化的因素、項(xiàng)目進(jìn)度變更對(duì)其他部分
37、的影響因素、進(jìn)度表變更時(shí)應(yīng)采取的實(shí)際措施。時(shí)間管理的原則首先要把待辦工作分為四種:緊急重要的工作;重要不緊急的工作;緊急不重要的工作;不緊急不重要的工作;處理事情要按照上面的順序,首先保證緊急并重要的工作得到處理,其次是重要不緊急的工作,后面才是緊急不重要的工作,不緊急不重要的工作可以不要分配時(shí)間去處理。這樣才能有最佳的效能。6.3.4項(xiàng)目進(jìn)度計(jì)劃的表示方法項(xiàng)目進(jìn)度計(jì)劃可以用摘要、詳細(xì)說明、表格或圖表等多種方式表示,其中較為直觀、清晰的圖表方式有:網(wǎng)絡(luò)圖:既表示了項(xiàng)目活動(dòng)依賴關(guān)系,又表示處在關(guān)鍵線路上的活動(dòng)。甘特圖:用具有時(shí)間刻度的條形圖表示每一項(xiàng)活動(dòng)的時(shí)間信息,又稱為橫道圖。里程碑圖:與甘特
38、圖類似,標(biāo)識(shí)項(xiàng)目計(jì)劃的特殊事件或關(guān)鍵點(diǎn)。7.1 赫夫型開發(fā) 從樹中的一個(gè)結(jié)點(diǎn)到另一個(gè)結(jié)點(diǎn)之間的分支構(gòu)成這兩個(gè)結(jié)點(diǎn)之間的路徑,路徑上的分支數(shù)目稱做路徑長度。樹的路徑長度是從樹根到每一結(jié)點(diǎn)的路徑長度之和。得到最短的權(quán)值路徑就是最佳的方案。 公式 如下圖所示:總項(xiàng)目 7(所派人數(shù))具體一般項(xiàng)目具體 具體具體一般項(xiàng)目 5 2 4計(jì)算上圖的路徑長度:WPL=71+52+23+43=35 (最短的路徑長度)總項(xiàng)目是指軟件總的計(jì)劃和安排,有一個(gè)或幾個(gè)人組成團(tuán)隊(duì)進(jìn)行總調(diào)度。然后再把總項(xiàng)目分成兩個(gè)部分,每次向下分都是分為兩個(gè)部分,而這個(gè)兩個(gè)部分完工后直接對(duì)他的上部負(fù)責(zé),這樣一直分到具體某個(gè)開發(fā)功能和模塊。讓具有
39、相同專業(yè)不同方向的人進(jìn)行工作和安排。這樣的模式可以極大程度地提高工作效率,縮短開發(fā)的時(shí)間,減少開發(fā)成本。通過運(yùn)用上述算法對(duì)軟件開發(fā)的人力計(jì)劃的最佳安排(權(quán)值)進(jìn)行求解得到最小的那個(gè)權(quán)值時(shí),那個(gè)最小權(quán)值的路徑就是最佳的人力計(jì)劃的方案。(附上算法)72人員進(jìn)度權(quán)衡定律著名學(xué)者Putnam在估算軟件開發(fā)工作量時(shí)得出公式:E=L3(C3Rt4d),其中E表示工作量,L表示源代碼行數(shù),Ck表示技術(shù)狀態(tài)常數(shù),td表示開發(fā)時(shí)間.在這里,工作量的單位是人年,進(jìn)度的單位是年.從公式中可知,軟件開發(fā)項(xiàng)目的工作量(E)與交付時(shí)間(td)的4次方成反比,Putnam將這一結(jié)論稱為軟件開發(fā)的權(quán)衡定律.這個(gè)定律從數(shù)學(xué)角度
40、給出軟件開發(fā)人力計(jì)劃尋求最佳方案給予了量化的描述。73 Brooks定律曾擔(dān)任IBM公司操作系統(tǒng)項(xiàng)目經(jīng)理的F.Brooks,從大量的軟件開發(fā)實(shí)踐中得出了另一條結(jié)論:“向一個(gè)已經(jīng)拖延的項(xiàng)目追加開發(fā)人員,可能使它完成得更晚”。鑒于這一發(fā)現(xiàn)的重要性,許多文獻(xiàn)稱之為Brooks定律。這里,Brooks從另一個(gè)角度說明了“時(shí)間與人員不能線性互換”這一原則。對(duì)7.2和7.3兩個(gè)定律的合理解釋是,當(dāng)開發(fā)人員以算術(shù)級(jí)數(shù)增長時(shí),人員之間的通信將以幾何級(jí)數(shù)增長,從而可能導(dǎo)致“得不償失”的結(jié)果。一般說來,由N個(gè)開發(fā)人員組成的小組要完成既定的工作,相互之間的通信路徑總數(shù)為C2N=N(N-1)/2,而通信是需要時(shí)間的。所以,當(dāng)新的開發(fā)人員加入項(xiàng)目組之后,原有的開發(fā)人員必須向新來的成員詳細(xì)講解某個(gè)活動(dòng)或工作包的來龍去脈。由于信息系統(tǒng)開發(fā)具有較強(qiáng)的個(gè)人風(fēng)格,所以交流溝通的時(shí)間更容易拉長,而后來者還不一定能達(dá)到原來開發(fā)人員的工作質(zhì)量。7.4 用做人力計(jì)劃的Rayleigh-Norden曲線圖1是IS項(xiàng)目不同開發(fā)階段的人力分配經(jīng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 型式檢驗(yàn)報(bào)告制度規(guī)范
- 學(xué)校部門工作制度規(guī)范
- 大宗建材采購規(guī)范制度
- 老干活動(dòng)室規(guī)范管理制度
- 客房巡房制度規(guī)范標(biāo)準(zhǔn)
- 售后加班制度規(guī)范要求
- 紙管廠計(jì)件制度規(guī)范標(biāo)準(zhǔn)
- 社工站規(guī)范信息報(bào)送制度
- 2025年國有企業(yè)招聘自查自糾通知范文
- 規(guī)范合同與合同管理制度
- 外研版小學(xué)英語(三起點(diǎn))六年級(jí)上冊期末測試題及答案(共3套)
- 林場副場長述職報(bào)告
- 24秋國家開放大學(xué)《計(jì)算機(jī)系統(tǒng)與維護(hù)》實(shí)驗(yàn)1-13參考答案
- 紙樣師傅工作總結(jié)
- 浪漫主義與民族主義
- 肝硬化腹水診療指南(2023版)解讀
- 貴州玄德生物科技股份有限公司年產(chǎn)5000噸生態(tài)特色食品(4500L超臨界CO2流體萃取)精深加工生產(chǎn)線建設(shè)項(xiàng)目環(huán)境影響報(bào)告
- 2022版初中物理課程標(biāo)準(zhǔn)測試題庫(有答案)(物理新課程標(biāo)準(zhǔn)試題教師資格考試教師招聘考試試卷)
- 高二學(xué)業(yè)水平測試-地理復(fù)習(xí)提綱分解
- GB/T 36255-2018建筑施工機(jī)械與設(shè)備混凝土噴射機(jī)械術(shù)語和商業(yè)規(guī)格
- GB 7000.213-2008燈具第2-13部分:特殊要求地面嵌入式燈具
評(píng)論
0/150
提交評(píng)論