軟件工程導(dǎo)論

出版時間:2010-1  出版社:機(jī)械工業(yè)出版社  作者:陳明  頁數(shù):296  

前言

軟件產(chǎn)業(yè)是創(chuàng)新的與充滿活力的朝陽產(chǎn)業(yè),需要大量的、不同層次的軟件人才。計(jì)算機(jī)軟件是軟件產(chǎn)業(yè)的主要產(chǎn)品,并且計(jì)算機(jī)軟件是邏輯產(chǎn)品、而不是物理產(chǎn)品。軟件與硬件具有完全不同的特征。計(jì)算機(jī)軟件現(xiàn)已成為一種新的驅(qū)動力,是進(jìn)行決策的引擎,是現(xiàn)代工程研究和解決問題的基礎(chǔ),在各種類型的應(yīng)用系統(tǒng)中無所不在地廣泛應(yīng)用。軟件危機(jī)是指軟件開發(fā)和維護(hù)過程中遇到的一系列嚴(yán)重問題,如如何開發(fā)軟件、如何滿足對軟件的日益增長的需求、如何維護(hù)數(shù)量不斷膨脹的已有軟件等一系列問題。為了克服與擺脫軟件危機(jī),誕生了軟件工程學(xué)。從1969年提出軟件工程概念以來,歷經(jīng)30多年的飛速發(fā)展,軟件工程逐漸成熟,現(xiàn)已成為一門重要的學(xué)科。軟件工程的目標(biāo)是以保證軟件生產(chǎn)的質(zhì)量與效率為宗旨,研究一套科學(xué)的工程方法以及相應(yīng)的方便的軟件工具系統(tǒng),用來指導(dǎo)和幫助軟件的開發(fā)與研究工作,在軟件的開發(fā)與研究中起到重要的技術(shù)保障與促進(jìn)作用。軟件工程是研究開發(fā)大型軟件應(yīng)用系統(tǒng)的學(xué)科,軟件工程不僅覆蓋了構(gòu)建軟件系統(tǒng)的相關(guān)技術(shù)層面的問題,還包括指導(dǎo)開發(fā)團(tuán)隊(duì)、安排進(jìn)度及預(yù)算等管理層面的問題。軟件工程不僅包括編寫程序代碼所涉及的技術(shù),還包括所有對軟件開發(fā)能夠造成影響的問題。不存在任何單一開發(fā)技術(shù)或管理技術(shù)能夠解決軟件工程所面臨的所有問題。因而,軟件工程是包括一系列概念、理論、模式、語言、方法及工具的綜合性學(xué)科。軟件工程技術(shù)可分為產(chǎn)品實(shí)現(xiàn)技術(shù)及開發(fā)管理技術(shù),產(chǎn)品實(shí)現(xiàn)技術(shù)主要涉及軟件系統(tǒng)開發(fā)的相關(guān)問題,為實(shí)現(xiàn)軟件產(chǎn)品提供支持;開發(fā)管理技術(shù)通常不針對某個軟件開發(fā)項(xiàng)目,而是為管理和改進(jìn)軟件,組織所有的業(yè)務(wù)活動提供技術(shù)支持。軟件開發(fā)工具是支持軟件生存期中某一階段的任務(wù)實(shí)現(xiàn)而使用的計(jì)算機(jī)程序。軟件開發(fā)環(huán)境是一組相關(guān)的軟件工具的集合,將它們集成在一起支持某種軟件開發(fā)方法或某種軟件開發(fā)模型。軟件開發(fā)工具與環(huán)境是軟件工程的重要組成部分,對于提高軟件生產(chǎn)率,改進(jìn)軟件質(zhì)量有越來越大的作用。軟件工程不是刻板的學(xué)科,需要豐富的想象力。軟件工程是一門科學(xué),它是有規(guī)律和步驟可循的。軟件工程又是一個實(shí)踐性極強(qiáng)的實(shí)用學(xué)科,在學(xué)習(xí)中,不僅要能掌握其理論原則與方法,更重要的是能熟練地應(yīng)用。計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)和相近專業(yè)的畢業(yè)生,有相當(dāng)部分的同學(xué)要從事計(jì)算機(jī)軟件開發(fā)和應(yīng)用工作,通過軟件工程的理論學(xué)習(xí)與實(shí)踐,可以培養(yǎng)學(xué)生以軟件工程的方法開發(fā)軟件的習(xí)慣和素質(zhì),并在軟件開發(fā)的工作中得以貫徹。因此,專業(yè)實(shí)踐是軟件工程本科教育的重要組成部分。學(xué)習(xí)軟件工程應(yīng)注重計(jì)算思維能力、算法設(shè)計(jì)與分析能力、程序設(shè)計(jì)和實(shí)現(xiàn)能力、系統(tǒng)能力(系統(tǒng)的認(rèn)知、設(shè)計(jì)、開發(fā)、應(yīng)用)的培養(yǎng),尤其是系統(tǒng)能力。系統(tǒng)能力包含兩個層面上的含義:一方面是對一定規(guī)模的系統(tǒng)的全局掌控能力;另一方面是能夠在構(gòu)建系統(tǒng)時,系統(tǒng)地考慮問題的求解。

