GIS軟件工程第章 GIS軟件工程的方法_第1頁
GIS軟件工程第章 GIS軟件工程的方法_第2頁
GIS軟件工程第章 GIS軟件工程的方法_第3頁
GIS軟件工程第章 GIS軟件工程的方法_第4頁
GIS軟件工程第章 GIS軟件工程的方法_第5頁
已閱讀5頁,還剩54頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

GIS軟件工程GISSoftwareEngineering(四)教材:畢碩本等.地理信息系統軟件工程的原理與方法.科學出版社.2004.參考材料:(1)李存珠.軟件工程概論——傳統方法學和面向對象軟件工程.南京大學計算機科學與技術系.1999.(2)任一本軟件工程書籍.——系統分析中使用結構化分析方法SA面向對象分析方法OOACoad分析方法OMT分析方法第4章 GIS軟件工程的分析方法第一節結構化分析方法軟件工程產生后,首先出現一、概述1.結構化方法——根據某種原理,使用一定工具,按照特定步驟的軟件開發方法3部分組成:結構化分析(StructureAnalysis,SA)結構化設計(StructuredDesign,SD)結構化程序設計(StructuredProgramming,SP)2.發展歷程結構化程序設計——1960s末,Dijkstra提出3種控制結構:順序選擇重復結構化設計——1970s中期,L.L.Constantine,E.Yourdon提出基于:數據流、功能分解、人工復審測試

