欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法

文檔序號(hào):6574111閱讀:534來源:國知局
專利名稱:基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法
技術(shù)領(lǐng)域
本發(fā)明屬于應(yīng)用軟件平臺(tái)構(gòu)建技術(shù),具體地說是一種構(gòu)建軟件平臺(tái)操 作框架的流程調(diào)度方法。
背景技術(shù)
有限狀態(tài)機(jī)(FSM),是一個(gè)特殊的有向圖,它包括一些狀態(tài)(或稱節(jié) 點(diǎn))和連接這些狀態(tài)的有向弧。每一個(gè)有限狀態(tài)機(jī)都有一個(gè)起始狀態(tài)和一 個(gè)終止?fàn)顟B(tài)和若干中間狀態(tài)。每一條弧上帶有從一個(gè)狀態(tài)進(jìn)入下一個(gè)狀態(tài) 的條件。有限狀態(tài)機(jī)在計(jì)算科學(xué)中有者廣泛的應(yīng)用,包括基礎(chǔ)應(yīng)用和業(yè)務(wù) 方面的應(yīng)用。特別是隨著工作流軟件的成熟,構(gòu)建靈活的工作流調(diào)度是其 關(guān)鍵點(diǎn),而有限狀態(tài)機(jī)的靈活性給工作流向帶來了無限的靈活性。但由于 靈活性帶來的另一面是復(fù)雜性,因此在工作流的應(yīng)用并不是特別多,更多 的是借鑒其靈活的機(jī)制。
目前,對(duì)于軟件平臺(tái)中的流程調(diào)度實(shí)現(xiàn)方式更多的是以模板的方式。 模板調(diào)度方法固定流程的流向邏輯,在具體實(shí)現(xiàn)流程實(shí)例時(shí),用實(shí)際流程 涉及對(duì)象來填充模板中的空位,從而實(shí)現(xiàn)流程的調(diào)度,靈活控制操作流程。 如圖l所示,模板方法的調(diào)度更多的是一種線性或基于優(yōu)先級(jí)的線性調(diào)度 方法,實(shí)現(xiàn)起來比較方便,有一定的靈活性。特別是基于優(yōu)先級(jí)的線性調(diào) 度方法,引入優(yōu)先級(jí)后,在一定程度上可以控制流程的運(yùn)行方向。但是不 管是簡單的線性調(diào)度方法還是基于優(yōu)先級(jí)的調(diào)度方法,歸根到底是線性調(diào) 度方法,對(duì)于復(fù)雜的流程和業(yè)務(wù)就顯得力不從力,這主要是由于線性調(diào)度 方法在調(diào)度過程中不能引入調(diào)度自身的邏輯。解決線性調(diào)度方法的缺點(diǎn)有 很多方法,其中一種是為各種類型的業(yè)務(wù)邏輯建立相應(yīng)的模板,根據(jù)具體 業(yè)務(wù)在模板中尋找相適應(yīng)的模板進(jìn)行調(diào)度。這種方法的缺點(diǎn)是由于具體軟 件所涉及的業(yè)務(wù)復(fù)雜多樣,不可能窮舉所有的邏輯,而且針對(duì)每種邏輯要 實(shí)現(xiàn)相應(yīng)的模板,工作非常繁雜。另一種方法是使用非線性的調(diào)度方法, 非線性調(diào)度方法克服線性調(diào)度方法不能引入調(diào)度自身的邏輯的缺點(diǎn),具體 定義流程時(shí),增加業(yè)務(wù)邏輯,給業(yè)務(wù)流程的流向帶來無限的可能。

發(fā)明內(nèi)容
本發(fā)明為了克服現(xiàn)有技術(shù)中基于模板的線性調(diào)度方法的缺點(diǎn),提供了 一種基于有限狀態(tài)機(jī)的非線性流程引擎調(diào)度方法,實(shí)現(xiàn)簡單,調(diào)度靈活。
本發(fā)明提出的基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法,包括以下處理過

