【東網(wǎng)集萃·干貨分享】如何避免軟件外包管理中的常見(jiàn)問(wèn)題?
發(fā)布時(shí)間: 2016-12-02 11:32:46
文/王智仙 通信研發(fā)部
軟件外包是這幾年公司在研發(fā)方面的重大管理策略。通過(guò)軟件外包以達到降低軟件研發(fā)成本的目的。如何在軟件外包管理中達到預期的效果?經(jīng)過(guò)近年參與和管理的外包項目,我總結了以下經(jīng)驗,避免軟件外包管理的常見(jiàn)問(wèn)題。
軟件外包廠(chǎng)家是在多家備選廠(chǎng)家中指定最合適的一家。我們通過(guò)廠(chǎng)家的研發(fā)能力、技術(shù)能力、在業(yè)內的經(jīng)驗、在業(yè)內的評價(jià) 、項目管理能力、人員素質(zhì)、報價(jià)及進(jìn)度安排等多個(gè)維度進(jìn)行綜合評估。在各種指標均衡的基礎上,價(jià)格越低越好,但價(jià)格不是第一要素,而應該側重在項目管理能力、人員素質(zhì)兩個(gè)指標上。
為什么說(shuō)重點(diǎn)在人員素質(zhì)和項目管理能力?眾所周知,在一個(gè)項目的全生命周期內,溝通是很重要的。項目實(shí)施過(guò)程中,能夠保持和諧的、及時(shí)的、有效的溝通是項目成敗的關(guān)鍵。所以外包廠(chǎng)家的人員素質(zhì)水平是很重要,一個(gè)溝通能力強、文檔編寫(xiě)能力強、有責任心的人會(huì )在項目上一心一意地投入。同時(shí)一個(gè)項目管理能力較強的公司,在項目的進(jìn)度管理、質(zhì)量管理、風(fēng)險管理等環(huán)節上會(huì )增加一份保障。
外包廠(chǎng)家確認后,如何保證產(chǎn)品按時(shí)按質(zhì)交付,主要從需求管理、開(kāi)發(fā)過(guò)程監控、軟件系統驗收、項目后期維護幾個(gè)方面進(jìn)行管控:
需求管理
在軟件項目開(kāi)發(fā)的早期,最主要的工作是明確軟件需求,但現實(shí)中往往會(huì )存在產(chǎn)品經(jīng)理對企業(yè)的業(yè)務(wù)需求理解不到位,加上業(yè)務(wù)需求會(huì )隨著(zhù)時(shí)間的推移而發(fā)生變化,造成軟件需求一直在發(fā)生變化,這也會(huì )導致項目在外包的過(guò)程中出現進(jìn)度、質(zhì)量變差的風(fēng)險。那么如何有效地預防此風(fēng)險呢?
我們可以采用以下方法來(lái)保證軟件需求的開(kāi)發(fā)和需求管理,以提高需求質(zhì)量:
1、利用原型準確把握用戶(hù)界面技術(shù),使系統達到最佳的可用性;
2、從用戶(hù)角度出發(fā),描述軟件的功能需求;
3、對需求進(jìn)行多角度分析,記錄需求變化歷史;
4、控制需求的變更,防止需求蔓延 。
開(kāi)發(fā)過(guò)程監控
在軟件外包項目開(kāi)發(fā)中,從需求工作開(kāi)始到外包廠(chǎng)家交付最終軟件系統,一般只有一次驗收,很多問(wèn)題要到最后的驗收階段才會(huì )暴露出來(lái),同時(shí)也難于控制項目的進(jìn)度,經(jīng)常導致項目延期。造成這些問(wèn)題的主要原因是外包項目開(kāi)發(fā)過(guò)程不透明,很難監控開(kāi)發(fā)的進(jìn)展情況。所以在軟件項目開(kāi)發(fā)過(guò)程中要設置多個(gè)里程碑,在每個(gè)里程碑處設有檢驗點(diǎn),要求采用迭代化軟件開(kāi)發(fā),通過(guò)多種管理辦法進(jìn)行監控:
1. 制定研發(fā)計劃
外包項目確定后,外包廠(chǎng)家根據項目需求說(shuō)明書(shū)、重要里程碑時(shí)間點(diǎn)等文檔,輸出詳細的《研發(fā)計劃》,并經(jīng)過(guò)雙方修改確認后,外包廠(chǎng)家應當嚴格按照計劃執行,按進(jìn)度要求完成任務(wù)。
在項目執行過(guò)程中,出現需求優(yōu)先級調整,需要馬上進(jìn)行《研發(fā)計劃》調整;
由于外包廠(chǎng)家原因導致進(jìn)度拖延的,需要及時(shí)與甲方明確所調整的時(shí)間,并修改研發(fā)計劃。
2. 制定溝通機制
外包過(guò)程管理,大部分時(shí)間都用在溝通上,項目在研發(fā)過(guò)程中,溝通是必不可少的環(huán)節,及時(shí)地、有效地溝通,是項目成功的關(guān)鍵:
簡(jiǎn)單的業(yè)務(wù)需求交流或問(wèn)題反饋,可以通過(guò)聊天工具QQ/微信直接溝通。問(wèn)題類(lèi)要記錄在問(wèn)題跟蹤列表;
緊急問(wèn)題處理可形成問(wèn)題文檔并記錄問(wèn)題跟蹤列表,并通過(guò)電話(huà)溝通;
較大問(wèn)題或業(yè)務(wù)需求,電話(huà)溝通不清楚的,須通過(guò)現場(chǎng)當面溝通并形成文檔;
項目負責人每天溝通一次項目情況;
每周一次進(jìn)行項目匯報交流,可通過(guò)視頻會(huì )議,有必要的時(shí)候需現場(chǎng)當面進(jìn)行項目交流(問(wèn)題分析、業(yè)務(wù)需求交流、進(jìn)度情況交流)。
3. 匯報研發(fā)進(jìn)度
為及時(shí)了解軟件外包項目情況,外包廠(chǎng)家每周必須提交《項目周報》,周報中必須說(shuō)明本周的任務(wù)完成情況、出現的問(wèn)題以及需協(xié)調的事宜。
針對緊急性高的項目,根據項目實(shí)際情況要求每天進(jìn)行工作情況匯報。
4. 監控代碼質(zhì)量
外包廠(chǎng)家的代碼規范,要嚴格遵循代碼規范,包括包的命名、代碼的注釋?zhuān)?/span>
在項目的執行過(guò)程中,對代碼進(jìn)行抽查。
5. 提交產(chǎn)品測試報告
產(chǎn)品在研發(fā)過(guò)程中外包廠(chǎng)家必須提交過(guò)程產(chǎn)物:
提供功能模塊的單元測試報告;
提供可運行的工程到甲方進(jìn)行部署驗證;
經(jīng)過(guò)功能驗證,記錄BUG跟蹤列表,并及時(shí)信息修復;
所有功能全部研發(fā)完成后,外包廠(chǎng)家需要提供完整的項目功能集成測試報告。
6. 反饋及跟蹤問(wèn)題
項目在研發(fā)過(guò)程中遇到的問(wèn)題,需形成問(wèn)題跟蹤列表。外包廠(chǎng)家每周提交問(wèn)題的解決情況,緊急問(wèn)題每天提供問(wèn)題處理情況,并修改問(wèn)題跟蹤列表。
軟件系統驗收
當軟件外包項目開(kāi)發(fā)完成之后,對外包廠(chǎng)家所提交的交付系統進(jìn)行驗收,驗收主要包括驗證和確認兩部分:
1、驗證主要是評估系統在功能上是否和需求定義相一致,檢驗系統在技術(shù)上是否達到一定質(zhì)量標準(可靠性、性能等);
2、確認主要是評估系統是否真正滿(mǎn)足了生產(chǎn)環(huán)境和業(yè)務(wù)運作的需要,這需要將系統部署到實(shí)際生產(chǎn)環(huán)境中去進(jìn)行檢驗,并需要業(yè)務(wù)部門(mén)的參與。
除了驗收軟件系統本身之外,還應對系統開(kāi)發(fā)過(guò)程中所有的產(chǎn)物如需求文檔、設計模型、測試計劃/報告等進(jìn)行驗收。
項目后續維護開(kāi)發(fā)
在系統上線(xiàn)之后,應該如何快速響應業(yè)務(wù)部門(mén)的各種變更請求?一方面是新的需求,另一方面在使用中發(fā)現的軟件缺陷需要得到及時(shí)修正。 由于軟件由外包廠(chǎng)家進(jìn)行編碼,對軟件缺陷的修正,廠(chǎng)家在免維周期內有義務(wù)進(jìn)行修正;針對新的需求,可與外包廠(chǎng)家簽署補充協(xié)議,進(jìn)行有償支撐。通過(guò)簽署長(cháng)期的合作協(xié)議,任務(wù)式外包方式是種很好的方式,即可快速響應業(yè)務(wù)需求,又能互利。