第1章 軟件工程基礎(chǔ)

上傳人:仙*** 文檔編號:119389164 上傳時間:2022-07-14 格式:PPTX 頁數(shù):64 大?。?56.23KB
收藏 版權(quán)申訴 舉報 下載
第1章 軟件工程基礎(chǔ)_第1頁
第1頁 / 共64頁
第1章 軟件工程基礎(chǔ)_第2頁
第2頁 / 共64頁
第1章 軟件工程基礎(chǔ)_第3頁
第3頁 / 共64頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《第1章 軟件工程基礎(chǔ)》由會員分享,可在線閱讀,更多相關(guān)《第1章 軟件工程基礎(chǔ)(64頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、第一章第一章 軟件工程基礎(chǔ)軟件工程基礎(chǔ) 主要內(nèi)容n計算機系統(tǒng)工程計算機系統(tǒng)工程 n軟件工程軟件工程 n軟件生存期模型軟件生存期模型 n軟件開發(fā)方法軟件開發(fā)方法 n軟件工程環(huán)境軟件工程環(huán)境 軟件與計算機的系統(tǒng)要素之間的關(guān)系軟件與計算機的系統(tǒng)要素之間的關(guān)系n大多數(shù)軟件系統(tǒng)都是為了開發(fā)滿足某種需求大多數(shù)軟件系統(tǒng)都是為了開發(fā)滿足某種需求而建立。這些軟件必須要而建立。這些軟件必須要計算機系統(tǒng)的支持。的支持。n不論系統(tǒng)的自動化程度有多高,都需要不論系統(tǒng)的自動化程度有多高,都需要人人的的參與。任何系統(tǒng)都必須配備參與。任何系統(tǒng)都必須配備使用手冊使用手冊及必要及必要的表格和其他文檔。在網(wǎng)絡(luò)時代的應(yīng)用系統(tǒng)的表格和

2、其他文檔。在網(wǎng)絡(luò)時代的應(yīng)用系統(tǒng)中,絕大多數(shù)應(yīng)用系統(tǒng)都離不開中,絕大多數(shù)應(yīng)用系統(tǒng)都離不開數(shù)據(jù)庫數(shù)據(jù)庫和和網(wǎng)網(wǎng)絡(luò)絡(luò)這樣的基礎(chǔ)設(shè)施。如圖這樣的基礎(chǔ)設(shè)施。如圖1.11.1所示。所示。過程輸出輸入文檔硬件軟件人系統(tǒng)系統(tǒng)數(shù)據(jù)庫、網(wǎng)絡(luò)圖1.1 基于計算機的系統(tǒng)要素 1.11.1計算機系統(tǒng)工程計算機系統(tǒng)工程 n計算機系統(tǒng)工程:與構(gòu)造基于計算機系統(tǒng)有關(guān)的過:與構(gòu)造基于計算機系統(tǒng)有關(guān)的過程、方法和技術(shù)。程、方法和技術(shù)。n一種問題求解活動,目的是揭示與分析所期望的功一種問題求解活動,目的是揭示與分析所期望的功能,并把這些功能分配到系統(tǒng)的各個獨立系統(tǒng)元素能,并把這些功能分配到系統(tǒng)的各個獨立系統(tǒng)元素中去。中去。n計算機

3、系統(tǒng)工程師與用戶充分合作,以確認(rèn)用戶的計算機系統(tǒng)工程師與用戶充分合作,以確認(rèn)用戶的目標(biāo)與約束。目標(biāo)與約束。1.1.11.1.1硬件與硬件工程硬件與硬件工程 n計算機系統(tǒng)工程師根據(jù)系統(tǒng)需求為硬件系統(tǒng)計算機系統(tǒng)工程師根據(jù)系統(tǒng)需求為硬件系統(tǒng)指派任務(wù),產(chǎn)生硬件需求。指派任務(wù),產(chǎn)生硬件需求。n硬件工程師根據(jù)硬件需求設(shè)計、制造或選擇硬件工程師根據(jù)硬件需求設(shè)計、制造或選擇硬部件或設(shè)備。硬部件或設(shè)備。n硬件工程過程分為三個階段,即計劃和定義硬件工程過程分為三個階段,即計劃和定義階段;設(shè)計和樣機實現(xiàn)階段;生產(chǎn)、銷售和階段;設(shè)計和樣機實現(xiàn)階段;生產(chǎn)、銷售和售后服務(wù)階段。售后服務(wù)階段。硬件功能開發(fā)計劃評審詳細(xì)需求分

4、析評審成本進(jìn)度硬件規(guī)格說明(a)計劃與定義階段 該階段的任務(wù)是制訂開發(fā)計劃,確定項目成本預(yù)算和該階段的任務(wù)是制訂開發(fā)計劃,確定項目成本預(yù)算和工程進(jìn)度,并進(jìn)行詳細(xì)需求分析,確定硬件規(guī)格說明。工程進(jìn)度,并進(jìn)行詳細(xì)需求分析,確定硬件規(guī)格說明。設(shè)計圖紙設(shè)計圖紙樣機設(shè) 計 分析評審建立樣機與測試評審生產(chǎn)分析(b)設(shè)計與樣機實現(xiàn)階段 該階段的任務(wù)是分析設(shè)計,畫出設(shè)計圖,必要時建造原該階段的任務(wù)是分析設(shè)計,畫出設(shè)計圖,必要時建造原型對樣機進(jìn)行測試,最后進(jìn)行制造分析,畫出生產(chǎn)圖型對樣機進(jìn)行測試,最后進(jìn)行制造分析,畫出生產(chǎn)圖。產(chǎn)品備件制造質(zhì) 量 保證銷售評審返工維護(hù)機構(gòu)(c)制造、銷售與售后服務(wù)階段該階段的任務(wù)

5、是按照質(zhì)量保證計劃和要求生產(chǎn)硬件產(chǎn)品。該階段的任務(wù)是按照質(zhì)量保證計劃和要求生產(chǎn)硬件產(chǎn)品。1.1.21.1.2軟件與軟件工程軟件與軟件工程 n計算機軟件:軟件工程師設(shè)計和建造的產(chǎn)品。:軟件工程師設(shè)計和建造的產(chǎn)品。包括:包括:可執(zhí)行的程序可執(zhí)行的程序+開發(fā)各階段文檔開發(fā)各階段文檔+各種數(shù)據(jù)。各種數(shù)據(jù)。n軟件工程是研究軟件生產(chǎn)和軟件管理的工程科學(xué)。是研究軟件生產(chǎn)和軟件管理的工程科學(xué)。內(nèi)容包括:內(nèi)容包括:市場調(diào)研、正式立項、需求分析、項目策劃、市場調(diào)研、正式立項、需求分析、項目策劃、概要設(shè)計、詳細(xì)設(shè)計、編程、測試、試運行、產(chǎn)品發(fā)布、用概要設(shè)計、詳細(xì)設(shè)計、編程、測試、試運行、產(chǎn)品發(fā)布、用戶培訓(xùn)、產(chǎn)品復(fù)制

6、、銷售、實施、系統(tǒng)維護(hù)和版本升級等。戶培訓(xùn)、產(chǎn)品復(fù)制、銷售、實施、系統(tǒng)維護(hù)和版本升級等。n軟件工程模型一般包括:軟件項目的定義階段、軟軟件工程模型一般包括:軟件項目的定義階段、軟件開發(fā)階段、軟件的檢驗、交付與維護(hù)階段件開發(fā)階段、軟件的檢驗、交付與維護(hù)階段。原型(a)定義階段軟件項目計劃評審需求分析或原型評審項目計劃需求規(guī)格說明軟件功能原型數(shù)據(jù)與結(jié)構(gòu)設(shè)計評審過程設(shè)計評審程序編碼評審詳細(xì)設(shè)計規(guī)格說明概要設(shè)計規(guī)格說明源程序代碼(b)開發(fā)階段操作過程(c)檢驗、交付與維護(hù)階段(運行維護(hù)階段)單元測試組裝測試確認(rèn)測試調(diào)試交付與銷售評審維護(hù)評審用戶文檔測試計劃測試過程測試結(jié)果修改的源程序代碼因缺陷可能導(dǎo)致

7、返回到前面步驟修改的文檔代碼1.1.31.1.3人機工程人機工程 n關(guān)鍵是處理軟件與人的交互問題。關(guān)鍵是處理軟件與人的交互問題。n現(xiàn)在現(xiàn)在“人機界面友好人機界面友好”的要求,已成為基于計算機系的要求,已成為基于計算機系統(tǒng)的一項重要技術(shù)指標(biāo)統(tǒng)的一項重要技術(shù)指標(biāo)。n人機工程包括下列步驟:1.1.創(chuàng)建系統(tǒng)功能的外部模型創(chuàng)建系統(tǒng)功能的外部模型 2.2.確定為完成此系統(tǒng)功能人和計算機應(yīng)分別完成的任務(wù)確定為完成此系統(tǒng)功能人和計算機應(yīng)分別完成的任務(wù) 3.3.考慮界面設(shè)計中的典型問題考慮界面設(shè)計中的典型問題 4.4.借助借助CASECASE工具構(gòu)造界面原型和最終實現(xiàn)設(shè)計模型工具構(gòu)造界面原型和最終實現(xiàn)設(shè)計模型

8、5.5.從質(zhì)量的角度對界面進(jìn)行評估從質(zhì)量的角度對界面進(jìn)行評估 1.1.41.1.4數(shù)據(jù)庫工程數(shù)據(jù)庫工程 n數(shù)據(jù)庫系統(tǒng)是基于計算機系統(tǒng)的重要組成部數(shù)據(jù)庫系統(tǒng)是基于計算機系統(tǒng)的重要組成部分,它將有關(guān)的硬件、軟件、數(shù)據(jù)和數(shù)據(jù)庫分,它將有關(guān)的硬件、軟件、數(shù)據(jù)和數(shù)據(jù)庫管理人員結(jié)合起來,為用戶提供信息服務(wù)。管理人員結(jié)合起來,為用戶提供信息服務(wù)。n數(shù)據(jù)庫系統(tǒng)的開發(fā)方法主要有:結(jié)構(gòu)化生命數(shù)據(jù)庫系統(tǒng)的開發(fā)方法主要有:結(jié)構(gòu)化生命周期開發(fā)方法、原型法、面向?qū)ο蟮拈_發(fā)方周期開發(fā)方法、原型法、面向?qū)ο蟮拈_發(fā)方法等。法等。數(shù)據(jù)庫工程的任務(wù)數(shù)據(jù)庫工程的任務(wù)n數(shù)據(jù)庫工程應(yīng)完成下列任務(wù):1.1.確定系統(tǒng)的各項指標(biāo)并進(jìn)行評估和計

