




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 2008 BUPT TSEG軟件工程軟件工程Software Engineering第一章第一章 軟件工程概述軟件工程概述黃黃 海海 2 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心u計(jì)算機(jī)軟件計(jì)算機(jī)軟件u軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)u軟件工程軟件工程u軟件工程知識(shí)體系軟件工程知識(shí)體系3 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件1. 1. 軟件的定義軟件的定義是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是包括是包括
2、,及其相關(guān)及其相關(guān)的完整集合。的完整集合。其中:其中:是按事先設(shè)計(jì)的功能和性能要求執(zhí)行的指令序是按事先設(shè)計(jì)的功能和性能要求執(zhí)行的指令序列;列;是使程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu);是使程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu);是與程序開(kāi)發(fā),維護(hù)和使用有關(guān)的圖文材料。是與程序開(kāi)發(fā),維護(hù)和使用有關(guān)的圖文材料。4 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件2. 2. 軟件的特點(diǎn)軟件的特點(diǎn)(1)軟件是一種邏輯實(shí)體,具有抽象性,無(wú)法看到軟件是一種邏輯實(shí)體,具有抽象性,無(wú)法看到具體的形態(tài),必須通過(guò)觀察、分析、思考或具體的形態(tài),必須通過(guò)觀察、
3、分析、思考或運(yùn)行,才能了解軟件的功能和性能。運(yùn)行,才能了解軟件的功能和性能。(2)軟件的開(kāi)發(fā)是一種邏輯思維成熟的過(guò)程,無(wú)明軟件的開(kāi)發(fā)是一種邏輯思維成熟的過(guò)程,無(wú)明顯制造過(guò)程。對(duì)軟件的質(zhì)量控制,必須和軟顯制造過(guò)程。對(duì)軟件的質(zhì)量控制,必須和軟件的研制過(guò)程交織在一起。件的研制過(guò)程交織在一起。(3)在軟件的運(yùn)行和使用期間,沒(méi)有硬件那樣的機(jī)在軟件的運(yùn)行和使用期間,沒(méi)有硬件那樣的機(jī)械磨損,老化問(wèn)題,但卻存在退化問(wèn)題。械磨損,老化問(wèn)題,但卻存在退化問(wèn)題。 5 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件計(jì)算機(jī)硬件和軟件的失效率曲
4、線計(jì)算機(jī)硬件和軟件的失效率曲線6 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件(4)軟件的開(kāi)發(fā)依然很原始,至今尚未完全擺脫軟件的開(kāi)發(fā)依然很原始,至今尚未完全擺脫手工藝的開(kāi)發(fā)方式。軟件產(chǎn)品大多是手工藝的開(kāi)發(fā)方式。軟件產(chǎn)品大多是“定制定制”的,無(wú)法完全使軟件開(kāi)發(fā)過(guò)程自動(dòng)化。的,無(wú)法完全使軟件開(kāi)發(fā)過(guò)程自動(dòng)化。(5)軟件是高度復(fù)雜的邏輯體。軟件的復(fù)雜性可軟件是高度復(fù)雜的邏輯體。軟件的復(fù)雜性可能來(lái)自它所反映的實(shí)際問(wèn)題的復(fù)雜性,也可能來(lái)自它所反映的實(shí)際問(wèn)題的復(fù)雜性,也可能來(lái)自程序邏輯結(jié)構(gòu)的復(fù)雜性。能來(lái)自程序邏輯結(jié)構(gòu)的復(fù)雜性。(
5、6)軟件的開(kāi)發(fā)和運(yùn)行常常受到計(jì)算機(jī)系統(tǒng)的限軟件的開(kāi)發(fā)和運(yùn)行常常受到計(jì)算機(jī)系統(tǒng)的限制,對(duì)計(jì)算機(jī)系統(tǒng)有著不同程度的依賴(lài)性。制,對(duì)計(jì)算機(jī)系統(tǒng)有著不同程度的依賴(lài)性。在軟件開(kāi)發(fā)中要盡量提高軟件的可移植性。在軟件開(kāi)發(fā)中要盡量提高軟件的可移植性。7 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件(7) 軟件成本相當(dāng)昂貴。軟件的研制工作需要投軟件成本相當(dāng)昂貴。軟件的研制工作需要投入大量的、復(fù)雜的、高強(qiáng)度的腦力勞動(dòng),它入大量的、復(fù)雜的、高強(qiáng)度的腦力勞動(dòng),它的成本是比較高的。的成本是比較高的。(8) 相當(dāng)多的軟件工作涉及到社會(huì)因素。許多
6、軟相當(dāng)多的軟件工作涉及到社會(huì)因素。許多軟件的開(kāi)發(fā)和運(yùn)行涉及機(jī)構(gòu)、體制及管理方式件的開(kāi)發(fā)和運(yùn)行涉及機(jī)構(gòu)、體制及管理方式等問(wèn)題,甚至涉及到人的觀念和人們的心理等問(wèn)題,甚至涉及到人的觀念和人們的心理。8 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件3. 3. 軟件的分類(lèi)軟件的分類(lèi)(1) 按軟件完成功能所處的層次劃分:按軟件完成功能所處的層次劃分:系統(tǒng)軟件系統(tǒng)軟件 能與計(jì)算機(jī)硬件緊密配合在一起,使計(jì)算機(jī)系統(tǒng)各個(gè)部件能與計(jì)算機(jī)硬件緊密配合在一起,使計(jì)算機(jī)系統(tǒng)各個(gè)部件、相關(guān)的軟件和數(shù)據(jù)協(xié)調(diào)、高效地工作的軟件。例如,操、相關(guān)的軟
7、件和數(shù)據(jù)協(xié)調(diào)、高效地工作的軟件。例如,操作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)、設(shè)備驅(qū)動(dòng)程序以及通信處理程作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)、設(shè)備驅(qū)動(dòng)程序以及通信處理程序等序等 。中間件軟件中間件軟件 中間件是位于平臺(tái)(硬件和系統(tǒng)軟件)和應(yīng)用軟件之間的中間件是位于平臺(tái)(硬件和系統(tǒng)軟件)和應(yīng)用軟件之間的通用服務(wù),用來(lái)管理分布式計(jì)算資源和網(wǎng)絡(luò)通信,這些服通用服務(wù),用來(lái)管理分布式計(jì)算資源和網(wǎng)絡(luò)通信,這些服務(wù)具有標(biāo)準(zhǔn)的程序接口和協(xié)議。針對(duì)不同的操作系統(tǒng)和硬務(wù)具有標(biāo)準(zhǔn)的程序接口和協(xié)議。針對(duì)不同的操作系統(tǒng)和硬件平臺(tái),它們可以有符合接口和協(xié)議規(guī)范的多種實(shí)現(xiàn)。件平臺(tái),它們可以有符合接口和協(xié)議規(guī)范的多種實(shí)現(xiàn)。應(yīng)用軟件應(yīng)用軟件 是在特定領(lǐng)域
8、內(nèi)開(kāi)發(fā),為特定目的服務(wù)的一類(lèi)軟件。是在特定領(lǐng)域內(nèi)開(kāi)發(fā),為特定目的服務(wù)的一類(lèi)軟件。9 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件10 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件(2) 按軟件服務(wù)對(duì)象的范圍劃分:按軟件服務(wù)對(duì)象的范圍劃分:通用軟件通用軟件 由軟件開(kāi)發(fā)組織開(kāi)發(fā),面向市場(chǎng)用戶(hù)公開(kāi)銷(xiāo)售的獨(dú)立運(yùn)行系統(tǒng)由軟件開(kāi)發(fā)組織開(kāi)發(fā),面向市場(chǎng)用戶(hù)公開(kāi)銷(xiāo)售的獨(dú)立運(yùn)行系統(tǒng),滿足大規(guī)模用戶(hù)的普遍共性需求。例如,操作系統(tǒng)、數(shù)據(jù)庫(kù),滿足大規(guī)模用戶(hù)的普遍
9、共性需求。例如,操作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)、字處理軟件、繪圖軟件包和項(xiàng)目管理工具等管理系統(tǒng)、字處理軟件、繪圖軟件包和項(xiàng)目管理工具等 。定制軟件定制軟件 由某個(gè)特定客戶(hù)委托,軟件開(kāi)發(fā)組織在合同的約束下開(kāi)發(fā)的軟由某個(gè)特定客戶(hù)委托,軟件開(kāi)發(fā)組織在合同的約束下開(kāi)發(fā)的軟件件 ,滿足用戶(hù)個(gè)性化需求。,滿足用戶(hù)個(gè)性化需求。 例如,企業(yè)資源規(guī)劃系統(tǒng)、衛(wèi)星控例如,企業(yè)資源規(guī)劃系統(tǒng)、衛(wèi)星控制系統(tǒng)和空中交通指揮系統(tǒng)等制系統(tǒng)和空中交通指揮系統(tǒng)等 。可配置軟件可配置軟件 軟件本身具備完善功能,在某個(gè)客戶(hù)使用時(shí),按照企業(yè)自身的軟件本身具備完善功能,在某個(gè)客戶(hù)使用時(shí),按照企業(yè)自身的業(yè)務(wù)特點(diǎn),對(duì)系統(tǒng)進(jìn)行配置后再使用。軟件使用過(guò)
10、程中,可隨業(yè)務(wù)特點(diǎn),對(duì)系統(tǒng)進(jìn)行配置后再使用。軟件使用過(guò)程中,可隨時(shí)重新配置滿足新的需求,從而降低開(kāi)發(fā)成本,延長(zhǎng)軟件使用時(shí)重新配置滿足新的需求,從而降低開(kāi)發(fā)成本,延長(zhǎng)軟件使用壽命。例如,云計(jì)算模式的企業(yè)壽命。例如,云計(jì)算模式的企業(yè)SaaS軟件。軟件。11 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件(3)按照軟件使用方式劃分:按照軟件使用方式劃分:?jiǎn)螜C(jī)軟件單機(jī)軟件 安裝在計(jì)算機(jī)內(nèi)部,只使用本地計(jì)算機(jī)資源,不與其他計(jì)算機(jī)安裝在計(jì)算機(jī)內(nèi)部,只使用本地計(jì)算機(jī)資源,不與其他計(jì)算機(jī)或網(wǎng)絡(luò)設(shè)備通信的軟件。如,計(jì)算器、記事本等?;?/p>
11、網(wǎng)絡(luò)設(shè)備通信的軟件。如,計(jì)算器、記事本等。服務(wù)器軟件服務(wù)器軟件運(yùn)行在網(wǎng)絡(luò)中,能夠向其他程序提供某些服務(wù)的軟件。如門(mén)戶(hù)運(yùn)行在網(wǎng)絡(luò)中,能夠向其他程序提供某些服務(wù)的軟件。如門(mén)戶(hù)網(wǎng)站、搜索引擎、即時(shí)通訊、郵件服務(wù)器、音樂(lè)服務(wù)器網(wǎng)站、搜索引擎、即時(shí)通訊、郵件服務(wù)器、音樂(lè)服務(wù)器等。目等。目前將前將“軟件以服務(wù)的方式軟件以服務(wù)的方式”提供(提供(SaaS),已成為趨勢(shì)。),已成為趨勢(shì)。 客戶(hù)端軟件客戶(hù)端軟件 運(yùn)行在客戶(hù)計(jì)算機(jī)中,與服務(wù)器進(jìn)行通信,向客戶(hù)提供服務(wù)結(jié)運(yùn)行在客戶(hù)計(jì)算機(jī)中,與服務(wù)器進(jìn)行通信,向客戶(hù)提供服務(wù)結(jié)果的軟件。如聊天工具、瀏覽器、郵件收發(fā)工具、音樂(lè)播放器果的軟件。如聊天工具、瀏覽器、郵件收發(fā)工
12、具、音樂(lè)播放器等。等。12 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件(4)按照軟件功能劃分:按照軟件功能劃分:辦公軟件辦公軟件網(wǎng)絡(luò)軟件網(wǎng)絡(luò)軟件系統(tǒng)工具軟件系統(tǒng)工具軟件系統(tǒng)安全軟件系統(tǒng)安全軟件多媒體軟件多媒體軟件設(shè)計(jì)與開(kāi)發(fā)軟件設(shè)計(jì)與開(kāi)發(fā)軟件游戲軟件游戲軟件家庭應(yīng)用軟件家庭應(yīng)用軟件行業(yè)軟件行業(yè)軟件 13 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件(5) 按軟件規(guī)模進(jìn)行劃分:按軟件規(guī)模進(jìn)行劃分:14 2008 BUPT TSEG 北京郵
13、電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.1 1.1 計(jì)算機(jī)軟件計(jì)算機(jī)軟件(6) 按軟件工作方式劃分:按軟件工作方式劃分:實(shí)時(shí)處理軟件實(shí)時(shí)處理軟件 指在事件或數(shù)據(jù)產(chǎn)生時(shí),立即予以處理,并及時(shí)反指在事件或數(shù)據(jù)產(chǎn)生時(shí),立即予以處理,并及時(shí)反饋信號(hào),控制過(guò)程執(zhí)行的軟件。主要包括數(shù)據(jù)采集饋信號(hào),控制過(guò)程執(zhí)行的軟件。主要包括數(shù)據(jù)采集、分析處理、控制輸出三部分。、分析處理、控制輸出三部分。分時(shí)軟件分時(shí)軟件 允許多個(gè)聯(lián)機(jī)用戶(hù)同時(shí)使用計(jì)算機(jī)。允許多個(gè)聯(lián)機(jī)用戶(hù)同時(shí)使用計(jì)算機(jī)。交互式軟件交互式軟件 能實(shí)現(xiàn)人機(jī)通信的軟件。能實(shí)現(xiàn)人機(jī)通信的軟件。批處理軟件批處理軟件 把一組輸入作業(yè)或一批數(shù)據(jù)以成批處理的
14、方式一次把一組輸入作業(yè)或一批數(shù)據(jù)以成批處理的方式一次運(yùn)行,按順序逐個(gè)處理完的軟件。運(yùn)行,按順序逐個(gè)處理完的軟件。15 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心u計(jì)算機(jī)軟件計(jì)算機(jī)軟件u軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)u軟件工程軟件工程u軟件工程知識(shí)體系軟件工程知識(shí)體系16 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.2 1.2 軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)1. 1. 軟件發(fā)展階段軟件發(fā)展階段2020世紀(jì)世紀(jì)4040年代中出現(xiàn)了世界上第一臺(tái)計(jì)算機(jī)年代中出現(xiàn)了世界上第一臺(tái)計(jì)算機(jī)以后,就
15、有了程序的概念,可以認(rèn)為它是軟以后,就有了程序的概念,可以認(rèn)為它是軟件的前身。其后至今,計(jì)算機(jī)軟件經(jīng)歷了件的前身。其后至今,計(jì)算機(jī)軟件經(jīng)歷了4 4個(gè)個(gè)發(fā)展階段發(fā)展階段:程序設(shè)計(jì)階段程序設(shè)計(jì)階段: 2020世紀(jì)世紀(jì)5050至至6060年代年代程序系統(tǒng)階段程序系統(tǒng)階段: 2020世紀(jì)世紀(jì)6060至至7070年代年代軟件工程階段軟件工程階段: 2020世紀(jì)世紀(jì)7070年代以后,可細(xì)分為年代以后,可細(xì)分為傳統(tǒng)軟件工程階段傳統(tǒng)軟件工程階段:2020世紀(jì)世紀(jì)70709090年代年代 現(xiàn)代軟件工程階段現(xiàn)代軟件工程階段:2020世紀(jì)世紀(jì)9090年代至今年代至今 17 2008 BUPT TSEG 北京郵電大學(xué)
16、北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心時(shí)期時(shí)期程序設(shè)計(jì)程序設(shè)計(jì)程序系統(tǒng)程序系統(tǒng)軟件工程軟件工程特點(diǎn)特點(diǎn)軟件所指軟件所指程序程序程序及說(shuō)明書(shū)程序及說(shuō)明書(shū)程序、文檔和數(shù)據(jù)程序、文檔和數(shù)據(jù)主要程序設(shè)計(jì)語(yǔ)主要程序設(shè)計(jì)語(yǔ)言言匯編及機(jī)器語(yǔ)言匯編及機(jī)器語(yǔ)言高級(jí)語(yǔ)言高級(jí)語(yǔ)言軟件語(yǔ)言軟件語(yǔ)言軟件工作范圍軟件工作范圍程序編寫(xiě)程序編寫(xiě)包括設(shè)計(jì)和測(cè)試包括設(shè)計(jì)和測(cè)試軟件生存期軟件生存期需求者需求者程序設(shè)計(jì)本人程序設(shè)計(jì)本人少數(shù)用戶(hù)少數(shù)用戶(hù)市場(chǎng)用戶(hù)市場(chǎng)用戶(hù)開(kāi)發(fā)軟件的組織開(kāi)發(fā)軟件的組織個(gè)人個(gè)人開(kāi)發(fā)小組開(kāi)發(fā)小組開(kāi)發(fā)小組及大中型軟件開(kāi)開(kāi)發(fā)小組及大中型軟件開(kāi)發(fā)機(jī)構(gòu)發(fā)機(jī)構(gòu)軟件規(guī)模軟件規(guī)模小型小型中小型中小型大中小型大中小型決
17、定質(zhì)量的因素決定質(zhì)量的因素個(gè)人程序技術(shù)個(gè)人程序技術(shù)小組技術(shù)水平小組技術(shù)水平管理水平管理水平開(kāi)發(fā)技術(shù)和手段開(kāi)發(fā)技術(shù)和手段子程序子程序/程序庫(kù)程序庫(kù)結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì)數(shù)據(jù)庫(kù)、開(kāi)發(fā)工具、開(kāi)發(fā)數(shù)據(jù)庫(kù)、開(kāi)發(fā)工具、開(kāi)發(fā)環(huán)境、工程化開(kāi)發(fā)方法、環(huán)境、工程化開(kāi)發(fā)方法、標(biāo)準(zhǔn)和規(guī)范、網(wǎng)絡(luò)及分布標(biāo)準(zhǔn)和規(guī)范、網(wǎng)絡(luò)及分布式開(kāi)發(fā)、面向?qū)ο蠹夹g(shù)式開(kāi)發(fā)、面向?qū)ο蠹夹g(shù)維護(hù)責(zé)任者維護(hù)責(zé)任者程序設(shè)計(jì)者程序設(shè)計(jì)者開(kāi)發(fā)小組開(kāi)發(fā)小組專(zhuān)職維護(hù)人員專(zhuān)職維護(hù)人員硬件特征硬件特征價(jià)格高價(jià)格高/存儲(chǔ)容量小存儲(chǔ)容量小工作可靠性差工作可靠性差降價(jià)、速度、容量及降價(jià)、速度、容量及工作可靠性明顯提高工作可靠性明顯提高向超高速、大容量、微型向超高速
18、、大容量、微型化及網(wǎng)絡(luò)化發(fā)展化及網(wǎng)絡(luò)化發(fā)展軟件特征軟件特征完全不受重視完全不受重視軟件技術(shù)的發(fā)展不能軟件技術(shù)的發(fā)展不能滿足需求,出現(xiàn)軟件滿足需求,出現(xiàn)軟件危機(jī)危機(jī)開(kāi)發(fā)技術(shù)有進(jìn)步,但未獲開(kāi)發(fā)技術(shù)有進(jìn)步,但未獲突破性進(jìn)展,價(jià)高,未擺突破性進(jìn)展,價(jià)高,未擺脫軟件危機(jī)脫軟件危機(jī)1.2 1.2 軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)18 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1960年,所謂“開(kāi)發(fā)軟件”就是IBM公司的那種形式,滿滿一屋子人,他們都戴著牛角質(zhì)眼鏡架,系著細(xì)細(xì)黑黑的領(lǐng)帶,勤勉地埋頭寫(xiě)代碼,每人每天可完成十行。1.2 1.2 軟件的發(fā)展和軟
19、件危機(jī)軟件的發(fā)展和軟件危機(jī)19 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.2 1.2 軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)到了1980年,“開(kāi)發(fā)軟件”變成了8到10人的一個(gè)小組,他們穿著牛仔褲上班,在VT100終端上打字。20 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.2 1.2 軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)現(xiàn)在“開(kāi)發(fā)軟件”則是一個(gè)軟件組織的不同人隨性地穿著各種服裝,坐在通過(guò)網(wǎng)絡(luò)連接的任何地方,面對(duì)N個(gè)屏幕,或是一人捧一臺(tái)筆記本或Pad,duang, duang地寫(xiě)一夜代碼,當(dāng)沒(méi)
20、事發(fā)生過(guò),突然覺(jué)得這才叫生活。21 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.2 1.2 軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)軟件發(fā)展幾十年來(lái)最根本的變化體現(xiàn)在:軟件發(fā)展幾十年來(lái)最根本的變化體現(xiàn)在:(1)(1)人們對(duì)軟件有了新的認(rèn)識(shí)人們對(duì)軟件有了新的認(rèn)識(shí)程序從個(gè)人按自己意圖創(chuàng)造的程序從個(gè)人按自己意圖創(chuàng)造的“藝術(shù)品藝術(shù)品”轉(zhuǎn)變轉(zhuǎn)變?yōu)槟転閺V大用戶(hù)接受的工程化產(chǎn)品。為能為廣大用戶(hù)接受的工程化產(chǎn)品。(2)(2)軟件需求是軟件發(fā)展的動(dòng)力軟件需求是軟件發(fā)展的動(dòng)力程序開(kāi)發(fā)從自給自足轉(zhuǎn)變到需要在市場(chǎng)上流通程序開(kāi)發(fā)從自給自足轉(zhuǎn)變到需要在市場(chǎng)上流通以滿足用戶(hù)需
21、要。以滿足用戶(hù)需要。(3)(3)軟件工作的范圍從只考慮程序的編寫(xiě)擴(kuò)展到軟件工作的范圍從只考慮程序的編寫(xiě)擴(kuò)展到涉及整個(gè)軟件生存期涉及整個(gè)軟件生存期22 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.2 1.2 軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)2. 2. 軟件危機(jī)軟件危機(jī)軟件技術(shù)發(fā)展第二階段(軟件技術(shù)發(fā)展第二階段(60607070年代),隨著年代),隨著硬件技術(shù)的進(jìn)步,計(jì)算機(jī)應(yīng)用范圍擴(kuò)大,但軟硬件技術(shù)的進(jìn)步,計(jì)算機(jī)應(yīng)用范圍擴(kuò)大,但軟件技術(shù)一直未能滿足形式發(fā)展的要求,軟件開(kāi)件技術(shù)一直未能滿足形式發(fā)展的要求,軟件開(kāi)發(fā)的高成本與軟件產(chǎn)品的低質(zhì)量之間的
22、尖銳矛發(fā)的高成本與軟件產(chǎn)品的低質(zhì)量之間的尖銳矛盾,導(dǎo)致軟件危機(jī)問(wèn)題出現(xiàn)。盾,導(dǎo)致軟件危機(jī)問(wèn)題出現(xiàn)。軟件危機(jī)(軟件危機(jī)(Software CrisisSoftware Crisis):指由于落后的:指由于落后的軟件生產(chǎn)方式無(wú)法滿足迅速增長(zhǎng)的計(jì)算機(jī)軟件軟件生產(chǎn)方式無(wú)法滿足迅速增長(zhǎng)的計(jì)算機(jī)軟件需求,從而導(dǎo)致軟件開(kāi)發(fā)與維護(hù)過(guò)程中出現(xiàn)一需求,從而導(dǎo)致軟件開(kāi)發(fā)與維護(hù)過(guò)程中出現(xiàn)一系列嚴(yán)重問(wèn)題的現(xiàn)象。系列嚴(yán)重問(wèn)題的現(xiàn)象。23 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.2 1.2 軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)軟件危機(jī)主要有以下幾方面的表現(xiàn):軟件危機(jī)主
23、要有以下幾方面的表現(xiàn):(1)(1) 軟件開(kāi)發(fā)計(jì)劃難以制訂。軟件開(kāi)發(fā)計(jì)劃難以制訂。(2)(2) 軟件開(kāi)發(fā)費(fèi)用和進(jìn)度失控。軟件開(kāi)發(fā)費(fèi)用和進(jìn)度失控。(3)(3) 軟件產(chǎn)品無(wú)法讓用戶(hù)滿意。軟件產(chǎn)品無(wú)法讓用戶(hù)滿意。(4)(4) 軟件產(chǎn)品的質(zhì)量難以保證。軟件產(chǎn)品的質(zhì)量難以保證。(5)(5) 軟件軟件通常沒(méi)有適當(dāng)?shù)奈臋n資料通常沒(méi)有適當(dāng)?shù)奈臋n資料。(6)(6) 軟件通常是不可維護(hù)的。軟件通常是不可維護(hù)的。 (7)(7) 軟件成本在計(jì)算機(jī)系統(tǒng)總成本中所占比例逐年軟件成本在計(jì)算機(jī)系統(tǒng)總成本中所占比例逐年上升。上升。24 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.2
24、 1.2 軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)3. 3. 軟件危機(jī)的解決途徑軟件危機(jī)的解決途徑(1)軟件危機(jī)產(chǎn)生的內(nèi)在原因軟件危機(jī)產(chǎn)生的內(nèi)在原因一方面是軟件生產(chǎn)本身存在著復(fù)雜性,另一方面是與一方面是軟件生產(chǎn)本身存在著復(fù)雜性,另一方面是與軟件開(kāi)發(fā)和維護(hù)所使用的方法不合理。軟件開(kāi)發(fā)和維護(hù)所使用的方法不合理。(2)軟件開(kāi)發(fā)需要對(duì)程序設(shè)計(jì)方法等問(wèn)題進(jìn)行研究,軟件開(kāi)發(fā)需要對(duì)程序設(shè)計(jì)方法等問(wèn)題進(jìn)行研究,也需要對(duì)軟件的需求、設(shè)計(jì)、測(cè)試、維護(hù)和管理也需要對(duì)軟件的需求、設(shè)計(jì)、測(cè)試、維護(hù)和管理等方法進(jìn)行研究。人們逐漸感到采用工程化的原等方法進(jìn)行研究。人們逐漸感到采用工程化的原則和方法從事軟件開(kāi)發(fā)過(guò)程研究的必要
25、性。則和方法從事軟件開(kāi)發(fā)過(guò)程研究的必要性。“軟軟件工程件工程”應(yīng)運(yùn)而生。應(yīng)運(yùn)而生。25 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心u計(jì)算機(jī)軟件計(jì)算機(jī)軟件u軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)u軟件工程軟件工程u軟件工程知識(shí)體系軟件工程知識(shí)體系第一章第一章 軟件工程概述軟件工程概述26 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1. 1. 軟件工程定義軟件工程定義Fritz BauerFritz Bauer:“軟件工程是為了經(jīng)濟(jì)地獲得能夠在實(shí)際機(jī)器軟件工程是為了經(jīng)濟(jì)地獲得能夠在實(shí)際機(jī)器上有效運(yùn)行的可靠
26、軟件而建立和使用的一系列完善的工程化上有效運(yùn)行的可靠軟件而建立和使用的一系列完善的工程化原則。原則?!盉oehmBoehm:“運(yùn)用現(xiàn)代科學(xué)技術(shù)知識(shí)來(lái)設(shè)計(jì)并構(gòu)造計(jì)算機(jī)程序及運(yùn)用現(xiàn)代科學(xué)技術(shù)知識(shí)來(lái)設(shè)計(jì)并構(gòu)造計(jì)算機(jī)程序及為開(kāi)發(fā)、運(yùn)行和維護(hù)這些程序所必需的相關(guān)文件資料為開(kāi)發(fā)、運(yùn)行和維護(hù)這些程序所必需的相關(guān)文件資料”FairleyFairley:“軟件工程學(xué)是為在成本限額以?xún)?nèi)按時(shí)完成開(kāi)發(fā)和軟件工程學(xué)是為在成本限額以?xún)?nèi)按時(shí)完成開(kāi)發(fā)和修改軟件產(chǎn)品所需的系統(tǒng)生產(chǎn)和維護(hù)的技術(shù)和管理的學(xué)科修改軟件產(chǎn)品所需的系統(tǒng)生產(chǎn)和維護(hù)的技術(shù)和管理的學(xué)科”19831983年年IEEEIEEE:“軟件工程是開(kāi)發(fā)、運(yùn)行、維護(hù)和修復(fù)軟
27、件的軟件工程是開(kāi)發(fā)、運(yùn)行、維護(hù)和修復(fù)軟件的系統(tǒng)方法系統(tǒng)方法”,其中,其中,“軟件軟件”的定義為:計(jì)算機(jī)程序、方法的定義為:計(jì)算機(jī)程序、方法、規(guī)則、相關(guān)的文檔資料以及在計(jì)算機(jī)上運(yùn)行時(shí)所必需的數(shù)、規(guī)則、相關(guān)的文檔資料以及在計(jì)算機(jī)上運(yùn)行時(shí)所必需的數(shù)據(jù)據(jù)主要思想:按照工程化的原理、原則和方法開(kāi)發(fā)、運(yùn)行、維主要思想:按照工程化的原理、原則和方法開(kāi)發(fā)、運(yùn)行、維護(hù)軟件。護(hù)軟件。1.3 1.3 軟件工程軟件工程271.3 1.3 軟件工程軟件工程 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心Margaret Hamilton讓阿波羅成功登陸月球讓阿波羅成功登陸月球的
28、代碼!的代碼!28 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.3 1.3 軟件工程軟件工程軟件工程包括以下兩方面的重要內(nèi)容軟件工程包括以下兩方面的重要內(nèi)容 (1) 軟件工程是工程概念在軟件領(lǐng)域里的一個(gè)特軟件工程是工程概念在軟件領(lǐng)域里的一個(gè)特定應(yīng)用。定應(yīng)用。工程工程:將科學(xué)及數(shù)學(xué)原理運(yùn)用于實(shí)際用途的應(yīng)用:將科學(xué)及數(shù)學(xué)原理運(yùn)用于實(shí)際用途的應(yīng)用手段,如:設(shè)計(jì)、制造、機(jī)器操縱、構(gòu)架、系統(tǒng)手段,如:設(shè)計(jì)、制造、機(jī)器操縱、構(gòu)架、系統(tǒng)等。等。(2)軟件工程涉及軟件產(chǎn)品的所有環(huán)節(jié)。軟件工程涉及軟件產(chǎn)品的所有環(huán)節(jié)。 29 2008 BUPT TSEG 北京郵電大
29、學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.3 1.3 軟件工程軟件工程2. 2. 軟件工程三要素軟件工程三要素軟件工程軟件工程方法方法為軟件開(kāi)發(fā)提供了為軟件開(kāi)發(fā)提供了“如何做如何做”的技術(shù)。它包括的技術(shù)。它包括了多方面的任務(wù),如項(xiàng)目計(jì)劃與估算、軟件系統(tǒng)需求分析、了多方面的任務(wù),如項(xiàng)目計(jì)劃與估算、軟件系統(tǒng)需求分析、數(shù)據(jù)結(jié)構(gòu)、系統(tǒng)總體結(jié)構(gòu)的設(shè)計(jì)、算法過(guò)程的設(shè)計(jì)、編碼、數(shù)據(jù)結(jié)構(gòu)、系統(tǒng)總體結(jié)構(gòu)的設(shè)計(jì)、算法過(guò)程的設(shè)計(jì)、編碼、測(cè)試以及維護(hù)等。測(cè)試以及維護(hù)等。軟件軟件工具工具為軟件工程方法提供了自動(dòng)的或半自動(dòng)的軟件支撐為軟件工程方法提供了自動(dòng)的或半自動(dòng)的軟件支撐環(huán)境。環(huán)境。 (CASECASE:計(jì)
30、算機(jī)輔助軟件工程):計(jì)算機(jī)輔助軟件工程)軟件工程的軟件工程的過(guò)程過(guò)程則是將軟件工程的方法和工具綜合起來(lái)以達(dá)則是將軟件工程的方法和工具綜合起來(lái)以達(dá)到合理、及時(shí)地進(jìn)行計(jì)算機(jī)軟件開(kāi)發(fā)的目的。過(guò)程定義了方到合理、及時(shí)地進(jìn)行計(jì)算機(jī)軟件開(kāi)發(fā)的目的。過(guò)程定義了方法使用的順序、要求交付的文檔資料、為保證質(zhì)量和協(xié)調(diào)變法使用的順序、要求交付的文檔資料、為保證質(zhì)量和協(xié)調(diào)變化所需要的管理、及軟件開(kāi)發(fā)各個(gè)階段完成的里程碑。化所需要的管理、及軟件開(kāi)發(fā)各個(gè)階段完成的里程碑。30 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.3 1.3 軟件工程軟件工程3. 3. 軟件工程的目標(biāo)
31、軟件工程的目標(biāo)在給定成本、進(jìn)度的前提下,開(kāi)發(fā)出滿足在給定成本、進(jìn)度的前提下,開(kāi)發(fā)出滿足用戶(hù)需求且具有用戶(hù)需求且具有 可修改性、有效性、可靠可修改性、有效性、可靠性、可理解性、可維護(hù)性、可重用性、可性、可理解性、可維護(hù)性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作適應(yīng)性、可移植性、可追蹤性和可互操作性性 的軟件產(chǎn)品。的軟件產(chǎn)品。31 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.3 1.3 軟件工程軟件工程4. 4. 軟件工程研究?jī)?nèi)容軟件工程研究?jī)?nèi)容軟件開(kāi)發(fā)技術(shù)軟件開(kāi)發(fā)技術(shù)軟件開(kāi)發(fā)方法學(xué)、開(kāi)發(fā)過(guò)程模型、開(kāi)發(fā)工具和軟件工程軟件開(kāi)發(fā)方法學(xué)、開(kāi)發(fā)過(guò)程
32、模型、開(kāi)發(fā)工具和軟件工程環(huán)境。環(huán)境。軟件工程管理軟件工程管理軟件管理學(xué)、軟件工程經(jīng)濟(jì)學(xué)、軟件心理學(xué)等。軟件管理學(xué)、軟件工程經(jīng)濟(jì)學(xué)、軟件心理學(xué)等。32 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.3 1.3 軟件工程軟件工程5.5.軟件工程四條基本原則軟件工程四條基本原則選取適宜的開(kāi)發(fā)模型。選取適宜的開(kāi)發(fā)模型。 采用合適的設(shè)計(jì)方法。采用合適的設(shè)計(jì)方法。提供高質(zhì)量的工程支持。提供高質(zhì)量的工程支持。 重視開(kāi)發(fā)過(guò)程的管理。重視開(kāi)發(fā)過(guò)程的管理。 33 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.3 1.3 軟
33、件工程軟件工程6. 6. 軟件工程原理軟件工程原理 (1)(1)軟件工程一般原理:軟件工程一般原理:抽象抽象信息隱藏信息隱藏模塊化模塊化局部化局部化確定性確定性一致性一致性完備性完備性可驗(yàn)證性可驗(yàn)證性34 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.3 1.3 軟件工程軟件工程(2) 軟件工程基本原理軟件工程基本原理美國(guó)著名的軟件工程專(zhuān)家美國(guó)著名的軟件工程專(zhuān)家 Boehm,于,于1983年提年提出了軟件工程的七條基本原理出了軟件工程的七條基本原理 :用分階段的生命周期計(jì)劃嚴(yán)格管理用分階段的生命周期計(jì)劃嚴(yán)格管理 重要的管理計(jì)劃包括:項(xiàng)目概要計(jì)劃、里
34、程碑重要的管理計(jì)劃包括:項(xiàng)目概要計(jì)劃、里程碑計(jì)劃、項(xiàng)目控制計(jì)劃、產(chǎn)品控制計(jì)劃、驗(yàn)證計(jì)計(jì)劃、項(xiàng)目控制計(jì)劃、產(chǎn)品控制計(jì)劃、驗(yàn)證計(jì)劃、運(yùn)行維護(hù)計(jì)劃劃、運(yùn)行維護(hù)計(jì)劃堅(jiān)持進(jìn)行階段評(píng)審,盡早發(fā)現(xiàn)并排除錯(cuò)誤堅(jiān)持進(jìn)行階段評(píng)審,盡早發(fā)現(xiàn)并排除錯(cuò)誤(1)實(shí)行嚴(yán)格的產(chǎn)品控制:控制需求變動(dòng)的影響實(shí)行嚴(yán)格的產(chǎn)品控制:控制需求變動(dòng)的影響35 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心1.3 1.3 軟件工程軟件工程采用現(xiàn)代程序設(shè)計(jì)技術(shù),提高開(kāi)發(fā)和維護(hù)效采用現(xiàn)代程序設(shè)計(jì)技術(shù),提高開(kāi)發(fā)和維護(hù)效率率結(jié)果應(yīng)能清楚地審查結(jié)果應(yīng)能清楚地審查 軟件產(chǎn)品是邏輯產(chǎn)品,看不見(jiàn)摸不著;軟件產(chǎn)品是邏
35、輯產(chǎn)品,看不見(jiàn)摸不著;軟件開(kāi)發(fā)過(guò)程進(jìn)展的可見(jiàn)性差;軟件開(kāi)發(fā)過(guò)程進(jìn)展的可見(jiàn)性差;如何提高可見(jiàn)性?如何提高可見(jiàn)性?開(kāi)發(fā)小組的人員少而精(素質(zhì)與數(shù)量)開(kāi)發(fā)小組的人員少而精(素質(zhì)與數(shù)量)承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性 積極主動(dòng)采納新技術(shù);積極主動(dòng)采納新技術(shù);不斷總結(jié)經(jīng)驗(yàn)教訓(xùn),總結(jié)過(guò)程中的度量數(shù)據(jù)不斷總結(jié)經(jīng)驗(yàn)教訓(xùn),總結(jié)過(guò)程中的度量數(shù)據(jù),進(jìn)行分析,評(píng)估軟件技術(shù)的效果。,進(jìn)行分析,評(píng)估軟件技術(shù)的效果。36 2008 BUPT TSEG 北京郵電大學(xué)北京郵電大學(xué) 通信軟件工程中心通信軟件工程中心u計(jì)算機(jī)軟件計(jì)算機(jī)軟件u軟件的發(fā)展和軟件危機(jī)軟件的發(fā)展和軟件危機(jī)u軟件工程軟件工程u軟件工程知識(shí)體系軟件工程知識(shí)體系第一章第一章 軟件工程概述軟件工程概述37 2008 BUPT
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課題申報(bào)書(shū)主要觀點(diǎn)
- ??谡n題立項(xiàng)申報(bào)書(shū)
- 農(nóng)村磚房拆墻合同范本
- 【復(fù)習(xí)大串講】【中職專(zhuān)用】高二語(yǔ)文上學(xué)期期末期末綜合測(cè)試題(二)(職業(yè)模塊)(原卷版)
- 刀出售合同范本
- 吧臺(tái)設(shè)備采購(gòu)合同范例
- 醫(yī)療耗材oem合同范本
- 住房房屋裝修合同范本
- 老舊農(nóng)機(jī)淘汰更新工作方案
- 賣(mài)雞銷(xiāo)售合同范例
- 10KV電力工程施工組織設(shè)計(jì)
- 《無(wú)損檢測(cè)(第2版)》 課件緒論
- 腎上腺腫物的護(hù)理(演示模板)
- 2024年湖南工業(yè)職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫(kù)參考答案
- 電工流體 變壓器和開(kāi)關(guān)用的未使用過(guò)的礦物絕緣油
- 2024年安徽醫(yī)學(xué)高等專(zhuān)科學(xué)校單招職業(yè)適應(yīng)性測(cè)試題庫(kù)帶答案
- 聲門(mén)下分泌物引流的應(yīng)用專(zhuān)家講座
- 7.1.2全概率公式課件高二下學(xué)期數(shù)學(xué)人教A版選擇性
- 硝酸脂類(lèi)藥物的作用注意事項(xiàng)不良反應(yīng)
- 科普版小學(xué)英語(yǔ)六年級(jí)下冊(cè)全冊(cè)教案
- 腦梗合并心衰護(hù)理查房
評(píng)論
0/150
提交評(píng)論