軟體的開發階段
軟體定義階段,軟體開發階段,軟體的運作和維護
軟體定義階段
了解需求--确定目标--分析可行性--采取實作政策(系統需要完成功能)--估計成本和資源--制定進度表
正如上述所言,軟體需求工程正是軟體定義階段的第一步。
軟體需求過程
一、需求的擷取
在實際的需求擷取中,可能會存在以下的一些問題:
1、客戶說不清楚需求
2、需求自身經常變動
3、分析人員與客戶了解有誤等多方面的原因。
在此時,我們需要一定的解決方法:
1、進行需求調查的人員可以提前了解客戶的工作内容及環境,
2、在實際的調查中分析穩定和易變需求
3、在執行的過程中劃分問題域及子產品。問題劃分為行為,行為對應軟構件中的接口,問題域對應軟體子系統中的軟構件
可采用的手段有:
1、實地考察
2、調查問卷
3、針對不清楚需求的使用者可采取制作軟體的原型,根據原型來提出需求等方法
4、客戶直接交流
5、分析優秀或蹩腳的同類軟體
二、需求分析模組化
目的是用模組化來表現系統中的關鍵方面
分類:
1、域模組化:對問題域建立相應的模型并且把它劃分為若幹個内聚組的過程。在抽象模型中捕獲業務流程、規則和資料。
2、用例模組化:各種參與者(人和其他系統)和要分析的系統之間的主要互動。用例應該說明系統如何支援域和業務流程模型中的業務流程。
3、元件和服務模組化:子系統、子產品群組件的層次結構配置設定需求和職責。每個元素作為一個自包含的單元,以用于開發、部署和執行的目的。元件模型的元素由它們所提供和使用的接口來進行規定。在這裡,沒有考慮其中的内部細節。
4、性能模組化:通過各種各樣的方式來度量性能。
三、需求規約
需求規格說明書的編寫方法,具體見GB8567--88
四、需求評審
需求評審的關鍵 :從不同的角度對需求評審方法進行論述。
1、充分準備評審好角度的軟體需求說明書,是進行有效需求評審的前提。
2、根據項目的具體情況,需要召開設計評審、測試用例評審、功能評審(一般由開發召開)
3、分層次評審,使用者的需求是可以分層次的,一般而言分成以下層次:
①目标性需求,定義整個系統需要達到的目标;
②功能性需求,定義了整個系統必須完成的任務;
③操作性需求,定義了完成每個任務的具體的人機互動;目标性需求是企業的高層管理人員所關注的