9、劃制定確定系統(tǒng)的各項指標(biāo)并進(jìn)行評估和計劃制定 2.2.論證、選擇和配置數(shù)據(jù)庫系統(tǒng)論證、選擇和配置數(shù)據(jù)庫系統(tǒng) 3.3.數(shù)據(jù)庫設(shè)計與實現(xiàn)數(shù)據(jù)庫設(shè)計與實現(xiàn) 概念設(shè)計(概念設(shè)計(E-RE-R圖)、邏輯設(shè)計、物理設(shè)計圖)、邏輯設(shè)計、物理設(shè)計4.4.數(shù)據(jù)庫的管理與維護(hù)數(shù)據(jù)庫的管理與維護(hù) 1.1.51.1.5網(wǎng)絡(luò)工程網(wǎng)絡(luò)工程 n網(wǎng)絡(luò)工程是研究網(wǎng)絡(luò)系統(tǒng)的規(guī)劃、設(shè)計與網(wǎng)絡(luò)工程是研究網(wǎng)絡(luò)系統(tǒng)的規(guī)劃、設(shè)計與管理的工程科學(xué),要求工程技術(shù)人員根據(jù)管理的工程科學(xué),要求工程技術(shù)人員根據(jù)既定的目標(biāo),嚴(yán)格依照行業(yè)規(guī)范,制定網(wǎng)既定的目標(biāo),嚴(yán)格依照行業(yè)規(guī)范,制定網(wǎng)絡(luò)建設(shè)的方案,協(xié)助工程招投標(biāo)、設(shè)計、絡(luò)建設(shè)的方案,協(xié)助工程招投標(biāo)、設(shè)

10、計、實施、管理與維護(hù)等活動。實施、管理與維護(hù)等活動。網(wǎng)絡(luò)工程的任務(wù)網(wǎng)絡(luò)工程的任務(wù)n網(wǎng)絡(luò)工程應(yīng)該完成以下任務(wù):網(wǎng)絡(luò)工程應(yīng)該完成以下任務(wù):1.1.需求分析需求分析。2.2.總體設(shè)計分析,總體設(shè)計分析,確定該網(wǎng)絡(luò)的服務(wù)類型,進(jìn)而確定該網(wǎng)絡(luò)的服務(wù)類型,進(jìn)而確定系統(tǒng)建設(shè)的具體目標(biāo)以及系統(tǒng)構(gòu)件拓?fù)浣Y(jié)確定系統(tǒng)建設(shè)的具體目標(biāo)以及系統(tǒng)構(gòu)件拓?fù)浣Y(jié)構(gòu)等。構(gòu)等。3.實施,即實施,即選擇合適的設(shè)備,按設(shè)計方案實現(xiàn)網(wǎng)選擇合適的設(shè)備,按設(shè)計方案實現(xiàn)網(wǎng)絡(luò)建設(shè)。絡(luò)建設(shè)。4.驗收與維護(hù)驗收與維護(hù)。1.21.2軟件工程軟件工程 n1.2.1軟件軟件n1.1.軟件定義軟件定義 (1)(1)在運行中能提供所希望的功能和性在運行中能提供

