第壹階段是市場調研:技術和市場必須結合才能體現最大的價值。
第二階段是需求分析:這個階段需要產生三樣東西,用戶視圖,數據字典,用戶操作手冊。用戶視圖是用戶(包括終端用戶和管理用戶)可以看到的頁面樣式,包含很多操作流程和條件。數據字典是指出數據的邏輯關系並對其進行排列的東西。當數據字典完成後,數據庫的設計就完成了壹大半。用戶操作手冊是指示操作過程的說明。請註意,用戶操作流程和用戶視圖是由需求決定的,所以要在軟件設計之前完成,為程序研發提供約束和準則。可惜太多公司不這麽做,而且因果顛倒,順序不分,所以開發工作和實際需求往往是割裂的。需求分析,除了以上工作,筆者認為作為項目設計人員,要對項目做壹個完整的性能需求陳述,因為往往性能需求只有懂技術的人才能理解,這需要技術專家和需求者(客戶或公司營銷部門)之間真正的溝通和理解。
第三階段是概要設計:初步劃分系統的功能模塊,給出合理的R&D流程和資源需求。作為壹種快速原型設計方法,完成輪廓設計後可以進入編碼階段。通常采用這種方法是因為所涉及的R&D任務屬於壹個新的領域,技術總監壹開始無法給出壹個明確的詳細設計規範,但這並不代表詳細設計規範不重要。事實上,在完成原始代碼後,快速原型法需要根據評估結果和經驗教訓再次進行詳細的設計步驟。
第四階段是詳細設計:這是考驗技術專家設計思維的重要關卡。詳細的設計說明應該以最幹凈的方式(黑盒結構)向編碼人員提供具體的模塊,以最大化系統的整體模塊化;壹個好的詳細設計規範可以最小化編碼的復雜性。其實嚴格來說,壹份詳細的設計說明書應該詳細提供每個功能的每個參數的定義。從需求分析到概要設計,再到完成詳細設計說明書,壹個軟件項目應該是完成了壹半。換句話說,壹個大型軟件系統在完成壹半的時候,實際上還沒有開始壹行代碼的工作。那些把做軟件簡單理解為寫代碼的程序員,從根源上就犯了錯誤。
第五階段是編碼:在標準化的R&D過程中,整個項目過程中的編碼工作最多不會超過1/2,通常是1/3的時間。所謂磨刀不誤砍柴工,設計過程完成的好編碼效率會大大提高。不同模塊之間的協調配合是編碼時最重要的。也許壹個小模塊的問題可能會影響整體進度。當我們編碼時,我們必須確保軟件開發的代碼是標準化的。互相溝通,解決突發事件是非常重要的。對於程序員來說,bug永遠存在,妳必須永遠面對這個問題。大名鼎鼎的微軟有沒有連續三個月不發補丁的時候?絕不!
第六個階段是軟件測試有很多種:根據測試執行者,可以分為內部測試和外部測試;按測試範圍可分為模塊測試和整體調試;根據試驗條件,可分為正常運行試驗和異常工況試驗;根據測試的輸入範圍,可以分為全覆蓋測試和抽樣測試。以上都很好理解,就不解釋了。總之,測試也是項目研發中非常重要的壹步。對於壹個大型軟件來說,3個月到1年的外部測試是很正常的,因為總會有不可預知的問題。在測試、驗收和最終幫助文檔完成後,整個項目將告壹段落。當然,未來還會有升級,維修等等。只要不想壹錘子買賣騙錢,就必須持續跟蹤軟件的運行狀態,持續修復升級,直到徹底淘汰軟件。
綜上所述,前四個階段在軟件開發過程中占的比重很大,真正編碼的時間很短。只有做好市場調研,才能有清晰的規劃,設計出詳細合理的開發步驟。我們可以流暢的編碼,開發出來的軟件是有價值的。有些軟件在開發上線之前就註定要失敗,所以軟件開發過程對於開發壹個好的軟件是非常重要的。
希望對妳有幫助!~