




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、GIS軟件工程的原理與方法教學(xué)目的和課程內(nèi)容 教學(xué)目的根據(jù)培養(yǎng)基層應(yīng)用型人才的需要,本課程的目的與任務(wù)是使學(xué)生通過本課程的學(xué)習(xí),了解軟件項目開發(fā)和維護(hù)的一般過程,掌握軟件開發(fā)的傳統(tǒng)方法和最新方法,為更深入地學(xué)習(xí)和今后從事GIS軟件工程實踐打下良好的基礎(chǔ)。 設(shè)計方法 第3章 系統(tǒng)分析 課程內(nèi)容第1章 基本內(nèi)容軟件工程的問題與特色,軟件生存周期模型,GIS軟件工程生存周期。 教學(xué)要求:重點掌握瀑布模型、 GIS軟件工程生存周期各階段的任務(wù)。 重點:軟件工程的定義和軟件生存周期模型。 1.1.1 GIS軟件的特點 1.在存儲技術(shù)上,空間數(shù)據(jù)庫與屬性數(shù)據(jù)庫相分離。2.在數(shù)據(jù)組織與處理模式上,基于地圖處
2、理的模式,空間數(shù)據(jù)處于“尺度割裂”狀態(tài)。3.在網(wǎng)絡(luò)和分布式環(huán)境下系統(tǒng)組成采用靜態(tài)方式處理。4.在空間數(shù)據(jù)管理范圍方面能有效地處理二維空間數(shù)據(jù)。5.在數(shù)據(jù)和功能共享方面實現(xiàn)有縫的數(shù)據(jù)共享。1.1 GIS軟件工程1.1.2 GIS軟件開發(fā)過程中的問題軟件危機是指在計算機軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題。這些問題絕不僅僅是GIS軟件才具有的,實際上,幾乎所有軟件都不同程度地存在這些問題.具體來說, GIS軟件開發(fā)過程中的問題主要有以下一些典型表現(xiàn):1.對軟件開發(fā)成本和進(jìn)度的估計常常很不準(zhǔn)確。2.用戶對“已完成的”軟件系統(tǒng)不滿意的現(xiàn)象經(jīng)常發(fā)生。3.軟件常常是不可維護(hù)的。4.軟件產(chǎn)品的質(zhì)量往
3、往靠不住。5.數(shù)據(jù)工程量特別大。6.軟件開發(fā)生產(chǎn)率提高的速度,既跟不上硬件的發(fā)展速度,也遠(yuǎn)遠(yuǎn)跟不上計算機應(yīng)用迅速普及深入的趨勢。7.軟件可重用性差。1.1.3 GIS軟件開發(fā)問題的原因分析在軟件開發(fā)和維護(hù)的過程中存在這么多嚴(yán)重問題,一方面與軟件本身的特點有關(guān),另一方面也和軟件開發(fā)與維護(hù)的方法不正確有關(guān)。 1.軟件的規(guī)模越來越大,結(jié)構(gòu)越來越復(fù)雜。2.軟件開發(fā)的管理困難。3.軟件開發(fā)費用不斷增加。4.軟件開發(fā)技術(shù)落后。5.生產(chǎn)方式落后。6.生產(chǎn)工具落后。7. GIS軟件更新變化快,引起發(fā)展過程中的銜接問題。圖圖1.11.1引入同一變動引入同一變動付出的代價隨時間變化的趨勢付出的代價隨時間變化的趨勢
4、1.1.4 GIS軟件工程 軟件工程的定義軟件是計算機程序、方法、規(guī)則、相關(guān)的文檔資料以及計算機上運行時所必需的數(shù)據(jù)。 軟件工程是開發(fā)、運行、維護(hù)和修復(fù)軟件的系統(tǒng)方法。GIS軟件工程就是遵循一般軟件開發(fā)的工程化原理和方法,并照顧到GIS軟件開發(fā)的特殊規(guī)律和要求,對GIS軟件從可行性研究、需求分析、總體設(shè)計、詳細(xì)設(shè)計、軟件編制、軟件測試、直到軟件維護(hù)的各個階段進(jìn)行工程化規(guī)范的一門技術(shù)。 工程的性質(zhì)軟件工程是涉及計算機科學(xué)、工程科學(xué)、數(shù)學(xué)等領(lǐng)域的一門綜合性的交叉學(xué)科。 1.軟件工程用工程科學(xué)中的觀點來進(jìn)行費用估算、制定進(jìn)度、制定計劃和方案。2.軟件工程用管理科學(xué)中的方法和原理進(jìn)行軟件生產(chǎn)的管理。3
5、.軟件工程用數(shù)學(xué)的方法建立軟件開發(fā)中的各種模型和各種算法。 工程的目標(biāo)軟件工程采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時間考驗而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,以經(jīng)濟地開發(fā)出高質(zhì)量的軟件并有效地維護(hù)它,并最終希望得到項目的成功。 軟件工程的內(nèi)容軟件工程的內(nèi)容指軟件開發(fā)技術(shù)和軟件開發(fā)管理兩個方面;GIS軟件工程的內(nèi)容按開發(fā)順序包括前期工程、設(shè)計工程、數(shù)據(jù)工程、工程實施和維護(hù)工程五個階段。 軟件工程包括三個要素,方法、工具和過程。其中,方法是完成軟件開發(fā)的各項任務(wù)的技術(shù)方法,回答“如何做”的問題;工具是為方法的運用提供自動的或半自動的軟件支撐環(huán)境;過程是為
6、了獲得高質(zhì)量的軟件所需要完成的一系列任務(wù)的框架,它規(guī)定了完成各項任務(wù)的工作步驟。目前使用得最廣泛的軟件工程方法學(xué),分別是傳統(tǒng)方法學(xué)和面向?qū)ο蠓椒▽W(xué)。1.1.5 GIS軟件工程的特色GIS是基于空間數(shù)據(jù)的信息系統(tǒng),與此對應(yīng),GIS軟件工程具有如下特點: 系統(tǒng)復(fù)雜度大 數(shù)據(jù)在系統(tǒng)中具有特別地位 系統(tǒng)表達(dá)方式復(fù)雜 系統(tǒng)更新速度快 系統(tǒng)維護(hù)工作量大 易操作性要求高 數(shù)據(jù)在系統(tǒng)中具有特別地位數(shù)據(jù)被稱為GIS的“核心”和“血液”,在系統(tǒng)投資中,數(shù)據(jù)、硬件、軟件的比例一般高達(dá)8:1:1。在數(shù)據(jù)準(zhǔn)備方面應(yīng)注意:1.數(shù)據(jù)的質(zhì)量2.數(shù)據(jù)的現(xiàn)勢性3.合理的數(shù)據(jù)組織結(jié)構(gòu) 系統(tǒng)復(fù)雜度大相關(guān)因素:1.交付的文檔的質(zhì)量和數(shù)
7、量2.軟件的微觀復(fù)雜度3.軟件的宏觀復(fù)雜度 系統(tǒng)表達(dá)方式復(fù)雜GIS的復(fù)雜性表現(xiàn)在:1.表達(dá)的內(nèi)容復(fù)雜包括文本、空間、多媒體和遙感遙測的實時數(shù)據(jù)。2.表達(dá)的對象具有時空特性 系統(tǒng)更新速度快我國從20世紀(jì)80年代開始GIS的建設(shè),經(jīng)歷了項目型GIS、管理型GIS、社會型GIS等。 系統(tǒng)維護(hù)工作量大為確保系統(tǒng)的長期發(fā)展,一方面要求長期的投資,另一方面在系統(tǒng)設(shè)計開發(fā)過程中,要堅持“總體規(guī)劃、分步實施、靈活調(diào)整、急用先行”的設(shè)計原則。 易操作性要求高GIS功能復(fù)雜,系統(tǒng)應(yīng)該通過良好的工作界面引導(dǎo)用戶來完成操作,同時必需保證數(shù)據(jù)的安全性。1.2 軟件生成周期模型1.2.1 概述模型是為了理解事務(wù)而對事務(wù)作
8、出的一種抽象。軟件生成周期模型是描述軟件開發(fā)過程中各種活動如何執(zhí)行的模型。1.2.2 瀑布模型 在20世紀(jì)80年代之前,瀑布模型一直是唯一被廣泛采用的生命周期模型,現(xiàn)在它仍然是軟件工程中應(yīng)用得最廣泛的過程模型。圖2.1所示為傳統(tǒng)的瀑布模型。 按照傳統(tǒng)的瀑布模型來開發(fā)軟件,有如下幾個特點: (1) 階段間具有順序性和依賴性 (2) 推遲實現(xiàn)的觀點 清楚地區(qū)分邏輯設(shè)計與物理設(shè)計,盡可能推遲程序的物理實現(xiàn),是按照瀑布模型開發(fā)軟件的一條重要的指導(dǎo)思想。 圖圖1.2 1.2 傳統(tǒng)的瀑布模型傳統(tǒng)的瀑布模型 (3) 質(zhì)量保證的觀點以文檔形式驅(qū)動,每個階段都必須完成規(guī)定的文檔,沒有交出合格的文檔就是沒有完成該
9、階段的任務(wù)。 以里程碑開發(fā)原則為基礎(chǔ),每個階段結(jié)束前都要對所完成的文檔進(jìn)行評審,以便盡早發(fā)現(xiàn)問題,改正錯誤。實際的瀑布模型是帶“反饋環(huán)”的,如圖2.2所示(圖中實線箭頭表示開發(fā)過程,虛線箭頭表示維護(hù)過程)。當(dāng)在后面階段發(fā)現(xiàn)前面階段的錯誤時,需要沿圖中左側(cè)的反饋線返回前面的階段,修正前面階段的產(chǎn)品之后再回來繼續(xù)完成后面階段的任務(wù)。圖圖1.3 實際的瀑布模型實際的瀑布模型 瀑布模型的局限性瀑布模型是一種,理想的線性開發(fā)模型,缺乏靈活性,無法解決軟件需求不明確或不準(zhǔn)確的問題。1.不能保證工程每個階段都是正確的。2.通信中的誤解無法避免。3.用戶的新要求和環(huán)境的變化需要系統(tǒng)隨之改變。1.2.3增量模型
10、增量模型也稱為漸增模型,如圖2.4所示。使用增量模型開發(fā)軟件時,把軟件產(chǎn)品作為一系列的增量構(gòu)件來設(shè)計、編碼、集成和測試。每個構(gòu)件由多個相互作用的模塊構(gòu)成,并且能夠完成特定的功能。使用增量模型時,第一個增量構(gòu)件往往實現(xiàn)軟件的基本需求,提供最核心的功能。圖1.4增量模型圖1.5 風(fēng)險更大的增量模型1.2.4螺旋模型軟件開發(fā)幾乎總要冒一定風(fēng)險,因此,在軟件開發(fā)過程中必須及時識別和分析風(fēng)險,并且采取適當(dāng)措施以消除或減少風(fēng)險的危害。螺旋模型的基本思想是,使用原型及其他方法來盡量降低風(fēng)險。理解這種模型的一個簡便方法,是把它看作在每個階段之前都增加了風(fēng)險分析過程的快速原型模型,如圖1.6所示。完整的螺旋模型
11、如圖1.7所示。圖中帶箭頭的點劃線的長度代表當(dāng)前累計的開發(fā)費用,螺線旋過的角度值代表開發(fā)進(jìn)度。圖1.6 簡化的螺旋模型圖1.7 完整的螺旋模型1.2.5 噴泉模型 迭代是軟件開發(fā)過程中普遍存在的一種內(nèi)在屬性。經(jīng)驗表明,軟件過程各個階段之間的迭代或一個階段內(nèi)各個工作步驟之間的迭代,在面向?qū)ο蠓缎椭斜仍诮Y(jié)構(gòu)化范型中更常見。圖1.8所示的噴泉模型是典型的面向?qū)ο笊芷谀P汀?“噴泉”這個詞體現(xiàn)了面向?qū)ο筌浖_發(fā)過程迭代和無縫的特性。 為避免使用噴泉模型開發(fā)軟件時開發(fā)過程過分無序,應(yīng)該把一個線性過程(例如,快速原型模型或圖1.8中的中心垂線)作為總目標(biāo)。但是,同時也應(yīng)該記住,面向?qū)ο竽P捅旧硪蠼?jīng)常
12、對開發(fā)活動進(jìn)行迭代或求精。圖1.8 噴泉模型智能模型是基于知識的軟件開發(fā)模型,它綜合了上述若干模型,并把專家系統(tǒng)結(jié)合在一起。該模型應(yīng)用基于規(guī)則的系統(tǒng)。1.2.6 智能模型1.2.7快速原型模型所謂快速原型是快速建立起來的可以在計算機上運行的程序,它所能完成的功能往往是最終產(chǎn)品能完成的功能的一個子集。如圖1.9所示(圖中實線箭頭表示開發(fā)過程,虛線箭頭表示維護(hù)過程),快速原型模型的第一步是快速建立一個能反映用戶主要需求的原型系統(tǒng),讓用戶在計算機上試用它,通過實踐來了解目標(biāo)系統(tǒng)的概貌。通常,用戶試用原型系統(tǒng)之后會提出許多修改意見,開發(fā)人員按照用戶的意見快速地修改原型系統(tǒng),然后再次請用戶試用。一旦用戶
13、認(rèn)為這個原型系統(tǒng)確實能做他們所需要的工作,開發(fā)人員便可據(jù)此書寫規(guī)格說明文檔,根據(jù)這份文檔開發(fā)出的軟件可以滿足用戶的真實需求。圖圖1.9快速原型模型快速原型模型 快速原型的本質(zhì)是“快速”。開發(fā)人員應(yīng)該盡可能快地建造出原型系統(tǒng),以加速軟件開發(fā)過程,節(jié)約軟件開發(fā)成本。原型的用途是獲知用戶的真正需求,一旦需求確定了,原型將被拋棄。GIS軟件工程的生存周期指一個GIS軟件從提出開發(fā)要求開始直到該軟件報廢為止的整個時期。GIS軟件工程整個生存周期劃分為四個階段:系統(tǒng)分析、系統(tǒng)設(shè)計、系統(tǒng)實施、系統(tǒng)評價及維護(hù)。GIS軟件工程整個生存周期按工程化的思想可劃分為五個階段:前期工程、設(shè)計工程、數(shù)據(jù)工程、工程實施、維
14、護(hù)工程。1.3 GIS軟件工程的生存周期前期工程包括工程調(diào)研、可行性研究、制定項目計劃、需求分析等子階段。1.工程調(diào)研通過走訪、交談、函件往來、資料檢索等方式對相關(guān)項目進(jìn)行調(diào)研,為擬開展的軟件工程項目提供有價值的參考資料。2.可行性研究可行性研究階段必須回答的問題是:“要解決的問題是什么,是否有行得通的解決辦法”。1.3.1 前期工程3.制定項目計劃根據(jù)開發(fā)項目的目標(biāo)、功能、性質(zhì)及規(guī)模,估計項目需要的軟、硬件和開發(fā)人員等資源,估算軟件開發(fā)費用,估計開發(fā)進(jìn)度,制定完成任務(wù)的實施計劃。4.需求分析這個階段的任務(wù)仍然不是具體地解決客戶的問題,而是準(zhǔn)確地回答“目標(biāo)系統(tǒng)必須做什么”這個問題。 這個階段的
15、另外一項重要任務(wù),是用正式文檔準(zhǔn)確地記錄對目標(biāo)系統(tǒng)的需求,這份文檔通常稱為規(guī)格說明(specification)。1.3.2 設(shè)計工程設(shè)計工程包括總體設(shè)計、數(shù)據(jù)庫設(shè)計、模型設(shè)計、詳細(xì)設(shè)計等子階段。1.總體設(shè)計總體設(shè)計就是設(shè)計軟件的結(jié)構(gòu),包括模塊組成、模塊的層次結(jié)構(gòu)、模塊的調(diào)用關(guān)系、各模塊的功能。2.數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫設(shè)計是指把現(xiàn)實世界中一定范圍內(nèi)存在的應(yīng)用處理和數(shù)據(jù)抽象成一個數(shù)據(jù)庫的具體結(jié)構(gòu)的過程。3.應(yīng)用模型設(shè)計應(yīng)用模型設(shè)計是針對擬開發(fā)領(lǐng)域的特殊技術(shù)要求,運用并分析該領(lǐng)域的應(yīng)用模型,設(shè)計實現(xiàn)該模型的技術(shù)方法。4.詳細(xì)設(shè)計詳細(xì)設(shè)計階段是為每個模塊完成的功能進(jìn)行具體描述,要把功能描述轉(zhuǎn)變?yōu)榫_的、
16、結(jié)構(gòu)化的過程描述。這個階段的任務(wù)還不是編寫程序,而是設(shè)計出程序的詳細(xì)規(guī)格說明。1.3.3 數(shù)據(jù)工程數(shù)據(jù)工程包括數(shù)據(jù)預(yù)處理、數(shù)據(jù)采集、數(shù)據(jù)處理等子階段。1.數(shù)據(jù)預(yù)處理通過數(shù)據(jù)預(yù)處理,才能獲得凈化的數(shù)據(jù)文件,使采集的數(shù)據(jù)符合規(guī)范化標(biāo)準(zhǔn)。2.數(shù)據(jù)采集數(shù)據(jù)采集就是將圖形數(shù)據(jù)和屬性數(shù)據(jù)輸入到地理數(shù)據(jù)庫中。2.數(shù)據(jù)采集數(shù)據(jù)采集包括野外數(shù)據(jù)采集、圖形數(shù)據(jù)采集、屬性數(shù)據(jù)采集、圖形數(shù)據(jù)和屬性數(shù)據(jù)的連接。野外數(shù)據(jù)采集的方法:GPS方法 攝影測量方法測量法圖形數(shù)據(jù)采集的方式:手扶跟蹤數(shù)字化掃描數(shù)字化3.數(shù)據(jù)處理數(shù)據(jù)處理包括:格式轉(zhuǎn)換圖形單元的修改與增刪圖幅拼接坐標(biāo)轉(zhuǎn)換幾何糾正數(shù)據(jù)編輯處理拓?fù)浣Y(jié)構(gòu)拓?fù)潢P(guān)系的自動生成1
17、.3.4 工程實施工程實施包括程序編制、測試、試運行等子階段。1.程序編制這個階段的關(guān)鍵任務(wù)是寫出正確的容易理解、容易維護(hù)的程序模塊。2.測試測試方式是在設(shè)計測試用例的基礎(chǔ)上檢驗軟件的各個組成部分。測試分為模塊測試、組裝測試、確認(rèn)測試。3.試運行試運行是保證最終交付給用戶的軟件質(zhì)量的重要手段。1.3.5 維護(hù)工程維護(hù)工程包括數(shù)據(jù)庫維護(hù)、軟硬件維護(hù)等方面。1.數(shù)據(jù)庫維護(hù)根據(jù)系統(tǒng)的規(guī)模和實際需求,建立系統(tǒng)的數(shù)據(jù)維護(hù)更新機制,規(guī)定系統(tǒng)數(shù)據(jù)維護(hù)更新的周期,使系統(tǒng)的所有數(shù)據(jù)均相對地處于最新的狀態(tài)。2.軟件維護(hù)維護(hù)階段的關(guān)鍵任務(wù)是,通過各種必要的維護(hù)活動使系統(tǒng)持久地滿足用戶的需要。 通常有四類維護(hù)活動:改
18、正性維護(hù),也就是診斷和改正在使用過程中發(fā)現(xiàn)的軟件錯誤;適應(yīng)性維護(hù),即修改軟件以適應(yīng)環(huán)境的變化;完善性維護(hù),即根據(jù)用戶的要求改進(jìn)或擴充軟件使它更完善;預(yù)防性維護(hù),即修改軟件為將來的維護(hù)活動預(yù)先做準(zhǔn)備。GIS與一般信息系統(tǒng)的區(qū)別:1.綜合性強,橫跨多學(xué)科;2.數(shù)據(jù)組織以空間數(shù)據(jù)為主;3.面向應(yīng)用,以空間分析為主。1.4 GIS軟件工程建設(shè)的主要過程按照軟件工程化方法,GIS開發(fā)分為以下六個步驟:1.制定GIS開發(fā)計劃2.GIS需求分析3.GIS系統(tǒng)設(shè)計(包括總體設(shè)計、數(shù)據(jù)庫設(shè)計和詳細(xì)設(shè)計)4.GIS程序編碼5.GIS產(chǎn)品測試 6.GIS產(chǎn)品的運行維護(hù)1.4.1 GIS軟件開發(fā)的工程化方法1.4.2
19、 GIS軟件工程的系統(tǒng)分析 GIS軟件工程系統(tǒng)分析的目標(biāo):1.較低的開發(fā)成本2.符合要求的功能3.較好的性能和可靠性4.較好的移植性和較低的維護(hù)費用5.按時完成軟件并及時交付使用GIS軟件工程系統(tǒng)分析的步驟:1.識別GIS用戶要求2.評價GIS的可行性3.進(jìn)行GIS開發(fā)經(jīng)濟分析和技術(shù)分析4.把功能分配給GIS軟硬件、人、 GIS數(shù)據(jù)庫和其他系統(tǒng)元素5.建立GIS開發(fā)成本和進(jìn)度限制6.生成GIS規(guī)格說明,形成所有后續(xù)GIS工程的基礎(chǔ) GIS軟件工程的可行性研究GIS可行性研究包括:1.經(jīng)濟可行性2.技術(shù)可行性3.法律可行性4.對系統(tǒng)不同開發(fā)方案進(jìn)行比較評估 GIS軟件工程的可行性研究GIS可行性
20、研究報告的內(nèi)容:1.GIS項目背景2.候選方案3.GIS系統(tǒng)描述4.經(jīng)濟可行性5.技術(shù)可行性6.法律可行性7.GIS用戶使用可行性 GIS開發(fā)成本效益分析成本效益分析的目的是從經(jīng)濟角度評價開發(fā)一個新的GIS項目是否可行。成本效益分析首先是估算待開發(fā)GIS的成本,然后與可能取得的效益進(jìn)行比較和權(quán)衡。 GIS開發(fā)技術(shù)分析技術(shù)分析的內(nèi)容:1.完成GIS的功能和性能需要什么技術(shù)2.哪些新設(shè)備、方法、算法或者過程3.有什么開發(fā)風(fēng)險4.這些技術(shù)問題對成本的影響如何 分配與權(quán)衡對各候選GIS的系統(tǒng)配置方案進(jìn)行評估,并將每一個GIS功能,與其必要的一些性能和接口特性一起分配給一個或多個系統(tǒng)元素(軟硬件、數(shù)據(jù)庫
21、、人員、文檔等),并據(jù)此建立AFD層次結(jié)構(gòu)模型,用以表達(dá)GIS系統(tǒng)元素之間的相互關(guān)系。1.4.3 GIS軟件工程的需求分析GIS軟件工程需求分析的目的是把GIS的功能和性能的總體概念描述為具體的GIS產(chǎn)品需求規(guī)格說明;其任務(wù)是深入描述GIS的功能和性能,確定GIS系統(tǒng)設(shè)計的限制和GIS同其他系統(tǒng)元素的接口細(xì)節(jié)。 GIS軟件工程需求分析的原則1.必須能夠表達(dá)和理解問題的數(shù)據(jù)域和功能域數(shù)據(jù)域包括:數(shù)據(jù)流:數(shù)據(jù)通過一個GIS系統(tǒng)時的變化方式數(shù)據(jù)內(nèi)容:數(shù)據(jù)項數(shù)據(jù)結(jié)構(gòu)218:各種數(shù)據(jù)的邏輯組織2.必須按自頂向下、逐層分解22的方式對問題進(jìn)行分解和不斷細(xì)化分解分為橫向分解和縱向分解。橫向分解是同一層次的分
22、解;縱向分解是多層次的分解 GIS軟件工程需求分析的過程GIS軟件工程需求分析的內(nèi)容:對問題的識別、分析與綜合、制定規(guī)格說明和評審。1.對問題的識別問題的識別要確定對GIS的綜合要求,并提出這些要求的實現(xiàn)條件,應(yīng)達(dá)到的標(biāo)準(zhǔn)。這些需求包括:功能需求性能需求環(huán)境需求可靠性分析安全保密要求用戶界面需求2.分析與綜合分析方法包括:面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法(SA)面向數(shù)據(jù)結(jié)構(gòu)(JSD)方法面向?qū)ο蠓治龇椒ǎ∣OA)用于建立動態(tài)模型的狀態(tài)遷移圖或Petri網(wǎng)3.編制需求分析文檔需求分析文檔是指軟件需求規(guī)格說明書。1.4.4 GIS軟件工程的系統(tǒng)設(shè)計GIS軟件工程系統(tǒng)設(shè)計的內(nèi)容包括數(shù)據(jù)設(shè)計、系統(tǒng)結(jié)構(gòu)設(shè)計和
23、過程設(shè)計。數(shù)據(jù)設(shè)計側(cè)重于空間數(shù)據(jù)結(jié)構(gòu)和屬性數(shù)據(jù)庫結(jié)構(gòu)的定義;系統(tǒng)結(jié)構(gòu)設(shè)計定義GIS各主要成分之間的關(guān)系;過程設(shè)計是把結(jié)構(gòu)成分轉(zhuǎn)換成GIS的過程性描述。GIS軟件工程系統(tǒng)設(shè)計的方法包括結(jié)構(gòu)化設(shè)計方法、原型化設(shè)計方法和面向?qū)ο笤O(shè)計方法。 結(jié)構(gòu)化設(shè)計方法結(jié)構(gòu)化設(shè)計方法是基于模塊化、自頂向下逐層細(xì)化、結(jié)構(gòu)化程序設(shè)計等程序設(shè)計技術(shù)基礎(chǔ)上發(fā)展起來的,該方法的要點:1.首先研究、分析數(shù)據(jù)流圖,從GIS的需求規(guī)格說明中弄清數(shù)據(jù)流加工的過程;2.根據(jù)數(shù)據(jù)流圖決定問題的類型;3.由數(shù)據(jù)流圖推導(dǎo)出GIS的初始結(jié)構(gòu)圖;4.利用一些調(diào)控性原則來改進(jìn)GIS的初始結(jié)構(gòu)圖,直到得到符合要求的結(jié)構(gòu)圖為止;5.修改和補充數(shù)據(jù)詞典
24、;6.制定測試計劃。GIS軟件工程系統(tǒng)設(shè)計的方法包括結(jié)構(gòu)化設(shè)計方法、原型化設(shè)計方法和面向?qū)ο笤O(shè)計方法。 原型化設(shè)計方法原型是指模擬某種產(chǎn)品的原始模型。原型化設(shè)計方法的優(yōu)點:1.增進(jìn)GIS開發(fā)人員和GIS用戶對系統(tǒng)服務(wù)需求的理解,使比較含糊的具有不確定性的GIS需求明確化;2.用戶可以親身體驗早期的開發(fā)過程,獲得關(guān)于GIS系統(tǒng)的專門知識;3.可以容易地確定GIS的性能,確認(rèn)各項主要系統(tǒng)服務(wù)的可應(yīng)用性,確認(rèn)系統(tǒng)設(shè)計的可行性和系統(tǒng)作為產(chǎn)品的結(jié)果;4.原型經(jīng)過略加修改可成為系統(tǒng)的一個組成部分。 面向?qū)ο笤O(shè)計方法基本概念:1.對象是客觀世界實體的抽象描述,由信息(數(shù)據(jù))和對數(shù)據(jù)的操作組合而成;2.類是多
25、個相似對象共同特性的描述;3.消息是對象之間通信的手段,是對象之間相互請求或相互協(xié)作的途徑,它用來指示對象的操作;4.方法是對象接收到信息后應(yīng)采取的行動序列的描述;5.繼承是一種現(xiàn)實世界中對象之間獨特的關(guān)系,它使得某類對象可以繼承另一類對象的特征和能力;6.持久性是指數(shù)據(jù)能在進(jìn)程或操作中存在,并且能在下一個進(jìn)程或操作中重新使用的能力。 結(jié)構(gòu)化程序設(shè)計結(jié)構(gòu)化程序設(shè)計的三種基本控制結(jié)構(gòu):1.順序結(jié)構(gòu)2.選擇結(jié)構(gòu)3.重復(fù)(循環(huán))結(jié)構(gòu)1.4.5 GIS軟件工程的編碼設(shè)計 圖圖1.101.10三種基本的控制結(jié)構(gòu)三種基本的控制結(jié)構(gòu)(a) (a) 順序結(jié)構(gòu),先執(zhí)行順序結(jié)構(gòu),先執(zhí)行A A再執(zhí)行再執(zhí)行B B;(b) IF-THEN-ELSE(b) IF-THEN-ELSE型選擇型選擇( (分支分支) )結(jié)構(gòu);結(jié)構(gòu);(c) DO-WHILE(c) DO-WHILE型循環(huán)結(jié)構(gòu)型循環(huán)結(jié)構(gòu)結(jié)構(gòu)化程序設(shè)計的主要原理:1.使用程序設(shè)計語言中的順序、選擇、重復(fù)等基本控制結(jié)構(gòu)表示程序和邏輯結(jié)構(gòu);2.選用的控制結(jié)構(gòu)只允許有一個入口和出口;3.程序由容易識別的塊組成,每個塊只有一個出口和入口;4.復(fù)雜結(jié)構(gòu)應(yīng)該用基本控制結(jié)構(gòu)進(jìn)行組合嵌套來實現(xiàn);5.嚴(yán)格控制使用GOTO語句。程序設(shè)計自頂向下,逐步求精方法的優(yōu)點:1.符合人們解決復(fù)雜問題的普遍規(guī)律,可提高軟件開發(fā)的成功率和生產(chǎn)率;
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)班級管理中學(xué)生合作能力的培養(yǎng)研究論文
- 2025-2030全球及中國汽車?yán)溴懠袠I(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 2025年小學(xué)語文畢業(yè)升學(xué)考試全真模擬卷(閱讀寫作強化版)-文言文閱讀實戰(zhàn)
- 2025-2030全球及中國智能虛擬助理(IVA)行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 2025-2030全球及中國住宅空氣質(zhì)素管制服務(wù)行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 2025-2030全球及中國云服務(wù)行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 2025-2030全球及中國SDN編排行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 2025-2030全球與中國石墨模壓環(huán)行業(yè)現(xiàn)狀動態(tài)與發(fā)展趨勢研究研究報告
- 普什圖語學(xué)習(xí)者的閱讀能力研究論文
- 2025年FRM金融風(fēng)險管理師考試專業(yè)試卷:金融風(fēng)險管理專業(yè)英語試題
- 核心素養(yǎng)下小學(xué)道德與法治實踐性作業(yè)設(shè)計探究
- DB11∕T 161-2012 融雪劑 地方標(biāo)準(zhǔn)
- 會務(wù)活動質(zhì)量保障措施
- 2024-2025學(xué)年廣東省珠海市高三(上)第一次摸底考試物理試卷(含答案)
- 游輪產(chǎn)品相關(guān)項目實施方案
- 部編版小學(xué)語文五年級下冊第5單元語文要素解讀
- 上海事業(yè)單位筆試真題2024
- 南京市聯(lián)合體2022-2023學(xué)年七年級下學(xué)期期中地理試題
- 《全概率公式》示范公開課教學(xué)設(shè)計【高中數(shù)學(xué)人教A版】
- 幼兒園小班社會課件:《小猴借玩具》
- DL-T5181-2017水電水利工程錨噴支護(hù)施工規(guī)范
評論
0/150
提交評論