11、所希望的功能和性能的指令集(即程序);能的指令集(即程序);(2)(2)使程序能夠正確運行的數(shù)據(jù)結(jié)構(gòu);使程序能夠正確運行的數(shù)據(jù)結(jié)構(gòu);(3)(3)描述程序研制過程、方法所用的文描述程序研制過程、方法所用的文檔。檔。2.2.軟件的特點軟件的特點 n軟件是一種邏輯實體,不是具體的物理實體,具有軟件是一種邏輯實體,不是具體的物理實體,具有抽象性。抽象性。n軟件是通過人們的智力活動,把知識與技術(shù)轉(zhuǎn)化成軟件是通過人們的智力活動,把知識與技術(shù)轉(zhuǎn)化成信息的一種產(chǎn)品,是在研制、開發(fā)中被創(chuàng)造出來的。信息的一種產(chǎn)品,是在研制、開發(fā)中被創(chuàng)造出來的。n在軟件的運行和使用期間,沒有硬件那樣的機械磨在軟件的運行和使用期間,

12、沒有硬件那樣的機械磨損、老化問題。損、老化問題。軟件存在故障(錯誤)的原因軟件存在故障(錯誤)的原因n軟件的開發(fā)和運行經(jīng)常受到計算機硬件系統(tǒng)的軟件的開發(fā)和運行經(jīng)常受到計算機硬件系統(tǒng)的限制,軟件對計算機硬件系統(tǒng)有著不同程度的限制,軟件對計算機硬件系統(tǒng)有著不同程度的依賴關(guān)系。依賴關(guān)系。n軟件的開發(fā)尚未完全擺脫手工的開發(fā)方式。軟件的開發(fā)尚未完全擺脫手工的開發(fā)方式。n軟件的開發(fā)費用越來越高,成本相當(dāng)昂貴。軟件的開發(fā)費用越來越高,成本相當(dāng)昂貴。n軟件的開發(fā)是一個復(fù)雜的過程,管理是軟件開軟件的開發(fā)是一個復(fù)雜的過程,管理是軟件開發(fā)過程中必不可少內(nèi)容。發(fā)過程中必不可少內(nèi)容。1.2.21.2.2軟件工程的概念軟

13、件工程的概念 軟件發(fā)展的四個階段1.1950s1960s中:規(guī)模較小的程序,個體化的軟件開規(guī)模較小的程序,個體化的軟件開發(fā),只有程序清單。發(fā),只有程序清單。程序設(shè)計階段程序設(shè)計階段2.1960s中1970中:“軟件作坊軟件作坊”,廣泛使用產(chǎn)品軟,廣泛使用產(chǎn)品軟件。件。程序系統(tǒng)階段程序系統(tǒng)階段3.1970中 1980s:微處理器的出現(xiàn)并廣泛應(yīng)用。分布微處理器的出現(xiàn)并廣泛應(yīng)用。分布式系統(tǒng)、嵌入智能。式系統(tǒng)、嵌入智能。進(jìn)入軟件工程階段進(jìn)入軟件工程階段4.1980s:網(wǎng)絡(luò)迅速普及網(wǎng)絡(luò)迅速普及,強大的桌面系統(tǒng)、面向?qū)ο蠹夹g(shù)、強大的桌面系統(tǒng)、面向?qū)ο蠹夹g(shù)、專家系統(tǒng)、人工智能、神經(jīng)網(wǎng)絡(luò)、并行計算、網(wǎng)格計算、

14、虛擬專家系統(tǒng)、人工智能、神經(jīng)網(wǎng)絡(luò)、并行計算、網(wǎng)格計算、虛擬組織。組織。軟件發(fā)展過程中存在的問題軟件發(fā)展過程中存在的問題 軟件開發(fā)能力不能滿足人們的需要;軟件開發(fā)能力不能滿足人們的需要;社會對軟件的依賴程度加大,人們普遍關(guān)注軟件的社會對軟件的依賴程度加大,人們普遍關(guān)注軟件的安全和可靠性;安全和可靠性;若干年前開發(fā)的應(yīng)用軟件經(jīng)過幾十次修改已無人認(rèn)若干年前開發(fā)的應(yīng)用軟件經(jīng)過幾十次修改已無人認(rèn)識它的內(nèi)部結(jié)構(gòu),己經(jīng)不可維護(hù);識它的內(nèi)部結(jié)構(gòu),己經(jīng)不可維護(hù);由于經(jīng)濟原因由于經(jīng)濟原因,嵌入式系統(tǒng)存在許多怪現(xiàn)象,企業(yè)嵌入式系統(tǒng)存在許多怪現(xiàn)象,企業(yè)不愿意投入資源再生產(chǎn),而采取打補丁不愿意投入資源再生產(chǎn),而采取打補

15、丁+時髦界面時髦界面的方法。的方法。1.1.軟件危機軟件危機 軟件危機軟件危機是指在計算機軟件的是指在計算機軟件的開發(fā)和維護(hù)過程開發(fā)和維護(hù)過程中所遇中所遇到的一系列嚴(yán)重問題。到的一系列嚴(yán)重問題。典型表現(xiàn):典型表現(xiàn):n 開發(fā)成本和進(jìn)度的估計常常很不準(zhǔn)確;開發(fā)成本和進(jìn)度的估計常常很不準(zhǔn)確;n 用戶對用戶對“已完成的已完成的”軟件系統(tǒng)不滿意;軟件系統(tǒng)不滿意;“閉門造閉門造車車”;n 軟件質(zhì)量不可靠;軟件質(zhì)量不可靠;n 軟件常常是不可維護(hù)的;軟件常常是不可維護(hù)的;n 軟件成本的比例逐年上升;軟件成本的比例逐年上升;n 軟件產(chǎn)品軟件產(chǎn)品“供不應(yīng)求供不應(yīng)求”;2.2.消除軟件危機的途徑消除軟件危機的途徑

16、消除消除“軟件就是程序軟件就是程序”的錯誤觀念。的錯誤觀念。一個軟件必須由一個完整的配置組成,事實上,一個軟件必須由一個完整的配置組成,事實上,軟件是軟件是程序、數(shù)據(jù)及相關(guān)文檔的完整集合。程序、數(shù)據(jù)及相關(guān)文檔的完整集合。軟件開發(fā)不是某種個體勞動的神秘技巧,而應(yīng)該軟件開發(fā)不是某種個體勞動的神秘技巧,而應(yīng)該是一種組織良好、管理嚴(yán)密、各類人員協(xié)同配合、是一種組織良好、管理嚴(yán)密、各類人員協(xié)同配合、共同完成的共同完成的工程項目。工程項目。成功的軟件開發(fā)技術(shù)和方法。成功的軟件開發(fā)技術(shù)和方法。軟件工具和軟件工程支撐環(huán)境。軟件工具和軟件工程支撐環(huán)境。3.3.軟件工程的定義軟件工程的定義 n1968年在聯(lián)邦德國

