出版時(shí)間:2009-1 出版社:機(jī)械工業(yè)出版社 作者:李東生 等 著 頁(yè)數(shù):291
前言
在高度信息化的2l世紀(jì),人們?cè)絹?lái)越認(rèn)識(shí)到信息教育的重要性。人們都迫切希望信息教育能有較大發(fā)展。教育信息化也是擺在我們面前的重要任務(wù)。教育部明確要求高等教育實(shí)行信息化,要求在未來(lái)5年內(nèi)實(shí)現(xiàn)信息化教育課程的數(shù)量達(dá)到15%~30%。信息社會(huì)離不開(kāi)計(jì)算機(jī)技術(shù),知識(shí)經(jīng)濟(jì)需要大量的計(jì)算機(jī)高級(jí)人才。我國(guó)正在加強(qiáng)計(jì)算機(jī)的高等教育,正著眼于為新世紀(jì)培養(yǎng)高素質(zhì)的計(jì)算機(jī)人才,以適應(yīng)信息社會(huì)高速發(fā)展的需要。當(dāng)前,全國(guó)各類高等院校都在各專業(yè)基礎(chǔ)課程計(jì)劃中增加計(jì)算機(jī)的課程內(nèi)容,而作為與計(jì)算機(jī)科學(xué)密切相關(guān)的計(jì)算機(jī)、通信、信息等專業(yè),更是在醞釀著教學(xué)的全面改革,以期規(guī)劃出一整套面向21世紀(jì)的、具有中國(guó)高校計(jì)算機(jī)教育特色的課程計(jì)劃和教材體系?! 〗逃俊蛾P(guān)于加強(qiáng)高等學(xué)校本科教育工作提高教育質(zhì)量的若干意見(jiàn)》(教字【2001】4號(hào))文件也強(qiáng)調(diào)指出:“要大力提倡編寫、引進(jìn)和使用先進(jìn)教材。教材的質(zhì)量直接體現(xiàn)著高等教育和科學(xué)研究的發(fā)展水平,也直接影響本科教學(xué)的質(zhì)量。高等學(xué)校要結(jié)合學(xué)科、專業(yè)的調(diào)整,加快教材的更新?lián)Q代。” 為推動(dòng)高校教學(xué)改革,提高教學(xué)質(zhì)量,我們重點(diǎn)抓了21世紀(jì)高等教育教學(xué)改革項(xiàng)目,組織并支持了“面向21世紀(jì)計(jì)算機(jī)系列教材規(guī)劃”研究課題。該課題組成員均由高校計(jì)算機(jī)系的專家教授組成。他們有多年豐富的教學(xué)經(jīng)驗(yàn),也具有很強(qiáng)的科研能力。該課題的主要目標(biāo)是密切結(jié)合國(guó)民經(jīng)濟(jì)的需要,優(yōu)化計(jì)算機(jī)教材體系結(jié)構(gòu),力求將國(guó)際、國(guó)內(nèi)計(jì)算機(jī)領(lǐng)域的新概念、新理論、新技術(shù)吸收到本系列教材中,編寫出具有科學(xué)性、先進(jìn)性、系統(tǒng)性、實(shí)用性、實(shí)踐性很強(qiáng)的教材,經(jīng)過(guò)推廣使用,反復(fù)修改,不斷提高?! 懊嫦?1世紀(jì)計(jì)算機(jī)系列教材規(guī)劃”課題以編寫非計(jì)算機(jī)專業(yè)的計(jì)算機(jī)課程、計(jì)算機(jī)專業(yè)的計(jì)算機(jī)網(wǎng)絡(luò)課程、計(jì)算機(jī)軟件課程三個(gè)系列教材為主要內(nèi)容,計(jì)劃在三年內(nèi)出版13~16種書,服務(wù)于本科生、??粕⒀芯可?,以及網(wǎng)絡(luò)學(xué)院和軟件學(xué)院的學(xué)生。本課題把研究系列教材的重點(diǎn)放在影響和帶動(dòng)計(jì)算機(jī)學(xué)科發(fā)展的網(wǎng)絡(luò)與軟件,以及直接推動(dòng)計(jì)算機(jī)普及和應(yīng)用的非計(jì)算機(jī)專業(yè)三個(gè)方向上,目的是通過(guò)集中優(yōu)勢(shì)兵力,加強(qiáng)團(tuán)隊(duì)協(xié)作,能夠在教材建設(shè)方面按系列有所突破?! ∠嘈疟咎捉滩牡某霭姹貙?duì)教學(xué)改革和教材建設(shè)起到很大的推動(dòng)和示范作用。
內(nèi)容概要
《面向21世紀(jì)高等院校計(jì)算機(jī)系列教材·軟件工程:原理、方法和工具》全面系統(tǒng)地介紹了軟件工程的概念、原理和技術(shù)。全書分3篇,第1篇(第1~8章)“面向過(guò)程的軟件工程”,以傳統(tǒng)的軟件生存周期為主線,介紹軟件工程的原理和方法,講述了軟件生存周期各階段的任務(wù)、過(guò)程和方法。第2篇(第9~16章)“面向?qū)ο蟮能浖こ獭保訳ML語(yǔ)言為主線,結(jié)合當(dāng)前流行的軟件工程工具Rational Rose,介紹面向?qū)ο筌浖こ痰脑砗头椒ā5?篇(第17章)“軟件工程實(shí)驗(yàn)”,是在前兩篇的理論知識(shí)基礎(chǔ)上,介紹圖書館圖書管理系統(tǒng)和瀏覽器系統(tǒng)實(shí)驗(yàn)?! 睹嫦?1世紀(jì)高等院校計(jì)算機(jī)系列教材·軟件工程:原理、方法和工具》的特色是將軟件工程理論與軟件工程實(shí)際緊密結(jié)合,便于教學(xué)與應(yīng)用,既可以作為高等院校計(jì)算機(jī)專業(yè)和軟件工程專業(yè)本科生的教材,也可作為工程技術(shù)人員的參考書。
書籍目錄
序前言第1篇 面向過(guò)程的軟件工程第1章 軟件危機(jī)、軟件工程1.1 軟件工程的發(fā)展史1.1.1 程序設(shè)計(jì)時(shí)代1.1.2 程序系統(tǒng)時(shí)代1.1.3 軟件工程時(shí)代1.2 軟件危機(jī)主要表現(xiàn)形式1.3 產(chǎn)生軟件危機(jī)的原因及解決途徑1.3.1 產(chǎn)生軟件危機(jī)的原因1.3.2 解決軟件危機(jī)的途徑1.4 軟件和軟件工程1.4.1 軟件1.4.2 軟件工程1.5 軟件質(zhì)量1.6 軟件的生存周期及開(kāi)發(fā)模型1.6.1 軟件生存周期1.6.2 軟件開(kāi)發(fā)模型1.7 習(xí)題第2章 可行性研究2.1 可行性研究的目的與任務(wù)2.2 可行性研究的步驟2.3 系統(tǒng)流程圖2.3.1 系統(tǒng)流程圖的符號(hào)2.3.2 系統(tǒng)流程圖示例2.4 成本一效益分析2.4.1 貨幣的時(shí)間價(jià)值2.4.2 投資回收期2.4.3 純收入2.5 可行性研究報(bào)告的主要內(nèi)容2.6 習(xí)題第3章 軟件需求分析3.1 需求分析的任務(wù)和步驟3.1.1 需求分析的任務(wù)3.1.2 需求分析的步驟3.2 需求獲取的常用方法3.2.1 常規(guī)的需求獲取方法3.2.2 快速建立軟件原型來(lái)獲取需求3.3 需求分析的方法3.3.1 功能分解方法3.3.2 結(jié)構(gòu)化分析方法3.3.3 信息建模方法3.3.4 面向?qū)ο蟮姆治?.4 結(jié)構(gòu)化分析方法3.4.1 自頂向下逐層分解的分析策略3.4.2 結(jié)構(gòu)化分析描述工具3.4.3 數(shù)據(jù)流圖3.4.4 數(shù)據(jù)字典3.4.5 加工邏輯的描述3.5 需求分析圖形工具3.5.1 層次方框圖3.5.2 Wamier圖3.5.3 IPO圖3.6 SA方法的應(yīng)用3.7 習(xí)題第4章 軟件總體設(shè)計(jì)4.1 軟件總體設(shè)計(jì)的目標(biāo)和任務(wù)4.2 軟件設(shè)計(jì)的概念和原理4.2.1 模塊和模塊化4.2.2 抽象4.2.3 信息隱蔽和局部化4.2.4 模塊獨(dú)立性及其度量4.3 軟件結(jié)構(gòu)設(shè)計(jì)準(zhǔn)則4.4 軟件結(jié)構(gòu)設(shè)計(jì)的圖形工具4.4.1 軟件結(jié)構(gòu)圖4.4.2 層次圖4.4.3 HIPO圖4.5 結(jié)構(gòu)化設(shè)計(jì)方法4.5.1 數(shù)據(jù)流圖的類型4.5.2 結(jié)構(gòu)化設(shè)計(jì)方法的步驟4.5.3 變換型分析設(shè)計(jì)4.5.4 事務(wù)型分析設(shè)計(jì)4.6 習(xí)題第5章 軟件詳細(xì)設(shè)計(jì)5.1 詳細(xì)設(shè)計(jì)的目的與任務(wù)5.2 結(jié)構(gòu)化程序設(shè)計(jì)5.3 詳細(xì)設(shè)計(jì)工具5.3.1 程序流程圖5.3.2 N-S圖5.3.3 PAD圖5.3.4 過(guò)程設(shè)計(jì)語(yǔ)言5.4 習(xí)題第6章 軟件編碼6.1 程序設(shè)計(jì)語(yǔ)言的分類6.1.1 基礎(chǔ)語(yǔ)言6.1.2 結(jié)構(gòu)化語(yǔ)言6.1.3 面向?qū)ο蟮恼Z(yǔ)言6.2 程序設(shè)計(jì)語(yǔ)言的選擇6.3 程序設(shè)計(jì)風(fēng)格6.3.1 程序內(nèi)部文檔6.3.2 數(shù)據(jù)說(shuō)明6.3.3 語(yǔ)句構(gòu)造6.3.4 輸入/輸出6.3.5 效率6.4 習(xí)題第7章 軟件測(cè)試7.1 軟件測(cè)試的目標(biāo)7.2 軟件測(cè)試的原則7.3 軟件測(cè)試方法7.3.1 靜態(tài)測(cè)試與動(dòng)態(tài)測(cè)試7.3.2 黑盒測(cè)試法與白盒測(cè)試法7.4 軟件測(cè)試用例的設(shè)計(jì)7.4.1 白盒技術(shù)7.4.2 黑盒技術(shù)7.5 軟件測(cè)試過(guò)程7.5.1 單元測(cè)試7.5.2 集成測(cè)試7.5.3 確認(rèn)測(cè)試7.5.4 系統(tǒng)測(cè)試7.6 調(diào)試7.6.1 調(diào)試的目的7.6.2 調(diào)試技術(shù)7.7 習(xí)題第8章 軟件維護(hù)8.1 軟件維護(hù)的分類8.2 軟件維護(hù)的特點(diǎn)8.2.1 結(jié)構(gòu)化維護(hù)與非結(jié)構(gòu)化維護(hù)8.2.2 維護(hù)的代價(jià)8.2.3 軟件維護(hù)中存在的問(wèn)題8.3 軟件可維護(hù)性8.3.1 軟件可維護(hù)性的定義8.3.2 軟件可維護(hù)性的度量8.3.3 提高軟件可維護(hù)性的方法8.4 維護(hù)的副作用8.5 軟件再工程8.5.1 軟件再工程與逆向工程的概念8.5.2 實(shí)施軟件再工程的原因8.5.3 軟件再工程技術(shù)8.6 習(xí)題第2篇 UML與面向?qū)ο蟮能浖こ痰?章 UML簡(jiǎn)介9.1 UML概述9.1.1 UML的組成9.1.2 UML的特點(diǎn)和用途9.1.3 UML的模型視圖簡(jiǎn)介9.2 UML軟件開(kāi)發(fā)工具簡(jiǎn)介9.2.1 RationalRose9.2.2 Visio簡(jiǎn)介9.3 習(xí)題第10章 面向?qū)ο蟮母拍?0.1 面向?qū)ο蟮姆椒▽W(xué)10.1.1 面向?qū)ο蠼?0.1.2 面向?qū)ο蟮姆椒ㄅc傳統(tǒng)軟件方法的比較10.2 對(duì)象與類及其UML表示10.2.1 對(duì)象10.2.2 類與實(shí)例10.2.3 對(duì)象屬性與操作10.2.4 對(duì)象類的關(guān)聯(lián)10.3 聚集、組合、繼承和多態(tài)10.3.1 聚集與組合10.3.2 抽象與繼承10.3.3 多態(tài)10.4 習(xí)題第11章 對(duì)象設(shè)計(jì)模式11.1 對(duì)象設(shè)計(jì)模式概念11.1.1 歷史背景11.1.2 對(duì)象設(shè)計(jì)模式11.1.3 設(shè)計(jì)模式的分類11.2 幾種典型的對(duì)象設(shè)計(jì)模式及應(yīng)用11.2.1 行為型模式中的職責(zé)鍵模式及應(yīng)用11.2.2 結(jié)構(gòu)型模式中的外觀模式及應(yīng)用11.2.3 創(chuàng)建型模式中的抽象工廠模式及應(yīng)用11.3 對(duì)象類的高級(jí)概念11.3.1 抽象類、參數(shù)對(duì)象類、型與實(shí)現(xiàn)對(duì)象類11.3.2 接口11.3.3 版型11.4 組件、包和結(jié)點(diǎn)11.4.1 組件11.4.2 包和包圖11.4.3 結(jié)點(diǎn)11.5 習(xí)題第12章 面向?qū)ο蟮能浖_(kāi)發(fā)過(guò)程12.1 RUP概述12.1.1 RUP的歷史12.1.2 RUP的特色12.2 RUP軟件開(kāi)發(fā)生命周期和建模12.2.1 RUP軟件開(kāi)發(fā)的生命周期12.2.2 RUP的動(dòng)態(tài)結(jié)構(gòu)12.2.3 RUP的靜態(tài)結(jié)構(gòu)12.2.4 RUP的建模12.3 面向?qū)ο筌浖_(kāi)發(fā)過(guò)程的案例分析12.3.1 系統(tǒng)需求12.3.2 系統(tǒng)的靜態(tài)結(jié)構(gòu)模型12.3.3 順序圖和協(xié)作圖12.3.4 狀態(tài)圖和活動(dòng)圖12.3.5 組件圖和部署圖12.4 習(xí)題第13章 軟件開(kāi)發(fā)工具Rose13.1 Rose的用例圖與類圖13.1.1 用例圖13.1.2 類圖13.2 Rose的交互圖與狀態(tài)機(jī)圖13.2.1 交互圖13.2.2 狀態(tài)機(jī)圖13.3 包、組件圖與部署圖13.3.1 包13.3.2 組件圖13.3.3 部署圖13.4 Rose的代碼生成和逆向工程13.4.1 代碼生成13.4.2 逆向工程13.5 Rose應(yīng)用舉例13.6 習(xí)題第14章 Rose及其應(yīng)用14.1 Rose的主要功能14.2 Rose的使用14.2.1 Rose主菜單窗口14.2.2 模型與工作方式的組織14.3 教學(xué)管理系統(tǒng)的分析與設(shè)計(jì)14.3.1 系統(tǒng)需求分析14.3.2 系統(tǒng)問(wèn)題領(lǐng)域分析14.3.3 靜態(tài)結(jié)構(gòu)模型的建立14.3.4 動(dòng)態(tài)行為模型的建立14.3.5 物理模型的建立14.4 UML類圖與VB代碼的轉(zhuǎn)換14.4.1 VB代碼生成屬性14.4.2 Rose模型-VB代碼的生成14.4.3 VB代碼的逆向工程14.5 UML類圖與Java代碼的轉(zhuǎn)換14.5.1 UML類圖-Java代碼的生成14.5.2 Java代碼的逆向工程14.6 習(xí)題第15章 面向?qū)ο蟮能浖w系結(jié)構(gòu)15.1 軟件體系結(jié)構(gòu)概述15.2 流程處理與客戶機(jī)/服務(wù)器體系結(jié)構(gòu)15.2.1 流程處理15.2.2 客戶機(jī)/服務(wù)器體系結(jié)構(gòu)15.3 三層和多層體系結(jié)構(gòu)15.3.1 三層體系結(jié)構(gòu)15.3.2 瀏覽器/服務(wù)器體系結(jié)構(gòu)風(fēng)格15.3.3 多層體系結(jié)構(gòu)15.3.4 團(tuán)聚與串行15.4 公共對(duì)象請(qǐng)求代理體系結(jié)構(gòu)15.5 基于層次消息總線的體系結(jié)構(gòu)風(fēng)格15.6 異構(gòu)結(jié)構(gòu)風(fēng)格15.7 習(xí)題第16章 軟件工程新技術(shù)16.1 軟件復(fù)用技術(shù)16.1.1 軟件復(fù)用概念及分類16.1.2 軟件復(fù)用的關(guān)鍵技術(shù)和復(fù)用粒度16.2 中間件技術(shù)16.2.1 中間件概念及特點(diǎn)16.2.2 中間件的分類16.3 組件技術(shù)16.3.1 組件與組件化16.3.2 組件模型及描述語(yǔ)言16.3.3 組件的檢索與組裝16.4 計(jì)算機(jī)輔助軟件工程技術(shù)16.4.1 CASE的基本概念16.4.2 CASE工具與集成CASE環(huán)境16.5 軟件產(chǎn)品線技術(shù)16.5.1 軟件產(chǎn)品線基本概念16.5.2 軟件產(chǎn)品線方法16.5.3 北大青鳥(niǎo)工程16.6 軟件過(guò)程與標(biāo)準(zhǔn)化16.6.1 軟件過(guò)程及其改進(jìn)16.6.2 ISO9000標(biāo)準(zhǔn)16.6.3 軟件能力成熟度模型16.7 習(xí)題第3篇 軟件工程實(shí)驗(yàn)第17章 軟件工程實(shí)驗(yàn)大綱17.1 面向過(guò)程的軟件工程實(shí)驗(yàn)17.1.1 實(shí)驗(yàn)1 圖書館圖書管理系統(tǒng)的可行性分析17.1.2 實(shí)驗(yàn)2 圖書館圖書管理系統(tǒng)的項(xiàng)目開(kāi)發(fā)計(jì)劃17.1.3 實(shí)驗(yàn)3 圖書館圖書管理系統(tǒng)的需求分析17.1.4 實(shí)驗(yàn)4 圖書館圖書管理系統(tǒng)的總體設(shè)計(jì)17.1.5 實(shí)驗(yàn)5 圖書館圖書管理系統(tǒng)的詳細(xì)設(shè)計(jì)及編碼實(shí)現(xiàn)17.1.6 實(shí)驗(yàn)6 圖書館圖書管理系統(tǒng)的系統(tǒng)測(cè)試17.1.7 實(shí)驗(yàn)7 圖書館圖書管理系統(tǒng)用戶手冊(cè)的撰寫17.1.8 實(shí)驗(yàn)8 圖書館圖書管理系統(tǒng)項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告的撰寫17.2 面向?qū)ο蟮能浖こ虒?shí)驗(yàn)17.2.1 實(shí)驗(yàn)1 瀏覽器系統(tǒng)的可行性分析17.2.2 實(shí)驗(yàn)2 瀏覽器系統(tǒng)的項(xiàng)目開(kāi)發(fā)計(jì)劃17.2.3 實(shí)驗(yàn)3 瀏覽器系統(tǒng)的需求分析17.2.4 實(shí)驗(yàn)4 瀏覽器系統(tǒng)的體系結(jié)構(gòu)設(shè)計(jì)17.2.5 實(shí)驗(yàn)5 采用面向?qū)ο蠓椒ㄟM(jìn)行瀏覽器系統(tǒng)的詳細(xì)設(shè)計(jì)17.2.6 實(shí)驗(yàn)6 利用RationalRose正向工程功能完成編碼的實(shí)驗(yàn)17.2.7 實(shí)驗(yàn)7 利用RationalRose逆向工程完成修改設(shè)計(jì)的實(shí)驗(yàn)17.2.8 實(shí)驗(yàn)8 瀏覽器系統(tǒng)的測(cè)試17.2.9 實(shí)驗(yàn)9 瀏覽器系統(tǒng)用戶手冊(cè)的撰寫17.2.10 實(shí)驗(yàn)10 瀏覽器系統(tǒng)項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告的撰寫附錄附錄A UML圖總結(jié)附錄B UML中定義的常用版型、約束和標(biāo)記附錄C GOF給出的軟件設(shè)計(jì)模式參考文獻(xiàn)
章節(jié)摘錄
第1篇 面向過(guò)程的軟件工程 第1章 軟件危機(jī)、軟件工程 “軟件工程”一詞是由北大西洋公約組織(North Atlantic Treaty Organization,NlATO)的計(jì)算機(jī)科學(xué)家在聯(lián)邦德國(guó)召開(kāi)的國(guó)際會(huì)議上首次提出來(lái)的。產(chǎn)生軟件工程這門學(xué)科的時(shí)代背景是“軟件危機(jī)”。軟件工程的發(fā)展和應(yīng)用不僅緩和了軟件危機(jī),而且促使一門新興的工程學(xué)科誕生了?! ?.1 軟件工程的發(fā)展史 軟件工程是隨著計(jì)算機(jī)系統(tǒng)的發(fā)展而逐步形成的計(jì)算機(jī)科學(xué)領(lǐng)域中一門新興的學(xué)科。軟件工程的發(fā)展經(jīng)過(guò)了三個(gè)時(shí)代?! ?.1.1 程序設(shè)計(jì)時(shí)代 1946年到1956年為程序設(shè)計(jì)時(shí)代,在這個(gè)時(shí)代,人們用很大力氣研究和發(fā)展計(jì)算機(jī)硬件,經(jīng)歷了從電子管計(jì)算機(jī)到晶體管計(jì)算機(jī)的變革,然而對(duì)計(jì)算機(jī)軟件的研究和發(fā)展卻不夠重視。當(dāng)時(shí),由于硬件的價(jià)格昂貴,運(yùn)行速度低,內(nèi)存容量小,所以,當(dāng)時(shí)的程序員非常強(qiáng)調(diào)“程序設(shè)計(jì)技巧”,把縮短每一一個(gè)微秒的CPU時(shí)間和節(jié)省每一個(gè)二進(jìn)制存儲(chǔ)單元,作為程序設(shè)計(jì)的重要目標(biāo)。但設(shè)計(jì)的程序難讀、難懂、難修改。 1.1.2 程序系統(tǒng)時(shí)代 1956年到1968年為程序系統(tǒng)時(shí)代,或者稱為“程序+說(shuō)明”時(shí)代。在這個(gè)時(shí)代,硬件經(jīng)歷了從晶體管計(jì)算機(jī)到集成電路計(jì)算機(jī)的變革,CPu速度和內(nèi)存容量都有了很大的提高,從而為計(jì)算機(jī)在眾多領(lǐng)域中的應(yīng)用提供了潛在的可能性。這個(gè)時(shí)代的另一個(gè)重要特征是出現(xiàn)了“軟件作坊”。這是因?yàn)殡S著計(jì)算機(jī)應(yīng)用的普及和深化,需要的軟件往往規(guī)模相當(dāng)龐大,以致單個(gè)用戶無(wú)法開(kāi)發(fā),此外,許多不同的部門和企業(yè)往往需要相同或者類似的軟件,各自開(kāi)發(fā)就會(huì)浪費(fèi)很大的人力。在這種形勢(shì)下,“軟件作坊”就應(yīng)運(yùn)而生了。不過(guò)這個(gè)時(shí)代的開(kāi)發(fā)方法基本上沿用了程序設(shè)計(jì)時(shí)代的開(kāi)發(fā)方法,但開(kāi)始提出了結(jié)構(gòu)化的方法。隨著計(jì)算機(jī)應(yīng)用的日益普及,軟件需求量急劇增長(zhǎng),用戶的需求和使用環(huán)境發(fā)生變化時(shí),軟件可修改性很差,往往需要重新編制程序,其研制時(shí)間很長(zhǎng),不能及時(shí)滿足用戶要求,質(zhì)量得不到保證,開(kāi)發(fā)人員的素質(zhì)和落后的開(kāi)發(fā)技術(shù)不適應(yīng)規(guī)模大、結(jié)構(gòu)復(fù)雜的軟件開(kāi)發(fā),因此,產(chǎn)生了尖銳的矛盾,所謂的“軟件危機(jī)”便由此產(chǎn)生了。
圖書封面
評(píng)論、評(píng)分、閱讀與下載