出版時間:2010-9 出版社:清華大學(xué)出版社 作者:李允中 頁數(shù):250
前言
作者編寫本書的目的在于提供完整的軟件工程思想及范例,引導(dǎo)讀者跳出以組件方式來看軟件,而改以系統(tǒng)的方式來看待整個軟件項目?! ”緯鴥?nèi)容共包含10章。第1章介紹軟件過程,就像算法一樣,合適的過程可以提高系統(tǒng)開發(fā)的效率,不合適的過程則會延宕項目的進行。組織或開發(fā)團隊必須依照自己的特性去設(shè)計自己的過程,本章所提僅是大架構(gòu)上的過程模式。目前在全世界所推行的CMMI過程改進方法,即是通過定義合適的過程來改善軟件開發(fā)的效率與產(chǎn)品的質(zhì)量,讓軟件開發(fā)過程與企業(yè)文化相融合?! 〉?章認識需求工程。需求工程是軟件開發(fā)的第一步,是后續(xù)設(shè)計、開發(fā)、實現(xiàn)的基礎(chǔ)。如果需求定義上出了問題,即使有好的設(shè)計與實現(xiàn)能力,也終究會產(chǎn)出不是使用者期待的產(chǎn)品或系統(tǒng)。然而,要建立正確的需求并不容易,它需要來自各種不同觀點的分析方法、溝通技巧與專業(yè)的領(lǐng)域知識。除此之外,需求的管理更是一門學(xué)問,許多項目因為沒有妥善地管理需求的變化,導(dǎo)致系統(tǒng)不斷地發(fā)散擴張而無法完成。本章的主題在于闡述需求擷取、建立與管理的方法和技巧。
內(nèi)容概要
本書由臺灣軟件工程領(lǐng)域領(lǐng)軍人物李允中教授執(zhí)筆,結(jié)合軟件產(chǎn)業(yè)與當(dāng)前教育,較為全面地介紹了軟件工程的重要概念和專業(yè)知識,培養(yǎng)學(xué)生在理論及應(yīng)用上的系統(tǒng)整合能力,從系統(tǒng)的角度來看待整個項目。全書共10章,內(nèi)容涵蓋軟件危機及軟件開發(fā)流程、需求工程、面向?qū)ο筌浖_發(fā)、軟件設(shè)計、軟件項目的計劃與管理、軟件的配置與管理、軟件工程的數(shù)學(xué)理論基礎(chǔ)、軟件過程改進等。 本書內(nèi)容豐富,講解清晰、易懂,并提供真實的項目案例,幫助讀者領(lǐng)悟真實的項目開發(fā)的困難和過程,從而意識到軟件工程的好處。本書適合作為高等院校計算機專業(yè)的教材,也可供項目管理及開發(fā)人員參考。
作者簡介
李允中教授(Dr.Jonathan Lee),1993年畢業(yè)于美國Texas A&M大學(xué)計算機科學(xué)系并獲博士學(xué)位,同年受聘任教于臺灣“中央大學(xué)”信息工程系,目前任信息工程系教授,兼計算機中心主任。李教授曾于1999~2002年擔(dān)任信息工程系主任,2003~2006年擔(dān)任軟件研究中心主任。在大學(xué)任
書籍目錄
第1章 軟件危機與開發(fā)過程 1.1 軟件危機 1.2 基本的軟件開發(fā)活動 1.3 軟件開發(fā)模型 1.3.1 瀑布模型 1.3.2 統(tǒng)一過程模型 1.3.3 極限編程模型 本章總結(jié) 思考練習(xí) 第2章 需求工程 2.1 需求的種類 2.2 需求工程 2.2.1 需求獲取 2.2.2 需求分析 2.2.3 需求規(guī)格化 2.2.4 需求確認 2.3 需求管理 本章總結(jié) 思考練習(xí) 第3章 面向?qū)ο筌浖_發(fā) 3.1 業(yè)務(wù)建模 3.1.1 用戶需求 3.1.2 用例建模 3.1.3 領(lǐng)域建模 3.2 面向?qū)ο蠓治? 3.2.1 對象分析 3.2.2 軟件架構(gòu) 3.2.3 用例實現(xiàn) 3.3 面向?qū)ο笤O(shè)計 3.3.1 用戶界面 3.3.2 數(shù)據(jù)存儲 3.4 面向?qū)ο髮崿F(xiàn) 3.4.1 類 3.4.2 繼承關(guān)系 3.4.3 連接關(guān)系 3.4.4 接口實現(xiàn) 3.5 目標(biāo)導(dǎo)向用例 3.5.1 確認角色 3.5.2 確認目標(biāo) 3.5.3 建立用例模型 3.5.4 評估目標(biāo) 本章總結(jié) 思考練習(xí) 第4章 軟件設(shè)計 4.1 軟件設(shè)計概論 4.1.1 抽象化 4.1.2 模塊化 4.1.3 內(nèi)聚性 4.1.4 耦合性 4.2 架構(gòu)設(shè)計 4.3 軟件設(shè)計策略與方法 4.3.1 通用策略 4.3.2 面向功能設(shè)計 4.3.3 面向?qū)ο笤O(shè)計 4.3.4 面向?qū)ο笤O(shè)計流程 4.4 軟件設(shè)計規(guī)則 4.4.1 軟件設(shè)計步驟 4.4.2 軟件設(shè)計文檔 4.5 高級軟件設(shè)計 4.5.1 設(shè)計模式 4.5.2 面向服務(wù)架構(gòu) 本章總結(jié) 思考練習(xí) 第5章 軟件項目計劃與管理 5.1 項目計劃書 5.2 項目范圍 5.2.1 項目初始 5.2.2 范圍規(guī)劃 5.2.3 項目范圍的驗證及變更控制 5.3 項目日程安排 5.3.1 項目日程計劃 5.3.2 項目日程控制 5.4 項目成本管理 5.4.1 成本預(yù)估 5.4.2 成本預(yù)算與控制 5.5 資源管理 5.5.1 人才招聘 5.5.2 人員管理 5.5.3 團隊管理 5.6 風(fēng)險 5.6.1 風(fēng)險分析 5.6.2 風(fēng)險控制 5.7 項目監(jiān)控 5.7.1 項目監(jiān)督 5.7.2 項目控制 5.8 項目的其他計劃 本章總結(jié) 思考練習(xí) 第6章 軟件測試 6.1 軟件測試的基本概念 6.1.1 驗證與確認 6.1.2 軟件測試的基礎(chǔ) 6.2 軟件測試規(guī)則 6.2.1 軟件測試步驟 6.2.2 軟件測試計劃書 6.3 軟件靜態(tài)分析 6.3.1 靜態(tài)分析的方法 6.3.2 評審會議 6.3.3 審查評估 6.4 軟件動態(tài)測試方法 6.4.1 測試用例設(shè)計方法簡介 6.4.2 測試覆蓋性 6.4.3 基本路徑測試 6.4.4 邏輯條件測試 6.4.5 數(shù)據(jù)流測試 6.4.6 循環(huán)測試 6.4.7 等價劃分法 6.4.8 邊界值分析法 6.4.9 因果圖 6.5 軟件動態(tài)測試策略 6.5.1 單元測試 6.5.2 集成測試 6.5.3 系統(tǒng)測試 6.5.4 安全測試 6.5.5 性能測試 6.5.6 煙霧測試 6.5.7 驗收測試 本章總結(jié) 思考練習(xí) 第7章 軟件質(zhì)量管理與保證 7.1 軟件質(zhì)量管理 7.1.1 質(zhì)量規(guī)劃 7.1.2 質(zhì)量控制 7.1.3 質(zhì)量保證 7.2 軟件質(zhì)量保證 7.2.1 sqa角色與工作 7.2.2 軟件質(zhì)量保證規(guī)劃 7.2.3 軟件質(zhì)量保證執(zhí)行 7.2.4 軟件質(zhì)量保證結(jié)果與追蹤 7.3 運用質(zhì)量模型提升軟件質(zhì)量 本章總結(jié) 思考練習(xí) 第8章 軟件配置管理 8.1 配置管理計劃與配置識別 8.2 軟件基線設(shè)置 8.3 軟件配置控制 8.4 軟件配置狀態(tài)記錄 8.5 軟件配置核實 本章總結(jié) 思考練習(xí) 第9章 軟件工程的形式方法論 9.1 形式方法的基本概念 9.1.1 形式方法的定義 9.1.2 形式語言與形式規(guī)范語言 9.1.3 形式方法的軟件開發(fā)周期 9.2 形式化規(guī)范技術(shù)的分類 9.2.1 代數(shù)式規(guī)范方法 9.2.2 基于模型的規(guī)范方法 9.3 軟件工程的數(shù)學(xué)理論 9.4 形式化規(guī)范語言 9.4.1 z語言 9.4.2 object-z語言 9.4.3 對象約束語言 9.5 形式規(guī)范語言與非形式規(guī)范 語言的整合 本章總結(jié) 思考練習(xí) 第10章 軟件過程改進 10.1 以模型為基礎(chǔ)的過程改進 10.2 cmmi的歷史演變 10.3 cmmi概述 10.4 過程領(lǐng)域介紹 10.4.1 過程管理類相關(guān)過程領(lǐng)域 10.4.2 項目管理類相關(guān)過程領(lǐng)域 10.4.3 工程類相關(guān)過程領(lǐng)域 10.4.4 支持類相關(guān)過程領(lǐng)域 本章總結(jié) 思考練習(xí) 附錄A 軟件工程個案研究——需求管理 A.1 投票系統(tǒng)簡介 A.2 開發(fā)單位開發(fā)背景概況 A.3 開發(fā)過程的導(dǎo)入 A.3.1 新項目——系統(tǒng)開發(fā)過程 A.3.2 維護系統(tǒng)或進行中項目的需求變更流程 A.3.3 維護系統(tǒng)需求擴建——系統(tǒng)開發(fā)流程 A.3.4 文件匯總 A.3.5 需求變更管理 A.4 新投票系統(tǒng)的開發(fā) 附錄B 詞匯對照表 參考文獻
章節(jié)摘錄
面向?qū)ο筌浖_發(fā)的主要思想,是將真實世界以對象封裝的形式進行建模。面向?qū)ο筌浖_發(fā)包括以下4個階段:業(yè)務(wù)建模、面向?qū)ο蠓治觥⒚嫦驅(qū)ο笤O(shè)計與面向?qū)ο髮崿F(xiàn)。在業(yè)務(wù)建模階段,針對用戶需求加以分析,建立系統(tǒng)的用例模型與領(lǐng)域模型。在面向?qū)ο蠓治鲭A段,針對每個用例進行分析,利用互動圖描述對象之間的信息交換,以完成用例所要求的功能。在面向?qū)ο笤O(shè)計階段,則依據(jù)分析階段的結(jié)果,再加以細部設(shè)計轉(zhuǎn)換成具體的軟件系統(tǒng)模型。當(dāng)細部設(shè)計完成后,程序員便可以所建立的設(shè)計圖為藍本,實現(xiàn)面向?qū)ο筌浖到y(tǒng)?! ”菊聦⒁院喕膭≡河喥毕到y(tǒng)為例,介紹面向?qū)ο筌浖_發(fā)的這4個重要階段,并利用面向?qū)ο蠼y(tǒng)一建模語言(Unified Modeling Language,UML)表示法對各個階段的成果建模。第1節(jié)以劇院訂票系統(tǒng)為例說明企業(yè)建模;第2節(jié)根據(jù)企業(yè)建模的結(jié)果進行面向?qū)ο蠓治?;?節(jié)說明如何進行面向?qū)ο笤O(shè)計;第4節(jié)介紹面向?qū)ο髮崿F(xiàn)階段的做法。在面向?qū)ο筌浖_發(fā)過程中,這4個階段將會不斷重復(fù)執(zhí)行,逐漸地擴充并修正各階段的成果。最后,第5節(jié)介紹如何結(jié)合用例和目標(biāo)的目標(biāo)導(dǎo)向用例(Goal-DrivenI Jse Case)方法來引導(dǎo)對象建模的開發(fā)。
編輯推薦
軟件危機與開發(fā)流程 需求工程 面向?qū)ο筌浖_發(fā) 軟件設(shè)計 軟件項目計劃與管理 軟件測試 軟件質(zhì)量管理與保證 軟件配置管理 軟件形式方法論 軟件過程改進
圖書封面
評論、評分、閱讀與下載