軟件項目管理綜述_第1頁
軟件項目管理綜述_第2頁
軟件項目管理綜述_第3頁
軟件項目管理綜述_第4頁
軟件項目管理綜述_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、軟件工程治理綜述1 .引言隨著信息技術(shù)的飛速開展,軟件產(chǎn)品的規(guī)模也越來越龐大,個人單打獨斗的作坊式開發(fā)方式已經(jīng)越來越不適應(yīng)開展的需要.各軟件企業(yè)都在積極將軟件工程治理引入開發(fā)活動中,對開發(fā)實行有效的治理.以四JI托普軟件公司為例,該公司是成都一家中型軟件企業(yè),在公司中已經(jīng)實行了工程治理制度,軟件工程治理是整個工程治理中的一個重要組成局部.從概念上講,軟件工程治理是為了使軟件工程能夠根據(jù)預定的本錢、進度、質(zhì)量順利完成,而對本錢、人員、進度、質(zhì)量、風險等進行分析和治理的活動.實際上,軟件工程治理的意義不僅僅如此,進行軟件工程治理有利于將開發(fā)人員的個人開發(fā)水平轉(zhuǎn)化成企業(yè)的開發(fā)水平,企業(yè)的軟件開發(fā)水平

2、越高,說明這個企業(yè)的軟件生產(chǎn)越趨向于成熟,企業(yè)越能夠穩(wěn)定開展即減小開發(fā)風險.軟件開發(fā)不同于其他產(chǎn)品的制造,軟件的整個過程都是設(shè)計過程沒有制造過程;另外,軟件開發(fā)不需要使用大量的物質(zhì)資源,而主要是人力資源;并且,軟件開發(fā)的產(chǎn)品只是程序代碼和技術(shù)文件,并沒有其他的物質(zhì)結(jié)果.基于上述特點,軟件工程治理與其他工程治理相比,有很大的特殊性.2 .什么是軟件工程治理軟件工程治理是為了使軟件工程能夠根據(jù)預定的本錢、進度、質(zhì)量順利完成,而對本錢、人員、進度、質(zhì)量、風險等進行分析和治理的活動.軟件工程治理的根本目的是為了讓軟件工程尤其是大型工程的整個軟件生命周期從分析、設(shè)計、編碼到測試、維護全過程都能在管理者的

3、限制之下,以預定本錢按期,按質(zhì)的完成軟件交付用戶使用.而研究軟件工程治理為了從已有的成功或失敗的案例中總結(jié)出能夠指導今后開發(fā)的通用原那么,方法,同時預防前人的失誤.軟件工程治理的提出是在20世紀70年代中期的美國,當時美國國防部專門研究了軟件開發(fā)不能按時提交,預算超支和質(zhì)量達不到用戶要求的原因,結(jié)果發(fā)現(xiàn)70%勺工程是由于治理不善引起的,而非技術(shù)原因.于是軟件開發(fā)者開始逐漸重視起軟件開發(fā)中的各項治理.到了20世紀90年代中期,軟件研發(fā)工程治理不善的問題仍然存在.據(jù)美國軟件工程實施現(xiàn)狀的調(diào)查,軟件研發(fā)的情況仍然很難預測,大約只有10%的工程能夠在預定的費用和進度下交付.1995年,據(jù)統(tǒng)計,美國共取

4、消了810億美元的商業(yè)軟件工程,其中31%的工程未做完就被取消,53%的軟件工程進度通常要延長50%勺時間,只有9%的軟件工程能夠及時交付并且費用也限制在預算之內(nèi).軟件工程治理和其他的工程治理相比有相當?shù)奶厥庑?首先,軟件是純知識產(chǎn)品,其開發(fā)進度和質(zhì)量很難估計和度量,生產(chǎn)效率也難以預測和保證.其次,軟件系統(tǒng)的復雜性也導致了開發(fā)過程中各種風險的難以預見和限制.Windows這樣的操作系統(tǒng)有1500萬行以上的代碼,同時有數(shù)千個程序員在進行開發(fā),工程經(jīng)理都有上百個.這樣龐大的系統(tǒng)如果沒有很好的治理,具軟件質(zhì)量是難以想象的.軟件工程治理的內(nèi)容主要包括如下幾個方面:人員的組織與治理,軟件度量,軟件工程方

