出版時間:2009-3 出版社:史濟民、顧春華、 鄭紅 高等教育出版社 (2009-03出版) 作者:史濟民,顧春華,鄭紅 著 頁數(shù):372
前言
本書第2版自2002年12月首印,迄今已5年有半了。許多高等院校的計算機專業(yè)和軟件學(xué)院相關(guān)專業(yè)采用該版書作為本科生“軟件工程”課程的教材。為了更好地滿足讀者需要,我們決定編寫第.3版,并確定了如下的編寫方針:一、繼續(xù)保持“注重實踐”的風(fēng)格軟件工程具有很強的實踐性,但早期的軟件工程教材往往偏重于理論,介紹原理有余,聯(lián)系應(yīng)用不足。由于缺乏可供借鑒的示例,使讀者在具體開發(fā)時常有不知從何處入手的感覺。本書取名《軟件工程——原理、方法與應(yīng)用》,就是希望從“應(yīng)用”出發(fā),兼顧“原理”與“方法”兩個方面:講解方法時精選例題,方便模仿:上升到原理時提綱挈領(lǐng),畫龍點睛。目的是讓讀者一方面掌握軟件工程的常用方法及其具體操作,另一方面又提升到以原理為指導(dǎo),不致被具體方法中繁瑣的細節(jié)所淹沒。從本書第1版起,編者就參照國際知名教材《軟件工程:實踐者的方法》(Pressman著)的做法,廣舉例題,注重實踐,因而取得第1版連續(xù)發(fā)行12年近12萬冊,第2版在5年半中重印12次、累計發(fā)行14.1萬冊的好成績。本版保持了上述風(fēng)格,力求使之名副其實地成為理論結(jié)合實際、注重能力培養(yǎng)的實踐型教材。
內(nèi)容概要
《軟件工程:原理方法與應(yīng)用》結(jié)構(gòu)合理、文字通俗、例題豐富、可讀性強,主要面向計算機及相關(guān)專業(yè)本科生,亦可供軟件開發(fā)人員作為參考。作為一本注重能力培養(yǎng)的實踐型教材,第3版繼承并保持了“注重實踐”的風(fēng)格,將全書分編為緒論和上、中、下3篇,共14章。內(nèi)容分別為:上篇為傳統(tǒng)軟件工程,包括軟件生存周期與軟件過程、結(jié)構(gòu)化分析與設(shè)計;中篇為面向?qū)ο筌浖こ?,包括面向?qū)ο笈cUML、需求工程與需求分析、面向?qū)ο蠓治?、面向?qū)ο笤O(shè)計、編碼與測試;下篇為軟件工程的近期進展、管理與環(huán)境,包括軟件維護、軟件復(fù)用、軟件工程管理、軟件質(zhì)量管理、軟件工程環(huán)境、軟件工程高級課題。與第2版相比,本版將“并行介紹傳統(tǒng)的和面向?qū)ο蟮能浖こ獭备淖優(yōu)椤爸攸c介紹面向?qū)ο蟮能浖こ獭保⒃凇懊嫦驅(qū)ο蠓治觥焙汀懊嫦驅(qū)ο笤O(shè)計”兩章分別給出案例;通過“軟件工程高級課題”,對Web工程及基于體系結(jié)構(gòu)的軟件開發(fā)等熱門課題集中進行了簡要的講解。
作者簡介
史濟民,教授,畢業(yè)于上海交通大學(xué)電機工程系,在原成都科技大學(xué)歷任教研室主任、副教授和教授,現(xiàn)為華東理工大學(xué)計算中心顧問、全國高校計算機基礎(chǔ)教育研究會榮譽副會長。長期從事計算機軟件的教學(xué)與研究。近20年來先后編寫高校計算機教材近30種,發(fā)行逾300萬冊,有6種教材獲得教育部或上海市普通高校優(yōu)秀教材一、二等獎等獎勵,其中《軟件工程——原理、方法與應(yīng)用》(第1、2版)在17年內(nèi)發(fā)行量近30萬冊。
書籍目錄
第1章 緒論1.1 軟件和軟件危機1.1.1 軟件的定義1.1.2 軟件的特征1.1.3 軟件危機1.2 軟件工程學(xué)的范疇1.2.1 軟件開發(fā)方法學(xué)1.2.2 軟件工具1.2.3 軟件工程環(huán)境1.2.4 軟件工程管理1.3 軟件工程的發(fā)展1.3.1 3種編程范型1.3.2 3代軟件工程1.4 軟件工程的應(yīng)用1.4.1 在各種規(guī)模軟件開發(fā)中的應(yīng)用1.4.2 軟件工程的成就與發(fā)展展望1.5 軟件工程的教學(xué):本書導(dǎo)讀小結(jié)習(xí)題上篇 傳統(tǒng)軟件工程第2章 軟件生存周期與軟件過程2.1 軟件生存周期2.1.1 軟件生存周期的主要活動2.1.2 生存周期與軟件過程的關(guān)系2.2 傳統(tǒng)的軟件過程2.2.1 瀑布模型2.2.2 快速原型模型2.3 軟件演化模型2.3.1 增量模型2.3.2 螺旋模型2.3.3 構(gòu)件集成模型2.4 形式化方法模型2.4.1 轉(zhuǎn)換模型2.4.2 凈室模型2.5 統(tǒng)一過程和敏捷過程2.5.1 統(tǒng)一過程2.5.2 敏捷過程2.5.3 極限編程2.6 軟件可行性研究2.6.1 可行性研究的內(nèi)容與步驟2.6.2 軟件風(fēng)險分析2.6.3 項目實施計劃小結(jié)習(xí)題第3章 結(jié)構(gòu)化分析與設(shè)計3.1 概述3.1.1 結(jié)構(gòu)化分析與設(shè)計的由來3.1.2 SA模型的組成與描述3.1.3 SD模型的組成與描述3.2 結(jié)構(gòu)化系統(tǒng)分析3.2.1 畫分層數(shù)據(jù)流圖3.2.2 確定數(shù)據(jù)定義與加工策略3.2.3 需求分析的復(fù)審3.3 結(jié)構(gòu)化系統(tǒng)設(shè)計3.3.1 SD概述3.3.2 SD的步驟:從DFD圖到SC圖3.3.3 變換映射3.3.4 事務(wù)映射3.3.5 優(yōu)化初始SC圖的指導(dǎo)規(guī)則3.3.6 教材購銷系統(tǒng)的總體結(jié)構(gòu)3.4 模塊設(shè)計3.4.1 目的與任務(wù)3.4.2 模塊設(shè)計的原則與方法3.4.3 常用的表達工具小結(jié)習(xí)題中篇 面向?qū)ο筌浖こ痰?章 面向?qū)ο笈cuML4.1 面向?qū)ο蟾攀?.1.1 對象和類4.1.2 面向?qū)ο蟮幕咎卣?.1.3 面向?qū)ο箝_發(fā)的優(yōu)點4.2 uML簡介4.2.1 UML的組成4.2.2 UML的特點4.2.3 UML的應(yīng)用4.3 靜態(tài)建模4.3.1 用例圖與用例模型4.3.2 類圖和對象圖4.3.3 包4.4 動態(tài)建模4.4.1 消息4.4.2 狀態(tài)圖4.4.3 時序圖和協(xié)作圖4.4.4 活動圖4.5 物理架構(gòu)建模4.5.1 物理架構(gòu)4.5.2 構(gòu)件圖和部署圖4.6 UML工具4.6.1 RationalRose4.6.2 StarUML小結(jié)習(xí)題第5章 需求工程與需求分析5.1 軟件需求工程5.1.1 軟件需求的定義5.1.2 軟件需求的特性5.1.3 需求工程的由來5.2 需求分析與建模5.2.1 需求分析的步驟5.2.2 需求分析是迭代過程5.3 需求獲取的常用方法5.3.1 常規(guī)的需求獲取方法5.3.2 用快速原型法獲取需求5.4 需求模型5.4.1 需求模型概述5.4.2 面向?qū)ο蟮男枨蠼?.5 軟件需求描述5.6 需求管理5.6.1 需求管理的內(nèi)容5.6.2 需求變更控制5.6.3 需求管理工具5.7 需求建模示例5.7.1 問題陳述5.7.2 用例模型5.7.3 補充規(guī)約5.7.4 術(shù)語表小結(jié)習(xí)題第6章 面向?qū)ο蠓治?.1 軟件分析概述6.1.1 面向?qū)ο筌浖治?.1.2 面向?qū)ο蠓治瞿P?.2 面向?qū)ο蠓治鼋?.2.1 識別與確定分析類6.2.2 建立對象-行為模型6.2.3 建立對象-關(guān)系模型6.3 面向?qū)ο蠓治鍪纠?.3.1 注冊6.3.2 維護個人信息6.3.3 維護購物車6.3.4 生成訂單6.3.5 管理訂單小結(jié)習(xí)題第7章 面向?qū)ο笤O(shè)計7.1 軟件設(shè)計概述7.1.1 軟件設(shè)計的概念7.1.2 軟件設(shè)計的任務(wù)7.1.3 模塊化設(shè)計7.2 面向?qū)ο笤O(shè)計建模7.2.1 面向?qū)ο笤O(shè)計模型7.2.2 面向?qū)ο笤O(shè)計的任務(wù)7.2.3 模式的應(yīng)用7.3 系統(tǒng)架構(gòu)設(shè)計7.3.1 系統(tǒng)高層結(jié)構(gòu)設(shè)計7.3.2 確定設(shè)計元素7.3.3 任務(wù)管理策略7.3.4 分布式實現(xiàn)機制7.3.5 數(shù)據(jù)存儲設(shè)計7.3.6 人機交互設(shè)計7.4 系統(tǒng)元素設(shè)計7.4.1 子系統(tǒng)設(shè)計7.4.2 分包設(shè)計7.4.3 類/對象設(shè)計7.5 面向?qū)ο笤O(shè)計示例7.5.1 關(guān)聯(lián)關(guān)系的具體化7.5.2 網(wǎng)上購物系統(tǒng)的架構(gòu)設(shè)計7.5.3 網(wǎng)上購物系統(tǒng)的類/對象設(shè)計小結(jié)習(xí)題第8章 編碼與測試8.1 編碼概述8.1.1 編碼的目的8.1.2 編碼的風(fēng)格8.2 編碼語言與編碼工具8.2.1 編碼語言的發(fā)展8.2.2 常用的編程語言8.2.3 編碼語言的選擇8.2.4 編碼工具8.3 編碼示例8.3.1 注冊功能編碼實現(xiàn)8.3.2 維護購物車功能編碼實現(xiàn)8.4 測試的基譽概念8.4.1 目的與任務(wù)8.4.2 測試的特性8.4.3 測試的種類8.4.4 測試的文檔8.4.5 軟件測試過程8.5 黑盒測試和白盒測試8.5.1 黑盒測試8.5.2 白盒測試8.6 測試用例設(shè)計8.6.1 黑盒測試用例設(shè)計8.6.2 白盒測試用例設(shè)計8.7 多模塊程序的測試策略8.7.1 測試的層次性8.7.2 單元測試8.7.3 集成測試8.7.4 確認測試8.7.5 系統(tǒng)測試8.7.6 終止測試的標準8.8 面向?qū)ο笙到y(tǒng)的測試8.8.1 OO軟件的測試策略8.8.2 OO軟件測試用例設(shè)計小結(jié)習(xí)題下篇 軟件工程的近期進展、管理與環(huán)境第9章 軟件維護9.1 軟件維護的種類9.2 軟件可維護性9.3 軟件維護的實施9.4 軟件維護的管理9.5 軟件配置管理9.6 軟件再工程小結(jié)習(xí)題第10章 軟件復(fù)用10.1 軟件復(fù)用的基本概念10.1.1 軟件復(fù)用的定義10.1.2 軟件復(fù)用的措施10.1.3 軟件復(fù)用的粒度10.2 領(lǐng)域工程10.2.1 橫向復(fù)用和縱向復(fù)用10.2.2 實施領(lǐng)域分析10.2.3 開發(fā)可復(fù)用構(gòu)件10.2.4 建立可復(fù)用構(gòu)件庫10.3 基于構(gòu)件的軟件開發(fā)10.3.1 構(gòu)件集成模型10.3.2 應(yīng)用系統(tǒng)工程10.4 面向?qū)ο笈c軟件復(fù)用10.4.1 OO方法對軟件復(fù)用的支持10.4.2 復(fù)用技術(shù)對OO方法的支持10.4.3 基于構(gòu)件軟件開發(fā)的現(xiàn)狀與問題小結(jié)習(xí)題第11章 軟件工程管理11.1 管理的目的與內(nèi)容11.2 軟件估算模型11.2.1 資源估算模型11.2.2 COCOMO模型11.3 軟件成本估計11.4 人員的分配與組織11.5 項目進度安排小結(jié)習(xí)題第12章 軟件質(zhì)量管理12.1 從質(zhì)量保證到質(zhì)量認證12.2 質(zhì)量保證……第13章 軟件工程環(huán)境第14章 軟件工程高級課題附錄 縮略語中英文對照表主要參考文獻
章節(jié)摘錄
插圖:2.細化階段識別出剩余的大多數(shù)用例。對當前迭代的每個用例進行細化,分析用例的處理流程、狀態(tài)細節(jié)以及可能發(fā)生的狀態(tài)變化。細化流程時,可以使用程序框圖和協(xié)作圖,還可以使用活動圖、類圖分析用例對風(fēng)險的處理。這一階段主要應(yīng)完成以下工作:進行需求風(fēng)險分析??紤]項目的目標是否偏離了用戶的需求。為了解決需求風(fēng)險要充分了解用戶需求以及各需求的優(yōu)先級,還應(yīng)盡量列出所有的用例,并要建立領(lǐng)域的概念模型。進行技術(shù)風(fēng)險分析。通過建立原型等方法,考察所選的技術(shù)方案是否可行。進行技能風(fēng)險分析??紤]實施項目的人員素質(zhì)能否勝任項目的要求。進行政策風(fēng)險分析??紤]政策性因素對項目的影響。進行高層分析和設(shè)計,并作出結(jié)構(gòu)性決策。產(chǎn)生簡要體系結(jié)構(gòu),包括用例列表、領(lǐng)域概念模型和技術(shù)平臺等。在以后的階段中對細化階段所建立的體系結(jié)構(gòu)不能進行過大的變動。為構(gòu)造階段制定計劃。3.構(gòu)造階段識別出剩余的用例。每一次迭代開發(fā)都是針對用例進行分析、設(shè)計、編碼、測試和集成的過程,所得到的產(chǎn)品是滿足項目需求的一個子集。由于細化階段的軟件設(shè)計已經(jīng)完成,這樣各項目組可以并行開發(fā)。在代碼完成后,要保證其符合標準和設(shè)計規(guī)則,并要進行質(zhì)量檢查。對于新出現(xiàn)的變化,要通過逆向工具把代碼轉(zhuǎn)換為模型,對模型進行修改,再重新生成代碼,以保證軟件與模型同步。
編輯推薦
《軟件工程:原理、方法與應(yīng)用(第3版)》:從“應(yīng)用”出發(fā),兼顧“原理”與“方法”,在講解方法時精選例題,以便讀者理解;當升華到原理時提綱挈領(lǐng),畫龍點睛。重點介紹面向?qū)ο蟮能浖こ?,同時對基于構(gòu)件的軟件工程進行簡單的對比和介紹。加強實踐環(huán)節(jié),以案例為先行和歸宿。加強對部分新技術(shù)的介紹,反映Web軟件工程等新進展。
圖書封面
評論、評分、閱讀與下載