17、召開的年在聯(lián)邦德國召開的計算機國際會議計算機國際會議NATOn軟件危機軟件危機根源根源解決途徑解決途徑軟件工程軟件工程n“概括地說,概括地說,軟件工程是指導(dǎo)計算機軟件開發(fā)和是指導(dǎo)計算機軟件開發(fā)和維護(hù)的一門工程學(xué)科。采用維護(hù)的一門工程學(xué)科。采用工程的概念、原理、的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時間考驗技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時間考驗而證明正確的而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,以技術(shù)方法結(jié)合起來,以經(jīng)濟地開發(fā)出高質(zhì)量的軟件并有效地維護(hù)它?!?.4.軟件工程的目標(biāo)軟件工程的目標(biāo) n軟件工程的目標(biāo)是明確的,就是研制、開發(fā)軟件工

18、程的目標(biāo)是明確的,就是研制、開發(fā)與生產(chǎn)出具有良好軟件質(zhì)量和費用合算的產(chǎn)與生產(chǎn)出具有良好軟件質(zhì)量和費用合算的產(chǎn)品品。1)1)采用工程化方法和途徑來開發(fā)與維護(hù)軟件。采用工程化方法和途徑來開發(fā)與維護(hù)軟件。2)2)應(yīng)該開發(fā)和使用更好的軟件工具。應(yīng)該開發(fā)和使用更好的軟件工具。3)3)采取必要的管理措施。采取必要的管理措施。5.5.軟件工程的基本原則軟件工程的基本原則1.1.用分階段的生命周期計劃嚴(yán)格管理用分階段的生命周期計劃嚴(yán)格管理2.2.堅持進(jìn)行階段評審堅持進(jìn)行階段評審錯誤出現(xiàn)的時間:在編代碼之前(設(shè)計錯誤占錯誤出現(xiàn)的時間:在編代碼之前(設(shè)計錯誤占63%63%:編碼占:編碼占37%37%)改正錯誤的代

19、價:發(fā)現(xiàn)得越晚,開發(fā)代價越高改正錯誤的代價:發(fā)現(xiàn)得越晚,開發(fā)代價越高3.3.實行嚴(yán)格的產(chǎn)品控制實行嚴(yán)格的產(chǎn)品控制n基線配置(經(jīng)階段評審后的軟件配置)、變動控制(要嚴(yán)格評審才基線配置(經(jīng)階段評審后的軟件配置)、變動控制(要嚴(yán)格評審才能修改)能修改)4.4.采用現(xiàn)代程序設(shè)計技術(shù)采用現(xiàn)代程序設(shè)計技術(shù)5.5.結(jié)果應(yīng)能清楚地審查結(jié)果應(yīng)能清楚地審查6.6.開發(fā)小組的人員應(yīng)該少而精開發(fā)小組的人員應(yīng)該少而精7.7.承認(rèn)不斷改進(jìn)軟件工程實踐的必要性承認(rèn)不斷改進(jìn)軟件工程實踐的必要性6.6.軟件工程研究的基本內(nèi)容軟件工程研究的基本內(nèi)容 n軟件工程學(xué)分為:理論與結(jié)構(gòu)、方法、工具與環(huán)境、軟件工程學(xué)分為:理論與結(jié)構(gòu)、方法

20、、工具與環(huán)境、管理和規(guī)范等。管理和規(guī)范等。n理論與結(jié)構(gòu)包括:程序正確性證明理論、軟件可靠理論與結(jié)構(gòu)包括:程序正確性證明理論、軟件可靠性理論、軟件成本估算模型、軟件開發(fā)模型、模塊性理論、軟件成本估算模型、軟件開發(fā)模型、模塊劃分原理等。劃分原理等。n軟件開發(fā)技術(shù)包括:軟件開發(fā)方法學(xué)、軟件工具和軟件開發(fā)技術(shù)包括:軟件開發(fā)方法學(xué)、軟件工具和軟件開發(fā)環(huán)境。軟件開發(fā)環(huán)境。n軟件工程管理包括:軟件開發(fā)管理和軟件經(jīng)濟管理軟件工程管理包括:軟件開發(fā)管理和軟件經(jīng)濟管理。1.2.31.2.3軟件生命周期軟件生命周期 v軟件生存周期就是從提出軟件產(chǎn)品開始,直到該就是從提出軟件產(chǎn)品開始,直到該軟件產(chǎn)品被淘汰的全過程軟件

21、產(chǎn)品被淘汰的全過程。v我國軟件工程標(biāo)準(zhǔn)將軟件生命周期分成以下幾個我國軟件工程標(biāo)準(zhǔn)將軟件生命周期分成以下幾個階段:階段:n軟件定義:確定軟件開發(fā)總目標(biāo);確定工程的可行性;確定軟件開發(fā)總目標(biāo);確定工程的可行性;導(dǎo)出實現(xiàn)策略及系統(tǒng)功能;估計資源和成本,并且制定導(dǎo)出實現(xiàn)策略及系統(tǒng)功能;估計資源和成本,并且制定工程進(jìn)度表。工程進(jìn)度表。n問題定義、可行性研究、需求分析問題定義、可行性研究、需求分析n軟件開發(fā):具體設(shè)計和實現(xiàn)在前一個時期定義的軟件具體設(shè)計和實現(xiàn)在前一個時期定義的軟件n總體設(shè)計、詳細(xì)設(shè)計、編碼和單元測試、綜合測試總體設(shè)計、詳細(xì)設(shè)計、編碼和單元測試、綜合測試n軟件維護(hù):使軟件持久地滿足用戶的需要

22、。使軟件持久地滿足用戶的需要。軟件生命周期軟件生命周期(續(xù)續(xù)1)1)1.1.問題定義問題定義 “要解決的問題是什么要解決的問題是什么?”?”確定用戶要求解決的性質(zhì)、工程的目標(biāo)和規(guī)模。確定用戶要求解決的性質(zhì)、工程的目標(biāo)和規(guī)模。2.2.可行性研究可行性研究 “對于上一個階段所確定的問題有行得通的解決辦法嗎對于上一個階段所確定的問題有行得通的解決辦法嗎?”?”經(jīng)濟可行性、技術(shù)可行性、法律可行性、不同的方案經(jīng)濟可行性、技術(shù)可行性、法律可行性、不同的方案3.3.需求分析需求分析 “為了解決這個問題,目標(biāo)系統(tǒng)必須做什么為了解決這個問題,目標(biāo)系統(tǒng)必須做什么”確定系統(tǒng)必須具有的功能和性能,系統(tǒng)要求的運行環(huán)境,

