基于UML擴展的無線傳感器網(wǎng)絡應用程序建模(專業(yè)論文)
提示:
本文原版含圖表pdf版全文下載地址附后(正式會員會看到下載地址)。這里只復制粘貼部分內(nèi)容或目錄(下面顯示的字數(shù)不代表全文字數(shù)),有任何不清楚的煩請咨詢本站客服。
摘要無線傳感器網(wǎng)絡作為一種新型的無線網(wǎng)絡形式已被普遍應用于許多領域。nesC語言編寫的TinyOS是一種基于組件的無線傳感器網(wǎng)絡的操作系統(tǒng),這使得TinyOS上的應用程序開發(fā)不同于傳統(tǒng)面向?qū)ο髴贸绦蜷_發(fā)。本文提出一種利用UML的擴展機制,基于nesC語言的組件模型對UML的元模型進行擴展,支持TinyOS上應用程序的建模的方法,并給出使用本方法對一個簡單應用程序的建模實例。
關鍵詞無線傳感器網(wǎng)絡,TinyOS,nesC,UML擴展
1引言
無線傳感器網(wǎng)絡將傳感器與無線網(wǎng)絡進行結(jié)合,使用大量形體較小、能源受限并且配置有計算能力和無線通信能力的傳感器節(jié)點以Ad Hoc方式組成網(wǎng)絡,能夠協(xié)作探測、感知、采集、處理和傳輸網(wǎng)絡覆蓋的區(qū)域內(nèi)的被感知對象的各種信息,已經(jīng)在軍事,基礎設施安全,醫(yī)療,環(huán)境,交通等各個領域得到廣泛的應用L1]。
TinyOS作為一種嵌入式操作系統(tǒng),使用基于組件
……(新文秘網(wǎng)http://m.jey722.cn省略858字,正式會員可完整閱讀)……
Component)分兩類,配置(Con—figuration)和模塊(Module),nesC將配置和模塊予以嚴格地區(qū)分,可以使系統(tǒng)設計者快速地開發(fā)裝配應用程序,從而使得應用程序的設計和更新更加方便易行。這樣將不同的設計工作有效地分開,符合軟件設計的一般規(guī)則。
3UML的擴展性UML是統(tǒng)一建模語言,提供一種直觀、可視化、統(tǒng)一的面向?qū)ο蠼7椒。OMG指定其為面向?qū)ο蟮臉藴式UZ言。UML提供了許多元模型,供建模人員在面向?qū)ο蠓治龊驮O計時使用,而在一些特殊領域的建;顒又,原有的UML元模型不能滿足建模人員的要求。為避免UML語言的復雜性,UML沒有包含特殊領域的建模機制,而是設計了一種擴展機制,允許用戶定義使用自己的元素‘7,8|。
UML的擴展機制包括約束,標記值和版型(sterotype):
1.約束是使用花括號{)包含的一串字符串,其中使用形式語言或者自然語言表達語義的限制。
2.標記值也是使用花括號{)包含的一個鍵值對,儲存元素的一些信息,可以與任何元素關聯(lián),是向元素添加特定附加信息的一種方法。
3.版型使用已經(jīng)定義的元模型為基礎,不修改元模型的結(jié)構(gòu),只是賦予它新的語義。版型用放置在基本模型元素符號中或附近的被雙尖括號《》包圍的文字串顯示。建模人員還可為特殊的版型創(chuàng)建圖標。
使用UML的擴展機制,不僅可以滿足特殊領域的建模要求,還可以使現(xiàn)有的支持UML工具無需完全理解模型語義的情況下進行存儲和操作。
4基于nesC組件模型的UML擴展nesC是面向組件化編程的語言,它通過接口(Interface)連接(wiring)開發(fā)組件或系統(tǒng)組件,完成對一個應用的開發(fā)。
4.1 nesC的組件模型nesC中組件(Component)分為兩類一一Con—figuration和Module。Configuration只描述不同的組件之間的連接(wiring)關系,并不提供具體功能的實現(xiàn),而Module具體實現(xiàn)了組件的邏輯功能。
Configuration中包含提供和使用的接口的聲明,可以通過UMI。中“Class”元模型元素添加名為《Con—figuration))的版型表示,為了與元模型元素class圖標加以區(qū)別?本文使用如圖2所示的雙重邊“Class”圖標表示,以顯示這種組件的性質(zhì)是配置文件。
Module提供組件的具體功能實現(xiàn)代碼。其首先聲明本模塊提供和使用的接口,實現(xiàn)部分包括它所提供的接口中的命令(command)和所使用的接口的事件(event)的實現(xiàn),以及其它私有方法的代碼。
同樣也可以使用UMI。中“Class”元模型元素添加名為((Module)}的版型表示。
另外參數(shù)化接口(Parameterized Interfaces),可以使用將他們的圖標邊框用虛線替換表示。
4.2接口Interface(接口)是nesC中的一個重要概念,各個模塊之間就是通過接口相互關聯(lián),協(xié)同工作的。
Inerface中只含有命令(command)和事件(e—vent)的聲明,并不具體實現(xiàn),而是讓command在提供該接口的組件中實現(xiàn),event在使用該接口的組件中實現(xiàn)。在本文中接口使用UML中“Interface”元模型表示。
對于接口中的命令和事件,可以使用分別使用版型《command}和《event}表示。
4.3組件問的連接關系各個組件之間是通過接口的連接(wiring)相互關聯(lián)在一起的,這種連接關系在Configuration中定義。wiring可以用來連接Configuration中已聲明的元素(interface,command,event),通常稱那些在Configuration中聲明的元素為e*tenal,而那些在Configuration聲明的組件中聲明的元素為inter—nal。nesC中有三種wiring的聲明方式:“一”,“一>”和“<一。當wiring的任何一端有一元素是e*-ternal的時候使用“一”,當wiring的兩端都是in—ternal的時候使用“一>”或“<一,“一>”和“<一”的區(qū)別僅僅是方向。
因此連接關系可以使用版型《wiring》擴展UML中的“association”元模型表示,方向含義與wiring中的方向含義相同,wiring兩端注明連接的接口名,并使用實線與虛線來區(qū)別“一>”和“一”。
ConfigurationModule Interface刃{wiring)),/。
圖2各種UM ……(未完,全文共6862字,當前僅顯示2410字,請閱讀下面提示信息。
收藏《基于UML擴展的無線傳感器網(wǎng)絡應用程序建模(專業(yè)論文)》)