軟件工程中的系統是指基於計算機的系統,而基於計算機的系統是指經過完成處理某些預約義目標而組織在一塊兒的元素的集合或排列.系統工程過程依賴於應用領域而呈現不一樣的形式,當工做的語境集中於業務企業時,進行業務過程工程,當關注產品生產的過程時,稱爲產品工程.算法
系統工程主要包括如下5個方面的任務:數據庫
系統工程的第一步就是識別用戶對基於計算機的系統的整體要求,標識系統的功能和性能範圍,肯定系統的功能,性能,約束和接口.安全
系統模型一般可用圖形來描述,配合相應的文字說明,.必要時在系統建模後可構造原型,進行系統模擬,以分析所建的模型是否知足整個基於計算機的系統的要求.一個基於計算機的系統一般能夠考慮一下的模型:數據結構
硬件系統模型描述基於計算機系統中的硬件配置,通訊協議,拓撲結構,以及確保基於計算機系統的安全性,可靠性,性能等要求的措施.ide
基於計算機系統中的軟件部分能夠分爲若干個子系統,軟件系統模型描述各個子系統的功能,性能等要求,各軟件子系統在硬件系統中的部署狀況,以及軟件子系統之間的交互.性能
人機接口模型描述人如何與基於計算機的系統進行交互,包括用戶環境,用戶的活動,人機交互的語法與語義等.設計
數據模型主要描述基於計算機的系統使用了哪些數據庫管理系統,若是使用多個數據庫管理系統還應描述它們之間的數據轉換方式,必要時可給出主要的數據結構.blog
開發一個基於計算機的系統須要必定的資金投入和時間約束,所以在系統工程階段對需開發的基於計算機的系統進行成本估算,並做出進度安排.接口
可行性分析主要從三方面進行:圖片
主要進行成本效益分析,從經濟角度肯定系統是否值得開發.
效益能夠分爲社會效益與經濟效益,經濟效益包括使用基於計算機的系統後可增長的收入和可節省的運行費用.社會效益指使用基於計算機的系統後對社會產生的影響,一般社會效益只能定性地估計,經濟效益一般可用貨幣的時間價值,投資回收期和純收入來度量.
一般能夠利用年利率來衡量貨幣的時間價值,設銀行儲蓄的年利率爲i,現存入錢P,在n年後可獲得的錢F,則
所以,n年後獲得的F,摺合成如今的錢P的公式爲:
投資回收期是指累計的經濟效益正好等於投資成本所需的時間,投資回收期一般是用於評價開發一個工程的價值的重要經濟指標.
純收入指出了若干年扣除成本後的實際收入: 純收入 = 累計經濟效益 - 成本.
技術可行性主要根據系統的功能,性能,約束條件等,分析在現有資源和技術條件系統下可否實現.主要包括:
風險分析主要分析在給定的約束條件下設計和實現系統的風險,在可行性分析時,風險分析的目的是找出風險,評價風險的大小,分析可否有效地控制和緩解風險.
資源分析主要論證是否具有系統開發所需的各種人員,軟件,硬件等資源和相應的工做環境.
技術分析主要分析當前的科學技術是否支持系統開發的各項活動.在技術分析過程當中,分析員收集系統的性能,可靠性,可維護性和生產率方面的信息,分析實現系統功能,性能所需的技術,方法,算法或過程,從技術角度分析可能存在的風險,以及這些技術問題對成本的影響.
法律可行性主要研究系統開發過程當中可能涉及到的合同,侵權,責任以及各類與法律相關抵觸的問題.《中華人民共和國著做權法》與《計算機軟件保護條例》是可行性分析的主要依據.
完成以上任務後應生成一份系統規格說明,做爲之後開發基於計算機的系統的依據.系統規格說明描述基於計算機的系統的功能,性能與約束條件,描述系統的輸入與輸出控制信息給出各系統元素的模型,進行可行性分析,最後給出成本估算以及進度安排計劃.