軟體業容易創造出被動收入
因為其有項特質:一次投入開發,便可以多次賺取銷售的收入
尤其是企業愛用的那些軟體
因為有版權問題牽扯到法律責任
因此公司為了使用軟體每年便付出大筆錢去取得授權
凸顯出軟體開發流程的重要性
好的軟體才有辦法生存得久
否則很快就會被取代
軟體開發生命週期(Software Development Life Cycle,SDLC)
大致上分成幾個階段
系統規劃
主要是業務單位會跟開發人員開會討論軟體開發目標和可行性做最初步的評估
需求分析
此階段通常會產出一份系統需求的文件
內容包括了需求內容和初估的成本及帶來的效益
還有開發策略的基本規劃
軟體設計
主要會設計出使用者看到的介面
並將系統需要的功能皆設計完成
輸入和輸出也會做好確認
大致上系統的架構也都初步成形了
會產出系統的規格書供專案的開發人員參考
程式建置
此步驟會將軟體設計階段所規劃的各種功能實踐
寫出具邏輯性的程式碼
並確保系統是可以正常運作的
軟體測試
再來就進入測試階段
一般而言會有分 UT -> SIT -> UAT 這幾種方法
而通常測試案例應該在開發前就需要先設計好
來確保開發結果是符合預期
並嚴謹地去修正系統的問題
系統維護
在系統正式上線後
接下來才是面臨到真正的考驗
畢竟前置作業花了這麼多心血就是為了這一刻
期望能讓使用者滿意並越來越多人願意購買
若系統沒有定期維護的話
不旦易受到資安的威脅
更容易流失客戶
而且像瀏覽器也有部分逐漸被淘汰
框架也不斷地更新
也必定對軟體造成影響
而使用這套SDLC的流程雖然讓系統的開發變得有跡可循
也具備明確的目標和文件
然而為了要有完善的設計也需要花費不少時間成本
讓專案管理變得較麻煩
因此還有其他開發的方法像是敏捷法或是物件導向分析
不一定哪種最好,但總會有最適合你的