1) 將平臺(tái)中的操作流程部分抽取出來; 一
2) 構(gòu)建流程引擎,在流程引擎中通過有限狀態(tài)機(jī)的方式對(duì)操作流程進(jìn) 行調(diào)度。
優(yōu)選的,所述步驟2)中通過有限狀態(tài)機(jī)的方式對(duì)操作流程進(jìn)行調(diào)度 的具體過程為
21) 將操作流程的操作對(duì)象設(shè)置為有限狀態(tài)機(jī)的主題,將主題所處的 位置設(shè)置為有限狀態(tài)機(jī)的狀態(tài),將操作流程中進(jìn)行的操作動(dòng)作設(shè)置為有限 狀態(tài)機(jī)的動(dòng)作,將動(dòng)作包括的功能步驟設(shè)置為有限狀態(tài)機(jī)的操作;
22) 通過操作、動(dòng)作觸發(fā)有限狀態(tài)機(jī)中狀態(tài)的遷移,實(shí)現(xiàn)操作流程的 調(diào)度。
優(yōu)選的,所述的有限狀態(tài)機(jī)采用獨(dú)立組件進(jìn)行封裝,對(duì)外公布狀態(tài)接 口、動(dòng)作接口和操作接口,由外部服務(wù)實(shí)現(xiàn)有限狀態(tài)機(jī)的狀態(tài)、動(dòng)作和操 作。
優(yōu)選的,所述有限狀態(tài)機(jī)的主題為操作流程上流動(dòng)的數(shù)據(jù)流信息。
優(yōu)選的,所述數(shù)據(jù)流信息為以下信息之一基礎(chǔ)數(shù)據(jù)信息、業(yè)務(wù)信息、 工作流信息。
優(yōu)選的,所述有限狀態(tài)機(jī)中動(dòng)作對(duì)應(yīng)的操作可以動(dòng)態(tài)調(diào)整。
采用本發(fā)明的基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法,具有如下優(yōu)點(diǎn)
1. 狀態(tài)遷移靈活,可以實(shí)現(xiàn)任意的流程操作。由于狀態(tài)遷移是通過動(dòng) 作來觸發(fā)的,而動(dòng)作是由不同的操作組成的,動(dòng)作中的操作的頻次可以隨 時(shí)調(diào)整,從而帶來了靈活的狀態(tài)遷移。
2. 實(shí)現(xiàn)簡單。由于調(diào)度方法是在FSM基礎(chǔ)上發(fā)展起來的,F(xiàn)SM本身是
一個(gè)比較成熟的方法。本發(fā)明是在FSM的基礎(chǔ)上增加了流程操作相適應(yīng)的 具體上下文相關(guān)的內(nèi)容,從而實(shí)現(xiàn)了流程靈活、快速的調(diào)度方法。
3.適用于復(fù)雜的流程和業(yè)務(wù)。由于本發(fā)明的調(diào)度方法是一種非線性調(diào) 度方法,由于在調(diào)度過程中可以引入調(diào)度自身的相關(guān)邏輯,因此在調(diào)度過 程中適用于各種復(fù)雜的流程和業(yè)務(wù)。


