本書按照軟件開發過程模型的順序,并結合相對完整的實踐案例,系統地介紹基本過程、原埋和方法等實用的軟件工程知識。第1~4章介紹軟件工程基本概念、過程建立、質量保證、項目管理和系統思維等貫穿整個軟件生存期的保護性活動及其方法;第5~10章順序介紹從整個計算機系統的可行性研究、軟件的需求分析、設計、編碼、測試到維護等軟件開發全過程各個階段的活動、任務及其方法,其中,第6—7章結合案例“圖書管理系統”分別介紹兩種最常用的系統分析與設計方法,即結構化和面向對象分析與設計方法。為』,配合教學,本書每章均有教學要點、小結和思考題,附錄中有“軟件上程實踐指導書”和系統的設計文檔案例 本書系在總結編者多年的實際軟件項目開發和相關課程教學經驗的基礎上編寫而成的,內容及其編排順序可以讓讀者較為真切地體會和掌握如何在軟件開發過程中運用軟件工程的實用知以,體驗軟件開發丁程化的全過程,以便能盡快適應軟件開發工程化的要求。
本書既可作為高等院校計算機及相關本、專科專業的實用軟件工程或軟件工程概論教材,也可作為軟件開發和管理人員的閱讀參考書。為方便教師教學,本書配有免費電了課件,歡迎選用本書作為教材的老師登錄www.cmpcdu.com下載。
前言
第1章 軟件工程概述
1.1 軟件工程產生背景
1.1.1 軟件特點及分類
1.1.2 軟件危機
1.2 軟件工程的要素
1.2.1 軟件翻里的定義
1.2.2 軟件工程三要素
1.2.3 軟件丁程原理與原則
1.3 軟件過程與軟件生存周期
1.3.1 軟件過程的概念
1.3.2 軟件過程的構造
1.3.3 軟件生存周期
1.4 軟件工程方法學與軟件開發模型
1.4.1 軟件工程方法學 前言
第1章 軟件工程概述
1.1 軟件工程產生背景
1.1.1 軟件特點及分類
1.1.2 軟件危機
1.2 軟件工程的要素
1.2.1 軟件翻里的定義
1.2.2 軟件工程三要素
1.2.3 軟件丁程原理與原則
1.3 軟件過程與軟件生存周期
1.3.1 軟件過程的概念
1.3.2 軟件過程的構造
1.3.3 軟件生存周期
1.4 軟件工程方法學與軟件開發模型
1.4.1 軟件工程方法學
1.4.2 軟件開發模犁
1.5 軟件開發工具與環境
1.5.1 軟件工具
1.5.2 軟件開發環境
本章小結
思考題1
第2章 軟件工程標準化與工程化
2.1 軟件工程標準
2.1.1 軟件工程標準概述
2.1.2 軟件工程標準的層次
2.1.3 我國的軟件標準
2.2 軟件文檔與編寫要求
2.2.1 文檔的分類
2.2.2 文檔編制的要求
2.3 軟件質量
2.4 軟件質量保證與過程改進
2.4.1 質量保證的概念
2.4.2 軟件過程改進
2.4.3 軟件過程成熟度模型
2.4.4 ISO9000標準及軟件質量認證
2.4.5 軟件過程工程化
本章小結
思考題2
第3章 軟件項目管理
3.1 軟件項目管理概述
3.2 軟件項目啟動與計劃
3.3 軟件項目人員組織與技能
3.3.1 項目組織結構的形式
3.3.2 程序設計小組的形式
3.3.3 人員配備
3.4 軟件項目實施與控制
3.4.1 軟件項目風險管理
3.4.2 軟件項目進度管理
3.4.3 軟件項目質量管理
3.5 軟件配置管理
本章小結
思考題3
第4章 系統工程與需求工程方法
4.1 系統思維方法
4.1.1 系統的概念
4.1.2 系統思維
4.1.3 系統分析員
4.2 計算機系統工程
4.3 需求獲取方法
本章小結
思考題4
第5章 可行性研究
第6章 結構化分析與設計
第7章 面向對象分析與設計
第8章 編碼與實現
第9章 軟件測試
第10章 軟件維護
附錄
附錄A 圖書管理系統可行性研究報告
附錄B 圖書管理系統項目開發計劃
附錄C 圖書管理系統需求規格說明書
附錄D 圖書管理系統軟件改計規格說明書
附錄E 軟件工程實踐指導書
參考文獻
第1章 軟件工程概述
教學要點:本章首先介紹軟件工程產生的背景、軟件的基本概念、軟件工程的定義及其要素,而后圍繞軟件工程中的過程、方法和工具三要素進一步介紹軟件過程與軟件生命周期、軟件工程方法學和軟件開發工具與環境的主要含義,以使學習者對軟件主程有一個較全面的認識和理解。
重點掌握:軟件、軟件三要素和軟件工程化的含義。
1.1 軟件工程產生背景
人們對軟件的認識和理解有一個逐步深入的過程,直到現在還有許多人錯誤地認為軟件就是程序。實際上,軟件是由計算機程序、數據及文檔組成的。準確地說,軟件是當它被執行時提供所希望功能和性能的計算機程序,以及使得程序能夠適當地操作信息的數據結構和描述程序的操作使用的文檔。
雖然軟件已經成為基于計算機的系統及相關產品的關鍵因素,但它不能脫離其運行環境而獨立發揮作用,軟件只是計算機系統或產品的一個組成部分,軟件與硬件、數據庫、人、過程等共同構成一個相互聯系和相互作用的計算機系統。另外,軟件本身又是一個內部組成部分之間相互聯系和作用的整體,通常也可稱為軟件系統。系統的特點要求開發軟件時必須使用系統思維充分地綜合考慮軟件內部之問及其與計算機系統其他組成元素之問的聯系。同時計算機應用范圍及其所需軟件規模在日益擴大,導致了計算機發展初期的基于程序設計的思維無法保證開發出有一定規模的高質量軟件,在軟件開發過程中出現了一些問題,通常統稱為軟件危機。
……