GIS系統(tǒng)相關(guān)設(shè)計(jì)_第1頁(yè)
GIS系統(tǒng)相關(guān)設(shè)計(jì)_第2頁(yè)
GIS系統(tǒng)相關(guān)設(shè)計(jì)_第3頁(yè)
GIS系統(tǒng)相關(guān)設(shè)計(jì)_第4頁(yè)
GIS系統(tǒng)相關(guān)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

GIS系統(tǒng)相關(guān)設(shè)計(jì)在系統(tǒng)定義階段確定系統(tǒng)建設(shè)的目標(biāo)和任務(wù)之后,需要進(jìn)行系統(tǒng)的總體設(shè)計(jì)。GIS總體設(shè)計(jì)階段的主要任務(wù)是將系統(tǒng)需求轉(zhuǎn)換為數(shù)據(jù)結(jié)構(gòu)和軟件體系結(jié)構(gòu),即數(shù)據(jù)設(shè)計(jì)和體系結(jié)構(gòu)設(shè)計(jì)。數(shù)據(jù)設(shè)計(jì)就是把分析階段所建立的信息域模型變換成軟件實(shí)現(xiàn)中所需的數(shù)據(jù)結(jié)構(gòu)。體系結(jié)構(gòu)設(shè)計(jì)則是把系統(tǒng)的功能需求分配給軟件結(jié)構(gòu),形成軟件的模塊結(jié)構(gòu)圖,并設(shè)計(jì)模塊之間的接口關(guān)系。在總體設(shè)計(jì)階段,各模塊還處于黑盒子狀態(tài),模塊通過(guò)外部特征標(biāo)識(shí)符(如名字)進(jìn)行輸入和輸出。使用黑盒子的概念,設(shè)計(jì)人員可以站在較高的層次上進(jìn)行思考,從而避免過(guò)早地陷入具體的條件邏輯、算法和過(guò)程步驟等實(shí)現(xiàn)細(xì)節(jié),以便更好地確定模塊和模塊間的結(jié)構(gòu)。教學(xué)提綱一、總體設(shè)計(jì)的任務(wù)、方法和準(zhǔn)則二、系統(tǒng)總體設(shè)計(jì)工具退出一、總體設(shè)計(jì)的任務(wù)、方法和準(zhǔn)則(一)總體設(shè)計(jì)的任務(wù)和方法(二)總體設(shè)計(jì)的準(zhǔn)則返回總體設(shè)計(jì)的任務(wù)是要求系統(tǒng)設(shè)計(jì)人員遵循統(tǒng)一的準(zhǔn)則和采用標(biāo)準(zhǔn)的工具來(lái)確定系統(tǒng)應(yīng)包含哪些模塊、用什么方法聯(lián)結(jié)在一起,以構(gòu)成一個(gè)最優(yōu)的系統(tǒng)結(jié)構(gòu)??傮w設(shè)計(jì)一般采用結(jié)構(gòu)化設(shè)計(jì)方法進(jìn)行實(shí)現(xiàn)。結(jié)構(gòu)化設(shè)計(jì)強(qiáng)調(diào)軟件總體結(jié)構(gòu)的設(shè)計(jì),是一種自頂向下、逐步求精和分階段實(shí)現(xiàn)的設(shè)計(jì)策略。總體設(shè)計(jì)的任務(wù)和方法結(jié)構(gòu)化設(shè)計(jì)的基本特點(diǎn)由問(wèn)題結(jié)構(gòu)導(dǎo)出系統(tǒng)結(jié)構(gòu),即問(wèn)題結(jié)構(gòu)到系統(tǒng)結(jié)構(gòu)的映射。問(wèn)題結(jié)構(gòu)主要用數(shù)據(jù)流圖(DFD)來(lái)描述系統(tǒng)的邏輯模型,而系統(tǒng)結(jié)構(gòu)是指用系統(tǒng)的模塊結(jié)構(gòu)圖來(lái)描述軟件結(jié)構(gòu)通過(guò)自頂向下分解和層次組織的方法來(lái)簡(jiǎn)化系統(tǒng),產(chǎn)生模塊結(jié)構(gòu)運(yùn)用一系列的圖表工具。為使系統(tǒng)設(shè)計(jì)流程易于理解,結(jié)構(gòu)化設(shè)計(jì)使用了兩種主要的圖表工具:偽碼和結(jié)構(gòu)圖。偽碼描述的是模塊的處理邏輯,用來(lái)表達(dá)程序的設(shè)計(jì)思路;結(jié)構(gòu)圖用于描述軟件的總體結(jié)構(gòu),采用自頂向下、層次組織的方法提供一系列的系統(tǒng)設(shè)計(jì)策略。結(jié)構(gòu)化設(shè)計(jì)提供了兩種設(shè)計(jì)策略,它們分別是面向過(guò)程的數(shù)據(jù)流方法與面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法和Warnier-Orr方法。

