很多(duō)人(rén)認爲軟件開發是程序員(yuán)的(de)開發工作,隻要描述好需求就可(kě)已開發軟件,這(zhè)種情況的(de)話(huà)隻能說明(míng)要開發的(de)軟件難度不高(gāo)或者開發人(rén)員(yuán)的(de)綜合能力強才有這(zhè)樣的(de)效果,但是實際上在進行軟件開發的(de)過程并沒有那麽簡單,下(xià)面給大(dà)家講解一下(xià)軟件開發從接觸到完成交付的(de)流程;
軟件開發大(dà)概分(fēn)爲可(kě)行性分(fēn)析、需求分(fēn)析、設計開發、開發、測試階段、運行維護,一個(gè)完整的(de)軟件誕生不是開發人(rén)員(yuán)一個(gè)人(rén)的(de)工作,他(tā)還(hái)需要和(hé)對(duì)方公司進行多(duō)次溝通(tōng)、确認、調整、測試等工作最終得(de)到一個(gè)相對(duì)完成的(de)軟件;
可(kě)行性分(fēn)析:
有些開發需求雖然看起來(lái)很合理(lǐ),但是也(yě)許技術沒辦法實現,也(yě)有可(kě)能軟件開發公司的(de)開發能力不能滿足這(zhè)樣的(de)需求,所以首先要根據軟件開發公司的(de)實力、和(hé)軟件開發技術的(de)成熟度的(de)原因進行可(kě)行性分(fēn)析并且确定這(zhè)個(gè)項目能不能進行;在這(zhè)個(gè)過程中對(duì)項目現成、技術、管理(lǐ)、效益等進行可(kě)行性分(fēn)析研究并及時(shí)與客戶溝通(tōng),輸出項目研究拔高(gāo),可(kě)行性分(fēn)析報告等;同時(shí)确定産品經理(lǐ)、架構工程師、UI、前端、後端、測試等組成部分(fēn);
需求分(fēn)析
通(tōng)過可(kě)行性分(fēn)析後,需要産品經理(lǐ)和(hé)客戶進行需求的(de)收集、分(fēn)析、确認等工作,并根據需求做(zuò)出産品原型圖,與客戶進行溝通(tōng)确認,客戶提出異議(yì)後再次進行修改,再确認知道雙方确認無誤;确認需求後,産品經理(lǐ)根據最終方案與開發人(rén)員(yuán)評估開發難度确認軟件報價、開發周期等信息;雙方同意簽訂合同,才算(suàn)成立項目;
設計開發
在項目成立後開發人(rén)員(yuán)根據産品原型圖、UI效果圖、詳細設計文件并選擇開發環境、開發語言、開發工具等統一各模塊和(hé)頁面命名規範;其中設計工程師根據産品需求對(duì)軟件結構和(hé)模塊做(zuò)分(fēn)析和(hé)設計,開發工程師根據需求定制項目開發計劃、模塊分(fēn)解表,UI工程師根據需求、原型圖與開發定制UI設計計劃,确保每個(gè)頁面的(de)UI設計,得(de)出方案根據開發方案技術開發構建框架、模塊編碼、編寫說明(míng)、注釋、方法等讓代碼可(kě)讀性更高(gāo);
測試階段:
首先開發工程師在開發過程中自測試、互測試初步消除BUG問題,接著(zhe)測試工程師根據開發階段形成描述文檔和(hé)程序架構設計測試用(yòng)例後對(duì)程序進行單元測試、集成和(hé)系統測試,并檢查指定功能是否完成,記錄錯誤,交給開發工程師;最後開發工程師根據測試提交的(de)測試文檔修改錯誤,再交由測試工程師測試;另外産品經理(lǐ)和(hé)測試爲普通(tōng)用(yòng)戶安排測試版本,讓客戶指出問題并收集最後在交由技術進行修改,在整個(gè)過程中要不斷完善各個(gè)端口的(de)操作手冊和(hé)使用(yòng)手冊;
運行維護:
運行維護在線操作、進行軟件驗收、産品經理(lǐ)培訓軟件用(yòng)戶,技術定期維護軟件并修改使用(yòng)過程中的(de)問題,
以上就是軟件開發的(de)全部流程,在以上内容中可(kě)以看出軟件開發不僅是開發人(rén)員(yuán)的(de)工作,還(hái)需要産品經理(lǐ)協同技術、客戶不斷協商解決各種問題,