第二百一十六章 大傳送陣法(1 / 2)

聊著聊著,大家又談到了軟件開發的流程。

黃華山首先發表自己的看法。“軟件開發是一項係統工作,對開發流程有很多不同的認識,我看是不是能夠分為七個階段:

一是可研與計劃階段。主要確定軟件的開發目標和總的要求,進行可行性分析、投資——收益分析、製訂開發計劃,並完成應編製的文件。

二是需求分析和用戶辨識階段。對待開發的軟件進行市場需求和潛在用戶群體分析,並形成相應的分析報告。

三是框架設計和技術說明階段。主要是商討決定需要開發的軟件整個程序係統的基本處理流程、程序係統的組織結構、模塊劃分、功能分配、接口設計、運行設計、數據結構設計和出錯處理設計等,建立軟件總體結構和模塊間的關係,確定各模塊功能,定義各功能模塊的接口,設計全局數據庫和數據結構,並對一些特殊的實現手段或技術處理進行說明。

四是代碼編寫和模塊測試階段。編寫出各功能模塊的代碼和整個軟件係統的代碼,並對各功能模塊進行測試、修改、完善。

五是整體測試和修改完善階段。將完成代碼編寫的程序進行仿真測試、缺漏查找,並根據測試結果進行修改完善。

六是項目驗收和編寫用戶手冊階段。對完成測試並修改完善的軟件進行檢查、審查和評審,確定軟件是否達到軟件任務書的要求。同時組織編寫用戶手冊,向操作人員提供該軟件每一個運行的具體過程和有關知識,包括操作方法、問題處理等細節。

七是實際應用與售後維護階段。驗收通過的軟件可以向軟件交辦單位交付使用,並做好售後的用戶培訓、係統維護、版本升級等工作。”

“軟件開發有不同的類型,有針對某一職業、某一功能、某一機構的定向開發,有麵向行業、麵向社會、麵向市場的開發。雖然任何軟件開發的基本流程都是相同的,但不同類型的開發,其具體的操作流程也不完全相同。”賀俊明提出了自己的見解。

章岩笑著說:“我覺得從開發者的角度來說,軟件開發的流程,可以分為三個階段、八項工作、五大步驟。

三個階段是指計劃階段、開發階段、維護階段。

八項工作是問題定義、可行性研究、需求分析、總體設計、詳細設計、代碼編寫、測試修改、運行維護。

五大步驟是需求分析、方案設計、代碼實現、測試完善、發布維護。

它們之間彼此對應、互相滲透,構成了軟件開發的總體流程。

其實,對於麵向市場的開發,軟件的市場拓展、推廣營銷也應該屬於開發工作的範疇。”

黃華山、李慶豐、賀俊明都覺得有道理,分別點頭同意這個意見。

幾個人還談到了麵向對象編程存在的主要弊端,如繼承的香蕉猴子叢林問題、菱形繼承問題、脆弱的基類問題、層次結構問題,以及封裝的引用問題等等,探討了這些存在問題的解決辦法。

“任何一種編程語言都會有它的優缺點,人們很難創設出一種既簡單實用,又強大完美的編程語言。我們要做的,隻能是學好它,用好它,精心設計,揚長避短,解決問題。”眼看午飯時間就要到了,章岩最後總結道。