圖1是現(xiàn)有技術(shù)線性流程調(diào)度方法示意圖; 圖2是本發(fā)明基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法示意圖; 圖3是本發(fā)明優(yōu)選實(shí)施例中有限調(diào)度機(jī)組件封裝示意圖; 圖4是本發(fā)明優(yōu)選實(shí)施例中調(diào)度原理圖。
具體實(shí)施例方式
以下結(jié)合附圖并通過實(shí)施例對(duì)本發(fā)明提出的調(diào)度方法進(jìn)行詳細(xì)說明。 首先對(duì)于現(xiàn)有的調(diào)度方法和本發(fā)明的調(diào)度方法原理進(jìn)行說明。如圖2 所示的本發(fā)明調(diào)度方法示意圖,與圖1所示的線性調(diào)度方法有所區(qū)別,本 發(fā)明的調(diào)度方法是在有限調(diào)度機(jī)的基礎(chǔ)上增加了與流程操作相適應(yīng)的具體 上下文相關(guān)的內(nèi)容。圖2中,當(dāng)前的狀態(tài)是"已建立",如果進(jìn)行發(fā)布動(dòng)作, 當(dāng)前狀態(tài)就進(jìn)入"已發(fā)布"狀態(tài)。圖1調(diào)度方法是一種線性調(diào)度方法,由于 在調(diào)度過程中不能引入調(diào)度自身的邏輯,只適用于相對(duì)比較簡單的業(yè)務(wù)和 流程,而本發(fā)明的調(diào)度方法由于其中結(jié)合了上下文的具體情況進(jìn)行調(diào)度, 則更適用于比較復(fù)雜的業(yè)務(wù)和流程。
以下對(duì)于本發(fā)明的調(diào)度方法進(jìn)行詳細(xì)說明
目前,對(duì)于軟件平臺(tái)中涉及到操作流程的部分大多進(jìn)行抽象的方法處 理,對(duì)于利用流程引擎來進(jìn)行調(diào)度的方法尚未出現(xiàn)。本發(fā)明就是通過將涉 及到平臺(tái)中操作的部分抽取出來,構(gòu)建一個(gè)獨(dú)立的流程引擎,來負(fù)責(zé)操作 流程的調(diào)度,并在流程引擎中的調(diào)度方法采用有限狀態(tài)機(jī)。在構(gòu)建軟件平 臺(tái)過程中,通常涉及到對(duì)操作流程的抽象,從而形成框架的流程處理方法。 例如對(duì)于一個(gè)簡單的基礎(chǔ)數(shù)據(jù)維護(hù), 一般由增、冊(cè)IJ、改操作,從這個(gè)簡 單維護(hù)操作可以抽象成已增加、已修改、已刪除三種狀態(tài),而狀態(tài)的遷移 通過增加、修改、刪除三個(gè)動(dòng)作來觸發(fā)。因此,很自然的可以把一個(gè)基礎(chǔ) M維護(hù)抽象成一個(gè)有限狀態(tài)機(jī)。通過對(duì)處于某一狀態(tài)的主題施加動(dòng)作從
而引起狀態(tài)的遷移,最終實(shí)現(xiàn)操作的變換。調(diào)度過程中涉及到主題、狀態(tài)、 動(dòng)作、操作等內(nèi)容。
將操作流程的操作對(duì)象設(shè)置為有限狀態(tài)機(jī)的主題,它是具體存在的業(yè) 務(wù)內(nèi)容,例如用戶信息、角色信息等;主題實(shí)際上是操作流程上流動(dòng)的 數(shù)據(jù)流信息,如果沒有主題,流程的變化實(shí)際上就沒有意義。這些數(shù)據(jù)流 信息可以是基礎(chǔ)數(shù)據(jù)信息、業(yè)務(wù)信息或者工作流信息。例如對(duì)于用戶信息 維護(hù),它的主題可以是用戶信息,包括用戶名稱、編號(hào)等主題項(xiàng)目。
將主題所處的位置設(shè)置為有限狀態(tài)機(jī)的狀態(tài),它為主題當(dāng)前可以觸發(fā) 的動(dòng)作指明了方向。
將流程中的業(yè)務(wù)操作設(shè)置為有限狀態(tài)機(jī)的動(dòng)作,動(dòng)作是引起主題狀態(tài) 變換的導(dǎo)火線。
將動(dòng)作包括的功能步驟設(shè)置為有限狀態(tài)機(jī)的操作;動(dòng)作一般有多個(gè)操 作組成。操作是指完成指定功能的一個(gè)業(yè)務(wù), 一個(gè)動(dòng)作中可以包括多個(gè)操
作,當(dāng)然也可以包括o個(gè)操作。
此外,由于有限狀態(tài)機(jī)的狀態(tài)遷移是通過動(dòng)作來觸發(fā)的,而動(dòng)作是由 不同的操作組成的,可以通過對(duì)動(dòng)作中的操作進(jìn)行動(dòng)態(tài)調(diào)整,從而實(shí)現(xiàn)靈 活的狀態(tài)遷移。
最后以用戶信息維護(hù)為例具體說明本發(fā)明的調(diào)度方法。如圖3所示, 本發(fā)明在具體實(shí)施時(shí),可以采用獨(dú)立組件來封裝調(diào)度,公布回調(diào)接口 (包 括狀態(tài)接口、動(dòng)作接口、操作接口等),由外面服務(wù)來實(shí)現(xiàn)具體動(dòng)作、狀態(tài) 和操作。其它組件需要調(diào)度服務(wù)時(shí),在注冊(cè)滿足調(diào)度組件要求的接口后, 直接調(diào)用調(diào)度服務(wù),調(diào)度組件通過調(diào)度方法進(jìn)行操作和狀態(tài)遷移。具體步 驟如下
步驟1:實(shí)現(xiàn)流程所需的回調(diào)接口,包括狀態(tài)接口、動(dòng)作接口、操作
接口。狀態(tài)接口是指流程需要的狀態(tài),在用戶信息維護(hù)中,可能包括已增 加、已修改和已刪除等狀態(tài)。動(dòng)作接口是指流程可以進(jìn)行的操作動(dòng)作。在 用戶信息維護(hù)中,可能包括增加、修改和刪除。而操作接口則提出動(dòng)作包 括的功能步驟。在用戶信息維護(hù)中,增加動(dòng)作可能包括權(quán)限檢査、用戶信 息持久化、權(quán)限分派等。
步驟2:注冊(cè)定義的回調(diào)接口。這時(shí)在實(shí)現(xiàn)上調(diào)度組件就知道了各個(gè) 回調(diào)接口的實(shí)現(xiàn)。.
步驟3:需調(diào)度服務(wù)組件調(diào)用調(diào)度服務(wù)。
步驟4:調(diào)度組件根據(jù)調(diào)度方法(具體指有限調(diào)度機(jī)),調(diào)用回調(diào)接口, 進(jìn)行調(diào)度和狀態(tài)遷移。
如圖4所示,在上面的步驟4中,是調(diào)度組件進(jìn)行調(diào)度的工作,實(shí)際
上最主要的是根據(jù)注冊(cè)的動(dòng)作,執(zhí)行動(dòng)作的操作,然后進(jìn)行狀態(tài)遷移,具
體如下
4. 1檢查狀態(tài)及動(dòng)作。調(diào)度方法首先進(jìn)行狀態(tài)及動(dòng)作關(guān)系的檢査,即
檢査動(dòng)作是否可以應(yīng)用此狀態(tài)。
4.2執(zhí)行動(dòng)作。根據(jù)注冊(cè)的動(dòng)作,進(jìn)行執(zhí)行,實(shí)際上是執(zhí)行操作,動(dòng) 作對(duì)應(yīng)的操作有多個(gè)。
4. 2. l執(zhí)行操作一。
4. 2. 2執(zhí)行操作二。
4.2.3執(zhí)行操作三。
4.2.4執(zhí)行……。 4.3進(jìn)行狀態(tài)轉(zhuǎn)換,到達(dá)目的狀態(tài)。
在執(zhí)行上面的全部步驟過程中,都是通過調(diào)度方法來控制的。
以上內(nèi)容是結(jié)合具體的優(yōu)選實(shí)施方式對(duì)本發(fā)明所作的進(jìn)一步詳細(xì)說 明,不能認(rèn)定本發(fā)明的具體實(shí)施只局限于這些說明。對(duì)于本發(fā)明所屬技術(shù) 領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,做出的其他若 干簡單推演或替換,都應(yīng)當(dāng)視為屬于本發(fā)明的保護(hù)范圍。
權(quán)利要求
1.一種基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法,其特征在于,所述方法包括以下處理過程1)將平臺(tái)中的操作流程部分抽取出來;2)構(gòu)建流程引擎,在流程引擎中通過有限狀態(tài)機(jī)的方式對(duì)操作流程進(jìn)行調(diào)度。
2. 根據(jù)權(quán)利要求1所述的基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法,其特 征在于,所述步驟2)中通過有限狀態(tài)機(jī)的方式對(duì)操作流程進(jìn)行調(diào)度的具體過程為21) 將操作流程的操作對(duì)象設(shè)置為有限狀態(tài)機(jī)的主題,將主題所處的 位置設(shè)置為有限狀態(tài)機(jī)的狀態(tài),將操作流程中進(jìn)行的操作動(dòng)作設(shè)置為有限 狀態(tài)機(jī)的動(dòng)作,將動(dòng)作包括的功能步驟設(shè)置為有限狀態(tài)機(jī)的操作;22) 通過操作、動(dòng)作觸發(fā)有限狀態(tài)機(jī)中狀態(tài)的遷移,實(shí)現(xiàn)操作流程的 調(diào)度。
3. 根據(jù)權(quán)利要求2所述的基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法,其特 征在于,所述的有限狀態(tài)機(jī)采用獨(dú)立組件進(jìn)行封裝,對(duì)外公布狀態(tài)接口、 動(dòng)作接口和操作接口,由外部服務(wù)實(shí)現(xiàn)有限狀態(tài)機(jī)的狀態(tài)、動(dòng)作和操作。
4. 根據(jù)權(quán)利要求2或3所述的基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法, 其特征在于,所述有限狀態(tài)機(jī)的主題為操作流程上流動(dòng)的數(shù)據(jù)流信息。
5. 根據(jù)權(quán)利要求4所述的基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法,其特 征在于,所述數(shù)據(jù)流信息為以下信息之一基礎(chǔ)數(shù)據(jù)信息、業(yè)務(wù)信息、工 作流信息。
6. 根據(jù)權(quán)利要求2或3所述的基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法, 其特征在于,所述有限狀態(tài)機(jī)中動(dòng)作對(duì)應(yīng)的操作可以動(dòng)態(tài)調(diào)整。
全文摘要
本發(fā)明公開了一種基于有限狀態(tài)機(jī)的流程引擎調(diào)度方法,包括以下處理過程1)將平臺(tái)中的操作流程部分抽取出來;2)構(gòu)建流程引擎,在流程引擎中通過有限狀態(tài)機(jī)的方式對(duì)操作流程進(jìn)行調(diào)度。本發(fā)明的調(diào)度方法,由于狀態(tài)遷移是通過動(dòng)作來觸發(fā)的,而動(dòng)作是由不同的操作組成的,動(dòng)作中的操作頻次可以隨時(shí)調(diào)整,從而帶來了靈活的狀態(tài)遷移。本發(fā)明是在有限狀態(tài)機(jī)的基礎(chǔ)上增加了流程操作相適應(yīng)的具體上下文相關(guān)的內(nèi)容,從而實(shí)現(xiàn)了流程靈活、快速的調(diào)度方法。本發(fā)明的調(diào)度方法是對(duì)有限狀態(tài)機(jī)技術(shù)應(yīng)用的發(fā)展。
文檔編號(hào)G06F9/44GK101174206SQ20071007751
公開日2008年5月7日 申請(qǐng)日期2007年11月27日 優(yōu)先權(quán)日2007年11月27日
發(fā)明者章文理 申請(qǐng)人:深圳國人通信有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
诏安县| 长沙市| 河南省| 韶关市| 阿合奇县| 微博| 连南| 石首市| 神木县| 小金县| 札达县| 青川县| 项城市| 扬州市| 棋牌| 鄱阳县| 固阳县| 海淀区| 永德县| 江阴市| 辽阳县| 巴塘县| 永昌县| 鲜城| 正定县| 萍乡市| 政和县| 嘉兴市| 张家口市| 阳新县| 施甸县| 岳阳市| 黄冈市| 彩票| 公安县| 津市市| 丰镇市| 兴城市| 九台市| 思茅市| 苗栗市|