【UML】案例分析:機場運作系統
08年9月入學,12年7月畢業,結束了我在軟體學院愉快豐富的大學生活。此係列是對四年專業課程學習的回顧,索引參見:http://blog.csdn.net/xiaowei_cqu/article/details/7747205
此篇是UML課程的大作業,是我跟隨 桐姐,小鹿,和 翠翠 一起完成的。感謝幾位認真紮實又不嫌棄我的隊友,讓我學習很多~
UML案例分析
UML建模的目的:
UML是Unified Modeling Language(統一建模語言)的簡稱。UML是對軟體密集型系統中的製品(軟體開發過程中產生的各種各樣的產物,如模型、原始碼、測試用例等)進行視覺化、詳述、構造和文件化的語言。
UML是一套表示法系統。UML由一組圖組成,它使得系統分析員可以利用這一標準來建立能夠和客戶、程式設計師以及任何參與程式開發的人員理解的多視角的系統藍圖。不同的風險承擔人通常使用不同型別的圖相互交流。
- 使用模型可以更好地理解問題 (To understand the problem better)
- 使用模型可以加強人員之間的溝通 (To communicate with other persons)
- 使用模型可以更早地發現錯誤或疏漏的地方 (To find errors or omissions)
- 使用模型可以獲取設計結果 (To plan out the design)
- 模型為最後的程式碼生成提供依據 (To generate code)
UML是Unified Modeling Language(統一建模語言)的簡稱。UML是對軟體密集型系統中的製品(軟體開發過程中產生的各種各樣的產物,如模型、原始碼、測試用例等)進行視覺化、詳述、構造和文件化的語言。
UML是一套表示法系統。UML由一組圖組成,它使得系統分析員可以利用這一標準來建立能夠和客戶、程式設計師以及任何參與程式開發的人員理解的多視角的系統藍圖。不同的風險承擔人通常使用不同型別的圖相互交流。
- UML提供了九種不同的圖來描述系統模型,用於物件導向的程式設計:類圖:一類或者一組具有類似屬性和共同行為的事物;
- 物件圖:一個類的例項,是具有屬性值的一個具體事物;
- 用例圖:是從使用者的觀點對系統行為的一個描述;
- 狀態圖:在任意給定的時刻,一個物件總是處於某一特定的狀態;
- 順序圖:表達對戲那個之間基於時間的動態互動;
- 活動圖:顯示系統中從一個活動到另一個活動的流程;
- 協作圖:展示一組物件間的連線以及這組物件收發的訊息;
- 構件圖:展現了一組元件之間的組織和依賴,用於對原始碼、可執行的釋出、物理資料庫和可調整的系統建模;
- 部署圖:顯示了基於計算機系統的物理體系結構;
實驗步驟
【確定專案】
機場運作系統
【專案立意】
機場運作系統分析旨在分析機場的運作系統,從中發現系統中的不足,以求設計出更好的機場運作系統。機場運作系統的核心在於機場的排程系統,通過對此業務模型的建立和分析,希望那個能夠找出更好的機場排程演算法,使機場能夠更加高效的執行。整個系統中採用無線網路進行通訊,除了Pc機,為了方便通訊,在本系統中還通過對講機進行通訊,使資訊能夠及時的傳送。【系統分析】
首先機場運作系統是一個比較龐大的系統,為了方便起見,我們將其分成四大版塊,小組四位成員一人負責一大版塊,每階段任務結束都進行彙報總結,相互糾正錯誤,完善各版塊體系:四大版塊:
- 買票系統:主要對乘客購買機票到登機前的系統的分析;包括:網購 、機場購買、退票、改簽機票
- 登記系統:主要對乘客到達機場後直到登機之間的系統分析;包括:安檢、檢票、登機
- 排程系統:主要對飛機起飛與著陸的系統分析; 包括:跑道控制、飛機起飛、特殊情況、飛機降落
- 貨運系統:主要對貨物從安檢裝機到抵達目的地之間的系統分析; 包括:發貨、貨物檢查、收貨
圖 1 登記活動圖

圖 2 買票活動圖

圖 3 飛機起飛活動圖

圖 4 飛機著陸活動圖

圖 5 機場貨運活動圖

【領域分析——抽類】
上階段步驟校驗結束後,進行領域分析,即對各版塊系統進行對名詞和動詞的抽取,彙總去掉重複累贅項後得到初步類圖:初步將類分為 : 角色、實體和機場部分
- 角色包括:乘客、檢票員、安檢人員、地控中心人員、攜貨員、前臺服務人員、機場貨運人員、機場廣播人員、跑道工作人員
- 實體包括:機票、行李、貨物、貨運單、登機牌、貨運單
- 機場部門包括:飛機、跑道、候機廳、機場公安局、機場大廳、海關、登機口、邊防檢查屬
圖 6 系統類圖

圖 7 跑道工作人員類圖

圖 8 安檢人員類圖

圖 9 乘客相關類圖

圖 10 低空中心人員相關類圖

圖 11 機場工作人員相關類圖

圖 12 機場總負責相關類圖

圖 13 檢票相關類圖

圖 14 攜貨人員相關類圖

【開發用例】
對各種類進行了細化後,開始對用例的開發。對於用例,我們根據所得出的類來分析,首先我們將類分為幾個不同的包,
如乘機物件(乘客和貨物)、 攜貨人員(發貨人和收貨人)檢查機構(海關和邊防檢察署)、 機場工作人員(前臺服務員等)
圖 15 檢查機構用例圖

圖 16 乘機物件用例圖

圖 17 攜貨人員用例圖

圖 18 機場工作人員用例圖