23、并且確定系統(tǒng)必須具有的功能和性能,系統(tǒng)要求的運行環(huán)境,并且預(yù)測系統(tǒng)發(fā)展的前景。預(yù)測系統(tǒng)發(fā)展的前景。規(guī)格說明書規(guī)格說明書(specification)(specification)軟件生命周期軟件生命周期(續(xù)續(xù)2)2)4.總體設(shè)計(概要設(shè)計)總體設(shè)計(概要設(shè)計)n “概括地說,應(yīng)該怎樣實現(xiàn)目標(biāo)系統(tǒng)概括地說,應(yīng)該怎樣實現(xiàn)目標(biāo)系統(tǒng)?”n 設(shè)計出實現(xiàn)目標(biāo)系統(tǒng)的幾種可能的方案。推薦一個最佳方案。設(shè)計出實現(xiàn)目標(biāo)系統(tǒng)的幾種可能的方案。推薦一個最佳方案。5.詳細(xì)設(shè)計詳細(xì)設(shè)計n “應(yīng)該怎樣具體地實現(xiàn)這個系統(tǒng)呢應(yīng)該怎樣具體地實現(xiàn)這個系統(tǒng)呢?”n 設(shè)計出程序的詳細(xì)規(guī)格說明。設(shè)計出程序的詳細(xì)規(guī)格說明。6.編碼和單元測

24、試編碼和單元測試n 寫出正確的容易理解、容易維護(hù)的程序模塊寫出正確的容易理解、容易維護(hù)的程序模塊n 仔細(xì)測試編寫出的每一個模塊。仔細(xì)測試編寫出的每一個模塊。7.綜合測試綜合測試n 集成測試和驗收測試,現(xiàn)場測試或平行運行集成測試和驗收測試,現(xiàn)場測試或平行運行8.軟件維護(hù)軟件維護(hù) 使系統(tǒng)持久地滿足用戶的需要。使系統(tǒng)持久地滿足用戶的需要。改正性維護(hù),適應(yīng)性維護(hù),完善性維護(hù),預(yù)防性維護(hù)。改正性維護(hù),適應(yīng)性維護(hù),完善性維護(hù),預(yù)防性維護(hù)。1.31.3軟件生存期模型軟件生存期模型 n軟件生存期模型反映軟件生存周期內(nèi)各種工作應(yīng)如軟件生存期模型反映軟件生存周期內(nèi)各種工作應(yīng)如何組織及,以及各個階段應(yīng)如何銜接。何組

25、織及,以及各個階段應(yīng)如何銜接。n軟件生存期模型是跨越整個軟件生存周期的系統(tǒng)開軟件生存期模型是跨越整個軟件生存周期的系統(tǒng)開發(fā)、運作、維護(hù)所實施的全部工作和任務(wù)的結(jié)構(gòu)框發(fā)、運作、維護(hù)所實施的全部工作和任務(wù)的結(jié)構(gòu)框架。架。n常用的軟件生存期模型有:瀑布模型、原型模型、常用的軟件生存期模型有:瀑布模型、原型模型、螺旋模型、基于四代技術(shù)模型、噴泉模型和增量模螺旋模型、基于四代技術(shù)模型、噴泉模型和增量模型。型。1.3.21.3.2瀑布模型瀑布模型(Waterfall model)n瀑布模型又稱生存周期模型,由瀑布模型又稱生存周期模型,由B.M.Boehm提出,提出,是軟件工程的基礎(chǔ)模型。是軟件工程的基礎(chǔ)模

26、型。理想的瀑布模型理想的瀑布模型實際的瀑布模型實際的瀑布模型瀑布模型的特點瀑布模型的特點1.階段間具有順序性和依賴性n各個階段如同瀑布流水,逐級下落,自上而下、相互銜接的固定次序。2.推遲實現(xiàn)的觀點n清楚地區(qū)分邏輯設(shè)計與物理設(shè)計,盡可能推遲程序的物理實現(xiàn)。3.質(zhì)量保證的觀點(文檔驅(qū)動)n每個階段都必須完成規(guī)定的文檔n每個階段結(jié)束前都要對所完成的文檔進(jìn)行評審瀑布模型的缺點瀑布模型的缺點模型缺乏靈活性。模型缺乏靈活性。開發(fā)過程一般不能逆轉(zhuǎn),否則代價太大開發(fā)過程一般不能逆轉(zhuǎn),否則代價太大規(guī)格說明很難理解:規(guī)格說明很難理解:“我知道這是按我我知道這是按我的要求做的,但不是我想要的樣子。的要求做的,但不

27、是我想要的樣子。”軟件的實際情況必須到項目開發(fā)的后期軟件的實際情況必須到項目開發(fā)的后期客戶才能看到。(客戶才能看到。(文檔驅(qū)動的兩面性文檔驅(qū)動的兩面性)1.3.3 1.3.3 快速原型模型快速原型模型 快速建立起來的可以在計算機上運行的程序,它所能完快速建立起來的可以在計算機上運行的程序,它所能完成的功能往往是最終產(chǎn)品能完成的功能的一個子集。成的功能往往是最終產(chǎn)品能完成的功能的一個子集。用戶測試用戶測試運行原型運行原型建造建造/修改修改 原型原型 聽取用聽取用 戶意見戶意見1.1.快速原型模型的優(yōu)點快速原型模型的優(yōu)點快速原型的本質(zhì)是快速原型的本質(zhì)是“快速快速”,主要幫助建立正確的,主要幫助建立

28、正確的規(guī)規(guī)格說明。格說明。原型模型給用戶以機會,更改心中原先設(shè)想的、不原型模型給用戶以機會,更改心中原先設(shè)想的、不盡合理的最終系統(tǒng)。盡合理的最終系統(tǒng)。原型模型可以低風(fēng)險開發(fā)柔性較大的計算機系統(tǒng)。原型模型可以低風(fēng)險開發(fā)柔性較大的計算機系統(tǒng)。原型模型使系統(tǒng)更易維護(hù),生成對用戶更友好的最原型模型使系統(tǒng)更易維護(hù),生成對用戶更友好的最終系統(tǒng)。終系統(tǒng)。原型模型使總的開發(fā)費用降低,開發(fā)時間縮短。原型模型使總的開發(fā)費用降低,開發(fā)時間縮短。有利于開發(fā)與培訓(xùn)的同步有利于開發(fā)與培訓(xùn)的同步2.2.缺點缺點 對于開發(fā)者不熟悉的領(lǐng)域,可能會把次要部分當(dāng)作對于開發(fā)者不熟悉的領(lǐng)域,可能會把次要部分當(dāng)作主要框架,從而做出不切題

29、的原型。主要框架,從而做出不切題的原型。原型迭代不收斂于開發(fā)者預(yù)先定義的目標(biāo)。原型迭代不收斂于開發(fā)者預(yù)先定義的目標(biāo)。原型過快收斂于需求集合,而忽略了一些基本點。原型過快收斂于需求集合,而忽略了一些基本點。資源規(guī)劃和管理較為困難,隨時更新文檔也帶來麻資源規(guī)劃和管理較為困難,隨時更新文檔也帶來麻煩。煩。長期在原型環(huán)境上開發(fā),只注意得到滿意的原型,長期在原型環(huán)境上開發(fā),只注意得到滿意的原型,容易容易“遺忘遺忘”用戶環(huán)境和原型環(huán)境的差異。用戶環(huán)境和原型環(huán)境的差異。3.3.原型模型的應(yīng)用范圍原型模型的應(yīng)用范圍對所開發(fā)的領(lǐng)域比較熟悉而且有快速的原型開發(fā)工具對所開發(fā)的領(lǐng)域比較熟悉而且有快速的原型開發(fā)工具項目

30、招投標(biāo)時,可以以原型模型作為軟件的開發(fā)模型項目招投標(biāo)時,可以以原型模型作為軟件的開發(fā)模型進(jìn)行產(chǎn)品移植或升級時,或?qū)σ延挟a(chǎn)品原型進(jìn)行客戶進(jìn)行產(chǎn)品移植或升級時,或?qū)σ延挟a(chǎn)品原型進(jìn)行客戶化工作時,原型模型是非常適合的化工作時,原型模型是非常適合的原型模型不適用嵌入式軟件、實時控制軟件、數(shù)值計原型模型不適用嵌入式軟件、實時控制軟件、數(shù)值計算軟件算軟件比較比較 瀑布模型瀑布模型試圖一次就獲得正確的產(chǎn)品試圖一次就獲得正確的產(chǎn)品 快速原型快速原型頻繁變化,然后廢棄頻繁變化,然后廢棄1.3.41.3.4螺旋模型螺旋模型 n1988年,年,Barry Boehm正式發(fā)表了軟件系統(tǒng)開發(fā)的正式發(fā)表了軟件系統(tǒng)開發(fā)的“

