軟件開發首先應該進行可行性研究,編寫可行性研究報告,根據報告進行開發。
可行性研究的目的,就是用最小的代價在儘可能短的時間內確定問題是否能夠解決。它壓縮簡化了系統分析和設計的過程,也就是在較高層次上以較抽象的方式進行系統分析的過程。如果在項目開始進行前,沒有進行可行性研究,當開發時遇到問題且該問題根本得不到解決,那麼之前在這項工程上所有的花費都只能是浪費。
可行性研究報告
一.問題定義
軟件需求分析功能和性能的依據
1.內容:包括問題背景,開發系統的現狀,開發的條件與理由,總體要求,問題性質,類型轉換,什麼目標,開發條件,環境要求
2.步驟:系統分析人員到問題現場,(聽取用戶要求,調查開發的背景理由,看用戶的報告,加工整理,與用戶討論,改進,寫出定義報告,確定可行性研究方向)
二.可行性研究
討論方面:
1.經濟可行性
2.技術可行性
3.操作可行性
4.法律可行性
5.時間可行性
三.步驟:
1.複查系統模型和目標
2.研究正在使用的系統
3.導出系統的高層邏輯模型(重要)
4.想用戶推薦建議方法
5.推薦行動方針,做出一個關鍵性的決定
6.草擬開發計劃,寫出可行性論證報告
7.提交上級審查
四.軟甲計劃內容
•軟件範圍:功能模型,軟件能力對硬件的要求,接口界面的性質和複雜性
•環境資源:人力資源,硬件,軟件,進度表
五.軟件價格估計
•參數化算法:c=f(Vi)
•代碼行價格估算:源代碼行;勞動量;軟件生產率;LOC計算方法
•任務分解法:把軟件工程分解爲軟肝相對獨立任務,分別估計並累加
•自動估計成本方法:需要有良好的數據量系統支持
六.成本收益分析:
1.成本估計:
自頂向下:先估算系統再估計子系統
自頂向下:先估計每個模塊再合成整體成本
2.效益分析法:運行費,系統的經濟效益