出版時(shí)間:2010-1 出版社:機(jī)械工業(yè)出版社 作者:陳明 頁(yè)數(shù):296
前言
軟件產(chǎn)業(yè)是創(chuàng)新的與充滿(mǎn)活力的朝陽(yáng)產(chǎn)業(yè),需要大量的、不同層次的軟件人才。計(jì)算機(jī)軟件是軟件產(chǎn)業(yè)的主要產(chǎn)品,并且計(jì)算機(jī)軟件是邏輯產(chǎn)品、而不是物理產(chǎn)品。軟件與硬件具有完全不同的特征。計(jì)算機(jī)軟件現(xiàn)已成為一種新的驅(qū)動(dòng)力,是進(jìn)行決策的引擎,是現(xiàn)代工程研究和解決問(wèn)題的基礎(chǔ),在各種類(lèi)型的應(yīng)用系統(tǒng)中無(wú)所不在地廣泛應(yīng)用。軟件危機(jī)是指軟件開(kāi)發(fā)和維護(hù)過(guò)程中遇到的一系列嚴(yán)重問(wèn)題,如如何開(kāi)發(fā)軟件、如何滿(mǎn)足對(duì)軟件的日益增長(zhǎng)的需求、如何維護(hù)數(shù)量不斷膨脹的已有軟件等一系列問(wèn)題。為了克服與擺脫軟件危機(jī),誕生了軟件工程學(xué)。從1969年提出軟件工程概念以來(lái),歷經(jīng)30多年的飛速發(fā)展,軟件工程逐漸成熟,現(xiàn)已成為一門(mén)重要的學(xué)科。軟件工程的目標(biāo)是以保證軟件生產(chǎn)的質(zhì)量與效率為宗旨,研究一套科學(xué)的工程方法以及相應(yīng)的方便的軟件工具系統(tǒng),用來(lái)指導(dǎo)和幫助軟件的開(kāi)發(fā)與研究工作,在軟件的開(kāi)發(fā)與研究中起到重要的技術(shù)保障與促進(jìn)作用。軟件工程是研究開(kāi)發(fā)大型軟件應(yīng)用系統(tǒng)的學(xué)科,軟件工程不僅覆蓋了構(gòu)建軟件系統(tǒng)的相關(guān)技術(shù)層面的問(wèn)題,還包括指導(dǎo)開(kāi)發(fā)團(tuán)隊(duì)、安排進(jìn)度及預(yù)算等管理層面的問(wèn)題。軟件工程不僅包括編寫(xiě)程序代碼所涉及的技術(shù),還包括所有對(duì)軟件開(kāi)發(fā)能夠造成影響的問(wèn)題。不存在任何單一開(kāi)發(fā)技術(shù)或管理技術(shù)能夠解決軟件工程所面臨的所有問(wèn)題。因而,軟件工程是包括一系列概念、理論、模式、語(yǔ)言、方法及工具的綜合性學(xué)科。軟件工程技術(shù)可分為產(chǎn)品實(shí)現(xiàn)技術(shù)及開(kāi)發(fā)管理技術(shù),產(chǎn)品實(shí)現(xiàn)技術(shù)主要涉及軟件系統(tǒng)開(kāi)發(fā)的相關(guān)問(wèn)題,為實(shí)現(xiàn)軟件產(chǎn)品提供支持;開(kāi)發(fā)管理技術(shù)通常不針對(duì)某個(gè)軟件開(kāi)發(fā)項(xiàng)目,而是為管理和改進(jìn)軟件,組織所有的業(yè)務(wù)活動(dòng)提供技術(shù)支持。軟件開(kāi)發(fā)工具是支持軟件生存期中某一階段的任務(wù)實(shí)現(xiàn)而使用的計(jì)算機(jī)程序。軟件開(kāi)發(fā)環(huán)境是一組相關(guān)的軟件工具的集合,將它們集成在一起支持某種軟件開(kāi)發(fā)方法或某種軟件開(kāi)發(fā)模型。軟件開(kāi)發(fā)工具與環(huán)境是軟件工程的重要組成部分,對(duì)于提高軟件生產(chǎn)率,改進(jìn)軟件質(zhì)量有越來(lái)越大的作用。軟件工程不是刻板的學(xué)科,需要豐富的想象力。軟件工程是一門(mén)科學(xué),它是有規(guī)律和步驟可循的。軟件工程又是一個(gè)實(shí)踐性極強(qiáng)的實(shí)用學(xué)科,在學(xué)習(xí)中,不僅要能掌握其理論原則與方法,更重要的是能熟練地應(yīng)用。計(jì)算機(jī)科學(xué)與技術(shù)專(zhuān)業(yè)和相近專(zhuān)業(yè)的畢業(yè)生,有相當(dāng)部分的同學(xué)要從事計(jì)算機(jī)軟件開(kāi)發(fā)和應(yīng)用工作,通過(guò)軟件工程的理論學(xué)習(xí)與實(shí)踐,可以培養(yǎng)學(xué)生以軟件工程的方法開(kāi)發(fā)軟件的習(xí)慣和素質(zhì),并在軟件開(kāi)發(fā)的工作中得以貫徹。因此,專(zhuān)業(yè)實(shí)踐是軟件工程本科教育的重要組成部分。學(xué)習(xí)軟件工程應(yīng)注重計(jì)算思維能力、算法設(shè)計(jì)與分析能力、程序設(shè)計(jì)和實(shí)現(xiàn)能力、系統(tǒng)能力(系統(tǒng)的認(rèn)知、設(shè)計(jì)、開(kāi)發(fā)、應(yīng)用)的培養(yǎng),尤其是系統(tǒng)能力。系統(tǒng)能力包含兩個(gè)層面上的含義:一方面是對(duì)一定規(guī)模的系統(tǒng)的全局掌控能力;另一方面是能夠在構(gòu)建系統(tǒng)時(shí),系統(tǒng)地考慮問(wèn)題的求解。
內(nèi)容概要
本書(shū)是軟件工程方面的教材,主要內(nèi)容包括軟件工程概述、可行性研究、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、面向?qū)ο蟮姆治雠c設(shè)計(jì)方法、編碼、軟件質(zhì)量與質(zhì)量保證、項(xiàng)目計(jì)劃與管理、軟件開(kāi)發(fā)工具與環(huán)境概述、UML與Rose等。本書(shū)的特點(diǎn)是內(nèi)容系統(tǒng)、注重應(yīng)用、面向?qū)嵺`、語(yǔ)言精練、概念準(zhǔn)確。本書(shū)可作為高等院校軟件工程課程的教材,也可作為軟件工程人員的參考書(shū)。
書(shū)籍目錄
出版說(shuō)明前言第1章 概述 1.1 軟件 1.1.1 軟件發(fā)展 1.1.2 軟件定義 1.1.3 軟件特點(diǎn) 1.1.4 軟件分類(lèi) 1.2 軟件工程概念 1.2.1 軟件危機(jī)與軟件工程的定義 1.2.2 軟件工程的基本內(nèi)容與目標(biāo) 1.2.3 軟件工程的原則 1.3 軟件生存周期與軟件開(kāi)發(fā)模型 1.3.1 軟件生存周期 1.3.2 軟件開(kāi)發(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 軟件需求分類(lèi) 3.1.3 需求規(guī)格說(shuō)明 3.1.4 需求工程概念 3.1.5 需求工程過(guò)程 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 需求評(píng)審 3.7 需求管理 3.7.1 需求管理的目標(biāo) 3.7.2 需求管理的原則 3.7.3 需求開(kāi)發(fā)的管理 3.7.4 需求管理活動(dòng) 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ì)過(guò)程 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章 軟件開(kāi)發(fā)工具與環(huán)境第11章 UML與Rose附錄A 可行性研究報(bào)告規(guī)范附錄B 項(xiàng)目開(kāi)發(fā)計(jì)劃規(guī)范附錄C 需求規(guī)格說(shuō)明書(shū)規(guī)范附錄D 概要設(shè)計(jì)說(shuō)明書(shū)規(guī)范附錄E 詳細(xì)設(shè)計(jì)說(shuō)明書(shū)規(guī)范附錄F 測(cè)試計(jì)劃附錄G 測(cè)試分析報(bào)告附錄H 項(xiàng)目開(kāi)發(fā)總結(jié)報(bào)告規(guī)范參考文獻(xiàn)
章節(jié)摘錄
插圖:軟件是一種邏輯產(chǎn)品,也是開(kāi)發(fā)和運(yùn)行產(chǎn)品的載體。作為一種產(chǎn)品,它表達(dá)了由計(jì)算機(jī)硬件體現(xiàn)的計(jì)算潛能。不論它是駐留在設(shè)備中,還是在主機(jī)中,軟件都是一個(gè)信息轉(zhuǎn)換器,能夠產(chǎn)生、管理、獲取、修改、顯示或轉(zhuǎn)換信息。這些信息可以很簡(jiǎn)單,也可以很復(fù)雜,如多媒體信息。作為開(kāi)發(fā)運(yùn)行產(chǎn)品的載體,軟件是計(jì)算機(jī)工作和信息通信的基礎(chǔ),也是創(chuàng)建和控制其他程序的基礎(chǔ)。信息是21世紀(jì)最重要的產(chǎn)品,軟件充分體現(xiàn)了這一點(diǎn)。通過(guò)軟件處理數(shù)據(jù),凸顯了數(shù)據(jù)的重要性;軟件管理商業(yè)信息,增強(qiáng)了商業(yè)競(jìng)爭(zhēng)力。軟件不僅提供了通往全球信息網(wǎng)絡(luò)的途徑,而且也提供了獲取信息的多種手段。1.1.1軟件發(fā)展1.程序設(shè)計(jì)階段計(jì)算機(jī)發(fā)展的早期階段(20世紀(jì)50年代初期一20世紀(jì)60年代中期)為程序設(shè)計(jì)階段。在這個(gè)階段硬件已經(jīng)通用化,而軟件的生產(chǎn)卻是個(gè)體化的。這時(shí),由于程序規(guī)模小,幾乎沒(méi)有什么系統(tǒng)化的方法可遵循。對(duì)軟件的開(kāi)發(fā)沒(méi)有任何管理方法,一旦計(jì)劃推遲了或者成本提高了,程序員才開(kāi)始彌補(bǔ)。在通用的硬件已經(jīng)非常普遍的時(shí)候,軟件產(chǎn)品還處在初級(jí)階段,對(duì)每一類(lèi)應(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ì)、多用戶(hù)系統(tǒng)引入了人機(jī)交互的新概念。交互技術(shù)打開(kāi)了計(jì)算機(jī)應(yīng)用的新世界,硬件和軟件配合達(dá)到了一個(gè)新層次,出現(xiàn)了實(shí)時(shí)系統(tǒng)和第一代數(shù)據(jù)庫(kù)管理系統(tǒng)。這個(gè)階段的另一個(gè)特點(diǎn)就是軟件產(chǎn)品的使用和“軟件作坊”的出現(xiàn)。被開(kāi)發(fā)的軟件可以在較寬廣的范圍中應(yīng)用。主機(jī)和微機(jī)上的程序能夠有數(shù)百甚至上千的用戶(hù)。在軟件的使用過(guò)程中,當(dāng)發(fā)現(xiàn)錯(cuò)誤時(shí),當(dāng)用戶(hù)需求和硬件環(huán)境發(fā)生變化時(shí)都需要修改軟件,這些活動(dòng)統(tǒng)稱(chēng)為軟件維護(hù)。在軟件維護(hù)上的花費(fèi)以驚人的速度增長(zhǎng)。更為嚴(yán)重的是,許多程序的個(gè)體化特性使得它們根本不能維護(hù)。“軟件危機(jī)”出現(xiàn)了。
編輯推薦
《軟件工程導(dǎo)論》:高等院校軟件工程專(zhuān)業(yè)規(guī)劃教材
圖書(shū)封面
評(píng)論、評(píng)分、閱讀與下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版