提供一組評(píng)價(jià)系統(tǒng)設(shè)計(jì)質(zhì)量的準(zhǔn)則。結(jié)構(gòu)化設(shè)計(jì)方法提供了一系列評(píng)估準(zhǔn)則,如耦合、內(nèi)聚、扇入和扇出、信息隱蔽以及模塊化等。結(jié)構(gòu)化設(shè)計(jì)方法一般設(shè)計(jì)方法設(shè)計(jì)工具數(shù)據(jù)流圖,模塊結(jié)構(gòu)圖,圖表工具系統(tǒng)流程圖設(shè)計(jì)思想自頂向下,逐層分解自底向上,統(tǒng)一組裝設(shè)計(jì)重心強(qiáng)調(diào)軟件總體結(jié)構(gòu),其次才考慮軟件模塊的內(nèi)部處理邏輯(程序結(jié)構(gòu))采用系統(tǒng)流程圖描述源程序的處理邏輯,強(qiáng)調(diào)的是系統(tǒng)實(shí)現(xiàn)設(shè)計(jì)過(guò)程分為總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)沒(méi)有明確的階段劃分性能系統(tǒng)具有較好靈活性和可維護(hù)性,系統(tǒng)整體性好,易于把握用戶(hù)需求目標(biāo)系統(tǒng)結(jié)構(gòu)性差,缺乏靈活性和可維護(hù)性,并且可靠性和效率不高結(jié)構(gòu)化設(shè)計(jì)方法與一般設(shè)計(jì)方法的比較設(shè)計(jì)方法和策略問(wèn)題——如何構(gòu)造(導(dǎo)出)軟件的總體結(jié)構(gòu)軟件評(píng)估準(zhǔn)則問(wèn)題——什么樣的軟件結(jié)構(gòu)是“最優(yōu)”的軟件設(shè)計(jì)工具問(wèn)題——如何表述軟件的結(jié)構(gòu)采用結(jié)構(gòu)化設(shè)計(jì)方法需解決的問(wèn)題在結(jié)構(gòu)化設(shè)計(jì)過(guò)程中,模塊是一個(gè)重要的概念。模塊指的是具有輸入和輸出、邏輯功能、運(yùn)行程序、內(nèi)部數(shù)據(jù)四種屬性的一組程序語(yǔ)句。其中,輸入、輸出和邏輯功能是其外部屬性,反映功能,是可見(jiàn)的;運(yùn)行程序、內(nèi)部數(shù)據(jù)是其內(nèi)部屬性,反映具體實(shí)現(xiàn)途徑,是不可見(jiàn)的。除了上述四個(gè)主要屬性外,模塊還有其它的屬性。例如,它有一個(gè)名稱(chēng),可以使用別的模塊,也可以被別的模塊使用,即“調(diào)用”和“被調(diào)用”。在結(jié)構(gòu)化系統(tǒng)總體設(shè)計(jì)中,主要關(guān)心的是模塊的外部屬性,即它的功能,而不是它的內(nèi)部屬性,即如何去實(shí)現(xiàn)。結(jié)構(gòu)化設(shè)計(jì)中的模塊返回總體設(shè)計(jì)的準(zhǔn)則采用結(jié)構(gòu)化設(shè)計(jì)方法進(jìn)行系統(tǒng)總體設(shè)計(jì)的最大優(yōu)勢(shì)是它提供了一種便于衡量軟件設(shè)計(jì)質(zhì)量的廣泛的評(píng)價(jià)準(zhǔn)則。這些評(píng)價(jià)軟件設(shè)計(jì)質(zhì)量的主要準(zhǔn)則包括:模塊化抽象和信息隱蔽模塊獨(dú)立性軟件可以簡(jiǎn)單地理解為模塊的集成。目前,幾乎所有的軟件體系結(jié)構(gòu)都體現(xiàn)為模塊化。模塊化是軟件設(shè)計(jì)的一個(gè)基本準(zhǔn)則,它使得一個(gè)程序易于為人們所理解、設(shè)計(jì)、測(cè)試和維護(hù)。高層模塊可使我們從整體上把握問(wèn)題,隱蔽細(xì)節(jié)以免分散我們的注意力,在需要時(shí),又可以深入到較低的層次以了解進(jìn)一步的細(xì)節(jié)。模塊化往往將較復(fù)雜的問(wèn)題轉(zhuǎn)化為一些簡(jiǎn)單問(wèn)題的集合,使我們可以將工作量分散到各個(gè)工作組以集中力量解決各個(gè)問(wèn)題。模塊化每一個(gè)模塊表示一個(gè)自我包含的邏輯任務(wù);每個(gè)模塊都是簡(jiǎn)單的;每個(gè)模塊都是封閉的;每個(gè)模塊都是可以獨(dú)立測(cè)試的;每個(gè)模塊對(duì)應(yīng)單一、獨(dú)立的程序功能;每個(gè)模塊有單一的入口和出口;每個(gè)模塊都由一個(gè)標(biāo)準(zhǔn)返回點(diǎn)返回上層模塊開(kāi)始執(zhí)行該模塊的那一點(diǎn);可以把多個(gè)模塊組合成較大的模塊,而不必了解模塊內(nèi)部構(gòu)造的知識(shí);每個(gè)模塊都有嚴(yán)格規(guī)定的接口,其中包括由入口和出口形成的控制連接、由參數(shù)和共享的公用數(shù)據(jù)形成的數(shù)據(jù)連接以及由模塊間的服務(wù)支持形成的功能連接。模塊化原則抽象和信息隱蔽抽象是抽出事物的本質(zhì)特性而暫時(shí)不考慮它們的細(xì)節(jié),它反映在數(shù)據(jù)和過(guò)程兩方面。在模塊化問(wèn)題求解時(shí),在最高抽象級(jí)可以采用面向問(wèn)題環(huán)境語(yǔ)言的抽象術(shù)語(yǔ)進(jìn)行敘述;而在較低抽象級(jí),則可采用過(guò)程性術(shù)語(yǔ)。模塊化的概念加上逐步求精的方法將面向問(wèn)題的術(shù)語(yǔ)和面向?qū)崿F(xiàn)的術(shù)語(yǔ)兩者結(jié)合起來(lái),前者是后者的一種抽象。在軟件模塊結(jié)構(gòu)圖中,下層模塊是上層模塊的細(xì)化,因此頂層或上層模塊的抽象程度較高,而在下層模塊中則體現(xiàn)功能實(shí)現(xiàn)的細(xì)節(jié)。信息隱蔽是模塊的另一重要特征?!靶畔㈦[蔽”意味著有效的模塊化可以通過(guò)定義一組獨(dú)立的模塊來(lái)實(shí)現(xiàn),這些獨(dú)立的模塊彼此之間僅僅交換那些為了完成系統(tǒng)功能所必須交換的信息。一個(gè)模塊內(nèi)部所包含的信息(數(shù)據(jù)或過(guò)程),如果它不允許外部的模塊訪問(wèn)的話,其它模塊是不能對(duì)它們?cè)L問(wèn)的。抽象和信息隱蔽從兩個(gè)不同方面說(shuō)明了模塊化設(shè)計(jì)的特征。“抽象”幫助定義構(gòu)成軟件的過(guò)程實(shí)體,而“信息隱蔽”實(shí)施對(duì)過(guò)程細(xì)節(jié)的存取約束。模塊獨(dú)立性模塊獨(dú)立性的概念是模塊抽象和信息隱蔽的直接結(jié)果,是保證軟件質(zhì)量的關(guān)鍵性因素。采用結(jié)構(gòu)化設(shè)計(jì)方法進(jìn)行系統(tǒng)總體設(shè)計(jì)強(qiáng)調(diào)把系統(tǒng)設(shè)計(jì)成具有層次式的模塊化結(jié)構(gòu)。模塊獨(dú)立性程度較高的軟件,其功能易于劃分,接口簡(jiǎn)單,因此開(kāi)發(fā)、測(cè)試和維護(hù)都較容易,修改引起的副作用也較小。模塊獨(dú)立性有兩個(gè)定性的標(biāo)準(zhǔn)來(lái)度量,即內(nèi)聚(cohesion,又稱(chēng)塊內(nèi)聯(lián)系)和耦合(coupling,又稱(chēng)塊間聯(lián)系)。內(nèi)聚是模塊內(nèi)部各成分之間的聯(lián)系,如果一個(gè)模塊的內(nèi)聚度大,模塊的獨(dú)立性則會(huì)提高。耦合是指模塊間的聯(lián)系,耦合度是對(duì)模塊獨(dú)立性的直接衡量,很顯然,塊間聯(lián)系越小,模塊的獨(dú)立性則會(huì)越高,耦合度就會(huì)降低。在系統(tǒng)中,內(nèi)聚度和耦合度是相互聯(lián)系的,模塊的內(nèi)聚度越高,則耦合度就越低。采用好的設(shè)計(jì)規(guī)則,改進(jìn)軟件結(jié)構(gòu),提高模塊獨(dú)立性,設(shè)計(jì)出軟件初步結(jié)構(gòu)以后,應(yīng)該審查和分析這個(gè)結(jié)構(gòu),通過(guò)模塊的分解和合并,力求降低模塊耦合度,提高模塊內(nèi)聚度。例如,多個(gè)模塊公用的一個(gè)子功能可以獨(dú)立成一個(gè)模塊,供這些模塊調(diào)用。有時(shí)則可通過(guò)分解或合并模塊以減少控制信息的傳遞及對(duì)全局?jǐn)?shù)據(jù)的引用,降低接口的復(fù)雜程度。經(jīng)驗(yàn)表明,模塊規(guī)模應(yīng)當(dāng)適中,過(guò)大則可能導(dǎo)致獨(dú)立性降低,引起開(kāi)發(fā)、測(cè)試和維護(hù)的不便。返回二、系統(tǒng)總體設(shè)計(jì)工具(一)層次圖(二)HIPO圖(三)結(jié)構(gòu)圖返回層次圖層次圖(hierarchicalchart)是在軟件總體設(shè)計(jì)階段最常用的工具之一,用來(lái)描繪軟件的層次結(jié)構(gòu)。下圖為某土地定級(jí)信息系統(tǒng)的局部層次圖,圖中的每個(gè)方框代表一個(gè)模塊,方框間的連線表示模塊的調(diào)用關(guān)系。層次圖適合于在自頂而下設(shè)計(jì)軟件的過(guò)程中使用。某土地定級(jí)信息系統(tǒng)數(shù)據(jù)輸入數(shù)據(jù)編輯因子分析因素復(fù)合級(jí)別劃定面積量算專(zhuān)題制圖成果輸出空間內(nèi)插分析地形坡度分析平均高程分析曲面分級(jí)引力模型空間擴(kuò)散分析分值頻率分析分值分級(jí)樣點(diǎn)級(jí)別提取級(jí)差收益測(cè)算返回HIPO圖