5、案,風險治理,軟件質(zhì)量保證,軟件過程水平評估,軟件配置治理等.這幾個方面都是貫穿、交織于整個軟件開發(fā)過程中的,其中人員的組織與治理把注意力集中在工程組人員的構(gòu)成、優(yōu)化;軟件度量把關(guān)注用量化的方法評測軟件開發(fā)中的費用、生產(chǎn)率、進度和產(chǎn)品質(zhì)量等要素是否符合期望值,包括過程度量和產(chǎn)品度量兩個方面;軟件工程計劃主要包括工作量、本錢、開發(fā)時間的估計,并根據(jù)估計值制定和調(diào)整工程組的工作;風險治理預測未來可能出現(xiàn)的各種危害到軟件產(chǎn)品質(zhì)量的潛在因素并由此采取舉措進行預防;質(zhì)量保證是保證產(chǎn)品和服務(wù)充分滿足消費者要求的質(zhì)量而進行的有方案,有組織的活動;軟件過程水平評估是對軟件開發(fā)水平的上下進行衡量;軟件配置治理針

6、對開發(fā)過程中人員、工具的配置、使用提出治理策略.由于大家對人力資源治理和軟件過程水平比擬有興趣,下面就詳細的對這兩方面展開討論.三、軟件工程治理的組織模式軟件工程可以是一個單獨的開發(fā)工程,也可以與產(chǎn)品工程組成一個完整的軟件產(chǎn)品工程.如果是訂單開發(fā),那么成立軟件工程組即可;如果是產(chǎn)品開發(fā),需成立軟件工程組和產(chǎn)品工程(負責市場調(diào)研和銷售)組成軟件產(chǎn)品工程組.公司實行工程治理時,首先要成立工程治理委員會,工程治理委員會下設(shè)工程治理小組、工程評審小組和軟件產(chǎn)品工程組.3.1、 工程治理委員會工程治理委員會是公司工程治理的最高決策機構(gòu),一般由公司總經(jīng)理、副總經(jīng)理組成.主要責任如下:(1)依照工程治理相關(guān)

7、制度治理工程;(2)監(jiān)督工程治理相關(guān)制度的執(zhí)行;(3)對工程立項、工程撤消進行決策;(4)任命工程治理小組組長、工程評審委員會主任、工程組組長.3.2、 工程治理小組工程治理小組對工程治理委員會負責,一般由公司治理人員組成.主要責任如下:(1)草擬工程治理的各項制度;(2)組織工程階段評審;(3)保存工程過程中的相關(guān)文件和數(shù)據(jù);(4)為優(yōu)化工程治理提出建議.3.3、 工程評審小組工程評審小組對工程治理委員會負責,可下設(shè)開發(fā)評審小組和產(chǎn)品評審小組,一般由公司技術(shù)專家和市場專家組成.主要責任如下:(1)對工程可行性報告進行評審;(2)對市場方案和階段報告進行評審;(3)對開發(fā)方案和階段報告進行評審

8、;(4)工程結(jié)束時,對工程總結(jié)報告進行評審.3.4、 軟件產(chǎn)品工程組軟件產(chǎn)品工程組對工程治理委員會負責,可下設(shè)軟件工程組和產(chǎn)品工程組.軟件工程組和產(chǎn)品工程組分別設(shè)開發(fā)經(jīng)理和產(chǎn)品經(jīng)理.成員一般由公司技術(shù)人員和市場人員構(gòu)成.主要責任是:根據(jù)工程治理委員會的安排具體負責工程的軟件開發(fā)和市場調(diào)研及銷售工作.四、軟件工程治理的內(nèi)容從軟件工程的角度講,軟件開發(fā)主要分為六個階段:需求分析階段、概要設(shè)計階段、詳細設(shè)計階段、編碼階段、測試階段、安裝及維護階段.不管是作坊式開發(fā),還是團隊協(xié)作開發(fā),這六個階段都是不可缺少的.根據(jù)公司實際情況,公司在進行軟件工程治理時,重點將軟件配置治理、工程跟蹤和限制治理、軟件風險