結構化分析——1970s末,Demarco提出分析的對象——結構化的功能說明3.基本思想及其特點指導思想——自頂向下,逐步求精基本原則——抽象、分解特點使用最早,使用時間最長應用最廣,特別適合數據處理支持工具最多,較成熟4.優點和存在問題優點簡單、實用適合于瀑布模型,易掌握成功率高特別適合于數據處理領域,其他領域亦適用存在問題不太適應規模大、特別復雜的項目軟件重用困難難以適應需求的變化難以解決維護問題二、結構化分析的方法1.自頂向下、逐層分解的分析策略2.描述工具數據流圖數據字典結構化語言、判定表/樹——描述數據流圖中,不能再被分解的每個基本加工的處理邏輯3.SA分析步驟建立當前/現行系統的物理模型抽象出當前/現行系統的邏輯模型建立目標系統的邏輯模型作進一步的補充和優化——人機界面,出錯處理,I/O格式,存儲容量,響應時間等第二節面向對象基礎一、面向對象概念1.面向對象的基本思想——對象:研究的事物、概念2.面向對象的基本概念對象對象的狀態/屬性和行為/操作類類的關系——IS-A,HAS-A消息和方法消息——對象之間的通信。調用對象的成員函數方法——類中操作/成員函數的實現3.面面向向對象象的特特征對象唯唯一性性分類性性繼承性性多態性性4.面面向向對象象的要要素抽象封裝性性(信信息隱隱蔽))共享性性同一類類中對對象的的共享享———該類類的數數據結結構、、行為為特征征同一應應用中中具有有繼承承關系系的類類的共共享不同應應用中中類庫庫的共共享———軟軟件重重用強調對象結結構而非程程序結結構二、面面向對對象的的方法法1.面面向向對象象方法法的形形成——1980s,隨隨著OOP的成成熟而而形成成2.面面向向對象象的開開發方方法Booch方法法——1983,,Booch提提出基于::詞法法分析析———名詞詞→對對象,,動詞詞→方方法Coad方方法——1989,,Coad和Yourdon提出出從大系系統中中總結結、升升華OMT方法法——1991,,JamesRumbaugh提出出面向對對象建建模技技術(ObjectModelingTechnique))將OO貫穿穿于軟軟件生生存周周期的的各階階段第三節節Coad分析析方法法基礎::信息模模型化化技術術OOP語言言知識庫庫系統統組成::OOA———面向向對象象分析析OOD———面向向對象象設計計一、概概述1.系系統統需求求的變變動因因素和和穩定定因素素——分分析2.思思維維組織織模式式———人人類類典典型型的的思思維維過過程程::區分分出出現現實實世世界界特特定定的的客客體體及及其其屬屬性性區分分客客體體的的整整體體和和組組成成部部分分給出出不不同同種種類類客客體體的的表表示示3.面面向向對對象象分分析析方方法法的的表表示示———對對象象,,分分類類,,繼繼承承性性,,基基于于消消息息的的通通信信4.OOA的的任任務務任務務:形式式地地說說明明所所面面對對的的應應用用問問題題————對對象象,,規規則則、、約約束束明確確地地規規定定對對象象如如何何協協作作,,完完成成指指定定功功能能OOA的的結結果果———OOA概概念念模模型型OOA概概念念模模型型的的組組成成:5個層層次類與對象象——引引進類和和該類的的對象屬性服務結構主題———類和對對象的特特定組合合表示5.OOA的的步驟5步:找到類和和對象——從應應用領域域開始確定結構構——IS-A結結構,HAS-A結構構定義主題題——相關關的類和和對象的的組合定義屬性性定義服務務——確定定對象狀狀態,定定義類的的操作二、Coad分分析方法法1.對對象認定定簡單的認認定方法法——1983,,Booch提提出——基于于:詞法法名詞——候選選對象動詞——候選選方法((服務))實例:字處理系系統注意:這里提到到的對象象——OOP中中的類實例———實實例、對對象復雜系統統對象的的認定5個問題題:到什么地地方去找找候選對對象——尋找找對象的的范圍::問題空間間文本———一切能能得到的的文字材材料圖——能能收集到到的一切切圖:塊塊結構圖圖、接口口圖、系系統構件件圖、數數據流圖圖、控制制流圖找什么——可能能成為對對象的東東西:結構———分類結結構、組組裝結構構其他系統統——外外部系統統、外界界的“終終結點””設備———需交互互的設備備事件———系統及及時觀察察的、歷歷史的扮演的角角色———各種人人員在系系統中的的位置——系統統安裝、運行行的物理位置置組織和單位———系統涉及及的人員所屬屬的單位考察候選對象象的什么——認定對象象需要記憶———系統是否有有必要記憶對對象的某些/全部成分??需要服務———系統是否有有必要對該對對象的行為提提供服務?多于一個屬性性——只有一一個屬性的對對象常應被看看成其他對象象的屬性共有屬性———對于一種對對象的所有實實例,能否認認定一組屬性性?共有服務———對于一種對對象的所有實實例,能否認認定一組加工工?提出什么質疑疑記憶和服務的的必要性———必要則認定定單個實例———若擁有單個個實例的對象象與其他對象象存在共有屬屬性,則合并并為一個對象象派生結果———可通過計算算機得出值的的屬性,不認認定怎樣命名認定定的對象單數名詞/形容詞+名詞詞匯符合系統統主題、標準準可讀的名字———基于內容容、內在本質質、確切意義義2.結構的的認定結構——多種對象象的組織方式式——反映問題題空間中復雜雜事物和復雜雜關系2種結構:分類結構———事物類別之之間的組織關關系組裝結構———事物的整體體與成員之間間的關系問題:分類結構———用C++中中的什么關系系表示/構造造?組裝結構認定分類結構構原則——先從:一一般→特特殊考慮后從:特殊殊→一一般考慮慮從一般到特特殊先認定對象象的一般含含義,然后后考慮其可可能的特殊殊性:是否可用不不同的屬性性和服務來來描述?是否反映了了現實世界界中有意義義的特殊性性?是否在問題題空間之內內?令:共有屬屬性、服務務——一一般含義義的對象擴充充的的特特殊殊屬屬性性、、服服務務————特特殊殊含含義義的的對對象象從特特殊殊到到一一般般認定定對對象象的的某某種種特特殊殊含含義義后后,,再再從從特特殊殊向向一一般般考考慮慮::問題題空空間間是是否否存存在在其其他他對對象象與與該該對對象象具具有有共共有有的的屬屬性性/服服務務??若引引入入某某種種更更一一般般的的對對象象,,是是否否反反映映了了現現實實世世界界中中有有意意義義的的一一般般性性??若引入入某種種更一一般的的對象象,則則該對對象是是否存存在于于問題題空間間之中中?認定組組裝結結構原則——先先從::整體體→→成成員考考慮慮后從::成員員→→整整體考考慮慮從整體體到成成員先認定定對象象是一一個整整體,,然后后考慮慮其可可能的的成員員:組成成員員是什么么?對于它的的一個成成員,系系統是否否必要記記錄每個個實例/值?對于它的的一個成成員,每每個實例例是否都都有屬性性來描述述?它的成員員是否反反映現實實世界中中存在的的成員??它的成員員是否限限定在目目標系統統之內??挖掘事物物的構成成細節從成員到到整體假定一個個對象可可能是另另一種對對象的成成員,考考慮:這種對象象適合什什么樣的的組裝關關系?還需要哪哪些對象象與這種種對象一一起構成成另一種種對象??對于這樣樣組裝而而成的對對象,系系統是否否有必要要記錄其其每一個個實例??這樣組裝裝而成的的對象,,在現實實世界中中是否有有意義??這樣組裝裝而成的的對象,,是否限限定在目目標系統統之內??將某些事事物納入入某種含含義更廣廣、可作作為整體體看待的的事物之之中———聚集角角度3.認認定主題題主題——關于于OOA模型的的抽象、、概貌起控制作作用名詞/名詞詞短語認定主題題的方法法:為每個主主題,追追加一個個主題為每種對對象,追追加一個個主題若當前主主題數目目超過7個,則則對已有有主題歸歸并歸并原則則——2個個主題對對應的屬屬性、服服務存在在密切聯聯系主題之間間的聯系系——消息關聯聯主題———單獨的的層次,,各主題題有序號號4.定定義屬性性屬性———數據元元素———描述對對象/結構構的實例例5步驟::認定屬性性3原則::對相應對對象/分類類結構的的每個實實例,是是否都適適用?在現實世世界中,,它與這這種事物物的關系系是否最最密切??認定的屬屬性應是是一種相相對的原子概念,不不依賴于于并列的的其他屬屬性就可可理解確定屬性性的位置置——確定定屬性與與特定對對象之間間的從屬屬關系,,針對分分類結構構中的對對象——繼承觀點認定和定定義實例例關聯實例關聯聯——一個個實例集集合到另另一個實實例集合合的映射射4種實例例關聯::——類類似于::ER圖圖中的實實體聯系系1:11:m0:10:m重新修改改認定的的對象對屬性和和實例關關聯進行行說明——說明明屬性的的名字字、描述述、約束束、范疇疇屬性的類類型:定義型———標識、命命名各個實實例派生型———由其他屬屬性的數據據計算得到到參考型———與另一個個實例的屬屬性值關聯聯5.定義義服務服務——接收到到一條消息息后,所要要進行的加加工認定基礎服服務3類:存在服務———最一般般的服務計算服務———一個實實例需要另另一個實例例加工的結結果時,所所需的服務務。監控服務———模型中中某些部件件需要快速速適時處理理時,所需需服務。認定輔助服服務對象生存史史——定義義基礎服務務的順序狀態-事件件-響應———定義狀狀態的主要要狀態,外外部事件及及其響應,,擴充服務務,消息關關聯認定消息關關聯消息關聯———事件-響應和數數據流的一一種結合——表示一一種要發出出的消息和和收到到該消息后后作出的一一個響應——實例關關聯之間的的一種映射射對服務進行行說明——主要說說明外部可可觀察到的的行為6.對象象的規格說說明以對象為單單位的系統統規格說明明的模板:specification(對象象名)描述型屬性((……)定義型屬性((……)派生型屬性((……)外部型屬性((……)外部系統輸出出(……)實例關聯(………)狀態事件響應應表(……))對象生存史圖圖(……)服務(……))服務(……))……Endspecification7.應用實實例“傳感器”控控制系統問題陳述傳感器控制系系統分析模型第四節OMT分析方方法一、OMT方方法的發展——1991,美國,通用電器公司提出通過構造一組模型——認識問題題對象模型(ObjectModel)———系統中靜態的、結構構方面的特性動態模型(DynamicModel)———系統對象象之間的時間的、行為為的、控制方面的特性功能模型(FunctionalModel)——值值-值之間的的函數關系OMT分析軟軟件3方面::數據結構———對象模型按時間順序的的操作——動動態模型改變的值———功能模型三、OMT方方法的分析過過程二、三種模型型介紹1.對象模模型對象模型的作作用——事件將發發生在什么上上面——描述系統統中對象的結構——對象的標標識,與其他他對象的關系系,屬性,操操作對象模型的表表示——對象關系系圖——對象象圖2種對象圖::類圖實例圖類的對象模型型符號——對象的結構信息關系——類之間的的聯系多元性性——一一個類類的多多少個個實例例,可可能與與相關關類的的一個個實例例有關關多元性性的符符號表表示OMT對象象模型型中類類的3種基基本關關系相關關關系——什什么方方面相相關關關系系包容關關系——部部分-整體體關關系繼承關關系抽象類類具體類類———子類類OMT建立立對象象模型型的步步驟::確定對對象類定義數據詞詞典——類類,屬屬性,,關系系的描描述增加類類之間間的關系增加對對象、、聯系系的屬性用繼承組織、、簡化化對象象類用場景測測試訪問路路徑如需要要,則則重復復上述述5步步基于::相近近關系系、相相關功功能,,將成組組的對對象組組成模塊對象模模型的的2部部分::對象模模型圖圖數據詞詞典2.動動態態模型型——與與時間間有關關的模模型動態模模型的的作用用——事事件將將什么么時間間發生生——描描述系系統中中與時間有關的方方面——操作作執行的的順序包括:引起變化化的事件事件的序列定義事件件序列上上下文的的狀態事件和狀狀態的主次主要概念念事件——一個個對象給給另一個個對象的的單個消息息狀態——對象象所擁有有的屬性值和連接關系系場景——一個個特定過過程中發發生的一系列事事件抓住了““控制流”特性,,即系統統中的各各個操作作發生的的順序,,而對這這些操作作到底做做什么,,作用在在什么上上面,以以及如何何實現都都不必關關心——對象象的控制信息事件跟蹤蹤圖——表示示一系列列事件和和交換事事件的對對象垂直線——每個個對象水平箭頭頭——一個個事件———對應應對象模模型中的的操作——從發發送對象象指向接接收對象象打電話者者接電話者者狀態圖——表示示一個類類的事件件、狀態態、狀態態轉移方式式不同的狀狀態圖,,通過共共享的事事件組成成——動動態模型型狀態——結點點事件箭頭線——狀態態轉移活動——代表表事件完完成的一個操作作,與狀態態相關對應功能能模型中中的功能行為——一個瞬時時操作,與事件件相關活動的關鍵字字do:轉移上行為的關鍵字/建立動態態模型的的步驟::準備備帶帶交交互互序序列列的的場景景確定定對對象象之之間間的的事事件件,,為為每每個個場場景景,,準準備備一一個個事件件跟跟蹤蹤圖圖為每每個個系系統統,,準準備備一一個個事件件流流圖圖為每每個個具具有有重重要要動動態態行行為為的的類類,,準準備備一一個個狀態圖檢驗狀態圖圖之間共享事件的一致性、、完備性3.功能能模型功能模型的的作用——事件將將發生什么表示怎樣從從輸入值得得到輸出值值,包括::函數、映映射、約束束和功能性性依賴描述系統做做什么,而而對如何做做和何時做做不感興趣趣功能模型的的組成——多個數數據流圖數據流圖組組成:轉換數據的的過程——通過對對象的操作作實現移動數據的的數據流生產和消費費數據的角色對象被動存儲數數據的數據存儲對對象——對對象象的操作建立功能模模型的步驟驟:確定輸入、輸出出值用數據流圖圖表示功能的依賴賴性描述每個功能做什么么確定限制指定優化原則4、三個模模型之間的的關系——待解決決問題的3個方面對象模型——數據結構——動態模模型、功能能模型的操作——動態模模型中的事件——功能模模型中的函數動態模型——對象的的控制結構功能模型——對象模模型中操作、動態模型型中動作——激發的的函數三、OMT方法的分分析過程OMT組成成的3個階階段/方面面:分析系統設計對象設計分析階段關關心的問題題——對要操操作的應用用和領域的理解和模型化分析階段的的輸入——問題陳陳述,可以來回多多次分析階段的的輸出——3個形形式化模型型:對象模型——靜態結結構——對對象-對象象之間的的關系動態模型——交互順順序——動動態的控制制結構功能模型——數據轉轉換——根根據約束的的數據,函函數性轉換換第五節面面向對象的的開發過程程——根據::生存期組組織管管理開發一、應用生生存期瀑布模型——面向過程項目的標準生存期期模型螺旋模型噴泉模型傳統生存期期模型需改改進二、類生存存期OO強調——軟件重重用——軟件部件└軟件局部部的設計、實現現重用單元——類類生存期開始類的定義——給出類類的實例的的操作、數據表示類的公有界界面——類的職責———公有成成員函數定義手段——類的規規格說明└定義:施施加于對象象存儲的數數據上的一組組操操作作不需需::操操作作實實現現((編編碼碼))問題::類有那那些訪訪問權權限的的成員員函數數?類的設設計與與實現現既存類類的重重用——從從:資資源庫庫從既存存類進進行演演化——漸漸進式式演化化——派派生::新增增、保留留、重重定義義漸進式式設計計漸進式式實現現漸進式式測試試從廢棄棄型進進行開開發設計——數數據存存儲,,私有有函數數實現——變變量、、操作作界面面支持界界面操操作的的函數數測試———單單個類類求精和和維護護———定義義、實實現分分離開始三、應應用開開發過過程6個步步驟::(1))分分析析階階段段2個個步步驟驟::論域域分分析析———開開發發::問問題題論論域域的的模模型型應用用/系系統統分分析析———細細化化::論論域域分分析析階階段段得得到到的的信信息息集中中::當當前前要要解解決決的的問問題題(2))高高層層設設計計———純純OO環環境境中中,,系系統統設設計計與與類類設設計計————同同一一過過程程一般般::分分開開————便便于于分分階階段段工工作作———設設計計應應用用的的頂頂層層視視圖圖,,表表示示各各個個類類的的要要求求└類類的的界界面面————表表示示::系系統統(3))類類的的開開發發———給給出出各各個個類類的的實實現現(4))實例例的建建立(5))組裝裝測試試——所所有類類組裝裝成系系統,,測試試(6))維護護——定定位故故障,,類中中增加加新行行為。。分離———類的實實現與規格說說明四、系系統體體系結結構——通通過::成分對對象和對象之之間的的關系系實現第六節節面面向對對象的的分析析過程程一、概概述面向對對象分分析過過程的的組成成論域分分析——問問題/應用用領域域應用分分析——目目標系系統面向對對象分分析產產生的的分析析文檔檔——更更加深深入地地描述述:問題論論域——清清晰、、精確確的定定義傳統的的過程程性分分析文文檔———面面向::功能能系統———一一組服服務OO的的分析析文檔檔———論域域的概念的高層層抽象象問題——一一組相相互作作用的的實體體二、論論域分分析論域分分析的的作用用——給給出::論域知知識抽抽象的高層層表示示———問題題領域域常超出出:當當前應應用的的范圍圍,比比當前前目標標系統統更廣廣泛論域分分析的的邊界界——可可模糊,越廣廣泛越越好論域分分析的的目的的標識基本概概念——每每個概概念的的完全全信息息識別論域特特征將基本本概念念集成成到論論域的的模型中———概念念之間間的關關系1、語語義數數據模模型(SemanticDataModels)語義模模型的的起源源——關關系數數據模模型,,實體體-聯聯系模模型((E-R))的擴擴展——表表達:(1)問題論論域的的內涵涵(2))復雜雜對象象(3))對象象之間間的關關系語義模模型與與OO分析析的映映射關關系語義模模型的的3層層模型型(1))外部部模型型層——用戶對問題題的理理解反映::應用用的外外部現現實世世界的的視圖圖(2))概念念模型型層——系系統

溫馨提示

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

評論

0/150

提交評論