- 相關推薦
軟件項目建議書
軟件項目管理的對象是軟件工程項目。它所涉及的范圍覆蓋了整個軟件工程過程。一起來看看軟件項目建議書,僅供大家參考!謝謝!
一、項目啟動(項目開工會)
了解項目干系人及其利害關系。
所有項目組成員是否到位,如到位則拿到項目開發人員的簡歷,詳細了解每個開發人員的情況(可能會組織到客戶方面試)。
根據項目需求規格列出項目功能列表,并根據開發人員技術等情況創建WBS。
根據項目時間、資源等情況規劃項目初步開發計劃(各里程碑時間點的粗略計劃,每個時間段投入多少人力等)。
確定各種軟硬件需求,如:版本控制服務器、數據庫服務器、開發服務器、缺陷管理軟件服務器、開發工具等。
參與人員:
項目經理、項目總監、全體項目組成員、用戶方領導、用戶方參與人員、其它主要項目干系人
項目啟動會議的目標:
讓整個項目組的成員相互認識
建立項目的工作關系和溝通關系
讓大家明確團隊的工作目標
讓大家了解項目的當前狀態
一起審閱項目計劃
找出項目的難點或可能出問題的環節
分配小組和個人的角色與責任
獲得小組和個人的承諾
實施建議:
對立項管理過程域產生的所有有價值的文檔如《立項建議書》、《立項調查報告》、《立項可行性分析報告》、《立項評審報告》進行配置管理。做好必要的保密工作。
由于每個項目都要占用機構的資金和資源,立項評審一定要嚴格。建議對機構高層管理人員進行必要的立項管理培訓。
輸出文檔包括:
項目風險管理計劃、工作任務分解結構(WBS)、項目進度計劃、配置管理計劃、質量保證計劃、TimeSheet、開發規范文檔、測試計劃
二、需求分析
需求調研:與客戶就其所需要的功能、流程、操作等需要為基礎,而且需求決策者必須是項目經理或部門負責人。
列一個需求管理(包括詳細的溝通計劃及要求溝通)計劃,考慮需求溝通中的人員、資源、時間的要求。
雖然有些因素是客戶方造成的,但應該站在其角度上,為其考慮一些存在的客觀及主觀因素。
注意與項目成員之間的溝通方式及對團隊的建設。
把握需求分析的進度及質量是否符合要求。
根據交互設計原型與客戶交流需求分析是否達到要求及功能點是否有遺漏。
有哪些文檔或數據是由客戶提供的,這些數據是否需要在新開發的系統中維護等。
實施建議:
先對項目成員進行培訓,讓他們掌握必要的需求開發技能。(比如需求開發要做什么,做到什么程度,需要注意哪些問題等)
對需求開發過程域產生的所有有價值的文檔進行配置管理。
需求的建模分析有較高的技術難度,項目成員應當根據自身水平進行取舍。
交互設計中應以用戶的易用性為前提然后考慮在這樣設計的前提下技術上實現是否有難度或者工作量超過前期設計的百分之二十.
(多用TAB形式,盡量讓客戶的某個角色的任務可以在一個頁面中完成,一般用上下文菜單,避免用系統的菜單,一個功能塊一般只需要一個入口)
輸出文檔包括:
產品需求分析說明書、數據流程圖、系統應用架構圖、交互設計原型、需求分析模型(RQM)
三、概要設計
確定影響系統設計的約束因素:本系統應當遵循的標準或規范、軟件、硬件環境(包括運行環境和開發環境)的約束、接口/協議的約束、軟件質量的約束、隱含約束等。
確定設計策略:擴展策略、復用策略、折衷策略。
系統分解與設計:將系統分解為若干子系統,確定每個子系統的功能以及子系統之間的關系;將子系統分解為若干模塊,確定每個模塊的功能以及模塊之間的關系。
數據庫概要設計。
輸出文檔:
產品概要設計說明書、數據概要設計模型(CDM)
四、詳細設計
確定功能模塊的參與者、數據庫表、輸入參數說明、前置條件、基本流程、異常流程、日志等信息。
各層次結構的接口定義
數據庫設計:邏輯設計—>物理設計->安全性設計->優化
實施建議:
先對系統設計人員進行“專題”培訓,讓他們掌握必要的系統設計技能。
由于國內絕大多數的大學不開設“用戶界面設計課程”,這導致大部分軟件開發人員不善于設計用戶界面。項目開發小組應當設法邀請用戶界面設計專家參與(或指導)本軟件的 界面設計。
對系統設計過程中產生的所有有價值的文檔進行配置管理。
輸出文檔:
產品詳細設計說明書、數據物理設計模型(PDM)、自定義數據類型及BO數據類型文件、數據字典、系統測試用例、對象模型(OOM)
五、Coding
軟件編碼,各接口的實現。
單元測試。
實施建議:
對開發人員進行“高質量程序設計”培訓,讓他們掌握編寫高質量程序的技能。
對開發人員進行“版本控制、代碼審查、測試、改錯”等方面的培訓,提高他們的工作效率。
開發小組根據項目的資源、時間等限制因素,可以適當地減少測試的工作量。
對實現與測試過程中產生的所有代碼和有價值的文檔進行配置管理。
輸出:
單元測試報告、代碼評審報告
六、集成測試
根據系統測試用例測試系統的功能性需求,保證系統的正常功能處理及異常處理是否正確。
用戶界面測試,重點是測試軟件系統的易用性和視覺效果等。
健壯性測試,測試軟件系統在異常情況下能否正常運行的能力。(容錯能力和恢復能力)
安全性測試(這種測試一般能通過建行的fortify 軟件評測即可)
如果產品需要安裝,那么還得經過安裝與反安裝測試
實施建議:
對系統測試人員進行必要的培訓,提高他們的測試效率。
項目經理和測試小組根據項目的資源、時間等限制因素,設法合理地減少測試的工作量,例如減少“冗余或無效”的測試。
系統測試小組根據產品的特征,可以適當地修改本規范的各種文檔模板。
對系統測試過程中產生的所有代碼和有價值的文檔進行配置管理。
為了調動測試者的積極性,建議企業或項目設立獎勵機制,例如:根據缺陷的危害程度把獎金分等級,每個新缺陷對應一份獎金,把獎金發給第一個發現該缺陷的人。
輸出:
系統測試報告、缺陷管理報告、操作手冊
七、客戶驗收
成果審查。驗收人員審查開發方應當交付的成果,如代碼、文檔等等。確保這些成果是完整的并且是正確有效的。
驗收測試。驗收人員對交付的產品進行全面的測試,確保產品功能、質量符合需求。
及時解決客戶方發現的問題。
輸出:
客戶驗收計劃、驗收測試用例、客戶驗收報告、驗收操作手冊
實施建議:
在客戶驗收之前,開發方對驗收人員進行必要的產品培訓。
開發方可以將系統測試用例給驗收人員參考,以減少設計測試用例的時間。
開發方人員應當熱情地協助驗收人員。對驗收人員發現的軟件缺陷馬上予以糾正;對于復雜的問題應當立即請示有關領導,不可拖延。在驗收期間不可與客戶爭吵,給客戶留下很好的印象。
對驗收過程中產生的所有有價值的文檔進行配置管理。
八、結項
計劃與實際情況對比:產品功能、工作成果、產品質量、投入人員、工作量、成本等
申請結項理由和項目自我評價
對項目進行綜合評估,總結經驗教訓。
有價值的結項管理至少包括三項內容:
1、對項目的有形資產和無形資產進行清算,既要防止資產流失,又要及時地利用這些資產。
2、對項目進行綜合評估。例如評估項目完成情況、項目質量、投入產出分析、項目的市場價值、項目對企業的貢獻等等。該評估報告可以作為考核項目人員業績的重要依據。
3、總結經驗教訓,使整個機構受益。