9、治理及工程籌劃活動治理四方面內(nèi)容導入軟件開發(fā)的整個階段.在20世紀80年代初,著名軟件工程專家B.W.Boehm總結(jié)出了軟件開發(fā)時需遵循的七條根本原那么,同樣,在進行軟件工程治理時,也應(yīng)該遵循這七條原那么.它們是:(1)用分階段的生命周期方案嚴格治理;(2)堅持進行階段評審;(3)實行嚴格的產(chǎn)品限制;(4)采用現(xiàn)代程序設(shè)計技術(shù);(5)結(jié)果應(yīng)能夠清楚地審查;(6)開發(fā)小組地人員應(yīng)該少而精;(7)成認不斷改良軟件工程實踐的必要性.五、編寫?軟件工程方案書?工程組成立的第一件事是編寫?軟件工程方案書?,在方案書中描述開發(fā)日程安排、資源需求、工程治理等各項情況的大體內(nèi)容.方案書主要向公司各相關(guān)人員發(fā)放

10、,使他們大體了解該軟件工程的情況.對于方案書的每個內(nèi)容,都應(yīng)有相應(yīng)具體實施手冊,這些手冊是供工程組相關(guān)成員使用的.六、軟件配置治理是否進行配置治理與軟件的規(guī)模有關(guān),軟件的規(guī)模越大,配置治理就顯得越重要.軟件配置治理簡稱SCM(SoftwareConfigurationManagement的縮寫),是在團隊開發(fā)中,標識、限制和治理軟件變更的一種治理.配置治理的使用取決于工程規(guī)模和復雜性以及風險水平.6.1、 目前軟件開發(fā)中面臨的問題:在有限的時間、資金內(nèi),要滿足不斷增長的軟件產(chǎn)品質(zhì)量要求;開發(fā)的環(huán)境日益復雜,代碼共享日益困難,需跨越的平臺增多;程序的規(guī)模越來越大;軟件的重用性需要提升;軟件的維護

11、越來越困難.6.2、 軟件配置治理應(yīng)提供的功能:在ISO9000.3中,對配置治理系統(tǒng)的功能作了如下描述:唯一地標識每個軟件項的版本;標識共同構(gòu)成一完整產(chǎn)品的特定版本的每一軟件項的版本;限制由兩個或多個獨立工作的人員同時對一給定軟件項的更新;限制由兩個或多個獨立工作的人員同時對一給定軟件項的更新;按要求在一個或多個位置對復雜產(chǎn)品的更新進行協(xié)調(diào);標識并跟蹤所有的舉措和更改;這些舉措和更改是在從開始直到放行期間,由于更改請求或問題引起的.6.3、 版本治理軟件配置治理分為版本治理、問題跟蹤和建立治理三個局部,其中版本治理是根底.版本治理應(yīng)完成以下主要任務(wù):建立工程;重構(gòu)任何修訂版的某一項或某一文件

12、;利用加鎖技術(shù)預防覆蓋;?當增加一個修訂版時要求輸入變更描述;提供比擬任意兩個修訂版的使用工具;采用增量存儲方式;提供對修訂版歷史和鎖定狀態(tài)的報告功能;提供歸并功能;允許在任何時候重構(gòu)任何版本;權(quán)限的設(shè)置;晉升模型的建立;提供各種報告.七.人員組織與治理軟件開發(fā)中的開發(fā)人員是最大的資源.對人員的配置、調(diào)度安排貫穿整個軟件過程,人員的組織治理是否得當,是影響對軟件工程質(zhì)量的決定性因素.首先在軟件開發(fā)的一開始,要合理的配置人員,根據(jù)工程的工作量、所需要的專業(yè)技能,再參考各個人員的水平、性格、經(jīng)驗,組織一個高效、和諧的開發(fā)小組.一般來說,一個開發(fā)小組人數(shù)在5到10人之間最為適宜,如果工程規(guī)模很大,可