31、螺旋螺旋模型模型”,它將瀑布模型和快速原型模型結(jié)合起來,強調(diào)了其,它將瀑布模型和快速原型模型結(jié)合起來,強調(diào)了其他模型所忽視的他模型所忽視的風(fēng)險分析。n該模型通常用來指導(dǎo)大型軟件項目的開發(fā),它將開發(fā)劃分為該模型通常用來指導(dǎo)大型軟件項目的開發(fā),它將開發(fā)劃分為制訂計劃、風(fēng)險分析、實施開發(fā)和客戶評估四類活動。制訂計劃、風(fēng)險分析、實施開發(fā)和客戶評估四類活動。簡化版本:瀑布模型簡化版本:瀑布模型+風(fēng)險分析風(fēng)險分析 每個階段之前每個階段之前-確定目標(biāo),可供選擇的辦法及其限制條件確定目標(biāo),可供選擇的辦法及其限制條件-風(fēng)險分析風(fēng)險分析 每個階段之后每個階段之后-評估評估-計劃下一階段計劃下一階段簡化的螺旋模型簡

32、化的螺旋模型完整的螺旋模型完整的螺旋模型 螺旋模型的優(yōu)點容易確定什么時候已經(jīng)對某一階段的產(chǎn)品充分測試完畢容易確定什么時候已經(jīng)對某一階段的產(chǎn)品充分測試完畢維護(hù)和開發(fā)之間沒有什么本質(zhì)上的差別維護(hù)和開發(fā)之間沒有什么本質(zhì)上的差別 螺旋模型的缺點僅適合于大型軟件僅適合于大型軟件 風(fēng)險驅(qū)動既是優(yōu)點也是缺點風(fēng)險驅(qū)動既是優(yōu)點也是缺點1.3.51.3.5基于四代技術(shù)模型基于四代技術(shù)模型n軟件工程的第四代技術(shù)(軟件工程的第四代技術(shù)(4GT)包含一系列的軟件)包含一系列的軟件工具。工具。n共同點:使軟件設(shè)計者在較高級別上說明軟件的某些特征;使軟件設(shè)計者在較高級別上說明軟件的某些特征;軟件工具根據(jù)說明,自動生成源代碼

33、。軟件工具根據(jù)說明,自動生成源代碼。n支持第四代技術(shù)模型的軟件開發(fā)環(huán)境和工具要求較支持第四代技術(shù)模型的軟件開發(fā)環(huán)境和工具要求較高,高,例如數(shù)據(jù)庫查詢的非過程語言、報告生成器、數(shù)據(jù)操縱、屏幕交例如數(shù)據(jù)庫查詢的非過程語言、報告生成器、數(shù)據(jù)操縱、屏幕交互及定義、以及代碼生成;高級圖形功能;電子表格功能?;ゼ岸x、以及代碼生成;高級圖形功能;電子表格功能。n優(yōu)點:極大地降低了軟件的開發(fā)時間,并顯著極大地降低了軟件的開發(fā)時間,并顯著提高了構(gòu)造軟件的生產(chǎn)率。提高了構(gòu)造軟件的生產(chǎn)率。n缺點:目前目前4GT并不比程序設(shè)計語言更容易使并不比程序設(shè)計語言更容易使用,而且這類工具生成的結(jié)果源代碼是用,而且這類工具生

34、成的結(jié)果源代碼是“低效低效的的”,使用,使用4GT開發(fā)的大型軟件系統(tǒng)的可維護(hù)開發(fā)的大型軟件系統(tǒng)的可維護(hù)性令人懷疑的。性令人懷疑的。1.3.61.3.6噴泉模型噴泉模型 n在面向?qū)ο蠓椒ㄖ?,提出了與瀑布模型相對應(yīng)的噴在面向?qū)ο蠓椒ㄖ?,提出了與瀑布模型相對應(yīng)的噴泉模型,該模型的主要特點是認(rèn)為軟件生命周期的泉模型,該模型的主要特點是認(rèn)為軟件生命周期的各個階段是相互重疊和多次反復(fù)的各個階段是相互重疊和多次反復(fù)的。n噴泉模型主要支持面向?qū)ο蟮拈_發(fā)方法。系統(tǒng)某個噴泉模型主要支持面向?qū)ο蟮拈_發(fā)方法。系統(tǒng)某個部分常常重復(fù)工作多次,相關(guān)功能在每次迭代中隨部分常常重復(fù)工作多次,相關(guān)功能在每次迭代中隨之加入演進(jìn)的系

35、統(tǒng)。之加入演進(jìn)的系統(tǒng)。n在開發(fā)活動,即分析、設(shè)計和編碼之間不存在明顯在開發(fā)活動,即分析、設(shè)計和編碼之間不存在明顯的邊界。的邊界。圖1.9 噴泉模型 1.3.71.3.7增量模型增量模型 也稱:漸增模型也稱:漸增模型把軟件產(chǎn)品作為一系列增量構(gòu)件來設(shè)計、編碼、集成和測試。把軟件產(chǎn)品作為一系列增量構(gòu)件來設(shè)計、編碼、集成和測試。瀑布模型和快速原型模型的目標(biāo)交付給客戶一個完整的、可用的產(chǎn)品交付給客戶一個完整的、可用的產(chǎn)品增量模型的優(yōu)點每個階段交付一個可用的產(chǎn)品每個階段交付一個可用的產(chǎn)品減少一個全新產(chǎn)品給客戶帶來的心理上的影響減少一個全新產(chǎn)品給客戶帶來的心理上的影響分階段地交付產(chǎn)品不需要大的資金支出分階段

