出版時間:2012-9 出版社:清華大學(xué)出版社 作者:陶華亭 編 頁數(shù):288 字?jǐn)?shù):480000
內(nèi)容概要
《軟件工程實用教程(第2版)》在第1版的基礎(chǔ)上不僅補充了“軟件工程”學(xué)科的較新內(nèi)容,又在體系結(jié)構(gòu)上進(jìn)行了調(diào)整,使內(nèi)容和形式都更適用于教學(xué)。
“項目管理”和“工程技術(shù)”是軟件工程兩大部分內(nèi)容,為強調(diào)項目管理的重要性,《軟件工程實用教程(第2版)》打破了傳統(tǒng)教材的內(nèi)容體系模式,把“項目管理”內(nèi)容安排在前面,這樣就可以在一個學(xué)期的前半部分只進(jìn)行課堂教學(xué)。第1章介紹基本理論與概念;第2章介紹軟件開發(fā)過程,第3章介紹軟件項目管理;第4~9章基于結(jié)構(gòu)化方法,介紹了軟件工程技術(shù)、方法、工具和軟件工程思想;第10~16章介紹面向?qū)ο蟮姆椒ǎ攸c結(jié)合案例介紹了基于uml的分析與設(shè)計過程,強調(diào)培訓(xùn)面向?qū)ο蟮姆治龊驮O(shè)計技能;附錄部分補充了rational
rose簡介和課程教學(xué)計劃及試題樣卷。
《軟件工程實用教程(第2版)》案例完整,內(nèi)容詳實,可操作性強,注重對學(xué)生實踐能力的培養(yǎng),適合作為高等院校計算機和相關(guān)專業(yè)“軟件工程”課程的教材。
書籍目錄
第1章概述
1.1軟件工程學(xué)科的誕生
1.2基本概念和原理
1.3軟件工程的主要內(nèi)容
1.4軟件工程師職業(yè)道德規(guī)范與要求
本章小結(jié)
習(xí)題
第2章軟件過程
2.1軟件過程的概念
2.2常見的軟件過程模型
2.3軟件過程的新發(fā)展
2.4敏捷方法
2.5rup
2.6軟件過程改進(jìn)與cmm
本章小結(jié)
習(xí)題
第3章軟件項目管理
3.1概述
3.2軟件規(guī)模估算
3.3工作量估算
3.4開發(fā)周期估算
3.5估算方法
3.6項目進(jìn)度計劃與控制
3.7人員組織
3.8質(zhì)量保證
3.9軟件配置管理
本章小結(jié)
習(xí)題
第4章項目調(diào)查與初步計劃
4.1項目調(diào)查的任務(wù)
4.2項目調(diào)查的步驟
4.3結(jié)構(gòu)化方案設(shè)計
4.4面向?qū)ο蟮姆桨冈O(shè)計
4.5成本效益分析
4.6可行性分析報告
本章小結(jié)
習(xí)題
第5章結(jié)構(gòu)化需求分析
5.1需求分析概述
5.2結(jié)構(gòu)化分析方法
5.3數(shù)據(jù)流圖的繪制
5.4編寫數(shù)據(jù)字典
5.5加工邏輯的分析與表達(dá)
5.6需求驗證與評審
本章小結(jié)
習(xí)題
第6章結(jié)構(gòu)化設(shè)計
6.1總體設(shè)計的過程
6.2設(shè)計原理
6.3啟發(fā)性設(shè)計原則
6.4描繪軟件結(jié)構(gòu)的圖形工具
6.5面向數(shù)據(jù)流的設(shè)計方法
6.6實例
本章小結(jié)
習(xí)題
第7章詳細(xì)設(shè)計
7.1代碼設(shè)計
7.2數(shù)據(jù)庫設(shè)計
7.3規(guī)范化理論
7.4數(shù)據(jù)庫設(shè)計實例
7.5系統(tǒng)平臺設(shè)計
7.6對話設(shè)計
7.7輸入輸出設(shè)計
7.8處理過程設(shè)計
7.9編寫系統(tǒng)設(shè)計說明書
本章小結(jié)
習(xí)題
第8章編程與測試
8.1概述
8.2編程
8.3軟件測試基本概念
8.4白盒法
8.5黑盒法
8.6調(diào)試
8.7單元測試
8.8集成測試
8.9確認(rèn)測試
8.10軟件可靠性
本章小結(jié)
習(xí)題
第9章軟件維護(hù)
9.1軟件維護(hù)的內(nèi)容
9.2軟件維護(hù)的特點
9.3軟件維護(hù)的實施
9.4軟件的可維護(hù)性
本章小結(jié)
習(xí)題
第10章面向?qū)ο蠓椒?br />10.1軟件工程方法論
10.2從結(jié)構(gòu)化到面向?qū)ο?br />10.3面向?qū)ο蟮幕靖拍?br />10.4uml
10.5uml提供的常用圖
10.6面向?qū)ο蟮慕_^程
本章小結(jié)
習(xí)題
第11章用例模型
11.1用例模型簡介
11.2提取用例
11.3畫用例圖
11.4編寫用例報告
11.5構(gòu)造用戶界面原型
本章小結(jié)
習(xí)題
第直2章全局分析
12.1選擇構(gòu)架模式
12.2識別關(guān)鍵抽象
12.3標(biāo)識“關(guān)鍵技術(shù)”
12.4選定分析局部
本章小結(jié)
思考題
第13章局部分析
13.1提取“分析類”
13.2轉(zhuǎn)述需求場景
13.3整理分析類
13.4案例
本章小結(jié)
習(xí)題
第14章全局設(shè)計
14.1確定核心元素
14.2引入外圍元素
14.3優(yōu)化模型結(jié)構(gòu)
本章小結(jié)
習(xí)題
第15章局部設(shè)計
15.1實現(xiàn)需求場景
15.2實現(xiàn)子系統(tǒng)接口
本章小結(jié)
習(xí)題
第16章細(xì)節(jié)設(shè)計
16.1精化“屬性”與“操作”
16.2明確類之間的關(guān)系
本章小結(jié)
習(xí)題
附錄a建模工具rational rose簡介
附錄b軟件工程職業(yè)道德規(guī)范和實踐要求(5.2版)
附錄c參考教學(xué)計劃
附錄d試題樣卷
參考文獻(xiàn)
章節(jié)摘錄
版權(quán)頁: 插圖: 不難發(fā)現(xiàn),程序結(jié)構(gòu)簡單多了。下面分析一下這兩種情況之間的區(qū)別。 第一種情況,是把本該每個人都各負(fù)其責(zé)的事情都大包大攬到自己身上,把所有人該考慮的事情都放在一起考慮,很艱難地按照做事的流程整理出頭緒,然后,試圖井井有條地去完成它。而與此同時,除你之外的其他人都無事可做,等著你把事情做得滴水不漏。 這種做法是,先把問題糅合在一起,再分解問題、理出頭緒,一個人包攬一切,顯然你得是一個“超人”。但是,在結(jié)構(gòu)化編程的思維模式下,大家又都自然而然地去這樣創(chuàng)造了一個又一個的“超人”。不言而喻,要把交織在一起的事情,事無巨細(xì)、通盤考慮得井井有條,程序的結(jié)構(gòu)就會設(shè)計得非常復(fù)雜。這樣的“超人”不容易設(shè)計,也不容易維護(hù)。 在第二種情況下,事情就變得簡單多了。你只給出通用的提示,然后期待每個人能自己承擔(dān)起自己的責(zé)任,弄清怎樣完成本該自己完成的任務(wù)。 兩者比較,最大的區(qū)別是,你認(rèn)識到了“軟件功能是由若干個對象,相互協(xié)作來實現(xiàn)的,每個對象都是一個有行為能力的、責(zé)任明確的軟件要素”。這里有一個“責(zé)任的轉(zhuǎn)移”,在第一種情況下,你要對一切負(fù)責(zé),在第二種情況下,學(xué)生對自己負(fù)責(zé)。兩種情況下,要實現(xiàn)的目標(biāo)相同,但“軟件結(jié)構(gòu)”差異很大,其中的奧妙就在于:責(zé)任從你轉(zhuǎn)移到了每個人。 不難發(fā)現(xiàn),為了控制問題的復(fù)雜性,兩種方法論都使用了“分解”的手法,結(jié)構(gòu)方法是“分解功能,包攬一切”,面向?qū)ο蟮姆椒ㄊ恰胺纸庳?zé)任,各負(fù)其責(zé)”。前者是把問題糅合在一起,越搞越復(fù)雜,自己給自己找麻煩;后者則是明確責(zé)任,知人善任,化繁為簡。 從結(jié)構(gòu)化到面向?qū)ο?,軟件設(shè)計的任務(wù)就變成了: (1)尋找這樣的“責(zé)任人”(類或?qū)ο螅?(2)完善其應(yīng)該具備的特征(屬性、數(shù)據(jù)); (3)賦予它行為能力(方法或操作),讓其承擔(dān)起自己的那一份責(zé)任。 這種方法的思維模式是: (1)關(guān)注要解決的問題可以劃分為哪些責(zé)任; (2)找到能夠負(fù)擔(dān)指定責(zé)任的“人”(尋找類或?qū)ο螅?(3)對初步找到的“責(zé)任人”進(jìn)行排查,讓它們參與實現(xiàn)相關(guān)的功能,通過類和對象的交互場景,歸納每個對象應(yīng)該負(fù)有的全部責(zé)任; (4)然后,賦予“責(zé)任人”特征或行為能力(設(shè)計類的數(shù)據(jù)和操作),通過消息傳遞,讓其各自承擔(dān)起責(zé)任。 第二種方案除了責(zé)任明確、解決問題簡單以外,還具有能夠應(yīng)對需求變更的先天優(yōu)勢。為了看到這種責(zé)任重新安排帶來的影響,我們考慮一下在有了新的需求變化時,情況會怎樣。假設(shè),要求你通知聽講的學(xué)生中的研究生,他們可能需要在聽完你的講座之后,給本講座作一個書面評價,并交到教務(wù)處。 在第一種情況下,我們將不得不對控制程序進(jìn)行結(jié)構(gòu)修改,以區(qū)別研究生和本科生,然后給研究生特殊指示。而在第二種情況下,每個人各司其職,只需要從“學(xué)生”中再派生出一個“研究生”類,賦予它相應(yīng)的責(zé)任就行了。而作為一個特殊類型對象的你,除了需要說“找到你們下一個聽講的教室”外,只需再多說一句話:“請研究生對本講座進(jìn)行書面評價,并交到教務(wù)處”。每個人仍然只需各行其是,程序的結(jié)構(gòu)無須改動,只是為你這個特殊的類添加了責(zé)任和新創(chuàng)建了一個研究生類。
編輯推薦
《21世紀(jì)普通高校計算機公共課程規(guī)劃教材:軟件工程實用教程(第2版)》案例完整,內(nèi)容詳實,可操作性強,注重對學(xué)生實踐能力的培養(yǎng),適合作為高等院校計算機和相關(guān)專業(yè)“軟件工程”課程的教材。
圖書封面
評論、評分、閱讀與下載