軟體工程概論第一章:軟體工程概述
目錄
- 軟體工程概論第一章:軟體工程概述
- 前言
- 一、軟體工程是什麼?
-
- 1、問題求解
-
- (1)分析
- (2)組合
- 2、軟體工程概念
- 3、計算機科學與軟體工程概念對比
- 二、錯誤,故障,失效名詞辨析
-
- 1、錯誤
- 2、故障
- 3、失效
- 4、三者關系
- 三、什麼是好的軟體?
-
- 1、不同的品質觀
- 2、考慮品質的三種方法
- 3、産品品質
- 4、過程品質
- 5、商業環境背景下的産品品質
- 四、軟體工程涉及人員
- 五、系統的方法
-
- 1、系統的組成
- 2、系統的定義
- 六、建構系統的過程
- 七、團隊成員
前言
西電大二下學期軟體工程概論複習期間,對于這一門學科進行了總結複習,整理了相關的知識點與概念。以下是完整版軟體工程概論複習資料資源已傳至CSDN下載下傳中。
完整版知識點資源
一、軟體工程是什麼?
1、問題求解
問題求解包括分析群組合兩個部分,通過分析問題來确定問題的本質含義,再基于分析來合成解決方案
(1)分析
将一個大問題分解成更小的、可以了解的部分,并且了解他們之間的聯系
(2)組合
将小的子產品組合成大的結構
2、軟體工程概念
軟體工程師使用工具、技術、過程和範型提高軟體産品品質。
(1)Method(技術):産生結果的規範化過程
(2)Tool(工具):用于以更好的方式完成某事的儀器或自動化系統
(3)Procedure(過程):生産産品的工具和技術的組合,用于産生特定的産品
(4)Paradigm(範型):建構産品的哲學或方法(例如,面向對象與結構化方法)
3、計算機科學與軟體工程概念對比
(1)軟體工程:使用計算機和軟體技術作為解決問題的工具的學科。
(2)計算機科學:研究計算機結構和理論以及計算機功能的學科。
(3)關系:軟體工程是計算機科學的一部分,因為軟體工程師應用計算機科學研究的成果來建構工具和技術以滿足客戶的需求。
(4)示意圖:

二、錯誤,故障,失效名詞辨析
1、錯誤
描述人們在軟體開發活動中出錯的情況。
2、故障
錯誤産生時會發生故障,故障是站在開發人員的視角所看待問題,屬于内部視圖。
3、失效
指系統違背了它應有的型為,失效是站在使用者的視角看待問題,屬于外部視圖。
4、三者關系
是以,我們需要減少錯誤,必須考慮對系統意向不到的使用方式,思考它會被如何濫用,假定被濫用後如何進行應對。
三、什麼是好的軟體?
1、不同的品質觀
(1)先驗觀點:品質是我們可以認知但無法定義的東西
(2)使用者觀點:品質就是恰好達到目的
(3)制造觀點:品質就是符合規格說明
(4)産品觀點:品質與産品特性息息相關
(5)基于價值的觀點:取決于客戶願意為此支付的金額
2、考慮品質的三種方法
(1)The quality of the product(産品品質)
(2)The quality of the process(過程品質)
(3)The quality of the product in the context of the business environment(商業環境背景下的産品品質)
3、産品品質
(1)不同的利益相關者可能有不同的标準:
使用者判斷外部特征(例如,正确的功能),設計人員和維護人員判斷内部特征(例如,故障類型),是以,需要品質模型将使用者的外部視圖與開發人員的内部視圖聯系起來
(2)模型:McCall’s quality model
4、過程品質
(1)開發維護過程的品質與産品品質一樣重要;活動出錯,産品也會出錯
(2)模型舉例:
SEI’s Capability Maturity Model (CMM)
ISO 9000
Software Process Improvement and Capability determination (SPICE)
5、商業環境背景下的産品品質
(1)商業價值與技術價值同等重要
(2)商業價值的量化方法:投資回報率(ROI)
(3)ROI 對于不同群體有不同的解釋:降低成本、預測節省、提高生産力和成本
(4)例:工業界是工作量,而公司是時間和人力成本
四、軟體工程涉及人員
1、客戶:為軟體系統知夫費用的公司,組織,人員
2、開發者:建構軟體系統的公司、組織或個人
3、使用者:實際使用系統的人
五、系統的方法
1、系統的組成
(1)活動:發生在系統中的某些事情,描述為某些觸發器所引起的事件,通過改變特性将一個事物轉變為另一個事物
(2)對象:活動中涉及到的要素(例如具有固定格式的個人資訊記錄;也可以是獨立存在的個體;或者某個類型的特殊化執行個體)
(3)關系:定義對象和活動之間的互動
(4)系統邊界:決定了一組輸入的來源和輸出的目的地
2、系統的定義
我們把系統定義為一組事物的集合:一組對象,一組活動,對象與活動之間的關系,系統邊界的定義。
六、建構系統的過程
需求分析與定義,系統設計,程式設計,編寫程式,單元測試,內建測試,系統測試,系統傳遞,維護
七、團隊成員
需求分析師:與客戶一起識别和記錄需求
設計者:對我們應該做的系統生成系統級描述
程式員:編寫代碼行來實作設計
測試人員:捕捉故障
教育訓練師:向使用者展示如何使用系統
維護團隊:修複稍後出現的故障