36、地交付產(chǎn)品不需要大的資金支出需求經(jīng)常變化,增量模型的靈活性使其具有更加優(yōu)越需求經(jīng)常變化,增量模型的靈活性使其具有更加優(yōu)越的適用性的適用性增量模型的困難需要一個開放的結(jié)構(gòu),方便構(gòu)件的加入需要一個開放的結(jié)構(gòu),方便構(gòu)件的加入增量模型本身就是一個矛盾的名詞增量模型本身就是一個矛盾的名詞1.41.4軟件開發(fā)方法軟件開發(fā)方法 n結(jié)構(gòu)化方法結(jié)構(gòu)化方法n面向數(shù)據(jù)結(jié)構(gòu)方法面向數(shù)據(jù)結(jié)構(gòu)方法 n面向?qū)ο蠓椒嫦驅(qū)ο蠓椒?n原型法原型法 1.4.11.4.1結(jié)構(gòu)化方法結(jié)構(gòu)化方法n結(jié)構(gòu)是指系統(tǒng)內(nèi)各組成要素之間的相互聯(lián)系、是指系統(tǒng)內(nèi)各組成要素之間的相互聯(lián)系、相互作用的框架。相互作用的框架。n結(jié)構(gòu)化方法:強調(diào)結(jié)構(gòu)的合理性,

37、以及所開發(fā)強調(diào)結(jié)構(gòu)的合理性,以及所開發(fā)軟件的結(jié)構(gòu)合理性,由此提出了一組提高軟軟件的結(jié)構(gòu)合理性,由此提出了一組提高軟件結(jié)構(gòu)合理性的準(zhǔn)則,如分解和抽象、模塊件結(jié)構(gòu)合理性的準(zhǔn)則,如分解和抽象、模塊的獨立性、信息隱蔽等。的獨立性、信息隱蔽等。n針對不同的開發(fā)活動,有結(jié)構(gòu)化分析、結(jié)構(gòu)針對不同的開發(fā)活動,有結(jié)構(gòu)化分析、結(jié)構(gòu)化設(shè)計、結(jié)構(gòu)化編程和結(jié)構(gòu)化測試等?;O(shè)計、結(jié)構(gòu)化編程和結(jié)構(gòu)化測試等。結(jié)構(gòu)化分析方法結(jié)構(gòu)化分析方法n結(jié)構(gòu)化分析方法給出一組幫助系統(tǒng)分析人員結(jié)構(gòu)化分析方法給出一組幫助系統(tǒng)分析人員產(chǎn)生功能規(guī)約的原理和技術(shù)。產(chǎn)生功能規(guī)約的原理和技術(shù)。n利用圖形表示用戶需求,以數(shù)據(jù)流圖和控制利用圖形表示用戶需求,

38、以數(shù)據(jù)流圖和控制流圖為基礎(chǔ),伴以數(shù)據(jù)詞典,并配上結(jié)構(gòu)化流圖為基礎(chǔ),伴以數(shù)據(jù)詞典,并配上結(jié)構(gòu)化語言、判定表和判定樹等等描述手段,從而語言、判定表和判定樹等等描述手段,從而達(dá)到為解決問題而建立模型。達(dá)到為解決問題而建立模型。結(jié)構(gòu)化分析的步驟結(jié)構(gòu)化分析的步驟n結(jié)構(gòu)化分析的步驟如下:結(jié)構(gòu)化分析的步驟如下:(1)進(jìn)行系統(tǒng)分析,做出反映當(dāng)前物理模型的數(shù)據(jù)流圖;)進(jìn)行系統(tǒng)分析,做出反映當(dāng)前物理模型的數(shù)據(jù)流圖;(2)推導(dǎo)出等價的邏輯模型的數(shù)據(jù)流圖;)推導(dǎo)出等價的邏輯模型的數(shù)據(jù)流圖;(3)設(shè)計新的邏輯系統(tǒng),生成數(shù)據(jù)詞典描述;)設(shè)計新的邏輯系統(tǒng),生成數(shù)據(jù)詞典描述;(4)建立人機接口界面,提出可供選擇的目標(biāo)系統(tǒng)的物

39、理模)建立人機接口界面,提出可供選擇的目標(biāo)系統(tǒng)的物理模型數(shù)據(jù)流圖;型數(shù)據(jù)流圖;(5)確定各種方案的成本和風(fēng)險等級,據(jù)此對各種方案進(jìn)行)確定各種方案的成本和風(fēng)險等級,據(jù)此對各種方案進(jìn)行分析;分析;(6)選擇一種方案;)選擇一種方案;(7)建立完整的需求規(guī)約。)建立完整的需求規(guī)約。結(jié)構(gòu)化設(shè)計結(jié)構(gòu)化設(shè)計n結(jié)構(gòu)化設(shè)計通常與結(jié)構(gòu)化分析銜接起來使用,以數(shù)據(jù)流圖為結(jié)構(gòu)化設(shè)計通常與結(jié)構(gòu)化分析銜接起來使用,以數(shù)據(jù)流圖為基礎(chǔ),得到軟件模塊結(jié)構(gòu)?;A(chǔ),得到軟件模塊結(jié)構(gòu)。n結(jié)構(gòu)化設(shè)計的步驟如下:(1)評審和細(xì)化數(shù)據(jù)流圖;)評審和細(xì)化數(shù)據(jù)流圖;(2)確定數(shù)據(jù)流圖的類型;)確定數(shù)據(jù)流圖的類型;(3)把數(shù)據(jù)流圖映射到軟件模

40、塊結(jié)構(gòu),設(shè)計出模塊結(jié)構(gòu)的上)把數(shù)據(jù)流圖映射到軟件模塊結(jié)構(gòu),設(shè)計出模塊結(jié)構(gòu)的上層;層;(4)基于數(shù)據(jù)流圖逐步分解高層模塊,設(shè)計中下層模塊;)基于數(shù)據(jù)流圖逐步分解高層模塊,設(shè)計中下層模塊;(5)對軟件模塊結(jié)構(gòu)進(jìn)行優(yōu)化,得到更為合理的軟件結(jié)構(gòu);)對軟件模塊結(jié)構(gòu)進(jìn)行優(yōu)化,得到更為合理的軟件結(jié)構(gòu);(6)描述模塊接口。)描述模塊接口。1.4.21.4.2面向數(shù)據(jù)結(jié)構(gòu)方法面向數(shù)據(jù)結(jié)構(gòu)方法n面向數(shù)據(jù)結(jié)構(gòu)方法是結(jié)構(gòu)化方法的變形,它面向數(shù)據(jù)結(jié)構(gòu)方法是結(jié)構(gòu)化方法的變形,它著重數(shù)據(jù)結(jié)構(gòu)而不是數(shù)據(jù)流。著重數(shù)據(jù)結(jié)構(gòu)而不是數(shù)據(jù)流。n結(jié)構(gòu)化方法:以分析信息流為主,用數(shù)據(jù)流以分析信息流為主,用數(shù)據(jù)流圖來表示信息流;圖來表示信息