HIPO圖是由美國(guó)IBM公司發(fā)明的“層次+輸入/處理/輸出圖”的英文縮寫(xiě)。HIPO圖實(shí)際上由H圖(即層次圖)和IPO圖兩部分組成。這里的H圖是在層次圖的基礎(chǔ)上對(duì)每個(gè)方框進(jìn)行編號(hào),使其具有可跟蹤性。編號(hào)規(guī)則如下:最頂層方框不編號(hào),第一層中各模塊的編號(hào)依次為1.0,2.0,3.0,……;如果模塊2.0還有下層模塊,那么下層模塊的編號(hào)依次為2.1,2.2,2.3,……;如果模塊2.2又有下層模塊,則下一層各模塊的編號(hào)根據(jù)上面的規(guī)律依次為,,,……,依次類(lèi)推。某土地定級(jí)信息系統(tǒng)數(shù)據(jù)輸入1.0數(shù)據(jù)編輯2.0因子分析3.0因素復(fù)合4.0級(jí)別劃定5.0面積量算6.0專(zhuān)題制圖7.0成果輸出8.0空間內(nèi)插分析3.1地形坡度分析3.2平均高程分析3.3曲面分級(jí)3.4引力模型3.5緩沖區(qū)分析3.6分值頻率分析5.1分值分級(jí)5.2樣點(diǎn)級(jí)別提取5.3級(jí)差收益測(cè)算5.4H圖舉例(某土地定級(jí)信息系統(tǒng)的局部H圖)和H圖中每個(gè)方框相對(duì)應(yīng),應(yīng)該有一張IPO圖描述這個(gè)方框所代表的模塊的信息處理過(guò)程。IPO圖使用簡(jiǎn)潔的方框來(lái)方便地描述數(shù)據(jù)輸入、數(shù)據(jù)處理和數(shù)據(jù)輸出三部分之間的關(guān)系。值得強(qiáng)調(diào)的是,HIPO圖中的每個(gè)IPO圖都應(yīng)該明顯地標(biāo)出它們所描繪的模塊在H圖中的編號(hào),以便跟蹤了解這個(gè)模塊在軟件結(jié)構(gòu)中的位置。如下圖描述的是緩沖區(qū)分析模塊,對(duì)應(yīng)的編號(hào)是3.6。凈化后數(shù)據(jù)影響度空間影響半徑1.選擇影響模型2.提取影響主體3.計(jì)算模型參數(shù)4.緩沖帶操作圖形輸出數(shù)據(jù)存儲(chǔ)輸入處理輸出