【建立時序圖】
開發完用例後,我們小組對其中重要的用例進行了時序圖的建立。對於買票系統來說,最關鍵的用例即購票,我們我們僅對網上購票進行了時序圖的描述,具體時序圖 ;對於登機系統來說,我們對登記檢查部分進行了時序圖的描述,檢查包括登機前的機票檢查和物品安檢以及國際航班的海關檢查;對於排程系統來說,主要是飛機的起飛和著陸,我們分別對這兩個用例進行了時序圖的描述。
對於貨運系統來說,我們主要對貨物交貨時的安檢用例進行了時序圖的描述,對於貨物的安檢來說是比較嚴格的,而且考慮到的方面也比較繁雜
時序圖完成後,相應的協作圖就很容易得到,按F5即可。
圖 19 登機順序圖

圖 20 買票順序圖

圖 21 飛機起飛順序圖

圖 22 飛機著陸順序圖

圖 23 貨運順序圖

【建立狀態圖】
狀態圖在建立的過程中很容易出現錯誤,不知道什麼是狀態圖,如何確定狀態,常常需要回過頭去看狀態圖的概念——是針對某一個物件不同時刻的狀態所描繪成德圖。於此,我們小組對兩個重要物件進行了狀態圖的描繪:
圖 24 貨物狀態圖

圖 25 飛機狀態圖

【建立元件圖】
元件圖是根據之前的類圖,相關的用例所構建的,描述的是元件之間的組織和依賴。圖 26 系統構件圖

【建立部署圖】
部署圖展現的是執行時處理節點以及其中元件的配置,說明分佈、交付和安裝的物理系統。圖 27 系統部署圖

實驗結果及分析
- 通過實驗對具體問題的建模,更加深了對UML的理解,以及體系化了自己建模的思想。UML是Unified Modeling Language(統一建模語言)的簡稱。UML是對軟體密集型系統中的製品(軟體開發過程中產生的各種各樣的產物,如模型、原始碼、測試用例等)進行視覺化、詳述、構造和文件化的語言。同時理解了UML各種圖之間的關係。UML中檢視包括:用例檢視、邏輯檢視、實現檢視、程式檢視、部署檢視。由九種圖組成:包括類圖、物件圖、順序圖、狀態圖、用例圖、活動圖、協作圖、構件圖、部署圖。
- 通過實驗我們也再次融洽了小組的協作。集體的力量是無窮的!當你屬於你一個集體的時候,那種歸屬感與優越感也能再次大限度的發揮你的潛力!整個建模過程我們一起討論,分工合作。大家各有自己的任務,同時也有集體的大局,熬了幾夜才搞出這個浩大的工程。實驗中我們系統的類圖啊,部署,構件幾乎都是一起做的,而每個模組分到個人專門負責。我負責排程模組,為了使這一塊做的好一些,也查閱了不少有關排程的知識(雖然很多並沒有用來建模),學習了很多。相信我們團隊會越走越遠!
- 整個系統是通過EA(Enterprise Architecture)軟體作為分析平臺,由於Rational Rose中有些UML圖是不支援的,比如順序圖中的幀化等,所以在此選擇EA作為開發平臺。順序圖中的幀化情況的出現是由於我們在各自的工程下進行分析,在整合系統的時候就直接採用幀化的方式,說明圖式來自於別的工程,充分利用了UML2.0的優越性
轉載請註明出處:http://blog.csdn.net/xiaowei_cqu/article/details/7773820
相關文章
- 【UML】案例分析:新型超市購物自助系統
- 計算機作業系統|作業系統引論計算機作業系統
- windows系統盤製作,系統裝機Windows
- Linux作業系統分析 | 深入理解系統呼叫Linux作業系統
- 《作業系統》分析與總結作業系統
- 計算機作業系統計算機作業系統
- 軟體工程案例分析作業軟體工程
- iNeuOS工業網際網路作業系統,民爆遠端運維平臺案例作業系統運維
- 作業系統:計算機的生態系統作業系統計算機
- 計算機的作業系統計算機作業系統
- 系統分析設計小組作業1
- 分析一個企業CRM系統應用的案例
- 計算機導論作業系統計算機作業系統
- 微機結構和作業系統作業系統
- 計算機作業系統掃盲計算機作業系統
- 計算機重灌Windows作業系統計算機Windows作業系統
- IT統一運維平臺案例運維
- 作業系統(1)——作業系統概述作業系統
- 作業系統(一):作業系統概述作業系統
- 物聯網作業系統安全性分析作業系統
- 3568F-翼輝SylixOS國產作業系統演示案例作業系統
- Redis叢集案例與場景分析Redis
- 考試系統案例之 -- 隨機生成考題隨機
- 短影片獲客系統市場分析和競品分析
- 九星創客系統制度開發技術分析(案例)
- NFT系統開發之功能架構分析實戰案例架構
- 鴻蒙系統(OpenHarmony HarmonyOS):面向全場景的分散式作業系統鴻蒙分散式作業系統
- 作業系統(二):作業系統結構作業系統
- 製造業ERP系統運作流程是怎樣的
- 如何安裝Linux作業系統?Linux運維教學Linux作業系統運維
- 計算機系統002 – 數值運算計算機
- 作業-安裝虛擬機器以及CentOS作業系統虛擬機CentOS作業系統
- UML圖之協作圖(通訊圖)
- Filecoin礦機挖礦系統開發(案例詳細)
- 幣管家量化炒幣機器人系統開發案例分析,幣管家量化機器人開發(原始碼)機器人原始碼
- 作業系統2—作業系統概論(下)作業系統
- 作業系統1—作業系統概論(上)作業系統
- 考場作弊行為自動抓拍分析系統