




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第六章GIS軟件工程的詳細設計GIS軟件工程的詳細設計詳細設計1用戶界面設計2
標準化設計3詳細設計:又稱為過程設計,其任務是根據總體設計方案確定的目標和階段開發計劃,緊密結合特定的硬件、基礎軟件和規范標準,進行子系統和數據庫的詳細設計,用于具體指導系統的開發。
詳細設計的基本任務一.處理方式設計
1.數據結構設計
對于需求分析、概要設計確定的概念性的數據類型進行確切的定義。
2.算法設計
用某種圖形、表格、語言等工具將每個模塊處理過程的詳細算法描述出來。3.性能設計
確定為滿足軟件系統的性能需求所必需的算法和模塊間的控制方式。二.物理設計對數據庫進行物理設計,即確定數據庫的物理結構。三.可靠性設計
簡單說:使程序和文檔中的錯誤盡量少。四.其他設計
(1)代碼設計:為了提高數據的輸入、分類、存儲及檢索等操作的效率,以及節約內存空間,對數據庫中的某些數據項的值要進行代碼設計。(2)輸入/輸出格式設計。
(3)人機對話設計:對于一個實時系統,用戶與計算機頻繁對話,因此要進行對話方式、內容及格式的具體設計。
五.編寫詳細設計說明書及評審
(1)引言:包括編寫目的、背景、定義、參考資料。
(2)程序系統的組織結構。
(3)程序(標識符)設計說明:包括功能、性能、輸入、輸出、算法、流程邏輯、接口。對處理過程的算法和數據庫的物理結構都要評審。詳細設計方法詳細設計的目標不僅是邏輯上正確地實現每個模塊的功能,還應使設計出的處理過程清晰易讀。結構化程序設計方法有以下幾個基本要點。1.采用自頂向下、逐步求精的程序設計方法。2.使用三種基本控制結構構造程序。3.主程序員的組織形式。
過程設計語言(PDL)程序流程圖判定表盒圖(N-S圖)PAD圖詳細設計的工具
程序流程圖(PFG,ProgramFlowGraph)又稱為程序框圖,它是歷史最悠久使用最廣泛的描述軟件設計的方法,然而它也是用得最混亂的一種方法。1程序流程圖(3)先判定型循環結構(while-loopstructure)(1)順序結構(sequentialstructure)(2)選擇結構(selectivestructure)ABPBAFT(4)后判定型循環結構(until-loopstructure)TPSFFSTP(5)多情況選擇(casestructure)TA1FP=1TA2FP=2…TAnFP=n1程序流程圖1程序流程圖例子程序流程圖常用符號1程序流程圖循環的標準符號注解的使用1程序流程圖多出口判斷1程序流程圖主要優點:
對控制流程的描繪很直觀,便于初學者掌握。主要缺點:
1.程序流程圖本質不是逐步求精的好工具,它誘使程序員過早地考慮程序的控制流程,而不去考慮程序的全局結構。
2.程序流程圖中用箭頭代表控制流,因此程序員不受任何約束,可以完全不顧結構程序設計的精神,隨意轉移控制。
3.程序流程圖不易表示數據結構。1程序流程圖2盒圖(N_S圖)出于要有一種不允許違背結構程序設計精神的圖形工具的考慮,Nassi和Shneider-man提出了盒圖,又稱為N_S圖。也叫做盒圖。五種基本控制結構由五種圖形構件表示。2盒圖(N_S圖)示例2盒圖(N_S圖)N-S圖的嵌套定義形式2盒圖(N_S圖)x4TFDo-Untilx5ighfkx1TFbDo-Untilx6ajx21cDo-Whilex323dek:2盒圖(N_S圖)特點:①沒有箭頭,不允許隨意轉移控制;②每個矩形框(Case中條件取值例外)都是一個功能域(即一個特定結構的作用域),結構表示明確;③局部及全程數據的作用域易見;④易表現嵌套關系(embeddedstructure)以及模塊的層次結構。2盒圖(N_S圖)PAD(ProblemAnalysisDiagram)3PAD圖
PAD描述的示例3PAD圖開始結束aj
Untilx5i
Untilx6bx1kfx4ghdefkx2de123
Whilex3cDef格式3PAD圖N-S圖與PAD的轉換x4TFDo-Untilx5ighfkx1TFbDo-Untilx6ajx21cDo-While
x323dek:3PAD圖PAD特點:①結構清晰,層次分明,易讀;②支持逐步求精的設計思想;③容易將PAD自動轉換為高級語言源程序。3PAD圖判定表&判定樹(DecisionTable&Tree)表示復雜的條件(input)組合與應做動作(output)之間的對應關系。
4判定表&判定樹西南科技大學(1)年交易額在5萬或5萬以下,則不給予折扣;(2)對于年交易額在5萬以上時:如果無欠款,則給予15%的折扣;如果有欠款,而且與本公司的交易關系在20年以上,則折扣為10%;如果有欠款,而且與本公司交易關系在20年以下,則折扣為5%。
訂貨折扣邏輯描述如下:4判定表&判定樹訂貨處理優惠待遇年交易額5萬以上年交易額5萬或以下無欠款有欠款交易20年以上交易20年以下15%10%5%0%判定樹4判定表&判定樹條件及行動12345678條件組合C1:交易額5萬以上C2:無欠款C3:交易20年以上行動A1:折扣率15%A2:折扣率10%A3:折扣率5%A4:折扣率0%YYYYNNNNYYNNYYNNYNYNYNYN判斷表4判定表&判定樹PDL是一種用于描述功能模塊的算法設計和加工細節的語言。稱為設計程序用語言。它是一種偽碼。偽碼的語法規則分為“外語法”和“內語法”。PDL具有嚴格的關鍵字外語法,用于定義控制結構和數據結構,同時表示實際操作和條件的內語法可使用自然語言的詞匯。5過程設計語言(PDL)PDL(ProgramDesignLanguage)又稱Pseudocode1)順序結構采用自然語言描述順序結構:處理S1
處理S2…
處理Sn
程序結構
用PDL表示的程序結構一般有下列幾種結構。5過程設計語言(PDL)a.IF-ELSEIF條件
處理S1或ELSE處理SENDIFb.IF-ORIF-ELSE結構:
IF條件1
處理S1ORIF條件2
. . .ELSE
處理Sn
ENDIF2)選擇結構5過程設計語言(PDL)c.CASE結構:
CASEOFCASE(1)
處理S1CASE(2)
處理S2…ELSE處理Sn
ENDCASE5過程設計語言(PDL)
3)重復結構
(1)FOR結構:
FORi=1TOn
循環體
ENDFOR(2)WHILE結構:
WHILE條件循環體
ENDWHILE(3)UNTIL結構:
REPEAT
循環體
UNTIL條件5過程設計語言(PDL)
4)擴充結構
a模塊定義:
PROCEDURE模塊名(參數)…RETURNENDb模塊調用:
CALL模塊名(參數)c數據定義:
DECLARE屬性變量名,…5過程設計語言(PDL)屬性有:字符、整型、實型、雙精度、指針、數組及結構等類型。
d輸入/輸出:
GET(輸入變量表)PUT(輸出變量表)3.PDL應用示例現以××系統主控模塊詳細設計為例,說明如何用PDL來描述。
PROCEDURE
MainMod()
清屏;5過程設計語言(PDL)顯示××系統用戶界面;
PUT(“請輸入用戶口令:”);
GET(password);IFpassword<>系統口令提示警告信息;退出運行
ENDIF
顯示本系統主菜單;
WHILE(true)
接收用戶選擇ABC;
IFABC=“退出”5過程設計語言(PDL)
Break;ENDIF
調用相應下層模塊完成用戶選擇功能;
ENDWHILE;
清屏;
RETURNEND5過程設計語言(PDL)PDL有以下優點:
(1)提供的機制較圖形全面,為保證詳細設計與編碼的質量創造了有利條件。(2)可作為注釋嵌入在源程序中一起作為程序的文檔,并可同高級程序設計語言一樣進行編輯、修改,有利于軟件的維護。(3)可自動生成程序代碼,提高軟件生產率。目前已有PDL多種版本(如PDL/pascal,PDL/C,PDL/Ada等),為自動生成相應代碼提供了便利條件。5過程設計語言(PDL)PDL的缺點1.不如圖形工具形象直觀;2.描述復雜的條件組合與動作間的對應關系時,不如判定表清晰簡單。5過程設計語言(PDL)用戶界面好比商品的包裝、櫥窗的布置,給用戶一個直觀的印象。因此,用戶界面設計的好壞,影響到用戶對系統的態度,決定了系統能否被用戶接受,進而影響到系統的應用和推廣。友好的用戶界面,是GIS成功的條件之一。用戶界面設計原則:
1操作簡單、自動化程度高,盡可能減少用戶的操作,如提供列表框選擇代替數據輸入;2.在同一系統中,界面應始終保持同一種形式和風格,如菜單選擇、命令輸入、數據顯示和其他功能;術語、符號等標準化,如GIS中的放大、縮小、漫游等按鈕都有固定的符號,盡可能采用標準的或通用的符號;3.提供操作提示和聯機幫助功能,在對話框中提供操作提示,系統有幫助菜單并有詳細內容;操作提示4.快速的系統相應和低的系統成本;5.對操作錯誤提供錯誤信息,不會因用戶的操作錯誤出現死機現象,具有容錯能力;
6.提供系統運行信息和響應信息,系統在處理運行過程中,應改變鼠標的顯示形式,如處理時間超過10秒,應顯示進程條,運行結束后應有響應信息,如屏幕顯示發生變化,或顯示處理結束窗口;7.用戶可以根據需要制定和修改界面方式,允許用戶對界面的顯示形式進行修改,如放大、縮小窗口;8.關鍵操作要有強調和警告,能保證有關程序和數據的安全性,當涉及刪除圖層等操作時,需要出現一個確認窗口,窗口提示“是否確認刪除?”等信息以及“是”、“否”和“取消”三個按鈕,只有當用戶明確回答這個問題以后,才能繼續工作;警告對話窗口負責傳送一條警告,它提醒用戶注意一些危險操作(如可能丟失數據等),并提供“忽略”和“停止”兩個按鈕;9.允許動作的可逆性(提供undo功能),對大多數操作應允許恢復(UNDO);10.按功能分類組織界面上的活動,對菜單項、按鈕等按照功能進行組織分割;11.提供缺省選擇,需要用戶進行選擇時,以最有可能的選擇作為缺省選擇。12提高對話、移動和思考的效率。應該盡量減少用戶擊鍵的次數,設計屏幕布局時應該考慮盡量減少鼠標移動的距離,應該盡量避免出現用戶問“這是什么意思?”的情況。13允許犯錯誤。系統應該能保護自己不受嚴重錯誤的破壞。
14高效率地使用顯示屏。當使用多窗口時,應該有足夠的空間使得每個窗口至少都能顯示出一部分。此外,屏幕大小應該選得和應用系統的類型相配套(這實際上是一個系統工程問題)。
15數據輸入控制(1)盡量減少用戶的輸入動作。(2)保持信息顯示和數據輸入之間的一致性。(3)允許用戶自定義輸入。(4)交互應該是靈活的,并且可調整成用戶最喜歡的輸入方式。(5)使在當前動作語境中不適用的命令不起作用。(6)讓用戶控制交互流。(7)對所有輸入動作都提供幫助(8)消除冗余的輸入。GIS軟件的基本界面樣式1基于命令行的GIS界面2基于窗口的界面3菜單驅動的GIS界面4基于對話框的界面5采用數據流圖的GIS用戶界面不可用的按鈕是disable而不是notvisibe。完成相同或相近功能的按鈕用GoupBox框起來,常用按鈕要支持快捷方式。完成同一功能或任務的元素放在集中位置,減少鼠標移動的距離。
按功能將界面劃分局域塊,用GoupBox框括起來,并要有功能說明或標題。界面要支持鍵盤自動瀏覽按鈕功能,即按Tab鍵的自動切換功能。1.易用性
默認按鈕要支持Enter選定及鼠標選擇操作,即按Enter后自動執行默認按鈕對應操作。
可寫控件檢測到非法輸入后應給出說明并能自動獲得焦點。
Tab鍵的順序與控件排列順序要一致,總體遵守從上到下,同時行間從左到右的方式。
復選框和選項框要有默認選項,并支持Tab鍵選擇。
界面空間較小時使用下拉框而不用選項框。
選項數較少時使用選項框,相反使用下拉列表框。
專業性強的軟件要使用相關的專業術語,通用性界面則提倡使用通用性詞語。2.規范性
通常界面設計都按Windows界面的規范來設計。
小型軟件可以不提供工具欄。
常用菜單要有命令快捷方式。
完成相同或相近功能的菜單用橫線隔開放在同一位置。
菜單前的圖標能直觀的代表要完成的操作。
菜單深度一般要求最多控制在三層以內。
工具欄要求可以根據用戶的要求自己選擇定制。
相同或相近功能的工具欄放在一起。
工具欄中的每一個按鈕要有及時提示信息。工具欄太多時可以考慮使用工具廂。
狀態條要能顯示用戶切實需要的信息,常用的有:目前的操作、系統狀態、用戶位置、用戶信息、提示信息、錯誤信息,如果某一操作需要的時間較長,應該顯示進度條和進程提示。滾動條的長度要根據顯示信息的長度或寬度能及時變換,以利于用戶了解顯示信息的位置和百分比。
菜單和工具條要有清楚的界限;
菜單要求凸出顯示,這樣在移走工具條時仍有立體感。
菜單和狀態條中通常使用5號字體。工具條一般比菜單要寬,但不要寬的太多,否則看起來很不協調。
右鍵快捷菜單采用與菜單相同的準則。
3.幫助設施
操作時要提供及時調用系統幫助的功能。常用的熱鍵是F1。
幫助要有即時針對性,在界面上調用幫助時應該能夠及時定位到與該操作相對的幫助位置。
用戶可以用關鍵詞在幫助索引中搜索所要的幫助,當然也應該提供幫助主題詞。
在幫助中應該提供我們的技術支持方式,一旦用戶難以自己解決可以方便的尋求新的幫助方式。4.合理性屏幕對角線相交的位置是用戶直視的地方,正上方四分之一處為易吸引用戶注意力的位置,在放置窗體時要注意利用這兩個位置。父窗體或主窗體的中心位置應該在對角線焦點附近。子窗體位置應該在主窗體的左上角或正中。多個子窗體彈出時應該依次向右下方偏移,以顯示窗體出標題為宜。重要的命令按鈕與使用較頻繁的按鈕要放在界面上注目的位置。錯誤使用容易引起界面退出或關閉的按鈕不應該放在易點位置。橫排開頭或最后與豎排最后為最佳位置。
5.美觀與協調性統一色調,針對軟件類型以及用戶工作環境選擇恰當色調。長寬比或寬長比接近黃金點比例,切忌長寬比例失調。布局要合理,不宜過于密集,也不能過于空曠,合理的利用空間。相鄰或同組的按鈕大小相同,同界面上所有的按鈕高度相同。按鈕的大小要與界面的大小和空間要協調。
大型系統常用的主色有“#E1E1E1”、“#EFEFEF”、“#C0C0C0”等。鼠標光標樣式統一,盡量使用系統標準。如果窗體支持最小化和最大化或放大時,窗體上的控件也要隨著窗體而縮放;切忌只放大窗體而忽略控件的縮放。對于含有按鈕的界面一般不應該支持縮放,即右上角只有關閉功能。
紅色的色感溫暖,性格剛烈而外向,是一種對人刺激性很強的色。紅色容易引起人的注意,也容易使人興奮、激動、緊張、沖動、還是一種容易造成人視覺疲勞的色。
1、在紅色中加入少量的黃,會使其熱力強盛,趨于躁動、不安。
2、在紅色中加入少量的藍,會使其熱性減弱,趨于文雅、柔和。
3、在紅色中加入少量的黑,會使其性格變的沉穩,趨于厚重、樸實。
4、在紅中加入少量的白,會使其性格變的溫柔,趨于含蓄、羞澀、嬌嫩。
黃色的性格冷漠、高傲、敏感、具有擴張和不安寧的視覺印象。黃色是各種色彩中,最為嬌氣的一種色。只要在純黃色中混入少量的其它色,其色相感和色性格均會發生較大程度的變化。
1、在黃色中加入少量的藍,會使其轉化為一種鮮嫩的綠色。其高傲的性格也隨之消失,趨于一種平和、潮潤的感覺。
2、在黃色中加入少量的紅,則具有明顯的橙色感覺,其性格也會從冷漠、高傲轉化為一種有分寸感的熱情、溫暖。
3、在黃色中加入少量的黑,其色感和色性變化最大,成為一種具有明顯橄欖綠的復色印象。其色性也變的成熟、隨和。
4、在黃色中加入少量的白,其色感變的柔和,其性格中的冷漠、高傲被淡化,趨于含蓄,易于接近。
藍色的色感冷嘲熱諷,性格樸實而內向,是一種有助于人頭腦冷嘲熱諷靜的色。藍色的樸實、內向性格,常為那些性格活躍、具有較強擴張力的色彩,提供一個深遠、廣埔、平靜的空間,成為襯托活躍色彩的友善而謙虛的朋友。藍色還是一種在淡化后仍然似能保持較強個性的色。如果在藍色中分別加入少量的紅、黃、黑、橙、白等色,均不會對藍色的性格構成較明顯的影響力。
1、如果在藍色中黃的成份較多,其性格趨于甜美、亮麗、芳香。
2、在藍色中混入小量的白,可使藍色的知覺趨于焦躁、無力。
綠色是具有黃色和藍色兩種成份的色。在綠色中,將黃色的擴張感和藍色的收縮感相中庸,將黃色的溫暖感與藍色的寒冷感相抵消。這樣使得綠色的性格最為平和、安穩。是一種柔順、恬靜、潢足、優美的色。
1、在綠色中黃的成份較多時,其性格就趨于活潑、友善,具有幼稚性。
2、在綠色中加入少量的黑,其性格就趨于莊重、老練、成熟。
3、在綠色中加入少量的白,其性格就趨于潔凈、清爽、鮮嫩。
紫色的明度在有彩色的色料中是最低的。紫色的低明度給人一種沉悶、神秘的感覺。
1、在紫色中紅的成份較多時,其知覺具有壓抑感、威脅感。
2、在紫色中加入少量的黑,其感覺就趨于沉悶、傷感、恐怖。
3、在紫色中加入白,可使紫色沉悶的性格消失,變得優雅、嬌氣,并充滿女性的魅力。
6.菜單菜單位置按照按功能來組織。菜單通常采用“常用--主要--次要--工具--幫助”的位置排列,符合流行的Windows風格。常用的有“文件”、“編輯”,“查看”等,幾乎每個系統都有這些選項,當然要根據不同的系統有所取舍。下拉菜單要根據菜單選項的含義進行分組,并切按照一定的規則進行排列,用橫線隔開。一組菜單的使用有先后要求或有向導作用時,應該按先后次序排列。
六、白色的色感光明,性格樸實、純潔、快樂。白色具有圣潔的不容侵犯性。如果在白色中加入其它任何色,都會影響其純潔性,使其性格變的含蓄。
1、在白色中混入少量的紅,就成為淡淡的粉色,鮮嫩而充滿誘惑。
2、在白色中混入少量的黃,則成為一種乳黃色,給人一種香膩的印象。
3、在白色中混入少量的藍,給人感覺清冷、潔凈。
4、在白色中混入少量的橙,有一種干燥的氣氛。
5、在白色中混入少量的綠,給人一種稚嫩、柔和的感覺。
6、在白色中混入少量的紫,可誘導人聯想到淡淡的芳香。
菜單前的圖標不宜太大,與字高保持一直最好。主菜單的寬度要接近,字數不應多于四個,每個菜單的字數能相同最好。主菜單數目不應太多,最好為單排布置。沒有順序要求的菜單項按使用頻率和重要性排列,常用的放在開頭,不常用的靠后放置;重要的放在開頭,次要的放在后邊。7.獨特性
a安裝界面上應有單位介紹或產品介紹,并有自己的圖標。
b主界面,最好是大多數界面上要有公司圖標。
c登錄界面上要有本產品的標志,同時包含公司圖標。
d幫助菜單的“關于”中應有版權和產品信息。
e公司的系列產品要保持一直的界面風格,如背景
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 臨汾市大寧縣2024-2025學年數學三下期末經典模擬試題含解析
- 遼寧省新賓縣聯考2024-2025學年初三四模英語試題試卷含答案
- 西藏省重點中學2025年中考語文試題5月沖刺題含解析
- 江西應用工程職業學院《醫療器械注冊與質量管理》2023-2024學年第一學期期末試卷
- 吉林工程技術師范學院《醫學昆蟲學》2023-2024學年第一學期期末試卷
- 江西2025年數學三下期末達標檢測模擬試題含解析
- 四川西南航空職業學院《家具展示設計》2023-2024學年第二學期期末試卷
- 昆山登云科技職業學院《冶金學術基礎英語》2023-2024學年第一學期期末試卷
- 鄭州旅游職業學院《通信工程專業導論》2023-2024學年第一學期期末試卷
- 開封大學《學前兒童社會活動設計與指導》2023-2024學年第二學期期末試卷
- 城鎮排水工程施工質量驗收規范 DG-TJ08-2110-2012
- 鐵路少年-練習及答案
- 嬰幼兒入戶指導方案
- 針灸推拿學教學課件
- 優化溝通效果提升業務價值
- 泌尿外科手術分級
- 華潤電力測評題庫及答案
- 《胎兒脊柱異常的超聲診斷》課件
- (完整)中小學教師職稱評定答辯題
- 精神專科醫院護理查房方案
- 學生考試成績評價分析表模板
評論
0/150
提交評論