IPO圖舉例(緩沖區(qū)分析模塊的IPO圖)返回結(jié)構(gòu)圖Yourdon提出的結(jié)構(gòu)圖(Structuredchart)是進(jìn)行軟件結(jié)構(gòu)化設(shè)計(jì)的另一種有力的工具。結(jié)構(gòu)圖和層次圖類(lèi)似,也是用來(lái)描述軟件結(jié)構(gòu)的,但其描述能力比層次圖更強(qiáng)。如下圖,圖中每個(gè)方框代表一個(gè)模塊,框內(nèi)注明模塊的名字或主要功能,模塊的名稱(chēng)通常是動(dòng)賓結(jié)構(gòu)的名詞,方框之間的箭頭(或直線)表示模塊間的調(diào)用關(guān)系。模塊A模塊B調(diào)用模塊(Caller)被調(diào)用模塊(Subordinate)控制標(biāo)識(shí)數(shù)據(jù)傳遞在結(jié)構(gòu)圖中通常還用帶注釋的箭頭表示模塊調(diào)用過(guò)程中來(lái)回傳遞的信息,如果希望進(jìn)一步標(biāo)明傳遞的信息是數(shù)據(jù)還是控制信息,則可以利用注釋箭頭尾部的形狀來(lái)區(qū)分:尾部是空心圓表示傳遞的是數(shù)據(jù),尾部是實(shí)心圓表示傳遞的是控制信息。此外,還可以附加一些符號(hào)以表示模塊的選擇調(diào)用或循環(huán)調(diào)用關(guān)系。在結(jié)構(gòu)圖中,關(guān)鍵要描述的內(nèi)容有兩個(gè):一是模塊的功能,通常是由模塊的名稱(chēng)來(lái)標(biāo)識(shí)的;二是要描述模塊與模塊之間的接口。構(gòu)造結(jié)構(gòu)圖時(shí),要注意以下幾個(gè)問(wèn)題:首先,一個(gè)模

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論