出版時(shí)間:2009-8 出版社:清華大學(xué)出版社有限公司 作者:張權(quán)范 編 頁數(shù):321
前言
軟件工程是以軟件的說明、開發(fā)、維護(hù)和管理為內(nèi)容,利用工程學(xué)的原理和方法來組織和管理軟件生產(chǎn),以保證軟件產(chǎn)品的質(zhì)量,提高軟件生產(chǎn)率。隨著計(jì)算機(jī)應(yīng)用的普及,計(jì)算機(jī)軟件無處不在。該學(xué)科已成為計(jì)算機(jī)科學(xué)的一個(gè)重要分支與信息產(chǎn)業(yè)的一個(gè)支柱,軟件工程已逐漸為人們所熟悉并得到廣泛應(yīng)用。人們都認(rèn)識到,在項(xiàng)目開發(fā)過程中必須遵循軟件工程原則。軟件工程課程是計(jì)算機(jī)相關(guān)專業(yè)學(xué)生參加工作以后最能直接應(yīng)用的一門專業(yè)課。在本書的編寫過程中盡可能堅(jiān)持簡單明了與實(shí)用的原則講述軟件工程的基本概念、原理、方法和工具,介紹目前較成熟的、廣泛使用的軟件工程技術(shù)。軟件工程講述“軟件開發(fā)”和“做程序員”的道理,在一個(gè)團(tuán)隊(duì)中的合作精神。古人說:“讀書明理”。我認(rèn)為其中的重要內(nèi)涵,是要有積極的人生觀,以貢獻(xiàn)社會(huì)為己任。本書是作者多年的軟件工程教學(xué)與實(shí)踐經(jīng)驗(yàn)的總結(jié),希望本書的出版能為培養(yǎng)我國軟件專業(yè)人才發(fā)揮一定的作用。軟件工程的觀念、方法、策略和規(guī)范都是樸實(shí)無華的,并非要具備超凡的智慧才可領(lǐng)會(huì),關(guān)鍵在于實(shí)踐。要抱著科學(xué)的態(tài)度來看待它,因?yàn)樗皇切≌f,沒有引人人勝的情節(jié)。如何正確安排軟件的結(jié)構(gòu),合理組織、管理軟件的生產(chǎn),不僅僅是從事軟件開發(fā)專業(yè)人員的事,廣大計(jì)算機(jī)應(yīng)用人員也需要掌握這方面的知識。本書可作為高等院校計(jì)算機(jī)專業(yè)的教材,也可供從事計(jì)算機(jī)軟件開發(fā)及應(yīng)用的廣大科技人員做參考。作者建議在學(xué)習(xí)軟件工程課程之前,學(xué)生應(yīng)當(dāng)具備高級語言、數(shù)據(jù)結(jié)構(gòu)、操作系統(tǒng)和數(shù)據(jù)庫技術(shù)等方面的知識,并且要從宏觀與微觀相結(jié)合的角度來了解該課程。從宏觀的角度來講,可以從面向數(shù)據(jù)流、面向數(shù)據(jù)結(jié)構(gòu)和面向?qū)ο蟮葘哟蝸碚w把握該課程;從微觀的角度來講,要掌握各層次的各種軟件工程工具的具體運(yùn)用。本課程可安排在專業(yè)課學(xué)習(xí)的后期,畢業(yè)設(shè)計(jì)之前。使學(xué)生在畢業(yè)實(shí)習(xí)、畢業(yè)設(shè)計(jì)實(shí)踐中,運(yùn)用軟件工程學(xué)的原理、方法和工具。
內(nèi)容概要
本書從面向數(shù)據(jù)流、面向數(shù)據(jù)結(jié)構(gòu)、面向?qū)ο笕齻€(gè)層面由淺人深地對軟件工程進(jìn)行了系統(tǒng)的介紹。本書最大的特色是:語言簡單明了,概念清晰,內(nèi)容豐富且實(shí)用,對每一個(gè)具體的知識點(diǎn)一般都有具體的真實(shí)的現(xiàn)場工作場景的案例來幫助讀者理解相關(guān)的理論知識,跟蹤了目前軟件工程領(lǐng)域的最新成果。當(dāng)然,本書的重點(diǎn)還是對傳統(tǒng)的軟件工程思想的描述,而對于軟件測試以及面向?qū)ο蟮恼鹿?jié),因?yàn)槟壳霸诟叩仍盒V卸及阉鼈冏鳛閱为?dú)的課程來開設(shè),所以,僅以介紹為主,但也都給出了比較好的案例;對軟件生命周期各環(huán)節(jié)的文檔附有規(guī)格說明書,主要的文檔還附有具體案例。 全書共分10章,是按軟件工程的三個(gè)層面與軟件生命周期的順序來組織的,本書可作為高等院校計(jì)算機(jī)專業(yè)本科層次的教材,也可以作為大專層次院校的教材或者作為社會(huì)上廣大讀者的自學(xué)參考書。
書籍目錄
第1章 概述 1.1 軟件工程學(xué)的幾個(gè)基本概念 1.1.1 軟件與軟件工程 1.1.2 軟件生存周期 1.1.3 軟件開發(fā)模型 1.1.4 軟件工程的任務(wù)及其研究范圍 1.2 軟件開發(fā)的原則和方法 1.2.1 軟件開發(fā)原則概述 1.2.2 軟件開發(fā)的方法 小結(jié) 習(xí)題第2章 軟件計(jì)劃 2.1 問題定義和可行性研究 2.1.1 問題定義 2.1.2 可行性研究 2.2 軟件計(jì)劃 2.2.1 軟件工作范圍 2.2.2 資源 2.2.3 軟件成本估算 2.2.4 軟件計(jì)劃任務(wù)書 2.2.5 案例:“學(xué)分管理系統(tǒng)” 2.2.6 項(xiàng)目開發(fā)進(jìn)度月報(bào)編寫規(guī)范 小結(jié) 習(xí)題第3章 軟件需求分析 3.1 軟件需求分析的目標(biāo)和任務(wù) 3.1.1 軟件需求分析的目標(biāo) 3.1.2 軟件需求分析的任務(wù) 3.2 結(jié)構(gòu)化分析 3.2.1 結(jié)構(gòu)化分析方法的策略 3.2.2 數(shù)據(jù)流程圖 3.2.3 分層數(shù)據(jù)流程圖案例:簡易庫存管理系統(tǒng)數(shù)據(jù)流程圖 3.2.4 數(shù)據(jù)字典 3.2.5 結(jié)構(gòu)化分析步驟 3.3 按功能逐層分解法 3.3.1 層次圖 3.3.2 IPO圖 3.4 軟件需求分析報(bào)告書寫規(guī)范 3.5 軟件需求分析報(bào)告的案例 小結(jié) 習(xí)題第4章 軟件總體設(shè)計(jì) 4.1 軟件總體設(shè)計(jì)的任務(wù)和目標(biāo) 4.2 軟件總體設(shè)計(jì)基礎(chǔ) 4.2.1 軟件結(jié)構(gòu) 4.2.2 結(jié)構(gòu)圖 4.2.3 軟件模塊 4.3 軟件總體設(shè)計(jì)準(zhǔn)則 4.4 結(jié)構(gòu)化軟件設(shè)計(jì) 4.4.1 變換設(shè)計(jì) 4.4.2 事務(wù)設(shè)計(jì) 4.4.3 綜合設(shè)計(jì) 4.4.4 結(jié)構(gòu)化軟件設(shè)計(jì)步驟 4.4.5 案例 4.5 Jackson設(shè)計(jì)方法 4.5.1 Jackson方法中的數(shù)據(jù)結(jié)構(gòu) 4.5.2 Jackson設(shè)計(jì)方法案例 4.6 概要設(shè)計(jì)說明書編寫規(guī)范 4.7 概要設(shè)計(jì)說明書案例:簡易庫存管理系統(tǒng)概要設(shè)計(jì) 4.7.1 數(shù)據(jù)庫的結(jié)構(gòu)設(shè)計(jì) 4.7.2 數(shù)據(jù)表之間的關(guān)系的設(shè)計(jì) 4.7.3 系統(tǒng)模塊結(jié)構(gòu)設(shè)計(jì) 小結(jié) 習(xí)題第5章 軟件詳細(xì)設(shè)計(jì) 5.1 結(jié)構(gòu)化程序設(shè)計(jì) 5.1.1 基本邏輯結(jié)構(gòu) 5.1.2 基本結(jié)構(gòu)嵌套 5.2 詳細(xì)設(shè)計(jì)工具 5.2.1 流程圖 5.2.2 N.S結(jié)構(gòu)流程圖(盒圖) 5.2.3 HIPO圖 ……第6章 軟件編碼第7章 軟件測試第8章 軟件實(shí)施與維護(hù)第9章 軟件項(xiàng)目管理第10章 面向?qū)ο筌浖こ碳夹g(shù)
章節(jié)摘錄
插圖:第2章 軟件計(jì)劃在軟件系統(tǒng)開發(fā)之前,要對需要解決的問題進(jìn)行定義,對問題的性質(zhì)、目標(biāo)和規(guī)模進(jìn)行確切的了解。同時(shí),對待開發(fā)的系統(tǒng)要進(jìn)行可行性研究,對有關(guān)歷史、現(xiàn)狀和經(jīng)濟(jì)前景做調(diào)查,確定軟件系統(tǒng)所需要的計(jì)算機(jī)資源,這些是非常必要的。在確定開發(fā)一個(gè)軟件系統(tǒng)時(shí)還要制訂一個(gè)軟件計(jì)劃,其目的是向管理人員提出關(guān)于項(xiàng)目的經(jīng)費(fèi)預(yù)算,人力、物力的需要量,進(jìn)度的初步安排等,以便管理人員有效地組織人力、物力來實(shí)施這項(xiàng)軟件計(jì)劃。2.1 問題定義和可行性研究2.1.1 問題定義這里所講的問題是指用戶的基本要求,就是確切地定義用戶要求解決的問題,即確定問題的性質(zhì)、工程的目標(biāo)和規(guī)模。怎樣定義問題?問題定義的來源是用戶,是提出問題、請求解決的人。若問題是以書面形式提出,那么分析員應(yīng)該認(rèn)真閱讀和分析書面材料;如果問題是以口頭形式提出,那么分析員應(yīng)該認(rèn)真傾聽并仔細(xì)記錄要點(diǎn),在適當(dāng)?shù)臅r(shí)候認(rèn)真地請用戶解釋。分析員還應(yīng)該通過對用戶的訪問調(diào)查進(jìn)一步搞清楚,用戶為什么提出這樣的問題,問題的背景是什么,用戶的目標(biāo)是什么。問題定義的目的是要在短時(shí)間內(nèi),對用戶的要求有一個(gè)比較準(zhǔn)確的估計(jì),對要實(shí)現(xiàn)的系統(tǒng)規(guī)模做到胸中有數(shù)。但僅有這些還不夠,還要搞清用戶不打算干什么,在這個(gè)系統(tǒng)中哪些內(nèi)容不用實(shí)現(xiàn)。工作的宗旨是搞清要做什么,并劃清要實(shí)現(xiàn)系統(tǒng)的范圍邊界。
編輯推薦
《軟件工程基礎(chǔ)》:原理與技術(shù)的完美結(jié)合;教學(xué)與科研的最新成果;語言精煉,實(shí)例豐富;可操作性強(qiáng),實(shí)用性突出。
圖書封面
評論、評分、閱讀與下載