41、流;n面向數(shù)據(jù)結(jié)構(gòu)方法:從分析數(shù)據(jù)結(jié)構(gòu)入手,從分析數(shù)據(jù)結(jié)構(gòu)入手,即分析信息結(jié)構(gòu),并用數(shù)據(jù)結(jié)構(gòu)圖來表示,即分析信息結(jié)構(gòu),并用數(shù)據(jù)結(jié)構(gòu)圖來表示,再在此基礎(chǔ)上進(jìn)行需求分析,導(dǎo)出軟件的結(jié)再在此基礎(chǔ)上進(jìn)行需求分析,導(dǎo)出軟件的結(jié)構(gòu)。構(gòu)。n面向數(shù)據(jù)結(jié)構(gòu)方法面向數(shù)據(jù)結(jié)構(gòu)方法:Warmer法、法、Jackson法以及法以及DSSD(數(shù)據(jù)結(jié)構(gòu)系統(tǒng)開發(fā))方法等。(數(shù)據(jù)結(jié)構(gòu)系統(tǒng)開發(fā))方法等。n面向數(shù)據(jù)結(jié)構(gòu)的開發(fā)方法包括:分析和設(shè)計活動。面向數(shù)據(jù)結(jié)構(gòu)的開發(fā)方法包括:分析和設(shè)計活動。nJackson方法實例:把系統(tǒng)開發(fā)分為方法實例:把系統(tǒng)開發(fā)分為描述和和實現(xiàn)兩兩個階段。個階段。n描述階段建立一個與系統(tǒng)相關(guān)的客觀世界的模型

42、,描述階段建立一個與系統(tǒng)相關(guān)的客觀世界的模型,并在此基礎(chǔ)上確定系統(tǒng)功能。實現(xiàn)階段在具體的計并在此基礎(chǔ)上確定系統(tǒng)功能。實現(xiàn)階段在具體的計算機軟硬件環(huán)境下,實現(xiàn)系統(tǒng)功能。算機軟硬件環(huán)境下,實現(xiàn)系統(tǒng)功能。1.4.31.4.3面向?qū)ο蠓椒嫦驅(qū)ο蠓椒╪起源起源:面向?qū)ο缶幊陶Z言面向?qū)ο缶幊陶Z言 nOOP(面向?qū)ο缶幊蹋嫦驅(qū)ο缶幊蹋?OOD(面向?qū)ο笤O(shè)計)(面向?qū)ο笤O(shè)計)+OOA(面向(面向?qū)ο蠓治觯ο蠓治觯?OMT(對象建模技術(shù))對象建模技術(shù))和和UML(統(tǒng)一建模語言:面(統(tǒng)一建模語言:面向?qū)ο蟮能浖_發(fā)方法)向?qū)ο蟮能浖_發(fā)方法)n面向?qū)ο蠓椒ǖ拈_發(fā)步驟:1)從問題陳述入手,構(gòu)造系統(tǒng)模型(對象

43、模型)從問題陳述入手,構(gòu)造系統(tǒng)模型(對象模型,再導(dǎo)出動態(tài)模型和功能模型)。再導(dǎo)出動態(tài)模型和功能模型)。2)逐層分解成各級子系統(tǒng)。)逐層分解成各級子系統(tǒng)。1.4.41.4.4原型法原型法n原型法首先構(gòu)造一個功能簡單的原型系統(tǒng),然后通原型法首先構(gòu)造一個功能簡單的原型系統(tǒng),然后通過對原型系統(tǒng)逐步求精,不斷擴充完善得到最終的過對原型系統(tǒng)逐步求精,不斷擴充完善得到最終的軟件系統(tǒng)。軟件系統(tǒng)。n原型法的主要優(yōu)點:原型法的主要優(yōu)點:1)一種支持用戶的方法,使得用戶在系統(tǒng)生存周期)一種支持用戶的方法,使得用戶在系統(tǒng)生存周期的設(shè)計階段起到積極的作用;的設(shè)計階段起到積極的作用;2)它能減少系統(tǒng)開發(fā)的風(fēng)險,特別是在大

44、型項目的)它能減少系統(tǒng)開發(fā)的風(fēng)險,特別是在大型項目的開發(fā)中,由于對項目需求的分析難以一次完成,應(yīng)開發(fā)中,由于對項目需求的分析難以一次完成,應(yīng)用原型法效果更為明顯。用原型法效果更為明顯。1.51.5軟件工程環(huán)境軟件工程環(huán)境n軟件工程環(huán)境是軟件工程學(xué)的組成部分,也軟件工程環(huán)境是軟件工程學(xué)的組成部分,也是實現(xiàn)軟件生產(chǎn)工程化的重要基礎(chǔ)。是實現(xiàn)軟件生產(chǎn)工程化的重要基礎(chǔ)。n軟件工程環(huán)境的定義 “軟件工程環(huán)境是一組方法、過程及計算軟件工程環(huán)境是一組方法、過程及計算機程序的整體化構(gòu)建,支持從需求定義、程機程序的整體化構(gòu)建,支持從需求定義、程序生成直到維護(hù)的整個軟件生存期序生成直到維護(hù)的整個軟件生存期”。美國國

45、防部的定義美國國防部的定義 n軟件工程環(huán)境是相關(guān)的一組軟件工具的集軟件工程環(huán)境是相關(guān)的一組軟件工具的集合,支持一定的軟件開發(fā)方法或按照一定合,支持一定的軟件開發(fā)方法或按照一定的軟件開發(fā)模型組織而成。的軟件開發(fā)模型組織而成。n軟件工程環(huán)境支持應(yīng)用軟件的全部或部分軟件工程環(huán)境支持應(yīng)用軟件的全部或部分自動生產(chǎn)過程,大大提高了軟件的生產(chǎn)率,自動生產(chǎn)過程,大大提高了軟件的生產(chǎn)率,降低了軟件的成本,改善了軟件的質(zhì)量。降低了軟件的成本,改善了軟件的質(zhì)量。n現(xiàn)普遍用現(xiàn)普遍用CASE一詞來描述軟件工程環(huán)境。一詞來描述軟件工程環(huán)境。1.5.2 1.5.2 軟件軟件工程工程環(huán)境的特點環(huán)境的特點n一個理想的軟件工程環(huán)境:支持開發(fā)支持開發(fā)+支持管理的支持管理的工具。工具。n軟件開發(fā)環(huán)境的特點1.數(shù)據(jù)庫數(shù)據(jù)庫 2.軟件工具的集成軟件工具的集成3.友好的用戶界面友好的用戶界面 4.信息提取的能力信息提取的能力 5.分析能力分析能力 6.可裁減性和可擴充性可裁減性和可擴充性 7.項目控制和管理項目控制和管理 8.方法學(xué)的支持方法學(xué)的支持 演講完畢,謝謝觀看!

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!