印度項目質(zhì)量管理經(jīng)驗論文
計算機和通信技術(shù)的迅速發(fā)展,特別是Internet技術(shù)的發(fā)展與普及,為企業(yè)內部、企業(yè)與外部提供了快速、準確、可靠的信息交流渠道。信息化企業(yè)運作管理系統已成為企事業(yè)單位參與全球市場(chǎng)競爭的必備支持系統。正是由于這樣的市場(chǎng)需求與技術(shù)發(fā)展現狀,為我國的IT行業(yè)帶來(lái)了空前發(fā)展的機遇,特別是軟件行業(yè)。軟件企業(yè)能否抓住這樣一個(gè)難得的發(fā)展機會(huì )需要多方面的努力,其中軟件質(zhì)量保障在其發(fā)展過(guò)程中占有重要的位置。眾所周知,印度已成為世界上軟件業(yè)增長(cháng)最快的國家,目前每年軟件業(yè)產(chǎn)值達數十億美元,并且還在以每年30%~50%的速度增長(cháng)。比較我國和印度的軟件產(chǎn)業(yè),就不難發(fā)現:中國擁有巨大的軟件市場(chǎng)和世界公認的軟件開(kāi)發(fā)資源,在基礎研究和對技術(shù)前瞻性的把握上,也有自己的優(yōu)勢,就整體社會(huì )經(jīng)濟環(huán)境而言也優(yōu)于印度。此外,中國的軟件開(kāi)發(fā)人員費用比較低廉,僅是世界市場(chǎng)的1/3左右。雖然中國人并不缺乏軟件開(kāi)發(fā)的天賦,但是在越來(lái)越強調規;(jīng)營(yíng)的今天,先天不足的管理痼疾使我們舉步維艱,難以擺脫小作坊式的軟件開(kāi)發(fā)模式。而印度軟件業(yè)從一開(kāi)始就立足于為美國軟件企業(yè)服務(wù),并遵循其軟件開(kāi)發(fā)的管理模式,與國際標準接軌。
管理上的問(wèn)題不能得到徹底的解決,軟件的質(zhì)量保障就無(wú)從談起。筆者最近在與印度一家通過(guò)了CMM4級評估的軟件公司(以下簡(jiǎn)稱(chēng)A公司)進(jìn)行合作的過(guò)程中,較為詳細地了解了他們有關(guān)項目管理的一些,更深刻地感受到了項目管理的規范化與企業(yè)軟件質(zhì)量保障之間的密切關(guān)系。下面想著(zhù)重從軟件企業(yè)的構架,軟件項目計劃、項目管理、項目經(jīng)理的職責等方面對印度軟件的項目管理及我國軟件質(zhì)量保障應注意的問(wèn)題進(jìn)行一些經(jīng)驗總結,供業(yè)內人士參考。
1、軟件企業(yè)的組織結構
。1)A公司結構
A公司中,QA(QualityAssure)部門(mén)與研發(fā)部門(mén)獨立,負責監督流程的執行。QA同時(shí)負責領(lǐng)導與研發(fā)部門(mén)組成的聯(lián)合工作組,制定公司流程。
SSG(SystemSupportGroup)類(lèi)似我們的IT部門(mén),負責公司所有計算機軟件和硬件資源的分配和管理。所有的辦公環(huán)境和開(kāi)發(fā)/實(shí)驗室環(huán)境由SSG負責安裝和維護,計算機資源屬于SSG,由各個(gè)項目向SSG提出需求,項目結束后,設備需要交還給SSG.個(gè)人和項目組沒(méi)有固定的軟件和硬件資源。SSG是與研發(fā)平行的部門(mén)。
人力資源部門(mén)負責公司的人力資源管理,并維護員工的技能數據庫。項目開(kāi)始時(shí),項目組向人力資源申請人力,向SSG申請計算機硬件和軟件。項目結束時(shí)需要釋放計算機資源給SSG,釋放人力資源到人力資源池,并同時(shí)更新員工的技能數據庫。研發(fā)部門(mén)的人力資源由研發(fā)總負責人和其助手分配(類(lèi)似我國各公司的人力資源部)。
。2)項目組結構
1)A公司對項目組進(jìn)行獨立核算,項目具體負責人為PC(ProjectCoordinator),負責項目計劃和執行,對項目具體成員進(jìn)行分工。在每個(gè)階段的結束會(huì )議上(如概要設計結束),PC要接受QC(QualityCoordinator)的審查。除了PC與QC的接口外,所有其他外部接口都由EM(EngineerManager)完成,EM負責與客戶(hù)打交道,向SSG、人力資源要求資源,與其他項目組協(xié)調進(jìn)度。
2)匯報關(guān)系為:TeamMember->TeamLeader->PC->EM->研發(fā)總負責人。
3)印度工程師分為7級,半年一次考評,即半年有一次升級機會(huì )。
1級:SoftwareEngineer,剛畢業(yè)的本科生和研究生。
2級:SeniorSoftwareEngineer.3級:ProjectLeader.4級:ProjectManager.5級:SeniorProjectManager.
3級可以成為PC,4級可以成為EM.剛開(kāi)始平均2年升一級,越往后升職越慢。
A公司規定,一人最多可以同時(shí)兼任兩個(gè)項目的PC,EM管理的項目沒(méi)有限制。
A公司通常的項目組為4到5人,最多不超過(guò)10人。
以上是A公司(同時(shí)也是印度大多數規范化的軟件公司)的'組織結構和項目組結構?梢钥闯,A公司的組織結構非常清晰,各個(gè)部門(mén)分類(lèi)非常細,任務(wù)明確,軟件生產(chǎn)的每一個(gè)步驟都有專(zhuān)門(mén)的部門(mén)、專(zhuān)門(mén)的人員負責,從最基礎的開(kāi)發(fā)人員到負責統領(lǐng)全局的總經(jīng)理,層層管理,溝通渠道暢通。而在我國,管理的不規范往往首先體現在公司的組織結構上,集中表現為部門(mén)的缺失和管理的交叉上。我國的軟件公司,大部分規模較小,開(kāi)發(fā)人員超過(guò)100人的公司很少。在印度,軟件公司無(wú)論大小,都是“麻雀雖小,五臟俱全”,絕不會(huì )因為公司的規模大小而改變合理的組織結構。因此筆者認為,國內的軟件企業(yè)要想有效地保障產(chǎn)品質(zhì)量,首先就要在構架合理的組織結構上下功夫,這就如同蓋高樓首先要打好地基一樣,地基不打牢,結構不合理,其他方面再下功夫也是徒勞。有人說(shuō),因為國內軟件企業(yè)規模小,所以造成結構設置的欠缺,但筆者認為恰恰是因為沒(méi)有建立一個(gè)規范化的組織結構,才會(huì )使軟件產(chǎn)品質(zhì)量不保,進(jìn)而嚴重影響了企業(yè)的發(fā)展擴大。
2、項目計劃
凡事預則立,不預則廢。這里的“預”就是指計劃。對于軟件企業(yè),計劃的重要性是不言而喻的。讓我們先看看A公司的項目計劃是如何制定的:在A(yíng)公司,項目開(kāi)始之前必須先估計項目的規模(以代碼行數來(lái)衡量);然后制定項目計劃。通常時(shí)間為2~3周,已知的最長(cháng)有5周。EM負責制定項目EWP(EngineerWorkPaper),其中定義了項目需要的人力和計算機資源,由相關(guān)部門(mén)同意,并報研發(fā)總負責人批準后才能開(kāi)始項目。
項目的正式開(kāi)始時(shí)間由項目組的KickoffMeeting算起,CloseoutMeeting結束。
大概很多人都聽(tīng)過(guò)這樣一句話(huà):“計劃趕不上變化”。這種“變化”對某些行業(yè)而言也許并不會(huì )產(chǎn)生太大的影響,但對于軟件企業(yè)而言,卻會(huì )給軟件產(chǎn)品的質(zhì)量保證帶來(lái)嚴重的負面影響。為什么會(huì )造成這種“計劃趕不上變化”的現象?究其原因,筆者認為主要是因為對計劃的重視程度不夠,計劃過(guò)于籠統、粗糙導致可執行性太差,再加上一些人為因素的影響,必然會(huì )產(chǎn)生這樣的后果。
如果我們的軟件企業(yè)都能像A公司這樣,在作計劃時(shí)能考慮到每一個(gè)細節,不是倉促做出決定,而是由所有的相關(guān)部門(mén)共同對產(chǎn)品計劃進(jìn)行反復研究、制定、討論、修改,最終形成一套系統、嚴密、具有很強的可執行性的計劃。計劃一旦形成,就嚴格按照計劃去執行,而不受某個(gè)人、某件事的影響,那么就不僅能夠減少大量資源的浪費,產(chǎn)品的質(zhì)量也得到了保障。
因此,對計劃的高度重視、周密制定、嚴格執行是企業(yè)有效保障產(chǎn)品質(zhì)量的一個(gè)重要環(huán)節。
3、項目管理
當企業(yè)構架了合理的組織結構并制定了縝密的計劃后,就進(jìn)入了產(chǎn)品的開(kāi)發(fā)階段。在這個(gè)階段中,項目管理起了重要作用,它所涉及的環(huán)節相當具體復雜,下面先介紹一下A公司在項目管理上的具體細節:
。1)開(kāi)發(fā)階段和項目周期開(kāi)發(fā)階段比較明顯,注重各階段應完成的功能,對本階段應完成的工作不能留到下一階段。
。2)流程
A公司對流程比對項目更重視。
軟件開(kāi)發(fā)流程非常規范和系統化,其流程的可執行性很高,并且能在實(shí)踐過(guò)程中不斷改進(jìn)。A公司的流程已覆蓋到了一個(gè)項目研發(fā)的所有方面,包括從最開(kāi)始的意向到最后軟件的版本發(fā)布(release),都有相應的流程規定,基本上已形成一種工業(yè)化的軟件開(kāi)發(fā)。
人和流程是保證項目成功的兩個(gè)最關(guān)鍵因素。由好的人按好的流程進(jìn)行項目開(kāi)發(fā),才能最大限度地保證項目的成功。一個(gè)好的流程可以保證差的人做出來(lái)的東西不至于太差,但不能確保做出精品。通過(guò)流程可以實(shí)現一種規范化、流水線(xiàn)化、工業(yè)化的軟件開(kāi)發(fā)。
。3)計劃
1)計劃詳細、周到。
2)流程中明確定義開(kāi)發(fā)階段。
3)每個(gè)階段都列出了該階段的各項活動(dòng),并詳細描述每項活動(dòng)的屬性:
進(jìn)入條件,輸入;
驗證方法;
結束條件,輸出。
4)每個(gè)階段結束都要召開(kāi)階段結束會(huì )議。前一個(gè)階段結束才能進(jìn)入下一階段。
5)計劃中每個(gè)活動(dòng)都比較具體,每個(gè)活動(dòng)的時(shí)間以天(半天)為單位。計劃包括了開(kāi)展質(zhì)量控制活動(dòng)的時(shí)間。
。4)Review
按印度公司流程,一般把Review和測試作為保證軟件質(zhì)量?jì)蓚(gè)主要手段。測試的重要性就不需說(shuō)明了,而Review則是一個(gè)非常簡(jiǎn)單有效并能盡早發(fā)現軟件中錯誤的方法,可以說(shuō),任何交付物都要經(jīng)Review后才能進(jìn)行基線(xiàn)化。目前A公司有很詳細全面、可執行性很高的Review流程和各種交付物的Review Checklist.
在印度軟件企業(yè),現有這么一句口號:凡事有計劃,凡事必review.
。5)QA
QC(質(zhì)量經(jīng)理)作為質(zhì)量保證部門(mén)(SQA)的代表,監督和保證項目的進(jìn)展遵循QMS各項流程和模板,并且收集項目中發(fā)現的一些問(wèn)題和解決方法以?xún)?yōu)化流程。
。6)度量數據
CMM中比較強調用數據說(shuō)話(huà),對項目過(guò)程中基本上所有的數據都會(huì )有記錄,最后把收集的數據提交質(zhì)量保證部門(mén)進(jìn)行分析,以改進(jìn)流程。A公司的項目經(jīng)理和質(zhì)量經(jīng)理很重視項目中的數據收集,包括各種Review數據、測試數據以及項目組員每天的活動(dòng)數據等。項目經(jīng)理也要維護一個(gè)項目檔案,在這個(gè)項目檔案中可以說(shuō)包含了項目開(kāi)發(fā)過(guò)程中所有的產(chǎn)出、開(kāi)發(fā)活動(dòng)、管理活動(dòng)等的記錄?梢赃@么說(shuō),有了這個(gè)項目檔案,你就可以完全了解這個(gè)項目的開(kāi)發(fā)過(guò)程。
。7)團隊精神
印度公司都比較強調團隊精神、合作精神,應該說(shuō),其流程本質(zhì)上就要求員工之間的互相協(xié)調和理解。相對而言,印度員工的合作精神和協(xié)調精神都比我國員工要好得多。
。8)培訓
印度公司都比較強調培訓,一般有專(zhuān)門(mén)的培訓部門(mén)進(jìn)行協(xié)調。在新員工進(jìn)入公司后都會(huì )有公司流程和其他一些公司普遍章程的培訓,以保證員工對流程的理解和執行。對于具體項目,項目經(jīng)理在制定項目計劃時(shí)就會(huì )在項目計劃中提出所有的培訓需求,包括技術(shù)上的培訓和其他所需的培訓。
。9)配置管理在項目正式開(kāi)展前,項目經(jīng)理就要制定配置管理計劃,并且指定配置管理員建立起配置管理庫,按配置流程嚴格進(jìn)行配置管理。在配置流程中也詳細提供了對更改的控制,沒(méi)有經(jīng)過(guò)批準的更改請求是絕對不能進(jìn)行的。
。10)記錄
記錄及時(shí)、充分、比較準確。這些記錄包括:重要的郵件、會(huì )議紀要、審核記錄、缺陷報告、測試報告。
1)與客戶(hù)和其他項目組的所有往來(lái)必須郵件記錄。
2)對所有的活動(dòng)都有一個(gè)跟蹤落實(shí)的過(guò)程,比如對所有的Review記錄和更改請求都會(huì )有一個(gè)狀態(tài)標識,標識其當前狀態(tài),通過(guò)跟蹤其狀態(tài)來(lái)監督其落實(shí)。
3)對所有的活動(dòng),包括對文檔和代碼的更改都會(huì )有一個(gè)歷史記錄。
4)記錄比較準確、比較客觀(guān)。
5)許多記錄都是通過(guò)定量的數值記錄,強調以數據說(shuō)話(huà)(CMM4級的重點(diǎn)就是量化管理)。
以上是A公司在項目管理中所涉及到的一些主要環(huán)節,很值得國內的軟件企業(yè)在制定項目管理規劃時(shí)借鑒。除此之外,我國的軟件企業(yè)在產(chǎn)品開(kāi)發(fā)管理的過(guò)程中,還易出現以下幾個(gè)方面的問(wèn)題:
1)需求說(shuō)明差─需求不清楚、不完整、太概括、或者不可測試,都會(huì )造成問(wèn)題。
2)不切實(shí)際的時(shí)間表─如果在很短的時(shí)間里要求做許多事,出現錯誤是不可避免的。
3)測試不充分─只能根據客戶(hù)意見(jiàn)或系統崩潰來(lái)判斷系統的質(zhì)量。
4)不斷增加功能─在開(kāi)發(fā)正在進(jìn)行過(guò)程中要求增加許多新的功能。這是常見(jiàn)的問(wèn)題。
5)交流問(wèn)題─如果開(kāi)發(fā)人員對客戶(hù)的要求不了解,或者客戶(hù)由不恰當的期望,必然會(huì )導致錯誤。
這些問(wèn)題的出現,將會(huì )對軟件質(zhì)量的保證產(chǎn)生不良影響,針對上述問(wèn)題并結合A公司在項目管理方面的經(jīng)驗,筆者提出一些相應的解決方法,以供參考:
1)可靠的需求─應當有一個(gè)經(jīng)各方一致同意的、清楚的、完整的、詳細的、整體的、可實(shí)現的、可測試的需求。為幫助確定需求,可使用模型 (prototypes)。
2)合理的時(shí)間表――為計劃、設計、測試、改錯、再測試、變更、以及編制文檔留出足夠的時(shí)間。不應使用突擊的辦法來(lái)完成項目。
3)適當測試─盡早開(kāi)始測試;每次改錯或變更后,都應重新測試。項目計劃中要為測試和改錯留出足夠時(shí)間。
4)盡可能堅持最初的需求─一旦開(kāi)發(fā)工作開(kāi)始,要準備防止修改需求和新增功能,要說(shuō)明這樣做的后果。如果必須進(jìn)行變更,必須在時(shí)間表上有相應的反映。如果可能,在設計階段使用快速的模型,以便使客戶(hù)了解將會(huì )得到的東西。這將會(huì )使他們對他們的需求有較高的信心,減少以后的變更。
5)溝通――在適當時(shí)機進(jìn)行預排和檢查;充分利用團組通信工具―電子郵件、群件(groupware)、網(wǎng)絡(luò )故障跟蹤工具、變更管理工具、以及因特網(wǎng)的功能。要確保文件是可用的和最新的。優(yōu)選電子版文檔,避免紙介質(zhì)文檔:進(jìn)行遠距離聯(lián)合作業(yè)及協(xié)作;盡早使用模型,使客戶(hù)的預想表達清楚。
4、PC(項目經(jīng)理)
項目經(jīng)理是項目成敗的關(guān)鍵人物,其對項目的成敗負主要責任。因此在這里將項目經(jīng)理的有關(guān)內容單獨提出,以A公司為例詳細說(shuō)明PC在整個(gè)產(chǎn)品研發(fā)過(guò)程中所扮演的角色,希望能對國內軟件企業(yè)的項目經(jīng)理有所啟示。
。1)在A(yíng)公司,按流程在一個(gè)項目正式開(kāi)展之前,項目經(jīng)理需要完成:
項目計劃(Project Plan):在此描述整個(gè)項目所應完成的交付物、項目時(shí)間表、培訓需求、資源需求、質(zhì)量保證計劃以及過(guò)程和交付物的定量質(zhì)量目標等。
項目配置管理計劃(Project Configuration Plan):在此指定配置管理員,描述項目配置項列表、配置管理庫、版本管理計劃等等。
項目過(guò)程手冊(Process Handbook):在此描述本項目所采取的裁剪后的生命周期模型和流程。
。2)在項目開(kāi)發(fā)過(guò)程中,項目經(jīng)理需非常了解項目進(jìn)度,進(jìn)行工作任務(wù)細化、具體計劃和安排項目成員工作任務(wù)等工作。對突發(fā)事件項目經(jīng)理需能及時(shí)合理地進(jìn)行協(xié)調。
。3)總的說(shuō)來(lái),PC安排工作有這么幾個(gè)特點(diǎn):
a.PC對軟件開(kāi)發(fā)具有豐富的經(jīng)驗,了解軟件開(kāi)發(fā)的普遍流程,了解各個(gè)階段所需完成的工作,這是安排好項目組成員工作的前提,在A(yíng)公司對PC的整體素質(zhì)要求非常高。
b.在項目正式開(kāi)展前,PC準備項目計劃文檔,在項目計劃中包含了項目進(jìn)度時(shí)間表,但此時(shí)間表比較粗,只能給出各個(gè)階段和各個(gè)子階段的起始結束日期。對各個(gè)階段和各個(gè)子階段的詳細工作安排和各項工作責任人只能在項目開(kāi)展工程中根據項目實(shí)際情況進(jìn)行安排,一般是在每周項目組例會(huì )上進(jìn)行本周詳細工作安排。
c.PC對工作安排往往精確到天,有時(shí)甚至精確到小時(shí),要做到這一點(diǎn),需要:
PC對本項目進(jìn)展非常了解。了解渠道通常是每周組員的狀態(tài)報告和直接與組員接觸了解,這也需項目組成員能如實(shí)匯報工作。
對現階段或本周所需完成的工作非常了解。知道現在該做什么,并且能把各項工作進(jìn)行合理細致地劃分,因為各個(gè)分解的工作比較細致,因此能相對精確地評估出這些工作完成所需的時(shí)間。
PC對項目組員的能力比較了解,安排工作時(shí)能做到有的放矢。當安排的員工對工作不熟悉時(shí),會(huì )指定相應的組員進(jìn)行協(xié)助。
PC對組員的工作安排都比較細致飽滿(mǎn)。一般不會(huì )出現有些員工有事干,有些員工沒(méi)事干的情況,當出現這種情況或員工提前完成工作時(shí),PC就會(huì )進(jìn)行相應的協(xié)調。
d.PC在項目組例會(huì )上的工作安排一般只限于本周或甚至是過(guò)后的二、三天,一般不會(huì )太長(cháng),對長(cháng)時(shí)間工作的安排容易失去精確并且不易控制。相對而言,短時(shí)間的工作安排就比較精確而且容易控制,并且能不斷根據完成的工作進(jìn)行調整。當然,這就要求PC能根據項目計劃中的項目時(shí)間表進(jìn)行整體進(jìn)度的把握。
e.項目組例會(huì )一般一周一次(時(shí)間不能太長(cháng)),但必要時(shí)(如組員工作已完成或其他事情),也可在中途召開(kāi)項目會(huì )議進(jìn)行工作安排,一般時(shí)間都比較短(十幾分鐘左右,一般不超過(guò)半小時(shí),以免浪費時(shí)間),總之,當PC覺(jué)得需要時(shí),就會(huì )召開(kāi)項目會(huì )議。
f.當項目組出現意外事件或影響項目團結的事件時(shí),PC能及時(shí)合理協(xié)調,解決項目組內的不和諧氣氛。
g.PC善于鼓勵手下,發(fā)揮員工的潛能,PC往往會(huì )贊揚很好地完成了工作的組員。
從上面可以看出,對PC的能力(包括技術(shù)和管理能力)要求是非常高的,我國的軟件企業(yè)往往只重視PC的技術(shù)能力,但事實(shí)上,一個(gè)只精通技術(shù)的人往往不能成為一個(gè)合格的領(lǐng)導者, 筆者認為對PC而言,首先要求他能夠比他的下屬看得更遠一步,順利時(shí)不盲目樂(lè )觀(guān),遇到挫折時(shí)不茫然失措,使整個(gè)團隊始終保持高昂的士氣。
總結
以上結合印度軟件項目管理的經(jīng)驗總結了一些我國軟件質(zhì)量保障應注意的問(wèn)題。曾有人提出:這樣一味地學(xué)習模仿,民族軟件工業(yè)沒(méi)有多大希望。但筆者認為,在這個(gè)問(wèn)題上不妨采取“拿來(lái)主義”的辦法,對于好的,事實(shí)證明是成功的經(jīng)驗,首先是“占有”,然后才是“挑選”和“創(chuàng )新”。如果能把印度的管理經(jīng)驗真正領(lǐng)會(huì )并付諸實(shí)踐,相信對我們的民族軟件工業(yè)一定會(huì )起到積極的推動(dòng)作用。
【印度項目質(zhì)量管理經(jīng)驗論文】相關(guān)文章:
土建項目質(zhì)量管理分析論文12-24
施工項目質(zhì)量管理論文04-01
項目施工質(zhì)量管理論文04-07
項目管理過(guò)程質(zhì)量風(fēng)險控制探討論文07-03
房屋建筑項目管理與質(zhì)量控制論文12-25