13、以采取層級式結(jié)構(gòu),配置假設(shè)干個這樣的開發(fā)小組.在選擇人員的問題上,要結(jié)合實際情況來決定是否選入一個開發(fā)組員.并不是一群高水平的程序員在一起就一定可以組成一個成功的小組.作為考察標準,技術(shù)水平、與本工程相關(guān)的技能和開發(fā)經(jīng)驗、以及團隊工作水平都是很重要的因素.一個一天能寫一萬行代碼但卻不能與同事溝通融洽的程序員,未必適合一個對組員之間通訊要求很高的工程.還應(yīng)該考慮分工的需要,合理配置各個專項的人員比例.例如一個網(wǎng)站開發(fā)工程,小組中有頁面美工、后臺效勞程序、數(shù)據(jù)庫幾個局部,應(yīng)該合理的組織各項工作的人員配比.對于一個中型農(nóng)技110網(wǎng)站,對數(shù)據(jù)采集量要求較高,一個人員配比方案可以是2個美工、2個后臺效勞

14、程序編寫、3個數(shù)據(jù)采集整理人員.可以用如下公式來對候選人員水平進行評分,到達一定分數(shù)的那么可以考慮進入開發(fā)組,但這個公式不包含對人員數(shù)量配比的考慮.Score=EWiCi(i=1to8)Ci是對工程組人員各項水平的評估.其值含義如下Ci的取值0123含義該人此項水平很差,完全沒將相關(guān)經(jīng)驗,或Ci不適合描述此人有一定此項能力,或曾從事過少量相關(guān)工作此項水平較好,或有較多相關(guān)項目經(jīng)垃能無憂秀,有豐富的同類工程開發(fā)經(jīng)蛭仍是權(quán)重值,對應(yīng)Cl描述的水平在本工程中的重要性,具值含義如下府的取值0123含義本工程中不要求此項肓陵,或此頊水平對目前的候選人來說都是認定滿足的本工程對此地能力有一定要求,但不作為

15、普遍要求此項水平在本項目中比菽重要,要求所有人員都要到達一定的水準此項水平S本項目中非常重要,所有人員都必額到達比擬好的水準對人員的各項水平5要求如下:C1代碼編耳水平,可以用單位時間內(nèi)無錯代碼行數(shù)量進行接比例噢射到Cl的取值范圍進fr衡量C2對新技術(shù)的適應(yīng),學習水平,即當收目需要開發(fā)人員學習新技術(shù)時,是否可以很快的進入應(yīng)用階段C3開發(fā)經(jīng)嚎.特指M事開發(fā)的工程數(shù)量,C4相關(guān)開發(fā)經(jīng)哈,特指爹加過的相關(guān)無目的數(shù)量C5抵受壓力的水平即是否能在向壓力卜片成,作C6獨立工作的水平,即在缺乏同事合作,需要獨立工作的情加下完咸工作的65C7合作力即與同伴溝通,協(xié)同元成工作的水平C8對薪水的要求在決定一個開發(fā)

16、組的開發(fā)人員數(shù)量時,除了考慮候選人素質(zhì)以外,還要綜合考慮工程規(guī)模、工期、預算、開發(fā)環(huán)境等因素的影響,下面是一個基于規(guī)模、工期和開發(fā)環(huán)境的人員數(shù)量計算公式:L=Ck*K1/3*td4/3L:開發(fā)規(guī)模,以代碼行LOC度量td:開發(fā)時間K:人員數(shù)Ck:技術(shù)常數(shù)表示開發(fā)環(huán)境的優(yōu)劣取值2000:表示開發(fā)環(huán)境差,沒有系統(tǒng)的開發(fā)方法,缺乏文檔標準化設(shè)計;取值8000:表示開發(fā)環(huán)境較好;取值11000:表示開發(fā)環(huán)境優(yōu).在組建開發(fā)組時,還應(yīng)充分估計到開發(fā)過程中的人員風險.由于工作環(huán)境、待遇、工作強度、公司的整體工作安排和其他無法預知的因素,一個工程尤其是開發(fā)周期較長的工程幾乎無可預防的要面臨人員的流入流出.如果

