實(shí)例解析 用UML模型實(shí)現(xiàn)大型實(shí)時監(jiān)控應(yīng)用軟件
本文和大家重點(diǎn)討論一下UML模型的應(yīng)用問題,以實(shí)現(xiàn)大型實(shí)時監(jiān)控應(yīng)用軟件為例向大家介紹UML模型的應(yīng)用,CTS是監(jiān)控系統(tǒng)的中心,它主要用來控制測量設(shè)備實(shí)時跟蹤和測量飛行目標(biāo),實(shí)時處理測量結(jié)果,并兼有顯示、打印、記錄等功能。
1、概述
實(shí)時監(jiān)控應(yīng)用軟件(CTS)開發(fā)過去采用的是結(jié)構(gòu)化方法,采用的編程語言也是匯編語言、FortranAda等結(jié)構(gòu)化編程語言。也曾有過分析和設(shè)計階段采用結(jié)構(gòu)化方法,編程實(shí)現(xiàn)采用面向?qū)ο笳Z言的嘗試。
采用面向?qū)ο蠓椒ǎ║ML)完整的實(shí)現(xiàn)監(jiān)控實(shí)時應(yīng)用軟件是首次嘗試,收到了較好的成效。UML(統(tǒng)一建模語言)是美國Rational公司創(chuàng)造的面向?qū)ο箝_發(fā)中一種通用的、統(tǒng)一的圖形化模型語言。它于1997年11月被美國OMG小組批準(zhǔn)成為面向?qū)ο箝_發(fā)的行業(yè)標(biāo)準(zhǔn)語言。UML標(biāo)準(zhǔn)的樹立統(tǒng)一了面向?qū)ο蟮慕7椒?,消除了對象建模差別。Rational公司的旗艦產(chǎn)品之一RationalRose提供了對這一行業(yè)標(biāo)準(zhǔn)語言的充分支持。
Rose是一個面向?qū)ο蟮能浖治鲈O(shè)計建模工具,可以創(chuàng)建基于UML標(biāo)準(zhǔn)的模型,圖形化地對軟件系統(tǒng)結(jié)構(gòu)加以描述和定義,并且通過建立的模型直接生成代碼框架。同時,還可以從開發(fā)者編的應(yīng)用系統(tǒng)中直接逆向生成模型。下面將就實(shí)時監(jiān)控應(yīng)用軟件的分析設(shè)計是如何使用RationalRose來實(shí)現(xiàn)的作一簡要介紹。
2、UML模型
CTS是監(jiān)控系統(tǒng)的中心,它主要用來控制測量設(shè)備實(shí)時跟蹤和測量飛行目標(biāo),實(shí)時處理測量結(jié)果,并兼有顯示、打印、記錄等功能。它和測量設(shè)備的關(guān)系如圖1所示。
實(shí)時應(yīng)用軟件通過數(shù)據(jù)包和測量設(shè)備交換信息。軟件實(shí)時性要求較高,在每個采樣周期內(nèi),必須完成該周期的數(shù)據(jù)處理工作,也要有一定的人工干預(yù)能力。實(shí)時應(yīng)用軟件模型用來描述軟件各層次的各個方面,它包括UseCase圖、類圖、序列圖、狀態(tài)圖、分布圖和組件圖。
2.1UseCase圖
UML模型中UseCase也稱為用例、使用情況,它是系統(tǒng)分析人員從用戶使用的觀點(diǎn)來看系統(tǒng)功能、功能之間的關(guān)系以及用戶與功能之間的關(guān)系。它是系統(tǒng)功能以及用戶與功能之間的關(guān)聯(lián),利用UseCase系統(tǒng)分析人員對系統(tǒng)的功能和行為加以描述。CTS的UseCase圖如圖2所示。CCP為前端通信處理機(jī),Operator為操作員,Interrupt為操作臺命令產(chǎn)生的中斷。Simulation模擬狀態(tài),用于軟件調(diào)試和操作員訓(xùn)練。Task:實(shí)戰(zhàn)狀態(tài),用于實(shí)戰(zhàn)任務(wù)。Abnomity:異常處理,應(yīng)急狀態(tài)。SimpleServer:打印、記盤等服務(wù)。CommuniciateProcess:從CCP接收測量設(shè)備傳來的數(shù)據(jù)包之后解包,然后按要求將多幀數(shù)據(jù)重新組織成一幀轉(zhuǎn)發(fā)到CCPDataProcess:將CommuniciateProcess接收的數(shù)據(jù)依據(jù)處理要求進(jìn)行挑點(diǎn)處理,利用CommuniciateProcess解包后的數(shù)據(jù)計算軌道、平滑外推和預(yù)報等。DisplayProcess:將挑點(diǎn)后的數(shù)據(jù)按指定的要求在不同的顯示服務(wù)器上以文字、數(shù)字或圖象形式顯示。將DataProcess的處理結(jié)果在指定的顯示服務(wù)器顯示。所有UseCase的工作都必須在指定的時間周期內(nèi)完成。
2.2類圖
類圖是系統(tǒng)的邏輯結(jié)構(gòu),是模型的核心部分。它描述了系統(tǒng)中的類及類之間的關(guān)系,類圖描述系統(tǒng)的靜態(tài)結(jié)構(gòu)。UML模型中類包是子系統(tǒng)中相關(guān)類的集合,包類似于Peter/Coord方法中的主題詞(subject)。圖3描述了CTS的類包。
UML模型中類包DisplayProcess、DataProcess、CAbnormity和CommunicateProcess是我們自己開發(fā)的,是系統(tǒng)的核心,其余的類包是由Microsoft提供的。DisplayProcess類包包含了顯示所需要的所有和MFC有關(guān)的類,DisplayProcess類包中的類都是從MFC派生的,一般都增加了CTS系統(tǒng)所需要的特性。DisplayProcess類包中的類及類之間的關(guān)系如圖4所示。
圖4DisplayProcess類包中的類及類之間的關(guān)系
【編輯推薦】
- 學(xué)習(xí)筆記 UML模型圖及其功能
- UML基礎(chǔ) 解析動態(tài)UML模型圖
- 深入剖析靜態(tài)UML模型圖
- 解析UML中五類UML模型圖
- 用UML模型實(shí)現(xiàn)大型實(shí)時監(jiān)控應(yīng)用軟件