• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于WF StateMachine的UML狀態(tài)圖動(dòng)態(tài)構(gòu)建與測(cè)試

      2018-09-26 10:21孔令東
      軟件工程 2018年6期
      關(guān)鍵詞:狀態(tài)圖

      摘 要:采用UML分析與設(shè)計(jì)的業(yè)務(wù)信息系統(tǒng),業(yè)務(wù)流程經(jīng)過(guò)層層的抽象迭代,缺乏一種透明的業(yè)務(wù)流程實(shí)現(xiàn)。WF提供了可視化的業(yè)務(wù)過(guò)程編程模型,便于實(shí)現(xiàn)業(yè)務(wù)流程自動(dòng)化,在對(duì)比分析WF State Machine和UML狀態(tài)圖的基礎(chǔ)上,研究從UML狀態(tài)圖到WF State Machine業(yè)務(wù)流程映射關(guān)系,選取UML中典型狀態(tài)圖,依據(jù)一定的命名轉(zhuǎn)換規(guī)則,實(shí)現(xiàn)了從UML狀態(tài)圖分析設(shè)計(jì)到WF狀態(tài)機(jī)業(yè)務(wù)過(guò)程可視化的構(gòu)建,完成了動(dòng)態(tài)測(cè)試。

      關(guān)鍵詞:WF;State Machine;UML;狀態(tài)圖

      中圖分類(lèi)號(hào):TP311.51 文獻(xiàn)標(biāo)識(shí)碼:A

      1 引言(Introduction)

      Windows Workflow Foundation(WF)是微軟推出的一個(gè)可擴(kuò)展框架,提供了工作流定義的圖形化的工具和界面。WF可將業(yè)務(wù)邏輯作為規(guī)則或條件來(lái)實(shí)現(xiàn),作為工作流的基本組成。WF中狀態(tài)機(jī)(State Machine)工作流提供的建模類(lèi)型,可以對(duì)事件驅(qū)動(dòng)方式的工作流進(jìn)行建模,State Machine活動(dòng)包含狀態(tài)和組成的狀態(tài)機(jī)邏輯轉(zhuǎn)換??梢詾闋顟B(tài)驅(qū)動(dòng)的業(yè)務(wù)過(guò)程提供可視化的建模實(shí)現(xiàn)過(guò)程[1-3]。UML提供業(yè)務(wù)過(guò)程建模的分析和設(shè)計(jì)工具,用于企業(yè)信息系統(tǒng)的可視化業(yè)務(wù)流程描述與處理[4,5],在此過(guò)程中,經(jīng)歷了的層層的業(yè)務(wù)抽象,最后到業(yè)務(wù)的實(shí)現(xiàn),一旦業(yè)務(wù)流程需要修改,需要不斷迭代完成,缺少一種從業(yè)務(wù)建模到實(shí)現(xiàn)的透明轉(zhuǎn)換過(guò)程,實(shí)現(xiàn)所見(jiàn)即所得。UML中也包含了State Machine的語(yǔ)義描述,便于對(duì)離散事件驅(qū)動(dòng)的動(dòng)態(tài)行為建模[6-8]。

      本文在研究UML典型狀態(tài)圖(State Diagram)樣例的基礎(chǔ)上,結(jié)合WF的可視化實(shí)現(xiàn),探索從UML狀態(tài)圖建模到WF State Machine編程模型的無(wú)縫轉(zhuǎn)換,快速構(gòu)建便于測(cè)試的應(yīng)用程序。

      2 映射關(guān)系及典型示例(Mapping relationship and

      typical example)

      2.1 從UML狀態(tài)圖到WF State Machine的對(duì)應(yīng)關(guān)系分析

      UML和WF在狀態(tài)機(jī)的可視化建模及實(shí)現(xiàn)上具有緊密的關(guān)聯(lián)性,從相關(guān)概念的組成和含義幾乎都一一對(duì)應(yīng),這一點(diǎn)保證了無(wú)縫的轉(zhuǎn)換。如表1所示W(wǎng)F和UML的State Machine相關(guān)組成及含義對(duì)比,可以看出WF和UML中的State Machine都是事件驅(qū)動(dòng)的建模,相當(dāng)于所有狀態(tài)的容器。相比較而已,在業(yè)務(wù)系統(tǒng)中,UML中偏重業(yè)務(wù)流程的分析設(shè)計(jì),而WF中更偏重基于工作流的業(yè)務(wù)實(shí)現(xiàn)。兩者的State(狀態(tài))都可置于State Machine之中。兩者的Transition(轉(zhuǎn)換)和FinalState(終止?fàn)顟B(tài))的概念也基本相同。有了相對(duì)應(yīng)的組成,這兩個(gè)之間在可視化的建模中就有了相對(duì)應(yīng)的可視化圖形符號(hào)。

      如表2所示,WF和UML State Machine的映射關(guān)系及圖形表示,兩者都包括了開(kāi)始狀態(tài)、狀態(tài)、狀態(tài)轉(zhuǎn)換、結(jié)束狀態(tài)等基本符號(hào)組成,從符號(hào)的表達(dá)到信息的展示,都可以無(wú)縫對(duì)應(yīng)轉(zhuǎn)換,從而保證了可視化建模從分析到實(shí)現(xiàn)的一致性。表中基于兩者的基本符號(hào),初步構(gòu)建了基本圖形結(jié)構(gòu),可以看出,從形式語(yǔ)義上沒(méi)有任何信息丟失,主要的區(qū)別在于UML中是靜態(tài)的分析、設(shè)計(jì),WF中可以直接動(dòng)態(tài)的實(shí)現(xiàn),在下面的基于WF的UML狀態(tài)圖構(gòu)建中會(huì)詳細(xì)分析。

      2.2 典型的UML狀態(tài)圖示例

      為更好的說(shuō)明基于WF的UML狀態(tài)圖構(gòu)建和實(shí)現(xiàn),選取了Rational Rose中典型的狀態(tài)圖,以便于深入的轉(zhuǎn)換說(shuō)明。如圖1所示機(jī)器人自動(dòng)轉(zhuǎn)換狀態(tài)圖,在這個(gè)示例中,顯示了機(jī)器人在轉(zhuǎn)換過(guò)程中涉及的各種狀態(tài),包含了典型的開(kāi)始狀態(tài),結(jié)束狀態(tài)、嵌入狀態(tài)、自身轉(zhuǎn)換狀態(tài)、歷史狀態(tài),以及各種動(dòng)作活動(dòng)(入口動(dòng)作、出口動(dòng)作等)、監(jiān)護(hù)條件和觸發(fā)等。

      3 轉(zhuǎn)換構(gòu)建(Convert construction)

      依據(jù)前面的映射關(guān)系和命名規(guī)則,如圖2所示,基于WF的UML機(jī)器人自動(dòng)轉(zhuǎn)換狀態(tài)圖頂層映射模型,采用分層逐步迭代的思想,清晰地實(shí)現(xiàn)了頂層模型的映射。由圖中可以看出,UML典型示例中的Start、Movement、FinalState、nestedstates等狀態(tài),以及相關(guān)的變遷、入口動(dòng)作、監(jiān)護(hù)條件都信息無(wú)損的映射到WF的StateMachine_Automatic Transmission Model for a Robot上。其中UML中Movement狀態(tài)的Transition to Self變遷映射成toSelf變遷,從Movement到FinalState的變遷映射成toFinal變遷。由于UML中Movement狀態(tài)是一個(gè)復(fù)合狀態(tài),需進(jìn)一步的分層構(gòu)建。

      如圖3所示StateMachine_Movement細(xì)化模型,UML中的Movement復(fù)合狀態(tài),被構(gòu)建映射為StateMachine_Movement狀態(tài)機(jī),嵌入的Start、History、Forward、Reverse置于其內(nèi),相關(guān)的變遷、入口動(dòng)作、監(jiān)護(hù)條件都信息無(wú)損的映射。由于UML中Forward狀態(tài)也是一個(gè)復(fù)合狀態(tài),也需要進(jìn)一步的分層構(gòu)建。

      如圖4StateMachine_Forward細(xì)化模型,UML中Forward復(fù)合狀態(tài)被映射為StateMachine_Movement狀態(tài)機(jī),嵌入的First Gear和Second Gear狀態(tài)置于其內(nèi)。

      4 動(dòng)態(tài)測(cè)試(Dynamic test)

      在業(yè)務(wù)系統(tǒng)中,UML主要實(shí)現(xiàn)系統(tǒng)靜態(tài)分析與設(shè)計(jì),經(jīng)過(guò)如圖2—圖4所示的映射,靜態(tài)的UML狀態(tài)圖被映射成WF的狀態(tài)機(jī)可視化動(dòng)態(tài)建模,所見(jiàn)即所得,如圖5基于WF的UML機(jī)器人自動(dòng)轉(zhuǎn)換狀態(tài)圖動(dòng)態(tài)運(yùn)行測(cè)試,構(gòu)建的WF模型在工作流的引擎牽引下就可以實(shí)現(xiàn)動(dòng)態(tài)的運(yùn)行測(cè)試,一定程度上實(shí)現(xiàn)了業(yè)務(wù)過(guò)程的自動(dòng)化,實(shí)現(xiàn)了業(yè)務(wù)流程從UML分析設(shè)計(jì)到無(wú)縫實(shí)現(xiàn)。

      5 結(jié)論(Conclusion)

      對(duì)于復(fù)雜的系統(tǒng),從業(yè)務(wù)流程的分析設(shè)計(jì)到實(shí)現(xiàn)總是存在著信息的丟失和不一致性,探索一種從業(yè)務(wù)分析到實(shí)現(xiàn)的無(wú)縫轉(zhuǎn)換是必要的。本文在分析UML狀態(tài)圖和WF狀態(tài)機(jī)結(jié)合優(yōu)勢(shì)及相關(guān)概念和符號(hào)表示的基礎(chǔ)上,選取Rational Rose中典型的狀態(tài)圖,深入研究了基于WF的UML狀態(tài)圖的構(gòu)建實(shí)現(xiàn),從UML狀態(tài)圖中簡(jiǎn)單狀態(tài)之間的轉(zhuǎn)換、入口動(dòng)作,到復(fù)合狀態(tài)的映射,顯式地將業(yè)務(wù)邏輯映射為一定的規(guī)則或條件,構(gòu)建了基于WF的狀態(tài)機(jī)可視化動(dòng)態(tài)模型,基于微軟工作流引擎,實(shí)現(xiàn)了狀態(tài)驅(qū)動(dòng)的業(yè)務(wù)過(guò)程建模自動(dòng)化測(cè)試,探索了從UML可視化建模分析、設(shè)計(jì)到WF可視化實(shí)現(xiàn)的透明轉(zhuǎn)換具有實(shí)際的意義。

      參考文獻(xiàn)(References)

      [1] The programming model,samples,and tools of the Windows Workflow Foundation(WF).https://docs.microsoft.com/en-us/dotnet/framework/windows-workflow-foundation/index.

      [2] 錢(qián)維平,王堅(jiān).基于WF狀態(tài)機(jī)工作流的日常工作管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].機(jī)電產(chǎn)品開(kāi)發(fā)與創(chuàng)新,2015,28(1):81-83.

      [3] 馮倩,董麗麗.基于WF狀態(tài)機(jī)工作流的研究與應(yīng)用[J].電腦知識(shí)與技術(shù),2008,4(8):2263-2265.

      [4] [美]Grady Booch,James Rumbaugh,Ivar Jacobson.UML用戶指南(第二版)[M].北京:人民郵電出版社,2013:5-20.

      [5] Object Management Group:Unified Modeling Language.formal/2017-12-05,OMG UML(2017).

      [6] Alexander Knapp and Till Mossakowski.UML Interactions Meet State Machine--An Institutional Approach.7th Conference on Algebra and Coalgebra in Computer Science(CALCO 2017),20174,15:1-15.

      [7] 蔣慧,林東,謝希仁.UML狀態(tài)機(jī)的形式語(yǔ)義[J].軟件學(xué)報(bào), 2002,13(12):2244-2250.

      [8] 于曉玲,楊海波.UML狀態(tài)圖形式化方法的分析與比較[J].計(jì)算機(jī)與數(shù)字工程,2014,42(8):1488-1492.

      作者簡(jiǎn)介:

      孔令東(1973-),男,博士,講師.研究領(lǐng)域:軟件工程,工作流技術(shù).

      猜你喜歡
      狀態(tài)圖
      航線網(wǎng)絡(luò)優(yōu)化方法研究
      關(guān)于鐵碳合金狀態(tài)圖講解的幾點(diǎn)建議
      狀態(tài)圖及狀態(tài)表在軟件建模中的適用場(chǎng)景分析
      時(shí)序電路分析中狀態(tài)表與狀態(tài)圖輸出的合理描述
      高強(qiáng)高韌汽車(chē)傳動(dòng)軸管雙道次W彎曲組合成型工藝的研究與設(shè)計(jì)
      基于UML狀態(tài)圖的列控中心軟件測(cè)試路徑生成方法
      UML狀態(tài)圖在軟件工程設(shè)計(jì)中的應(yīng)用研究
      基于UML狀態(tài)圖的軟件系統(tǒng)測(cè)試用例生成方法
      SysML 狀態(tài)圖合理性驗(yàn)證研究與實(shí)現(xiàn)
      安全協(xié)議可視化建模和驗(yàn)證方法的分析與設(shè)計(jì)①
      宝清县| 将乐县| 诸暨市| 汽车| 东光县| 元朗区| 永吉县| 怀柔区| 蕲春县| 福建省| 靖边县| 双辽市| 洪湖市| 新民市| 武威市| 大宁县| 罗山县| 额尔古纳市| 寿阳县| 西青区| 武平县| 谷城县| 浏阳市| 西乡县| 井陉县| 五河县| 安平县| 高安市| 洞头县| 溆浦县| 康平县| 白玉县| 新闻| 湖南省| 丹东市| 桑植县| 伊宁县| 杭州市| 进贤县| 广水市| 松溪县|