|
中小型軟件公司如果立足長遠(yuǎn)發(fā)展,必須重視軟件過程改進(jìn)與項(xiàng)目管理,當(dāng)前軟件行業(yè)已經(jīng)不再是個(gè)人英雄主義的時(shí)代,必須是團(tuán)隊(duì)合作,需通過軟件過程改進(jìn)和推行項(xiàng)目管理來保證開發(fā)交付的產(chǎn)品符合客戶要求。 一、企業(yè)商業(yè)目標(biāo)決定產(chǎn)品開發(fā)之道 .目前存在的軟件危機(jī) 絕大多數(shù)軟件企業(yè)長期面臨“產(chǎn)品質(zhì)量低下、進(jìn)度延誤、成本高昂”的共性問題,就像患了惡劣的慢性病,無法根除。 大學(xué)教育以填鴨的方式給學(xué)生灌輸技能,卻忽視了傳授思想和方法;學(xué)生們埋頭學(xué)習(xí),不知學(xué)以致用,離開學(xué)校后對企業(yè)、產(chǎn)品、人生一片茫然;企業(yè)以混亂甚至錯(cuò)誤的方式開發(fā)產(chǎn)品,重復(fù)著前人的失敗而不是成功。這就是產(chǎn)生“軟件危機(jī)”的真正根源。 中小型軟件公司的技術(shù)開發(fā)體系多處于籌建形成時(shí)期。人員的組成結(jié)構(gòu)還不是非常合理,具有一定開發(fā)管理經(jīng)驗(yàn)的骨干人員相對缺乏,還沒有完全形成很好的管理梯隊(duì),無法很好成功并行完成多個(gè)在建軟件項(xiàng)目。建立良好軟件開發(fā)管理,對于技術(shù)隊(duì)伍良性成長,應(yīng)對人員變動(dòng)形成的風(fēng)險(xiǎn)非常有益。 國內(nèi)眾多中小軟件企業(yè)都面臨軟件開發(fā)管理隨意性強(qiáng),其原因是當(dāng)企業(yè)沒有發(fā)展到必須通過項(xiàng)目管理維持公司運(yùn)轉(zhuǎn)的程度時(shí),大家(尤其是開發(fā)技術(shù)人員)對項(xiàng)目管理、軟件工程視而不見,只有親身嘗到因此造成的失敗后才給予足夠的重視。因此,作為公司管理層應(yīng)該對軟件過程、項(xiàng)目管理給予充分認(rèn)識(shí),著手建立管理制度才能防患于未然。 .企業(yè)根本目標(biāo)決定產(chǎn)品開發(fā)之道、用人之道 “企業(yè)-產(chǎn)品-人”這三個(gè)主體構(gòu)成了復(fù)雜的系統(tǒng): 企業(yè)的根本目標(biāo)是“合法地賺取盡可能多的利潤,使企業(yè)利益最大化”。這個(gè)根本目標(biāo)就如同企業(yè)的“憲法”,是企業(yè)生存和發(fā)展之本。 實(shí)現(xiàn)企業(yè)的根本目標(biāo)要由企業(yè)中的人通過符合市場的產(chǎn)品來實(shí)現(xiàn),正確的產(chǎn)品開發(fā)之道和用人之道決定了企業(yè)的根本目標(biāo)能否實(shí)現(xiàn)。中小規(guī)模的軟件公司往往重視維持公司目前發(fā)展階段的產(chǎn)品市場,但是在技術(shù)隊(duì)伍建設(shè)方面明顯滯后,公司在吸引高水平人才、項(xiàng)目管理、軟件工程方面還存在不足。 企業(yè)的產(chǎn)品開發(fā)之道包含兩個(gè)方面的內(nèi)容: 開發(fā)正確的產(chǎn)品,即開發(fā)能為企業(yè)賺取利潤的產(chǎn)品; 正確地開發(fā)產(chǎn)品,即努力使產(chǎn)品為企業(yè)賺取盡可能多的利潤。 企業(yè)的用人之道也包含兩個(gè)方面的內(nèi)容: 用正確的人,即利用能為企業(yè)賺取利潤的人; 正確地用人,即努力使人為企業(yè)賺取盡可能多的利潤。 “開發(fā)正確的產(chǎn)品”和“用正確的人”屬于企業(yè)的決策過程?!罢_地決策”是企業(yè)各級(jí)領(lǐng)導(dǎo)的第一職責(zé)。 “正確地開發(fā)產(chǎn)品”和“正確地用人”屬于企業(yè)的執(zhí)行過程?!罢_地執(zhí)行” 是企業(yè)各個(gè)團(tuán)隊(duì)的第一職責(zé)。 決策和執(zhí)行之間的關(guān)系是戰(zhàn)略與戰(zhàn)術(shù)之間的關(guān)系,兩者相輔相成,缺一不可。企業(yè)的成功是建立在“正確地決策”和“正確地執(zhí)行”的基礎(chǔ)之上的。任何錯(cuò)誤的決策、錯(cuò)誤的執(zhí)行都可能導(dǎo)致產(chǎn)品失敗,進(jìn)而導(dǎo)致企業(yè)倒閉, 二、強(qiáng)化項(xiàng)目管理、改進(jìn)軟件過程,改善產(chǎn)品開發(fā)之道 .產(chǎn)品開發(fā)之道 產(chǎn)品的開發(fā)首先要開發(fā)正確的產(chǎn)品,通過市場調(diào)研和項(xiàng)目立項(xiàng)管理來保證;而更關(guān)鍵的是正確的開發(fā)產(chǎn)品,各軟件企問題多出在這一環(huán)節(jié)上。 正確的開發(fā)產(chǎn)品的基本要求是:項(xiàng)目團(tuán)隊(duì)在預(yù)定的時(shí)間和成本之內(nèi),開發(fā)完成合格的產(chǎn)品;項(xiàng)目團(tuán)隊(duì)盡最大努力把產(chǎn)品做得好、做得快并且少花錢。 “質(zhì)量、效率、成本”通常是衡量產(chǎn)品開發(fā)過程優(yōu)劣的三個(gè)關(guān)鍵指標(biāo)。一般說來,質(zhì)量、效率、成本之間存在對抗關(guān)系。俗話說“一分錢一分貨”,人們買東西的時(shí)候大多認(rèn)可“質(zhì)量越好價(jià)格就越高”。再如俗話“慢工出細(xì)活”,言下之意是提高質(zhì)量將使生產(chǎn)率降低。根據(jù)常識(shí)可知,要想同時(shí)提高產(chǎn)品質(zhì)量、效率并且降低開發(fā)成本是非常不容易的。在不對質(zhì)量和成本產(chǎn)生負(fù)面影響的前提下提高工作效率,這才是真本事。 提高工作效率通常可以采用措施有: 提高項(xiàng)目成員的工作技能。使他們在開發(fā)產(chǎn)品時(shí)不僅做得好而且做得快。 制定合適的軟件過程。軟件過程定義了做事的主要步驟,如果過程混亂,做事顛三倒四的話,勢必傷害生產(chǎn)率。 提高復(fù)用程度。復(fù)用就是指“利用現(xiàn)成的東西”,軟件中可以復(fù)用的對象有設(shè)計(jì)模式、 代碼庫、文檔模板等等。軟件人員應(yīng)當(dāng)懂得復(fù)用別人留下的成熟可靠的成果(可能要花錢去買也可能是免費(fèi)的),并且還要給自己留下可以在將來復(fù)用的東西。 使用高效率的開發(fā)工具和管理工具。 企業(yè)必須權(quán)衡質(zhì)量、效率和成本。為了提高用戶對產(chǎn)品的滿意度,企業(yè)必須提高產(chǎn)品的質(zhì)量。但是企業(yè)不可能為了追求完美的質(zhì)量而不惜一切代價(jià),當(dāng)企業(yè)為提高質(zhì)量所付出的代價(jià)超過銷售收益時(shí),這個(gè)產(chǎn)品已經(jīng)沒有商業(yè)價(jià)值了,還不如不開發(fā)。重視軟件質(zhì)量是應(yīng)該的,但是“質(zhì)量越高越好”并不是普適的真理。只有極少數(shù)軟件應(yīng)該追求“零缺陷”,對絕大多數(shù)軟件而言,商業(yè)目標(biāo)決定了質(zhì)量目標(biāo),而不該把質(zhì)量目標(biāo)凌駕于商業(yè)目標(biāo)之上。 人們常常關(guān)注開發(fā)成本而忽視了維護(hù)成本。有時(shí)人們?yōu)榱粟s進(jìn)度而犧牲軟件產(chǎn)品的質(zhì)量,這是非常不可取的,因?yàn)檐浖|(zhì)量帶來的后期維護(hù)成本會(huì)輕而易舉地把項(xiàng)目的利潤吞噬殆盡。 因此,產(chǎn)品質(zhì)量太低了或者太高了,都不利于企業(yè)獲取利潤。企業(yè)產(chǎn)品的理想目標(biāo)不是“零缺陷”,而是恰好讓廣大用戶滿意,并且將提高質(zhì)量所付出的代價(jià)控制在預(yù)算之內(nèi)。 .三種典型的質(zhì)量管理和產(chǎn)品開發(fā)方式 一個(gè)中國古代郎中看病的故事,代表了產(chǎn)品開發(fā)和質(zhì)量管理的三種典型方式: 有一家三兄弟全是郎中。其中有一人是名醫(yī),人們問他:“你們兄弟三人誰的醫(yī)術(shù)最高?” 他回答說:“我常用猛藥給病危者醫(yī)治,偶爾有些病危者被我救活,于是我的醫(yī)術(shù)遠(yuǎn)近聞名并成了名醫(yī)。我二哥通常在人們剛剛生病的時(shí)候馬上就治愈他們,臨近村莊的人說他是好郎中。我大哥不外出治病,他深知人們生病的原因,所以能夠預(yù)防家里人生病,他的醫(yī)術(shù)只有我們家里才知道?!?/p> 老大治病的方式最高明,如果人們能夠預(yù)防生病的話,那么沒病就用不著看醫(yī)生了。 提高軟件質(zhì)量最好的辦法是:在開發(fā)過程中有效地防止工作成果產(chǎn)生缺陷,將高質(zhì)量內(nèi)建于開發(fā)過程之中。主要措施是“不斷地提高技術(shù)水平,不斷地提高規(guī)范化水平”,其實(shí)就是練內(nèi)功,通常為“軟件過程改進(jìn)”。 即使一個(gè)人嚴(yán)守養(yǎng)生之道,身體狀況良好,但總是會(huì)意外地得病的,得了病就要去看醫(yī)生。老二治病的方式就是醫(yī)院的模式,病人越早看病,就越早治好,治病的代價(jià)就越低。 同理,在開發(fā)軟件的時(shí)候,即使人們的技術(shù)水平很高,并且嚴(yán)格遵守規(guī)范,但是人非機(jī)器,總是會(huì)犯錯(cuò)誤的,因此無法完全避免軟件中的缺陷。 當(dāng)工作成果剛剛產(chǎn)生時(shí)馬上進(jìn)行質(zhì)量檢查,及時(shí)找出并消除工作成果中的缺陷。這種方式效果比較好,人們一般都能學(xué)會(huì)。最常用的方法是技術(shù)評審、軟件測試和過程檢查,已經(jīng)被企業(yè)廣泛采用并取得了成效。越早發(fā)現(xiàn)缺陷,糾正缺陷的代價(jià)就越小。 老三治病的方式代價(jià)最高,只能是不得已而為之。可在現(xiàn)實(shí)之中,大多數(shù)軟件企業(yè)采用老三的方式來對付質(zhì)量問題。典型現(xiàn)象是:在軟件交付之前,沒有及時(shí)消除缺陷。當(dāng)軟件交付給用戶后,用著用著就出錯(cuò)了,趕緊請開發(fā)者來補(bǔ)救??尚Φ氖牵?dāng)軟件系統(tǒng)在用戶那里出故障了,那些現(xiàn)場補(bǔ)救成功的人倒成了英雄,好心用戶甚至還寄來感謝信。 借鑒故事中老二、老三治病的方法,建立預(yù)防產(chǎn)品質(zhì)量問題產(chǎn)生的規(guī)范和流程,采取及時(shí)檢查監(jiān)督的措施,是減少產(chǎn)品缺陷、提高質(zhì)量的正確開發(fā)產(chǎn)品之道。 .強(qiáng)化項(xiàng)目管理、改進(jìn)軟件過程 中小規(guī)模軟件公司的軟件開發(fā)和項(xiàng)目管理存在一些不足:公司還沒有基本的軟件開發(fā)管理制度和規(guī)范;有經(jīng)驗(yàn)的開發(fā)技術(shù)管理的人員缺乏,對項(xiàng)目狀態(tài)缺少及時(shí)的跟蹤,出現(xiàn)問題時(shí)發(fā)現(xiàn)不及時(shí);軟件過程缺乏可操作性強(qiáng)的標(biāo)準(zhǔn)流程、規(guī)范的約束;項(xiàng)目或產(chǎn)品的開發(fā)依賴于項(xiàng)目成員自身的開發(fā)水平;等等。 從長遠(yuǎn)發(fā)展出發(fā),還要從抓項(xiàng)目管理、軟件過程改進(jìn)入手。軟件過程改進(jìn)已經(jīng)成為軟件工程和項(xiàng)目管理交叉學(xué)科的主流研究方向。軟件過程改進(jìn)的目標(biāo)就是“提高產(chǎn)品質(zhì)量、提高工作效率和降低開發(fā)成本”。 業(yè)界的實(shí)踐證明,走規(guī)范化之路是成本最低、見效最快、能持續(xù)發(fā)展的軟件過程改進(jìn)方法。 三、改進(jìn)產(chǎn)品開發(fā)之道的可操作的具體措施 建立并運(yùn)行一套合理的軟件過程非一日之功,需要首先理解認(rèn)同其管理思想和做法,在公司整個(gè)團(tuán)隊(duì)內(nèi)推行,并在推行過程中不斷聽取各方面的反饋,合理的意見建議予以采納,固有的舊觀念堅(jiān)決予以糾正,這樣才能逐漸形成自己的管理制度。另外,應(yīng)該認(rèn)識(shí)到建立管理體系和軟件過程是要花費(fèi)一定財(cái)力、人力的,是一個(gè)循序漸進(jìn)的過程,但這項(xiàng)工作對于企業(yè)的長遠(yuǎn)發(fā)展是必不可少的。 為了在以上思路下,快速有效的措施,建議做以下幾個(gè)方面 .強(qiáng)調(diào)項(xiàng)目計(jì)劃與策劃 凡事都講計(jì)劃與策劃,項(xiàng)目、產(chǎn)品開發(fā)要進(jìn)行計(jì)劃,市場、銷售也要進(jìn)行計(jì)劃,各種大型會(huì)議、活動(dòng)等等都要進(jìn)行計(jì)劃。一些重要的活動(dòng)、市場運(yùn)作要進(jìn)行周密策劃。計(jì)劃是要整個(gè)團(tuán)隊(duì)進(jìn)行溝通,進(jìn)行任務(wù)分解和落實(shí),責(zé)任落實(shí)到?jīng)]一個(gè)人。做計(jì)劃進(jìn)行時(shí)間、進(jìn)度、費(fèi)用、人員、工作量等的估算,最好能夠把工作計(jì)劃等資料存檔,這也是公司今后分析總結(jié)的依據(jù),也是經(jīng)驗(yàn)數(shù)據(jù)的積累。這種積累也是公司的財(cái)富。 重視計(jì)劃的嚴(yán)肅性,工作總結(jié)和匯報(bào)要對照原來的計(jì)劃,計(jì)劃和按照計(jì)劃執(zhí)行的能力越強(qiáng),說明公司的管理和執(zhí)行能力越強(qiáng),公司的抗風(fēng)險(xiǎn)能力就越強(qiáng)。計(jì)劃可根據(jù)實(shí)際進(jìn)行調(diào)整,因?yàn)橛?jì)劃再周密也會(huì)變化,因?yàn)椴蛔兊闹挥凶兓?。公司、部門、項(xiàng)目組可以維持三個(gè)月的動(dòng)態(tài)計(jì)劃,隨著每個(gè)月時(shí)間的推移,順延增加后一個(gè)月的計(jì)劃。 推行制定計(jì)劃的初期,由于缺乏經(jīng)驗(yàn)和依據(jù),計(jì)劃的準(zhǔn)確性可能會(huì)有較大偏差,但還是要認(rèn)真執(zhí)行,逐步趨近于計(jì)劃準(zhǔn)確。 需要制定計(jì)劃的有公司半年工作計(jì)劃、全年工作計(jì)劃,產(chǎn)品開發(fā)計(jì)劃、項(xiàng)目開發(fā)計(jì)劃,培訓(xùn)計(jì)劃、市場開發(fā)計(jì)劃、銷售計(jì)劃、個(gè)人工作周計(jì)劃,部門、項(xiàng)目組月度工作計(jì)劃等等。 對于一些重要的大型活動(dòng):如客戶培訓(xùn)、市場宣傳、客戶公關(guān)等,要提前進(jìn)行策劃,充分做好準(zhǔn)備工作,多方面采取對策。 計(jì)劃與策劃,可以使工作更加可控,做到準(zhǔn)備充分、提前預(yù)防。 對計(jì)劃的執(zhí)行情況,要定期(如每周、每月、每季度、半年、全年)對照工作計(jì)劃進(jìn)行工作總結(jié)匯報(bào)。對計(jì)劃的執(zhí)行情況進(jìn)行總結(jié),匯總解決出現(xiàn)的問題,對偏離目標(biāo)和計(jì)劃的部分進(jìn)行調(diào)整。 .實(shí)行項(xiàng)目管理,強(qiáng)化執(zhí)行與監(jiān)督 公司的管理不能只靠公司高層領(lǐng)導(dǎo),對于部門經(jīng)理、項(xiàng)目經(jīng)理、銷售骨干可以適當(dāng)和將一定的權(quán)利下放,責(zé)任與之同時(shí)下放,形成管理的梯隊(duì),保持適當(dāng)?shù)墓芾韺哟?,避免高層領(lǐng)導(dǎo)陷在繁雜的低層次具體事務(wù)中。 對所有項(xiàng)目經(jīng)理(包括開發(fā)負(fù)責(zé)人)要建立項(xiàng)目管理的時(shí)間、質(zhì)量、成本意識(shí),要具有商業(yè)頭腦和意識(shí),不能僅僅關(guān)注技術(shù)、開發(fā)進(jìn)度,讓項(xiàng)目的目標(biāo)利益和公司的目標(biāo)利益一致起來。避免出現(xiàn)這些現(xiàn)象:市場人員只關(guān)心簽單,不管能否有利潤;項(xiàng)目經(jīng)理不考慮成本,只關(guān)心技術(shù);企業(yè)賺不賺錢只有公司高層才考慮。 要加強(qiáng)日常項(xiàng)目管理和檢查監(jiān)督,注重交流溝通。要把項(xiàng)目管理和檢查監(jiān)督工作制度流程化,通過這些檢查活動(dòng)保持快速高效的上下溝通,及時(shí)發(fā)現(xiàn)項(xiàng)目管理中的問題并加以解決。 比如: (1)每周各級(jí)定期召開工作例會(huì),匯報(bào)工作,工作任務(wù)分解落實(shí),問題及時(shí)反饋。 總經(jīng)理每周一召開項(xiàng)目經(jīng)理(或包括重大項(xiàng)目)例會(huì),總結(jié)上周工作,及時(shí)反映出現(xiàn)的問題,提出需上級(jí)提供的協(xié)調(diào)和幫助,落實(shí)本周工作任務(wù)。部門每周一召開部門內(nèi)例會(huì),總結(jié)各項(xiàng)目組進(jìn)展,提出本周工作要求。每周五項(xiàng)目組召開內(nèi)部周例會(huì),總結(jié)本周工作,匯總遇到的問題,計(jì)劃安排下周工作。會(huì)議過程形成工作周報(bào)或會(huì)議紀(jì)要,提交給部門經(jīng)理。 對于一些開發(fā)進(jìn)度緊的項(xiàng)目,也可以舉行每(或兩)天晨會(huì),項(xiàng)目經(jīng)理及時(shí)掌握工作進(jìn)度,解決遇到的問題。(實(shí)踐證明,這一措施對于加強(qiáng)對項(xiàng)目組的控制,增進(jìn)成員間工作情況交流,作用非常明顯)項(xiàng)目、部門負(fù)責(zé)人要定期上報(bào)工作周報(bào)、月報(bào)。 (2)員工工作日志和周工作計(jì)劃 每個(gè)員工周一要根據(jù)上周五例會(huì)制訂本周工作計(jì)劃,提交項(xiàng)目經(jīng)理,項(xiàng)目經(jīng)理審閱工作安排是否合理。 員工每天下班前,記錄當(dāng)天的工作日志,每天或每周(最好是每天)向上級(jí)匯總報(bào)告。上級(jí)必須審閱工作日志、會(huì)議紀(jì)要和周報(bào),跨級(jí)進(jìn)行抽查(如果不認(rèn)真執(zhí)行追究相關(guān)人責(zé)任)。 特別提示:從日常工作日志可以一定程度上反映員工對公司管理理念的認(rèn)知程度,工作執(zhí)行認(rèn)真的態(tài)度,某些情況下也可以作為檢查員工行為是否誠信的輔助依據(jù)。 (3)遇到問題及時(shí)反饋,反饋不及時(shí)造成工作被動(dòng)的,追究責(zé)任 各種例會(huì),給每一級(jí)員工都提供了反映問題的渠道,如果有問題沒有及時(shí)反饋,也要追究有關(guān)人員一定責(zé)任。以便能夠及時(shí)處理人員、管理、客戶投訴等方面的問題。 (4)定期考核 應(yīng)該至少每月對員工考評一次,員工填寫本月工作總結(jié),上級(jí)和員工面談,對員工工作中存在的問題提出改進(jìn)建議,引導(dǎo)員工改進(jìn)工作。 .開發(fā)過程控制和質(zhì)量措施 應(yīng)該堅(jiān)持一些軟件過程方面好的做法,忽略一些形式化的做法,貫徹其根本思想和目的,重點(diǎn)加強(qiáng)幾個(gè)關(guān)鍵步驟,形成對應(yīng)的書面規(guī)范指南和文檔模板。一方面加強(qiáng)開發(fā)過程的規(guī)范性,增加控制環(huán)節(jié)和手段,避免項(xiàng)目開發(fā)過程產(chǎn)生重大偏差;另一方面,通過開發(fā)過程規(guī)范,引進(jìn)一些先進(jìn)的軟件工程思想和方法,提高開發(fā)效率和開發(fā)質(zhì)量。 軟件開發(fā)過程的改進(jìn)不是一日之功,而且技術(shù)人員往往更難接受改變舊的習(xí)慣和觀念。 全面改進(jìn)開發(fā)過程,執(zhí)行CMM是比較有效的措施,但畢竟其成本和代價(jià)太高,而且國內(nèi)企業(yè)往往只有其形式,見效比較慢。但畢竟CMM的思想是先進(jìn)的,因此建議參考CMM和SPP,改善以下幾個(gè)開發(fā)過程中的關(guān)鍵步驟。軟件工程的實(shí)踐證明越早發(fā)現(xiàn)軟件開發(fā)中的缺陷,越早糾正花費(fèi)的成本越低。以下幾個(gè)開發(fā)的關(guān)鍵步驟采取相應(yīng)的措施,比較容易操作,可早見效果: (1)需求管理 軟件開發(fā)的源頭是需求的準(zhǔn)確性,需求如果存在偏差,無論后面的開發(fā)工作質(zhì)量再高,也注定達(dá)不到用戶要求,而且需求變化引起軟件返工或反復(fù)修改,也必然導(dǎo)致項(xiàng)目失敗。所以首要的抓好需求分析環(huán)節(jié),注重需求管理: 改進(jìn)需求分析的方法,讓用戶能夠盡早、直接、全面的參與軟件需求。如:采取快速原型法,利用軟件原型界面、調(diào)查表格等手段,開發(fā)人員用用戶的專業(yè)語言討論軟件需求 每個(gè)項(xiàng)目促使用戶有關(guān)鍵的業(yè)務(wù)人員自始至終直接參與軟件需求,并負(fù)責(zé)確認(rèn)需求 學(xué)會(huì)引導(dǎo)用戶需求,如果用戶無法明確軟件需求,應(yīng)該采取措施引導(dǎo)用戶需求,至少要讓用戶認(rèn)可因自己提出需求延誤造成的工程延期和費(fèi)用增加 軟件需求必須形成詳盡的書面需求,需求的變更要由用戶方確認(rèn)。軟件需求變更的過程項(xiàng)目組形成歷史記錄,以便跟蹤需求變化或作為用戶方變更需求記錄材料 用戶方改變軟件需求,軟件技術(shù)人員負(fù)責(zé)技術(shù)方面的評價(jià),我方市場人員要參與更過程,負(fù)責(zé)市場方面的談判和風(fēng)險(xiǎn)評價(jià),以保證公司的市場利益 (2)加強(qiáng)軟件生命周期過程的提高質(zhì)量的措施 在需求、設(shè)計(jì)、編碼、測試、維護(hù)等各個(gè)開發(fā)階段設(shè)置關(guān)鍵檢查點(diǎn),通過技術(shù)評審、走查、測試等手段review每個(gè)重要里程碑階段的提交物,不斷審視我們開發(fā)過程中的階段工作產(chǎn)品,及時(shí)發(fā)現(xiàn)存在的問題,缺陷早預(yù)防,早糾正。 必須建立軟件項(xiàng)目的技術(shù)評審流程,預(yù)防項(xiàng)目的技術(shù)風(fēng)險(xiǎn),發(fā)揮公司集體的技術(shù)能力,避免帶著重大設(shè)計(jì)缺陷進(jìn)入編碼階段。但要避免技術(shù)評審形式化。需求分析說明書、軟件設(shè)計(jì)說明書、單元測試方案、綜合測試方案等要進(jìn)行技術(shù)評審。 編碼階段加強(qiáng)單元測試,可以借鑒測試驅(qū)動(dòng)的原理,盡可能實(shí)現(xiàn)自動(dòng)化測試;對代碼指定有經(jīng)驗(yàn)的人進(jìn)行走查。 軟件的綜合(或系統(tǒng))測試必須認(rèn)真執(zhí)行,測試的方法、測試方案的編寫可以學(xué)習(xí)借鑒一些好的經(jīng)驗(yàn)建立編程、開發(fā)規(guī)范,盡可能使用設(shè)計(jì)工具和新的設(shè)計(jì)方法,通過設(shè)計(jì)工具維護(hù)設(shè)計(jì)文檔,可以方便設(shè)計(jì)文檔的維護(hù)借鑒一些先進(jìn)的開發(fā)思想,XP方法、設(shè)計(jì)模式、RUP等 .改進(jìn)用人之道 企業(yè)應(yīng)該設(shè)法提高工作效率以減少總開發(fā)時(shí)間,從而降低人力資源成本。但是“手工作坊式”的管理模式既無法滿足大型軟件項(xiàng)目的管理要求,也不利于企業(yè)人才培養(yǎng)和隊(duì)伍建設(shè)?!笆止ぷ鞣弧逼髽I(yè)最明顯的特點(diǎn)就是一個(gè)項(xiàng)目依賴于一個(gè)或幾個(gè)“有手藝的師傅”,也就是所謂技術(shù)上的“?!比?,他們離職隊(duì)項(xiàng)目會(huì)造成重大影響,而且他們也可以以此要挾公司。另外,他們的“手藝”是不愿意外傳的,整個(gè)企業(yè)的技術(shù)進(jìn)步和交流都受到影響。 企業(yè)需要建立“流水線”一樣的工程化軟件過程,建立過程規(guī)范,發(fā)揮集體的開發(fā)能力,才能避免“手工作坊”式的開發(fā)。因此,要“用正確的人”,首先要改進(jìn)企業(yè)的人才觀,不單單重視技術(shù)開發(fā)技能,重視溝通合作能力,重視對工程規(guī)范的執(zhí)行能力,而不是去鼓勵(lì)員工成為單一的技術(shù)“?!比耍尮臼苤赜玫娜顺蔀楣疽?guī)范化、工程化管理真正需要的人。建立這樣的人才觀和人才使用機(jī)制,才能建立良好的人才培養(yǎng)的土壤,能夠創(chuàng)造良好的人才培養(yǎng)機(jī)制,企業(yè)才具有“造血”機(jī)能。有了這樣的人才,也就非常容易做到在軟件過程規(guī)范的下,“正確的用人”。這樣會(huì)形成良性循環(huán),企業(yè)也能吸引更高水平的人才的加盟。認(rèn)為雇傭幾個(gè)精通某些開發(fā)工具的程序員就能夠完成好軟件開發(fā)項(xiàng)目的想法是一個(gè)誤區(qū)。 企業(yè)招聘員工的理想狀態(tài)是:以最低的工資招聘恰好滿足工作需要的人。企業(yè)沒有規(guī)范的管理,就算以高薪的條件聘請“救火隊(duì)員”,也難吸引高水平的人才的加盟。 .科學(xué)的項(xiàng)目管理和軟件過程管理CMM是企業(yè)長遠(yuǎn)發(fā)展的有效之道 從公司發(fā)展的長遠(yuǎn)來看,建立科學(xué)規(guī)范的項(xiàng)目管理和CMM質(zhì)量體系是有效之道,公司發(fā)展到一定階段,科學(xué)的工程化管理和項(xiàng)目管理是企業(yè)必須練好的內(nèi)功。
信息發(fā)布:廣州名易軟件有限公司 http://www.jetlc.com
|