Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究_第1頁
Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究_第2頁
Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究_第3頁
Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究_第4頁
Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究_第5頁
已閱讀5頁,還剩34頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究Petri網(wǎng)簡介統(tǒng)一建模語言UML簡介Petri網(wǎng)和UML模型的轉(zhuǎn)換機(jī)制主要內(nèi)容Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究1、Petri網(wǎng)簡介Petri網(wǎng)的概念最早出現(xiàn)在CarlAdamPetri的博士論文“CommunicationwithAutomata”中。Petri網(wǎng)作為一種建模工具,既有直觀的圖形表示,又有嚴(yán)謹(jǐn)?shù)臄?shù)學(xué)分析方法,不僅能描述系統(tǒng)的靜態(tài)特性,也能描述系統(tǒng)的動態(tài)特性,尤其適合于描述含有并發(fā)、異步和分布特征的復(fù)雜系統(tǒng)。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究1Petri網(wǎng)的圖形表示方法Petri網(wǎng)的結(jié)構(gòu)元素包括庫所(Place)、變遷(Transition)和有向弧(Arc)。庫所通常用圓圈或橢圓來表示,用于描述可能的系統(tǒng)局部狀態(tài);變遷通常用方框或粗杠來表示,用于描述修改系統(tǒng)狀態(tài)的事件。有向弧可以從庫所節(jié)點(diǎn)指向變遷節(jié)點(diǎn),或者從變遷節(jié)點(diǎn)指向庫所節(jié)點(diǎn),表示庫所和變遷之間的關(guān)系。在Petri網(wǎng)模型中,系統(tǒng)的動態(tài)特性使用Token標(biāo)識,Token表示為包含在庫所節(jié)點(diǎn)中的圓點(diǎn),它們在庫所中的動態(tài)的變化表示了系統(tǒng)的不同狀態(tài)。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究圖1一個簡單的Petri網(wǎng)例子

Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究2Petri網(wǎng)的優(yōu)勢作為一種系統(tǒng)建模工具,Petri網(wǎng)還具有如下的一些優(yōu)點(diǎn):〔1〕Petri網(wǎng)具有極強(qiáng)的描述能力,現(xiàn)已證明,對于加抑制弧的Petri網(wǎng),其描述能力與圖靈機(jī)(TuringMachine)是等價的;〔2〕Petri網(wǎng)是以圖形表示的模型,直觀性強(qiáng)。特別是目前圖形處理軟件的出現(xiàn),使得對Petri網(wǎng)的圖形支持工具已成為現(xiàn)實(shí),國外已有這方面的商品化軟件,國內(nèi)也在進(jìn)行相應(yīng)的開發(fā);Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔3〕Petri網(wǎng)能準(zhǔn)確地刻畫系統(tǒng)的一些重要特性,對于系統(tǒng)中的并發(fā)、順序、沖突、同步等關(guān)系,都能夠建立模型并使之形象化;〔4〕Petri網(wǎng)還是一種具有嚴(yán)格定義的數(shù)學(xué)對象,它是建立在代數(shù)理論和語言理論等嚴(yán)格的理論根底之上的一種模型,其理論成果十分豐富,具有嚴(yán)格的理論分析工具。借助數(shù)學(xué)方法開發(fā)的Petri網(wǎng)分析方法和技術(shù),既可用于靜態(tài)的結(jié)構(gòu)分析,又可用于動態(tài)的行為分析;既可以分析網(wǎng)的結(jié)構(gòu)性質(zhì)來反映系統(tǒng)的固有性質(zhì),也可以研究網(wǎng)運(yùn)行的動態(tài)行為;Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔5〕用Petri網(wǎng)進(jìn)行系統(tǒng)建模,通過用代數(shù)、形式語言、自動機(jī)的方法來定性或定量地分析Petri網(wǎng)模型的有界性、平安性、可達(dá)性、活性、公平性等一系列性質(zhì),可得到對被模擬系統(tǒng)性能的正確評價,并提出系統(tǒng)改進(jìn)建議。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究2、統(tǒng)一建模語言UML簡介作為一種通用的建模語言,UML適用于系統(tǒng)開發(fā)過程中從需求規(guī)約描述到系統(tǒng)完成后測試的不同階段。目前,UML已經(jīng)成為建模語言事實(shí)上的工業(yè)標(biāo)準(zhǔn)。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究2.1UML的優(yōu)勢UML是一種定義良好的、易于表達(dá)的、功能較強(qiáng)的且普遍適用的建模語言。它吸收了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。UML的應(yīng)用領(lǐng)域相當(dāng)廣泛,它不僅可用于建立軟件系統(tǒng)的模型,同樣也可用于描述非軟件領(lǐng)域內(nèi)的系統(tǒng)模型以及處理復(fù)雜數(shù)據(jù)的信息系統(tǒng)、具有實(shí)時要求的工業(yè)系統(tǒng)或工業(yè)過程等。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究概括而言,UML具有如下幾個方面的特點(diǎn):〔1〕統(tǒng)一的、表達(dá)能力強(qiáng)的可視化建模語言,它在分析和設(shè)計(jì)中同樣有效;〔2〕適用于任何產(chǎn)業(yè)和應(yīng)用類型的可擴(kuò)展語言,用戶可參加核心概念中沒有的概念和符號,如可為特定的應(yīng)用領(lǐng)域提出具體的概念、符號表示和約束等;〔3〕獨(dú)立于編程語言的軟件描述方法,但支持所有的方法學(xué);Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔5〕增強(qiáng)面向?qū)ο蠊ぞ咧g的互操作性,便于不同系統(tǒng)間的集成;〔6〕支持較高抽象層次開發(fā)所需的各種概念,如協(xié)作、框架、模式和構(gòu)件等,便于系統(tǒng)的重用;〔7〕用以描述軟件結(jié)構(gòu)和行為從而生成代碼,甚至是完整應(yīng)用程序的嚴(yán)格方法,因此可稱為可執(zhí)行UML;Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔8〕UML不是一門程序設(shè)計(jì)語言,但可以使用代碼生成器工具將UML模型轉(zhuǎn)換為多種程序設(shè)計(jì)語言代碼,或使用反向生成器工具將程序源代碼轉(zhuǎn)換為UML;〔9〕UML不是一種可用于定理證明的高度形式化的語言。高度形式化的語言有很多種,但它們通常通用性較差、不易理解和使用,而UML卻具有很好的通用性且便于理解與使用。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究2.2UML根本模型圖UML是為人們提供了從不同的角度去觀察和展示系統(tǒng)的各種特征的一種標(biāo)準(zhǔn)方法。在UML中,從任何一個角度對系統(tǒng)所作的抽象都可能需要用幾種模型圖來描述,而這些來自不同角度的模型圖最終組成了系統(tǒng)的完整圖像。UML2.0提供了13種根本的模型圖,通過對這些圖的綜合運(yùn)用來全面刻畫整個系統(tǒng)的全貌。這13種根本的模型圖分別為用例圖、類圖、對象圖、狀態(tài)圖、活動圖、通信圖、順序圖、包圖、組件圖、配置圖、交換圖、時間圖、復(fù)合結(jié)構(gòu)圖。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究一個狀態(tài)圖顯示了一個狀態(tài)機(jī),主要用來描述對象、子系統(tǒng)、系統(tǒng)的生命周期。通過狀態(tài)圖可以了解到一個對象所能到達(dá)的所有狀態(tài),以及對象收到的事件,對對象狀態(tài)的影響等。狀態(tài)圖Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究●簡單狀態(tài)和組合狀態(tài)?!褶D(zhuǎn)移、事件和動作。狀態(tài)圖通常包括如下幾個成分:Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究其中,狀態(tài)是對象生命期中的一個條件或狀況,在此期間,對象將滿足某些條件、執(zhí)行某些活動或等待某些事件。組合狀態(tài)是包含有子狀態(tài)即嵌套狀態(tài)的狀態(tài)。組合狀態(tài)可以包括順序的子狀態(tài),也可以包含并發(fā)的子狀態(tài)。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究 狀態(tài)圖中的狀態(tài)用圓角矩形表示。 轉(zhuǎn)移是兩個狀態(tài)之間的關(guān)系,它指明當(dāng)特定事件發(fā)生而且特定條件滿足時,在第一個狀態(tài)中的對象執(zhí)行一定的動作并進(jìn)入第二個狀態(tài)。 事件是對一個有意義的發(fā)生的相關(guān)規(guī)約,這種發(fā)生在時間和空間上占有一定位置。在狀態(tài)機(jī)的語境中,事件是一次鼓勵的出現(xiàn),鼓勵能夠觸發(fā)狀態(tài)轉(zhuǎn)移。 動作是一個可執(zhí)行的原子計(jì)算,它引起模型狀態(tài)改變或值的返回。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究圖2狀態(tài)圖的例如Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究2.3UML存在的缺陷及其對策來自工業(yè)界的批評主要是,它過于龐大和復(fù)雜,用戶很難全面、熟練地掌握它,大多數(shù)用戶實(shí)際上只使用它的一少局部概念;它的許多概念含義不清,使用戶感到困惑。來自學(xué)術(shù)界的批評那么主要針對它在理論上的缺陷和錯誤,包括語言體系結(jié)構(gòu)、語法、語義等方面的問題。在構(gòu)造復(fù)雜的大系統(tǒng)時,即使是UML模型也很難表達(dá)各對象之間隱含的并發(fā)性、以及對象之間約束規(guī)那么的一致性;也難于全面地展示系統(tǒng)的動態(tài)行為特征。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究借助Petri網(wǎng)的相關(guān)特性可以彌補(bǔ)UML不是形式化的建模語言、缺乏精確的語義描述、難以在模型設(shè)計(jì)的早期階段進(jìn)行分析驗(yàn)證的缺陷。所以,在實(shí)際應(yīng)用中,我們可以將這兩種建模方法相結(jié)合,利用Petri網(wǎng)的優(yōu)勢彌補(bǔ)UML存在的缺陷。首先使用UML對系統(tǒng)進(jìn)行建模,找到相應(yīng)的轉(zhuǎn)換規(guī)那么,將UML模型轉(zhuǎn)換為Petri網(wǎng)模型,并借助Petri網(wǎng)強(qiáng)大的分析能力,對系統(tǒng)模型進(jìn)行分析驗(yàn)證,找出模型中存在的缺陷,提出系統(tǒng)改進(jìn)建議,最后將結(jié)果反響回UML模型。這樣,既發(fā)揮了UML易于描述系統(tǒng),易于開發(fā)的優(yōu)勢,也發(fā)揮了Petri網(wǎng)能夠?qū)ο到y(tǒng)進(jìn)行分析驗(yàn)證的優(yōu)勢。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究3、Petri網(wǎng)和UML模型的轉(zhuǎn)換機(jī)制主要研究將UML圖轉(zhuǎn)換為對應(yīng)Petri網(wǎng)的轉(zhuǎn)換規(guī)那么。在進(jìn)行轉(zhuǎn)換的時候,需要依據(jù)一定的規(guī)那么,依據(jù)規(guī)那么進(jìn)行轉(zhuǎn)換可以使得轉(zhuǎn)換結(jié)果保持唯一性。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究以狀態(tài)圖到Petri網(wǎng)的轉(zhuǎn)換規(guī)那么為例來討論轉(zhuǎn)換規(guī)那么由UML狀態(tài)圖轉(zhuǎn)換到Petri網(wǎng)的主要思想是:用庫所表示對象的狀態(tài),用變遷表示狀態(tài)之間的轉(zhuǎn)換,轉(zhuǎn)換上的監(jiān)護(hù)條件都用庫所來表示,監(jiān)護(hù)條件是否成立取決于相對應(yīng)的庫所中是否有Token。這里存在兩類Token:一類用來表示對象所處的狀態(tài);另一類用來表示監(jiān)護(hù)條件的成立與否。如無特殊說明,本規(guī)那么內(nèi)使用的Token均是指表示對象所處狀態(tài)的Token。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究針對狀態(tài)圖中常出現(xiàn)的幾種結(jié)構(gòu),給出這些結(jié)構(gòu)到著色Petri網(wǎng)的對應(yīng)轉(zhuǎn)換規(guī)那么。依據(jù)這些規(guī)那么,可以將狀態(tài)圖轉(zhuǎn)換為對應(yīng)的著色Petri網(wǎng)。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究(1)初始狀態(tài)初始狀態(tài)指明了所在區(qū)域的默認(rèn)起始狀態(tài)。更準(zhǔn)確地說,它是一種指出控制應(yīng)該轉(zhuǎn)向哪里的語法手段。圖3.1初始狀態(tài)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔2〕終態(tài)終態(tài)說明復(fù)合狀態(tài)中的一個區(qū)域的活動已經(jīng)完成,離開復(fù)合狀態(tài)的完成轉(zhuǎn)換可以開始了。圖4.2終態(tài)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔3〕簡單狀態(tài) 簡單狀態(tài)是不包含嵌套狀態(tài)的狀態(tài)。簡單狀態(tài)沒有子結(jié)構(gòu)。圖4.3簡單狀態(tài)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔4〕包含自身轉(zhuǎn)移的結(jié)構(gòu)自身轉(zhuǎn)移是指源狀態(tài)和目標(biāo)狀態(tài)相同的轉(zhuǎn)移。圖4.4包含自身轉(zhuǎn)移結(jié)構(gòu)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔5〕包含分叉的結(jié)構(gòu)分叉是一個具有一個源狀態(tài)和兩個或多個目標(biāo)狀態(tài)的轉(zhuǎn)換。圖4.5包含分叉結(jié)構(gòu)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔6〕包含結(jié)合的結(jié)構(gòu) 結(jié)合是復(fù)雜轉(zhuǎn)換中的一個偽狀態(tài),復(fù)雜轉(zhuǎn)換有兩個或多個源狀態(tài)且有一個目標(biāo)狀態(tài)。圖4.6包含結(jié)合的結(jié)構(gòu)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔7〕包含順序子狀態(tài)的復(fù)合狀態(tài)復(fù)合狀態(tài)是一個含有子狀態(tài)的狀態(tài)。圖4.7包含順序子狀態(tài)的復(fù)合狀態(tài)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔8〕包含并行子狀態(tài)的復(fù)合狀態(tài)包含并行子狀態(tài)的復(fù)合狀態(tài)的轉(zhuǎn)換規(guī)那么與〔7〕類似。圖4.8包含并行子狀態(tài)的復(fù)合狀態(tài)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔9〕含有靜態(tài)分支的結(jié)構(gòu) 在靜態(tài)分支結(jié)構(gòu)中,分支點(diǎn)使用一個結(jié)合狀態(tài)頂點(diǎn)來建模。結(jié)合狀態(tài)可以有一個以上的進(jìn)入轉(zhuǎn)換片段和一個以上的離開轉(zhuǎn)換片段。所有片段上都可以有監(jiān)護(hù)條件,并且所有的監(jiān)護(hù)條件都在轉(zhuǎn)換激發(fā)或動作執(zhí)行之前被計(jì)算。即使動作的執(zhí)行過程中改變了監(jiān)護(hù)條件的值,對轉(zhuǎn)換的激發(fā)也沒有影響。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究圖4.9含有靜態(tài)分支結(jié)構(gòu)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究〔10〕含有動態(tài)分支的結(jié)構(gòu) 在動態(tài)結(jié)構(gòu)中,分支點(diǎn)使用一個選擇頂點(diǎn)來建模。選擇頂點(diǎn)代表一個臨時狀態(tài),使用菱形表示,一個菱形符號可以有一個或多個離開它的箭頭。當(dāng)執(zhí)行到選擇結(jié)點(diǎn)時,輸出片段上的監(jiān)護(hù)條件被動態(tài)計(jì)算,包括第一個片段執(zhí)行時所引起的改變。選擇結(jié)點(diǎn)可以視為一個受到限制的真實(shí)狀態(tài),限制條件是任何輸出轉(zhuǎn)換必須被立即激活且只能使用監(jiān)護(hù)條件。Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究圖4.10含有動態(tài)分支結(jié)構(gòu)的轉(zhuǎn)換規(guī)那么Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究一個轉(zhuǎn)換的實(shí)例

圖4.11ATM的狀態(tài)圖Petri網(wǎng)和UML在建模過程中的轉(zhuǎn)換機(jī)制研究該系統(tǒng)有3個根本狀態(tài),分別是Idle、Active和M

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論