17、不在工程初期對可能出現(xiàn)的人員風險進行充分的估計,作必要的準備,一旦風險轉(zhuǎn)化為現(xiàn)實,將有可能給整個項目開發(fā)造成巨大的損失.以較低的代價進行及早的預防是降低這種人員風險的根本策略.具體來說可以從以下幾個方面對人員風險進行控制:a.保證開發(fā)組中全職人員的比例,且工程核心局部的工作應(yīng)該盡量由全職人員來擔任,以減少兼職人員對工程組人員不穩(wěn)定性的影響.b.建立良好的文檔治理機制,包擴工程組進度文檔、個人進度文檔、版本限制文檔、整體技術(shù)文檔、個人技術(shù)文檔、源代碼管理等.一旦出現(xiàn)人員的變動,比方某個組員因病退出,替補的組員能夠根據(jù)完整的文檔盡早接手工作.c.增強工程組內(nèi)技術(shù)交流,比方定期開技術(shù)交流會,或根據(jù)組

18、內(nèi)分工建立工程組內(nèi)部的開發(fā)小組,是開發(fā)小組內(nèi)的成員能夠相互熟悉對方的工作和進度,能夠在必要的時候替對方工作.d.對于工程經(jīng)理,可以從一開始就指派一個副經(jīng)理在工程中協(xié)同工程經(jīng)理治理工程開發(fā)工作,如果工程經(jīng)理退出開發(fā)組,副經(jīng)理可以很快接手.但是只建議在工程經(jīng)理這樣的高度重要的崗位采用這種冗余復制的策略來預防人員風險,否那么將大大增加工程本錢.e.為工程開發(fā)提供盡可能好的開發(fā)環(huán)境,包括工作環(huán)境、待遇、工作進度安排等等,同時一個優(yōu)秀的工程經(jīng)理應(yīng)該能夠在項目組內(nèi)營造一種良好的人際關(guān)系和工作氣氛.良好的開發(fā)環(huán)境對于穩(wěn)定工程組人員以及提升生產(chǎn)效率都有不可無視的作用.八.軟件過程水平評估軟件過程水平描述了一個

19、開發(fā)組織開發(fā)軟件開發(fā)高質(zhì)量軟件產(chǎn)品的水平.現(xiàn)行的國際標準主要有兩個:ISO9000.3和CMMISO9000.3是ISO9000質(zhì)量體系認證中關(guān)于計算機軟件質(zhì)量治理和質(zhì)量保證標準局部.它從治理責任、質(zhì)量體系、合同評審、設(shè)計限制、文件和資料限制、采購、顧客提供產(chǎn)品的限制、產(chǎn)品標識和可追溯性、過程限制、檢驗和試驗、檢驗/測量和試驗設(shè)備的限制、檢驗和試驗狀態(tài)、不合格品的限制、糾正和預防舉措、搬運/貯存/包裝/防護和交付、質(zhì)量記錄的限制、內(nèi)部質(zhì)量審核、培訓、效勞、統(tǒng)計系統(tǒng)等二十個方面對軟件質(zhì)量進行了要求.CMM水平成熟度模型是美國卡納基梅隆大學軟件工程研究所CMU/SEI于1987年提出的評估和指導軟件研發(fā)工程治理的一系列方法,用5個不斷進化的層次來描述軟件過程水平.現(xiàn)在CM塌2.0版OISO9000和CMM勺共同點是二者都強調(diào)了軟件產(chǎn)品的質(zhì)量.所不同的是,ISO9000強調(diào)的是衡量的準那么,但沒有告訴軟件開發(fā)人員如何達到好的目標,如何預防過失.CMMU提供了一整套完善的軟件研發(fā)項目治理的方法.它可告訴軟件開發(fā)組織,如果要在原有的水平上提升一個等級,應(yīng)該關(guān)注哪些問題,而這正是改良軟件過程的工作.CMM®述了五個級別的軟件過程成熟度初始級,可重復級,已定義級,已定量治理級,優(yōu)化級,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論