Posted on 2007-07-23 17:03
ricki 閱讀(336)
評論(0) 編輯 收藏 所屬分類:
軟件測試規范
如今,軟件開發越來越復雜,軟件功能也越來越豐富。而幾乎所有成熟的商業軟件,都是靠一個開發團隊齊心協力的血汗結晶。“羅馬不是一天建成的!”,當我們震撼于Microsoft Windows的驚世巨著的同時,也道聽途說了微軟公司軟件工程是如何的完善規范。的確,集數百名員工幾年的共同努力之大成,軟件項目管理的成敗是控制開發成本的關鍵環節。這里面,少不了貫穿其中的重要步驟----軟件文檔。軟件文檔可以分為開發文檔和產品文檔兩大類。開發文檔包括:《功能要求》、《投標方案》、《需求分析》、《技術分析》、《系統分析》、《數據庫文檔》、《功能函數文檔》、《界面文檔》、《編譯手冊》、《QA文檔》、《項目總結》等。產品文檔包括:《產品簡介》、《產品演示》、《疑問解答》、《功能介紹》、《技術白皮書》、《評測報告》、《安裝手冊》、《使用手冊》、《維護手冊》、《用戶報告》、《銷售培訓》等。
一、開發文檔
1. 《功能要求》--來源于客戶要求和市場調查,是軟件開發中最早期的一個環節??蛻籼岢鲆粋€模糊的功能概念,或者要求解決一個實際問題 ,或者照同類軟件的一個功能。有軟件經驗的客戶還會提供比較詳細的技術規范書,把他們的要求全部列表書寫在文檔中,必要時加以圖表解說。這份文檔是需求分析的基礎。
2. 《投標方案》--根據用戶的功能要求,經過與招標方溝通和確認,技術人員開始書寫《投標方案》,方案書一般包括以下幾個重要的章節:前言--項目背景、公司背景和業務、技術人員結構、公司的成功案例介紹等。需求分析--項目要求、軟件結構、功能列表、功能描述、注意事項等。技術方案--總體要求和指導思想、技術解決方案、軟件開發平臺、網絡結構體系等。項目管理--描述公司的軟件開發流程、工程實施服務、組織和人員分工、開發進度控制、軟件質量保證、項目驗收和人員培訓、軟件資料文檔等。技術支持--公司的技術支持和服務介紹、服務宗旨和目標、服務級別和響應時間、技術服務區域、技術服務期限、授權用戶聯系人等。系統報價--軟、硬件平臺報價列表、軟件開發費用、系統維護費用等。項目進度--整個項目的進度計劃,包括簽署合同、項目啟動、需求分析、系統分析、程序開發、測試維護、系統集成、用戶驗收、用戶培訓等步驟的時間規劃。
3. 《需求分析》--包括產品概述、主要概念、操作流程、功能列表和解說、注意事項、系統環境等。以《功能要求》為基礎,進行詳細的功能分析(包括客戶提出的要求和根據開發經驗建議的功能),列出本產品是什么,有什么特殊的概念,包括那些功能分類,需要具備什么功能,該功能的操作如何,實現的時候該注意什么細節,客戶有什么要求,系統運行環境的要求等。這里的功能描述跟以后的使用手冊是一致的。
4. 《技術分析》--包括技術選型、技術比較、開發人員、關鍵技術問題的解決、技術風險、技術升級方向、技術方案評價,競爭對手技術分析等。以《需求分析》為基礎,進行詳細的技術分析(產品的性能和實現方法),列出本項目需要使用什么技術方案,為什么,有哪些技術問題要解決,估計開發期間會碰到什么困難,技術方案以后如何升級,對本項目的技術有什么評價等。
5. 《系統分析》--包括功能實現、模塊組成、功能流程圖、函數接口、數據字典、軟件開發需要考慮的各種問題等。以《需求分析》為基礎,進行詳細的系統分析(產品的開發和實現方法),估計開發期間需要把什么問題說明白,程序員根據《系統分析》,開始在項目主管的帶領下進行編碼。
6. 《數據庫文檔》--包括數據庫名稱、表名、字段名、字段類型、字段說明、備注、字段數值計算公式等。以《系統分析》為基礎,進行詳細的數據庫設計。必要時可以用圖表解說,特別是關系數據庫。
7. 《功能函數文檔》--包括變量名、變量初植、功能,函數名,參數,如何調用、備注、注意事項等。以《系統分析》為基礎,進行詳細的說明,列出哪個功能涉及多少個函數,以便以后程序員修改、接手和擴展。
8. 《界面文檔》--包括軟件外觀、界面素材、編輯工具、文件名、菜單、按鈕和其它界面部件的要求,這里與軟件完成后的運行界面是一致的。
9. 《編譯手冊》--包括服務器編譯環境、操作系統、編譯工具、GNU的C++編譯器版本信息、目錄說明、程序生成、源程序文件列表、Makefile配置及其相關程序的對應關系列表??蛻舳说木幾g過程、編譯結果、編譯示例、編譯環境、操作系統、編譯工具、源文件列表和制作安裝程序的過程。
10. 《QA文檔》--包括產品簡介、產品原理、產品功能列表、功能描述、功能流程、執行結果、數據庫結構、測試要求等,提供給軟件測試人員使用。
11. 《項目總結》--包括項目簡介、項目參與人員和開發時間