內(nèi)容概要

本書是軟件工程方面的教材,主要內(nèi)容包括軟件工程概述、可行性研究、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、面向?qū)ο蟮姆治雠c設(shè)計(jì)方法、編碼、軟件質(zhì)量與質(zhì)量保證、項(xiàng)目計(jì)劃與管理、軟件開發(fā)工具與環(huán)境概述、UML與Rose等。本書的特點(diǎn)是內(nèi)容系統(tǒng)、注重應(yīng)用、面向?qū)嵺`、語言精練、概念準(zhǔn)確。本書可作為高等院校軟件工程課程的教材,也可作為軟件工程人員的參考書。

書籍目錄

出版說明前言第1章 概述  1.1 軟件    1.1.1 軟件發(fā)展    1.1.2 軟件定義    1.1.3 軟件特點(diǎn)    1.1.4 軟件分類  1.2 軟件工程概念    1.2.1 軟件危機(jī)與軟件工程的定義    1.2.2 軟件工程的基本內(nèi)容與目標(biāo)    1.2.3 軟件工程的原則  1.3 軟件生存周期與軟件開發(fā)模型    1.3.1 軟件生存周期    1.3.2 軟件開發(fā)模型  1.4 小結(jié)  1.5 習(xí)題第2章 可行性研究  2.1 可行性研究的任務(wù)  2.2 可行性研究的步驟  2.3 系統(tǒng)流程圖  2.4 成本效益分析    2.4.1 成本估計(jì)    2.4.2 費(fèi)用估計(jì)    2.4.3 度量效益的方法  2.5 小結(jié)  2.6 習(xí)題第3章 需求工程  3.1 概述    3.1.1 軟件需求定義    3.1.2 軟件需求分類    3.1.3 需求規(guī)格說明    3.1.4 需求工程概念    3.1.5 需求工程過程  3.2 需求獲取方法  3.3 需求分析的任務(wù)與原則    3.3.1 需求分析的任務(wù)    3.3.2 需求分析的原則  3.4 需求建模方法    3.4.1 結(jié)構(gòu)化需求建模方法    3.4.2 數(shù)據(jù)流圖    3.4.3 數(shù)據(jù)字典  3.5 需求圖形工具    3.5.1 層次方框圖    3.5.2 Warnier圖    3.5.3 IP0圖  3.6 需求驗(yàn)證    3.6.1 目的與任務(wù)    3.6.2 內(nèi)容與方法    3.6.3 需求評審  3.7 需求管理    3.7.1 需求管理的目標(biāo)    3.7.2 需求管理的原則    3.7.3 需求開發(fā)的管理    3.7.4 需求管理活動  3.8 小結(jié)  3.9 習(xí)題第4章 概要設(shè)計(jì)  4.1 軟件體系結(jié)構(gòu)    4.1.1 概述    4.1.2 系統(tǒng)構(gòu)成    4.1.3 控制模型  4.2 概要設(shè)計(jì)任務(wù)與步驟    4.2.1 概要設(shè)計(jì)任務(wù)    4.2.2 概要設(shè)計(jì)過程  4.3 軟件設(shè)計(jì)的基本概念    4.3.1 模塊化與模塊獨(dú)立性    4.3.2 抽象    4.3.3 結(jié)構(gòu)設(shè)計(jì)原則  4.4 面向數(shù)據(jù)流的設(shè)計(jì)方法    4.4.1 基本概念    4.4.2 系統(tǒng)結(jié)構(gòu)圖的組成    4.4.3 變換分析    4.4.4 事務(wù)分析  ……第5章 詳細(xì)設(shè)計(jì)第6章 面向?qū)ο笤O(shè)計(jì)第7章 編碼第8章 軟件質(zhì)量與質(zhì)量保證第9章 項(xiàng)目計(jì)劃與管理第10章 軟件開發(fā)工具與環(huán)境第11章 UML與Rose附錄A 可行性研究報告規(guī)范附錄B 項(xiàng)目開發(fā)計(jì)劃規(guī)范附錄C 需求規(guī)格說明書規(guī)范附錄D 概要設(shè)計(jì)說明書規(guī)范附錄E 詳細(xì)設(shè)計(jì)說明書規(guī)范附錄F 測試計(jì)劃附錄G 測試分析報告附錄H 項(xiàng)目開發(fā)總結(jié)報告規(guī)范參考文獻(xiàn)

章節(jié)摘錄

插圖:軟件是一種邏輯產(chǎn)品,也是開發(fā)和運(yùn)行產(chǎn)品的載體。作為一種產(chǎn)品,它表達(dá)了由計(jì)算機(jī)硬件體現(xiàn)的計(jì)算潛能。不論它是駐留在設(shè)備中,還是在主機(jī)中,軟件都是一個信息轉(zhuǎn)換器,能夠產(chǎn)生、管理、獲取、修改、顯示或轉(zhuǎn)換信息。這些信息可以很簡單,也可以很復(fù)雜,如多媒體信息。作為開發(fā)運(yùn)行產(chǎn)品的載體,軟件是計(jì)算機(jī)工作和信息通信的基礎(chǔ),也是創(chuàng)建和控制其他程序的基礎(chǔ)。信息是21世紀(jì)最重要的產(chǎn)品,軟件充分體現(xiàn)了這一點(diǎn)。通過軟件處理數(shù)據(jù),凸顯了數(shù)據(jù)的重要性;軟件管理商業(yè)信息,增強(qiáng)了商業(yè)競爭力。軟件不僅提供了通往全球信息網(wǎng)絡(luò)的途徑,而且也提供了獲取信息的多種手段。1.1.1軟件發(fā)展1.程序設(shè)計(jì)階段計(jì)算機(jī)發(fā)展的早期階段(20世紀(jì)50年代初期一20世紀(jì)60年代中期)為程序設(shè)計(jì)階段。在這個階段硬件已經(jīng)通用化,而軟件的生產(chǎn)卻是個體化的。這時,由于程序規(guī)模小,幾乎沒有什么系統(tǒng)化的方法可遵循。對軟件的開發(fā)沒有任何管理方法,一旦計(jì)劃推遲了或者成本提高了,程序員才開始彌補(bǔ)。在通用的硬件已經(jīng)非常普遍的時候,軟件產(chǎn)品還處在初級階段,對每一類應(yīng)用均需自行再設(shè)計(jì),應(yīng)用范圍很有限。設(shè)計(jì)往往僅是人們頭腦中的一種模糊想法,而文檔根本不存在。2.程序系統(tǒng)階段計(jì)算機(jī)系統(tǒng)發(fā)展的第二階段(20世紀(jì)60年代中期~20世紀(jì)70年代末期)為程序系統(tǒng)階段。多道程序設(shè)計(jì)、多用戶系統(tǒng)引入了人機(jī)交互的新概念。交互技術(shù)打開了計(jì)算機(jī)應(yīng)用的新世界,硬件和軟件配合達(dá)到了一個新層次,出現(xiàn)了實(shí)時系統(tǒng)和第一代數(shù)據(jù)庫管理系統(tǒng)。這個階段的另一個特點(diǎn)就是軟件產(chǎn)品的使用和“軟件作坊”的出現(xiàn)。被開發(fā)的軟件可以在較寬廣的范圍中應(yīng)用。主機(jī)和微機(jī)上的程序能夠有數(shù)百甚至上千的用戶。在軟件的使用過程中,當(dāng)發(fā)現(xiàn)錯誤時,當(dāng)用戶需求和硬件環(huán)境發(fā)生變化時都需要修改軟件,這些活動統(tǒng)稱為軟件維護(hù)。在軟件維護(hù)上的花費(fèi)以驚人的速度增長。更為嚴(yán)重的是,許多程序的個體化特性使得它們根本不能維護(hù)?!败浖C(jī)”出現(xiàn)了。

編輯推薦

《軟件工程導(dǎo)論》:高等院校軟件工程專業(yè)規(guī)劃教材

圖書封面

評論、評分、閱讀與下載


    軟件工程導(dǎo)論 PDF格式下載


用戶評論 (總計(jì)0條)

 
 

 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7