一種基于業(yè)務(wù)模型的架構(gòu)平臺(tái)的制作方法
【專利摘要】本申請(qǐng)?zhí)峁┮环N基于業(yè)務(wù)模型的架構(gòu)平臺(tái),包括:基礎(chǔ)支撐體系、業(yè)務(wù)運(yùn)行平臺(tái)和業(yè)務(wù)模型系統(tǒng);其中,基礎(chǔ)支撐體系用于統(tǒng)一各類基礎(chǔ)要素和邏輯的管理,包括操作系統(tǒng)、數(shù)據(jù)庫(kù)組件、基礎(chǔ)架構(gòu)平臺(tái)、web平臺(tái)以及應(yīng)用協(xié)議類文件模塊;業(yè)務(wù)運(yùn)行平臺(tái),用于提供統(tǒng)一、整體性的業(yè)務(wù)運(yùn)行支撐環(huán)境;業(yè)務(wù)模型系統(tǒng)用于描述各類管理信息系統(tǒng)的業(yè)務(wù),實(shí)現(xiàn)業(yè)務(wù)要素間的協(xié)作,即在數(shù)據(jù)、信息、文檔、流程、分工層次上進(jìn)行業(yè)務(wù)級(jí)協(xié)作。
【專利說(shuō)明】—種基于業(yè)務(wù)模型的架構(gòu)平臺(tái)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)業(yè)務(wù)平臺(tái)開(kāi)發(fā)技術(shù),更具體地,涉及一種基于業(yè)務(wù)模型的架構(gòu)
T D ο
【背景技術(shù)】
[0002]現(xiàn)在的管理軟件是將管理軟件運(yùn)行程序與所處理的業(yè)務(wù)邏輯一起編寫(xiě),然后編譯成為一種可執(zhí)行的方式固定下來(lái)。從形態(tài)構(gòu)成上來(lái)說(shuō),無(wú)論是早期面向過(guò)程的開(kāi)發(fā)和面向?qū)ο箝_(kāi)發(fā),還是目前面向組件或構(gòu)件化的開(kāi)發(fā)方法,都是直接基于某種技術(shù)平臺(tái),通過(guò)對(duì)代碼的層層提煉和封裝,來(lái)描述企業(yè)業(yè)務(wù),并被打包成為一個(gè)應(yīng)用軟件產(chǎn)品,形成一個(gè)“黑盒”。一旦企業(yè)業(yè)務(wù)發(fā)生變化需要調(diào)整,就會(huì)遇到重重困難。即使擁有應(yīng)用的源代碼,也難以實(shí)現(xiàn)靈活調(diào)整和擴(kuò)展。
[0003]在現(xiàn)有管理軟件的“黑盒”模式下,業(yè)務(wù)調(diào)整導(dǎo)致必須從底層對(duì)現(xiàn)有代碼或者組件化的代碼段進(jìn)行調(diào)整。無(wú)論是使用何種先進(jìn)的程序設(shè)計(jì)方法、還是使用各種流程建模、UML建模和數(shù)據(jù)建模工具,或者通過(guò)軟件能力成熟度測(cè)試,都無(wú)法回避這一問(wèn)題。不同方法的差別僅僅在于,通過(guò)付出更高昂的成本和代價(jià),換取在效率方面的有限提升,最終構(gòu)建出來(lái)的系統(tǒng)仍然是剛性的系統(tǒng),無(wú)法從根本上解決業(yè)務(wù)系統(tǒng)靈活調(diào)整的難題。無(wú)論是專業(yè)的軟件廠商還是最終用戶,都很容易陷入軟件開(kāi)發(fā)維護(hù)的泥潭。
[0004]現(xiàn)在的管理軟件,是將管理軟件運(yùn)行程序與所處理的業(yè)務(wù)邏輯一起編寫(xiě),然后編譯成為一種可執(zhí)行的方式固定下來(lái)。這就像是“音樂(lè)盒”玩具(Music Box),在音樂(lè)盒里面封裝了播放聲音的硬件設(shè)備,如齒輪、簧片,也包括了音樂(lè)的編碼,如滾輪上的撥動(dòng)簧片的凸點(diǎn)位置。一個(gè)這樣的盒子,只能播放一支固定的樂(lè)曲,如果想改變樂(lè)曲,只能重新打造一個(gè)新的音樂(lè)盒。
[0005]現(xiàn)有管理軟件,一部分雖然提供了部分二次開(kāi)發(fā)支持,但都局限在某些資源和參數(shù)的簡(jiǎn)單修改,或者只是局部的一些定制能力,如報(bào)表定義工具、權(quán)限分配等,但這些部分相互割裂,不成體系,仍然無(wú)法有效解決信息系統(tǒng)靈活調(diào)整的問(wèn)題。導(dǎo)致經(jīng)常需要打破、甚至拋棄原有的信息系統(tǒng),完全重新構(gòu)建才能滿足實(shí)際應(yīng)用需要。
【發(fā)明內(nèi)容】
[0006]為克服現(xiàn)有的缺陷,本發(fā)明提出一種基于業(yè)務(wù)模型的架構(gòu)平臺(tái)。
[0007]根據(jù)本發(fā)明的一個(gè)方面,提出了一種基于業(yè)務(wù)模型的架構(gòu)平臺(tái),包括:基礎(chǔ)支撐體系、業(yè)務(wù)運(yùn)行平臺(tái)和業(yè)務(wù)模型系統(tǒng);其中,基礎(chǔ)支撐體系用于統(tǒng)一各類基礎(chǔ)要素和邏輯的管理,包括操作系統(tǒng)、數(shù)據(jù)庫(kù)組件、基礎(chǔ)架構(gòu)平臺(tái)、web平臺(tái)以及應(yīng)用協(xié)議類模塊;業(yè)務(wù)運(yùn)行平臺(tái),用于提供統(tǒng)一、整體性的業(yè)務(wù)運(yùn)行支撐環(huán)境;業(yè)務(wù)模型系統(tǒng)描述各類管理信息系統(tǒng)的業(yè)務(wù),實(shí)現(xiàn)業(yè)務(wù)要素間的協(xié)作,在數(shù)據(jù)、信息、文檔、流程、分工層次上進(jìn)行業(yè)務(wù)級(jí)協(xié)作。
[0008]其中,業(yè)務(wù)模型系統(tǒng)用于定義各類管理信息系統(tǒng)的組織方式、構(gòu)成系統(tǒng)的模型要素、模型要素的接口、模型要素的行為,限定組織模型要素的結(jié)構(gòu)風(fēng)格和分工職責(zé)。[0009]其中,業(yè)務(wù)模型系統(tǒng)包括數(shù)據(jù)模型層、流程模型層、界面模型層和組織模型層;其中,數(shù)據(jù)模型層從概念層描述業(yè)務(wù)數(shù)據(jù)結(jié)構(gòu),并將概念數(shù)據(jù)結(jié)構(gòu)與實(shí)際物理數(shù)據(jù)結(jié)構(gòu)進(jìn)行映射;流程模型層描述業(yè)務(wù)動(dòng)作、活動(dòng)和流程;界面模型層用來(lái)對(duì)用戶界面進(jìn)行描述;組織模型層用于組織機(jī)構(gòu)的描述及權(quán)限管理;其中,業(yè)務(wù)模型系統(tǒng)還包括基于該四個(gè)模型層進(jìn)行可視化建模的業(yè)務(wù)建模工具,用于對(duì)業(yè)務(wù)進(jìn)行可視化快速建模開(kāi)發(fā)和靈活調(diào)整。
[0010]其中,業(yè)務(wù)運(yùn)行平臺(tái)包括:數(shù)據(jù)引擎,用于解析數(shù)據(jù)模型層;流程引擎,用于解析流程模型層;
[0011]組織引擎,用于解析組織模型層;和界面引擎,用于解析界面模型層。
[0012]其中,數(shù)據(jù)模型層包括概念數(shù)據(jù)模型和物理數(shù)據(jù)模型;概念數(shù)據(jù)模型包括業(yè)務(wù)概念、關(guān)系和數(shù)據(jù)規(guī)則;其中,物理數(shù)據(jù)模型負(fù)責(zé)維護(hù)業(yè)務(wù)的數(shù)據(jù),包括業(yè)務(wù)概念向數(shù)據(jù)庫(kù)表的映射信息和數(shù)據(jù)庫(kù)的連接配置信息。
[0013]其中,流程模型層包括業(yè)務(wù)流程模塊、業(yè)務(wù)活動(dòng)模塊、業(yè)務(wù)動(dòng)作模塊和業(yè)務(wù)條件模塊;其中,業(yè)務(wù)流程模塊包括業(yè)務(wù)流程定義、業(yè)務(wù)流程運(yùn)行和業(yè)務(wù)流程實(shí)例,業(yè)務(wù)流程定義描述業(yè)務(wù)流程的整個(gè)過(guò)程和各種規(guī)則,業(yè)務(wù)流程運(yùn)行業(yè)務(wù)流程引擎,解析業(yè)務(wù)流程定義,推進(jìn)業(yè)務(wù)流程的運(yùn)行,運(yùn)行的結(jié)果是業(yè)務(wù)流程實(shí)例。
[0014]其中,界面模型層界面模型層包含Π展現(xiàn)描述部分、UI邏輯實(shí)現(xiàn)部分、組件、JS、CSS以及布局要素。界面模型層還用于感知業(yè)務(wù)數(shù)據(jù)模型的業(yè)務(wù)概念、數(shù)據(jù)規(guī)則,感知組織權(quán)限模型的業(yè)務(wù)權(quán)限,感知業(yè)務(wù)流程模型的流程規(guī)則。
[0015]其中,UI展現(xiàn)描述部分分別對(duì)應(yīng)功能頁(yè)面,每個(gè)功能頁(yè)面都對(duì)應(yīng)過(guò)程和行為,UI通過(guò)過(guò)程和行為和biz模型進(jìn)行關(guān)聯(lián),實(shí)現(xiàn)UI和功能權(quán)限、動(dòng)作權(quán)限、數(shù)據(jù)權(quán)限的關(guān)聯(lián)。
[0016]其中,組織模型層用來(lái)定義企業(yè)的組織形式的模型,以職責(zé)、權(quán)限的形式定義企業(yè)成員、企業(yè)各個(gè)部門的作用與任務(wù),是企業(yè)中組織機(jī)構(gòu)的抽象定義;其中,對(duì)應(yīng)于一個(gè)業(yè)務(wù)模型,其組織模型是唯一的。
[0017]其中,業(yè)務(wù)流程事件在業(yè)務(wù)過(guò)程上定義或者在業(yè)務(wù)環(huán)節(jié)上定義;觸發(fā)順序是先觸發(fā)業(yè)務(wù)過(guò)程上級(jí)的事件,后觸發(fā)業(yè)務(wù)環(huán)節(jié)上的事件;其中,業(yè)務(wù)動(dòng)作模塊分為三級(jí):全局的業(yè)務(wù)動(dòng)作、業(yè)務(wù)過(guò)程級(jí)的業(yè)務(wù)動(dòng)作、業(yè)務(wù)環(huán)節(jié)級(jí)的業(yè)務(wù)動(dòng)作。
[0018]本發(fā)明業(yè)務(wù)架構(gòu)平臺(tái)的基本實(shí)現(xiàn)原理是:通過(guò)將業(yè)務(wù)模型資源與系統(tǒng)實(shí)現(xiàn)技術(shù)分離,從根本上提升管理系統(tǒng)的技術(shù)無(wú)關(guān)性。業(yè)務(wù)模型資源是隨用戶需求而變動(dòng)的最頻繁的部分,通過(guò)分離業(yè)務(wù)與實(shí)現(xiàn)部分,可以做到業(yè)務(wù)資源變動(dòng)時(shí),不影響底層的實(shí)現(xiàn)技術(shù),無(wú)需重新配置或升級(jí)運(yùn)行環(huán)境。而運(yùn)行環(huán)境的獨(dú)立,則可以保證應(yīng)用能夠跨實(shí)現(xiàn)技術(shù),運(yùn)行在不同的系統(tǒng)之上,可以隨時(shí)零成本遷移到新的實(shí)現(xiàn)技術(shù)上。
【專利附圖】
【附圖說(shuō)明】
[0019]圖1示出本申請(qǐng)基于業(yè)務(wù)模型的架構(gòu)平臺(tái)結(jié)構(gòu)圖;
[0020]圖2示出本申請(qǐng)的業(yè)務(wù)模型系統(tǒng)的結(jié)構(gòu)圖;
[0021]圖3為對(duì)業(yè)務(wù)模型系統(tǒng)的運(yùn)行原理的示意圖。
【具體實(shí)施方式】
[0022]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明提供的一種基于業(yè)務(wù)模型的架構(gòu)平臺(tái)進(jìn)行詳細(xì)描述。
[0023]在以下的描述中,將描述本發(fā)明的多個(gè)不同的方面,然而,對(duì)于本領(lǐng)域內(nèi)的普通技術(shù)人員而言,可以僅僅利用本發(fā)明的一些或者全部結(jié)構(gòu)或者流程來(lái)實(shí)施本發(fā)明。為了解釋的明確性而言,闡述了特定的數(shù)目、配置和順序,但是很明顯,在沒(méi)有這些特定細(xì)節(jié)的情況下也可以實(shí)施本發(fā)明。在其他情況下,為了不混淆本發(fā)明,對(duì)于一些眾所周知的特征將不再進(jìn)行詳細(xì)闡述。
[0024]對(duì)于基于業(yè)務(wù)的平臺(tái)開(kāi)發(fā),架構(gòu)不僅出現(xiàn)產(chǎn)品生命周期的早期,而且架構(gòu)在產(chǎn)品的整體能力上占據(jù)了主導(dǎo)作用。合理的架構(gòu)為軟件系統(tǒng)生命周期的所有階段——設(shè)計(jì)、開(kāi)發(fā)、測(cè)試、集成和更改都奠定了最關(guān)鍵的基礎(chǔ)。相反,如果架構(gòu)體系不當(dāng),就意味著系統(tǒng)存在巨大的體系性缺陷,并且無(wú)法通過(guò)細(xì)小的修補(bǔ)或調(diào)整得到更正。架構(gòu)不當(dāng)往往導(dǎo)致系統(tǒng)的徹底報(bào)廢,或者需要系統(tǒng)的全部拆解重建。
[0025]復(fù)雜系統(tǒng)的理解、設(shè)計(jì)和開(kāi)發(fā),普遍遵從層級(jí)理論的思路。架構(gòu)體系就是一個(gè)由不同層級(jí)構(gòu)成的、描述復(fù)雜系統(tǒng)的體系。復(fù)雜系統(tǒng)往往是一個(gè)分層的體系結(jié)構(gòu),并且每一層次的作用均不相同。復(fù)雜系統(tǒng)的集成,就是要使體系中的各個(gè)層次能夠彼有效配合而形成一個(gè)有機(jī)的整體。復(fù)雜系統(tǒng)集成的關(guān)鍵,是基于架構(gòu)(或體系)的集成,而不是基于部件(或組件)的集成。我們必須按照架構(gòu)體系來(lái)定制部件和組件,并將其安裝到合適的層次位置上,才能使系統(tǒng)有效運(yùn)作和集成。
[0026]本申請(qǐng)的業(yè)務(wù)架構(gòu)平臺(tái)的基本實(shí)現(xiàn)原理是:通過(guò)將業(yè)務(wù)模型資源與系統(tǒng)實(shí)現(xiàn)技術(shù)分離,從根本上提升管理系統(tǒng)的技術(shù)無(wú)關(guān)性。業(yè)務(wù)資源是隨用戶需求而變動(dòng)的最頻繁的部分,通過(guò)分離業(yè)務(wù)與實(shí)現(xiàn)部分,可以做到業(yè)務(wù)資源變動(dòng)時(shí),不影響底層的實(shí)現(xiàn)技術(shù),無(wú)需重新配置或升級(jí)運(yùn)行環(huán)境。而運(yùn)行環(huán)境的獨(dú)立,則可以保證應(yīng)用能夠跨實(shí)現(xiàn)技術(shù),運(yùn)行在不同的系統(tǒng)之上,可以隨時(shí)零成本遷移到新的實(shí)現(xiàn)技術(shù)上。
[0027]在實(shí)現(xiàn)方法上,本申請(qǐng)的業(yè)務(wù)架構(gòu)平臺(tái)采用“業(yè)務(wù)模型驅(qū)動(dòng)”(BMD — BusinessModel Driven)的方法體系和工具集。業(yè)務(wù)模型驅(qū)動(dòng)(BMD)是一種全新的管理軟件架構(gòu)和運(yùn)行模式。這種模式的基本思想是:用業(yè)務(wù)建模工具來(lái)開(kāi)發(fā)管理軟件;用業(yè)務(wù)基礎(chǔ)平臺(tái)來(lái)運(yùn)行管理軟件。
[0028]如圖1所示,本申請(qǐng)的業(yè)務(wù)架構(gòu)平臺(tái)包括如下三個(gè)基本部分:基礎(chǔ)支撐體系、業(yè)務(wù)運(yùn)行平臺(tái)和業(yè)務(wù)模型系統(tǒng)。其中,基礎(chǔ)支撐體系統(tǒng)一各類基礎(chǔ)業(yè)務(wù)要素和業(yè)務(wù)邏輯的管理,包括操作系統(tǒng)、數(shù)據(jù)庫(kù)組件、基礎(chǔ)架構(gòu)平臺(tái)、web平臺(tái)以及應(yīng)用協(xié)議類文件模塊。
[0029]其中,業(yè)務(wù)模型系統(tǒng)為企業(yè)業(yè)務(wù)的集成提供了堅(jiān)實(shí)的基礎(chǔ),使企業(yè)內(nèi)的不同類型、不同業(yè)務(wù)應(yīng)用系統(tǒng)能夠真正集成在一起,以實(shí)現(xiàn)高效的協(xié)同工作和流程控制。改變了管理軟件顆粒難以協(xié)作的狀況,建立在平臺(tái)上的應(yīng)用,可以實(shí)現(xiàn)業(yè)務(wù)對(duì)象級(jí)的協(xié)作,即在數(shù)據(jù)、信息、文檔、流程、分工層次上進(jìn)行高層次緊密協(xié)作,使企業(yè)管理真正實(shí)現(xiàn)整體集成。其中業(yè)務(wù)運(yùn)行平臺(tái),用于提供統(tǒng)一、整體性的運(yùn)行支撐環(huán)境,包括:
[0030]數(shù)據(jù)引擎,用于解析數(shù)據(jù)模型層;
[0031]流程引擎,用于解析流程模型層;
[0032]組織引擎,用于解析組織模型層;和
[0033]界面引擎,用于解析界面模型層。
[0034]在一個(gè)企業(yè)內(nèi),有許多基礎(chǔ)的業(yè)務(wù)要素和資源,如企業(yè)的組織機(jī)構(gòu)、業(yè)務(wù)分工、業(yè)務(wù)權(quán)限、業(yè)務(wù)流程、基礎(chǔ)資源等,基于業(yè)務(wù)模型的架構(gòu)平臺(tái)使這些業(yè)務(wù)資源的構(gòu)建、修改、共享和管理得到統(tǒng)一,從而大幅度簡(jiǎn)化了企業(yè)信息系統(tǒng)的構(gòu)建,強(qiáng)化和規(guī)范了企業(yè)的業(yè)務(wù)管理。
[0035]圖1示出基于業(yè)務(wù)模型的的架構(gòu)架構(gòu)平臺(tái)的業(yè)務(wù)集成。業(yè)務(wù)架構(gòu)的集成是為了實(shí)現(xiàn)業(yè)務(wù)集成,業(yè)務(wù)集成與技術(shù)集成不同有著重大的差別。業(yè)務(wù)集成的目的,在于實(shí)現(xiàn)整體業(yè)務(wù)運(yùn)作和管理的要求,包括對(duì)統(tǒng)一管理、團(tuán)隊(duì)協(xié)作、信息綜合、業(yè)務(wù)協(xié)同、流程連接的全面支持。技術(shù)集成的目的,在于實(shí)現(xiàn)技術(shù)的融合和協(xié)作。如應(yīng)用服務(wù)、組件訪問(wèn)、門戶、安全、數(shù)
據(jù)事務(wù)處理等等。
[0036]業(yè)務(wù)集成的基礎(chǔ),是基于業(yè)務(wù)架構(gòu)和要素來(lái)集成和整合業(yè)務(wù)系統(tǒng),業(yè)務(wù)集成是建立在統(tǒng)一的組織機(jī)構(gòu)、業(yè)務(wù)分工、業(yè)務(wù)權(quán)限、業(yè)務(wù)流程、業(yè)務(wù)資源管理之上,業(yè)務(wù)集成是“技術(shù)無(wú)關(guān)”的。技術(shù)和應(yīng)用集成,是基于技術(shù)架構(gòu)和技術(shù)要素來(lái)集成和整合企業(yè)系統(tǒng),技術(shù)集成是建立在統(tǒng)一的應(yīng)用服務(wù)、組件、門戶、數(shù)據(jù)事務(wù)處理技術(shù)之上,技術(shù)集成是“業(yè)務(wù)無(wú)關(guān)”的。
[0037]業(yè)務(wù)模型體系是從企業(yè)信息化的需要出發(fā),針對(duì)企業(yè)的業(yè)務(wù)和管理所做的一種簡(jiǎn)化和抽象。業(yè)務(wù)模型體系定義了信息系統(tǒng)的組織方式、構(gòu)成系統(tǒng)的模型要素、模型要素的接口,模擬了由這些模型要素協(xié)作所描述的行為,限定了如何組織模型要素的結(jié)構(gòu)風(fēng)格(包括模型要素的接口、協(xié)作、組合)。業(yè)務(wù)模型體系不僅關(guān)注結(jié)構(gòu)和行為,而且也關(guān)注使用關(guān)系、功能性、性能、彈性、復(fù)用、可理解性以及經(jīng)濟(jì)和技術(shù)約束與折衷等。
[0038]業(yè)務(wù)建模的直接產(chǎn)品,稱為業(yè)務(wù)模型應(yīng)用資源。將業(yè)務(wù)模型應(yīng)用資源發(fā)布到業(yè)務(wù)運(yùn)行平臺(tái)上,就可以得到相應(yīng)的信息系統(tǒng)。業(yè)務(wù)模型驅(qū)動(dòng)(BMD)體現(xiàn)了“以業(yè)務(wù)模型資源為中心”的思想,這一思想要求使用業(yè)務(wù)建模的開(kāi)發(fā)模式,并將建模的結(jié)果業(yè)務(wù)模型應(yīng)用資源作為管理軟件開(kāi)發(fā)的主體產(chǎn)品,在BMD模式下,用戶是以業(yè)務(wù)模型應(yīng)用資源為主要的目標(biāo)對(duì)象,進(jìn)行信息系統(tǒng)的設(shè)計(jì)、構(gòu)造、發(fā)布、集成、維護(hù)和管理。
[0039]圖2示出本申請(qǐng)的業(yè)務(wù)模型系統(tǒng)的結(jié)構(gòu)圖,如圖2所示,申請(qǐng)的業(yè)務(wù)系統(tǒng)包括數(shù)據(jù)模型層、流程模型層、界面模型層和組織模型層。其中,數(shù)據(jù)模型層以業(yè)務(wù)本體語(yǔ)義來(lái)描述業(yè)務(wù)概念數(shù)據(jù)結(jié)構(gòu),將描述性的業(yè)務(wù)概念數(shù)據(jù)結(jié)構(gòu)與實(shí)際數(shù)據(jù)結(jié)構(gòu)進(jìn)行映射;流程模型層描述業(yè)務(wù)動(dòng)作、活動(dòng)和流程;界面模型層用來(lái)對(duì)用戶界面進(jìn)行描述;組織模型層用于組織機(jī)構(gòu)的維護(hù)及權(quán)限管理。以下詳細(xì)描述各層的組成及關(guān)系。
[0040]其中,數(shù)據(jù)模型層包括業(yè)務(wù)概念模型和業(yè)務(wù)數(shù)據(jù)模型。業(yè)務(wù)概念模型用于定義概念模型;業(yè)務(wù)概念模型的定義部分包括業(yè)務(wù)概念、屬性、關(guān)系和相應(yīng)的數(shù)據(jù)規(guī)則。業(yè)務(wù)數(shù)據(jù)模型描述了業(yè)務(wù)概念模型與數(shù)據(jù)庫(kù)表的對(duì)應(yīng)關(guān)系,描述了對(duì)數(shù)據(jù)表進(jìn)行操作的數(shù)據(jù)規(guī)則。業(yè)務(wù)概念模型的引入,使得對(duì)數(shù)據(jù)的查詢及增刪改操作不再直接對(duì)數(shù)據(jù)庫(kù)表來(lái)操作,而是操作業(yè)務(wù)概念模型。
[0041]業(yè)務(wù)數(shù)據(jù)模型負(fù)責(zé)維護(hù)業(yè)務(wù)的數(shù)據(jù),主要包括數(shù)據(jù)庫(kù)表的映射信息(mapping)和數(shù)據(jù)庫(kù)的連接配置信息。其中,數(shù)據(jù)連接:目前支持的數(shù)據(jù)庫(kù)類型主要是SQL Server,Oracle、Sybase、DB2和MySQL ;每一個(gè)數(shù)據(jù)模塊都可以定義它自己的數(shù)據(jù)庫(kù)連接配置,按照模塊的繼承原則子模塊可以繼承父模塊的數(shù)據(jù)庫(kù)連接配置。存取設(shè)置:定義哪些概念存儲(chǔ)到本模塊(即數(shù)據(jù)模塊)指定的數(shù)據(jù)庫(kù);映射定義:實(shí)現(xiàn)本體到數(shù)據(jù)庫(kù)的映射定義。
[0042]其中,流程模型層包括業(yè)務(wù)流程模塊、業(yè)務(wù)活動(dòng)模塊、業(yè)務(wù)動(dòng)作模塊、業(yè)務(wù)條件模塊。
[0043]其中,業(yè)務(wù)流程模塊用于描述的是企業(yè)實(shí)現(xiàn)一個(gè)業(yè)務(wù)目標(biāo)(業(yè)務(wù)審批)需要包含多少個(gè)環(huán)節(jié)步驟,各環(huán)節(jié)步驟間前后順序和同步關(guān)系,各步驟由誰(shuí)來(lái)處理等信息。抽象到業(yè)務(wù)模型上,步驟對(duì)應(yīng)業(yè)務(wù)環(huán)節(jié),順序關(guān)系由連接弧定義,處理人對(duì)應(yīng)執(zhí)行者,處理要求對(duì)應(yīng)到處理規(guī)則,所以業(yè)務(wù)流程定義是由環(huán)節(jié),處理規(guī)則和連接弧組成。
[0044]業(yè)務(wù)流程中畫(huà)在流程圖上的業(yè)務(wù)環(huán)節(jié),將以業(yè)務(wù)流程的方式使用待辦任務(wù)作為入口來(lái)運(yùn)行。此類業(yè)務(wù)環(huán)節(jié)需要在執(zhí)行者收到待辦任務(wù)以后,通過(guò)打開(kāi)處理待辦任務(wù)才可以運(yùn)行業(yè)務(wù)環(huán)節(jié)。業(yè)務(wù)流程定義特指此類業(yè)務(wù)環(huán)節(jié)的定義,在業(yè)務(wù)過(guò)程中包含的沒(méi)被畫(huà)在流程圖上的業(yè)務(wù)環(huán)節(jié)都是靜態(tài)的業(yè)務(wù)環(huán)節(jié),它們不包含在業(yè)務(wù)流程定義的范疇內(nèi)。
[0045]業(yè)務(wù)流程規(guī)則定義業(yè)務(wù)流程的執(zhí)行者,各種操作的處理選項(xiàng)和通知等信息。為了支持復(fù)雜業(yè)務(wù)流程,所有業(yè)務(wù)流程規(guī)則都是可以設(shè)置多條的,在業(yè)務(wù)流程運(yùn)行的時(shí)候根據(jù)設(shè)置的生效條件和規(guī)則的排列順序計(jì)算出唯一的一條生效的規(guī)則。也就是說(shuō)相同類型的業(yè)務(wù)流程規(guī)則在同一時(shí)刻只有唯一的一條可以生效。
[0046]業(yè)務(wù)流程規(guī)則的計(jì)算一般都在調(diào)用訊問(wèn)相關(guān)的業(yè)務(wù)動(dòng)作時(shí)計(jì)算,計(jì)算時(shí)根據(jù)業(yè)務(wù)流程規(guī)則定義的順序一條一條的計(jì)算,當(dāng)找到一條可以生效就不再往下計(jì)算了。
[0047]業(yè)務(wù)流程從本質(zhì)上說(shuō)其實(shí)就是待辦任務(wù)在不同人之間按照既定的順序和規(guī)則間傳來(lái)傳去,所以業(yè)務(wù)流程是否能和組織機(jī)構(gòu)緊密結(jié)合是衡量業(yè)務(wù)流程是否可用的一大標(biāo)準(zhǔn)。
[0048]業(yè)務(wù)流程通過(guò)組織機(jī)構(gòu)函數(shù)的方式實(shí)現(xiàn)在業(yè)務(wù)流程和組織機(jī)構(gòu)的緊密整合,使用組織機(jī)構(gòu)函數(shù)組成組織機(jī)構(gòu)表達(dá)式,用來(lái)選擇任意復(fù)雜的組織范圍作為業(yè)務(wù)流程執(zhí)行者。同時(shí)一般的表達(dá)式函數(shù)也可以穿插用于組織機(jī)構(gòu)表達(dá)式中,實(shí)現(xiàn)了業(yè)務(wù)流程可以從任意地方獲取執(zhí)行者。業(yè)務(wù)流程執(zhí)行者定義目前用在執(zhí)行規(guī)則,通知規(guī)則和轉(zhuǎn)發(fā)規(guī)則中,執(zhí)行規(guī)則用來(lái)定義活動(dòng)環(huán)節(jié)的執(zhí)行者,通知規(guī)則用來(lái)定義通知接收者,轉(zhuǎn)發(fā)規(guī)則用來(lái)定義轉(zhuǎn)發(fā)時(shí)的接收者。
[0049]之所以叫執(zhí)行者而不叫處理人的原因在于,業(yè)務(wù)流程的待辦任務(wù)不僅僅可以發(fā)給人員成員,還可以發(fā)給崗位,部門和機(jī)構(gòu)等組織單位。當(dāng)待辦任務(wù)的執(zhí)行者是一個(gè)人員成員時(shí)只有他自己能看到和處理這個(gè)待辦任務(wù)。而當(dāng)待辦任務(wù)的執(zhí)行者是崗位,部門或機(jī)構(gòu)等組織單位時(shí),這些組織和它們的子組織下分配的所有人員成員都可以看到和處理待辦任務(wù)。
[0050]執(zhí)行者函數(shù)和其他一般函數(shù)最大的區(qū)別在于返回值的格式,執(zhí)行者函數(shù)的返回值類型必須是指定類型(OrgUnit)的組織單元的列表。組織單元是用FID和FName兩個(gè)標(biāo)識(shí)一起來(lái)描述。
[0051]其實(shí)執(zhí)行者函數(shù)本質(zhì)就是選擇出各種條件的組織單元。執(zhí)行者函數(shù)本身也不僅僅可以在業(yè)務(wù)流程中使用,在系統(tǒng)其他有根據(jù)條件選擇組織單元的地方可以通過(guò)直接調(diào)用函數(shù)或者調(diào)用表達(dá)式的方式使用。其他一般函數(shù)的返回值只要和執(zhí)行者函數(shù)的輸入?yún)?shù)匹配,就可以直接當(dāng)作執(zhí)行者函數(shù)的傳入?yún)?shù)使用。
[0052]由于業(yè)務(wù)流程是屬于業(yè)務(wù)模型層的模塊,所以部署運(yùn)行在BusinessServer中,BusinessServer與外界交互的唯一手段就是通過(guò)業(yè)務(wù)動(dòng)作。在業(yè)務(wù)表單里查詢和提交業(yè)務(wù)數(shù)據(jù)是通過(guò)業(yè)務(wù)動(dòng)作實(shí)現(xiàn)的,同樣的,流程的各種動(dòng)作也是基于業(yè)務(wù)動(dòng)作來(lái)實(shí)現(xiàn)的。[0053]業(yè)務(wù)流程的各種操作,一般都由訊問(wèn)和實(shí)際做兩大類業(yè)務(wù)動(dòng)作構(gòu)成,只有個(gè)別操作沒(méi)有提供關(guān)于訊問(wèn)的業(yè)務(wù)動(dòng)作。所有訊問(wèn)的業(yè)務(wù)動(dòng)作都只是基于內(nèi)存的推導(dǎo)和運(yùn)算,把相關(guān)需要計(jì)算的規(guī)則,環(huán)節(jié)和執(zhí)行者都計(jì)算完畢后生成ProcessContiOl,而不留下任何痕跡。實(shí)際做的業(yè)務(wù)動(dòng)作都是根據(jù)傳入的ProcessControl完成實(shí)際的操作,并且把結(jié)果存入數(shù)據(jù)庫(kù)。
[0054]業(yè)務(wù)流程默認(rèn)提供的業(yè)務(wù)動(dòng)作都是系統(tǒng)級(jí)別的,不需要在Activity里主動(dòng)引用就可以直接調(diào)用的。基本所有的業(yè)務(wù)流程的業(yè)務(wù)動(dòng)作都是兩個(gè)動(dòng)作一起組合起來(lái)實(shí)現(xiàn)一個(gè)流程操作,例如流轉(zhuǎn)操作是由advanceProcessQueryAction動(dòng)作先查出ProcessControl,然后 advanceProcessAction 動(dòng)作根據(jù) ProcessControl 實(shí)際流轉(zhuǎn)。
[0055]業(yè)務(wù)流程所有業(yè)務(wù)動(dòng)作都是基于待辦任務(wù)公布的,不但業(yè)務(wù)流程本身可以用,協(xié)同任務(wù)也可以用。也就是說(shuō)只要是待辦任務(wù)的操作,基本都可以調(diào)用業(yè)務(wù)流程的業(yè)務(wù)動(dòng)作。
[0056]在實(shí)際業(yè)務(wù)需求中往往需要寫(xiě)一些代碼用來(lái)控制業(yè)務(wù)流程運(yùn)行,或根據(jù)業(yè)務(wù)流程的運(yùn)行結(jié)果同步業(yè)務(wù)數(shù)據(jù),更有甚者通過(guò)代碼是實(shí)現(xiàn)一些業(yè)務(wù)流程原本不支持的特性。而寫(xiě)這些代碼的切入點(diǎn)就是事件。
[0057]業(yè)務(wù)流程事件其實(shí)就是業(yè)務(wù)流程默認(rèn)提供的業(yè)務(wù)動(dòng)作的事件。它不只包含下面列的這些事件,還可以給任意動(dòng)作擴(kuò)展事件。
[0058]業(yè)務(wù)流程事件可以在業(yè)務(wù)過(guò)程上定義,也可以在業(yè)務(wù)環(huán)節(jié)上定義。它們的觸發(fā)順序是先觸發(fā)業(yè)務(wù)過(guò)程上級(jí)的事件,后觸發(fā)業(yè)務(wù)環(huán)節(jié)上的事件。
[0059]業(yè)務(wù)動(dòng)作分為三個(gè)級(jí)別:全局的業(yè)務(wù)動(dòng)作、業(yè)務(wù)過(guò)程級(jí)的業(yè)務(wù)動(dòng)作、業(yè)務(wù)環(huán)節(jié)級(jí)的業(yè)務(wù)動(dòng)作。
[0060]業(yè)務(wù)動(dòng)作的執(zhí)行必須在一個(gè)特定的環(huán)境下執(zhí)行,即某個(gè)業(yè)務(wù)過(guò)程(process)的某個(gè)環(huán)節(jié)(activity)下執(zhí)行。業(yè)務(wù)環(huán)節(jié)可以執(zhí)行的業(yè)務(wù)動(dòng)作包括三種:當(dāng)前模塊可見(jiàn)的全局的業(yè)務(wù)動(dòng)作、當(dāng)前業(yè)務(wù)過(guò)程級(jí)的業(yè)務(wù)動(dòng)作和當(dāng)前業(yè)務(wù)環(huán)節(jié)級(jí)的業(yè)務(wù)動(dòng)作。
[0061]業(yè)務(wù)流程運(yùn)行的本質(zhì)其實(shí)就是實(shí)現(xiàn)各種業(yè)務(wù)流程的業(yè)務(wù)動(dòng)作,其最核心部分是基于PetriNet原理的業(yè)務(wù)流程引擎。從體系結(jié)構(gòu)上來(lái)說(shuō)業(yè)務(wù)流程引擎和業(yè)務(wù)動(dòng)作是沒(méi)有任何關(guān)系的,業(yè)務(wù)動(dòng)作只是外界用來(lái)控制業(yè)務(wù)流程引擎的一種途徑,拋開(kāi)業(yè)務(wù)動(dòng)作,外界同樣還可以像使用一般Java接口和類一樣使用業(yè)務(wù)流程弓I擎提供的各種接口和類。
[0062]業(yè)務(wù)流程引擎實(shí)現(xiàn)兩大特性,第一是解析和計(jì)算業(yè)務(wù)流程定義,然后生成ProcessControl ο第二是根據(jù)ProcessControl實(shí)現(xiàn)實(shí)際的業(yè)務(wù)流程操作,并生成業(yè)務(wù)流程實(shí)例數(shù)據(jù)且存入數(shù)據(jù)庫(kù)。所以業(yè)務(wù)流程引擎的本質(zhì)就是解析業(yè)務(wù)流程定義然后生成和維護(hù)業(yè)務(wù)流程實(shí)例數(shù)據(jù),這也是業(yè)務(wù)流程運(yùn)行的本質(zhì)。
[0063]雖然業(yè)務(wù)流程體系是基于PetriNet原理的,但由于業(yè)務(wù)模型層封裝的原因,在實(shí)際的業(yè)務(wù)流程建模過(guò)程中并不會(huì)太多接觸到底層PetriNet的東西。所以在這里就不再對(duì)PetriNet做詳細(xì)描述了,具體PetriNet的詳細(xì)信息請(qǐng)參閱與PetriNet相關(guān)的專業(yè)文檔。
[0064]業(yè)務(wù)流程以PetriNet作為基礎(chǔ)理論依據(jù),把業(yè)務(wù)流程元素和PetriNet元素做了一一對(duì)應(yīng),并且在此基礎(chǔ)之上擴(kuò)展出更合適于業(yè)務(wù)模型層的復(fù)雜業(yè)務(wù)流程規(guī)則,以形成業(yè)務(wù)流程定義。同樣的,在業(yè)務(wù)流程運(yùn)行時(shí)的算法體系中也遵循了基本的PetriNet原理,并在此基礎(chǔ)之上根據(jù)業(yè)務(wù)流程定義的擴(kuò)展,也對(duì)業(yè)務(wù)流程運(yùn)行擴(kuò)展出相應(yīng)特性。如圖3所示,為PetriNet基礎(chǔ)的對(duì)應(yīng)業(yè)務(wù)流程規(guī)則的流程示意圖。[0065]業(yè)務(wù)流程本質(zhì)上就是把業(yè)務(wù)表單在人之間傳來(lái)傳去,負(fù)責(zé)傳送業(yè)務(wù)表單并且通知對(duì)方進(jìn)行處理的媒介途徑是待辦任務(wù)。所以X5業(yè)務(wù)流程體系中待辦任務(wù)是核心基礎(chǔ),無(wú)論是業(yè)務(wù)流程還是協(xié)同只要牽扯到業(yè)務(wù)表單在人之間的傳遞都要依賴待辦任務(wù)?;谝陨系睦斫夂涂紤],X5業(yè)務(wù)流程體系是以待辦任務(wù)為核心,結(jié)合業(yè)務(wù)流程與協(xié)同于一身的業(yè)務(wù)流程體系。
[0066]業(yè)務(wù)流程體系分為三部分,它們分別是業(yè)務(wù)流程定義、業(yè)務(wù)流程運(yùn)行和業(yè)務(wù)流程實(shí)例(業(yè)務(wù)流程控制數(shù)據(jù))。業(yè)務(wù)流程定義描述業(yè)務(wù)流程的整個(gè)過(guò)程和各種規(guī)則,從使用上說(shuō)畫(huà)的流程圖和設(shè)置的流程規(guī)則就是業(yè)務(wù)流程定義。業(yè)務(wù)流程運(yùn)行的核心是業(yè)務(wù)流程引擎,它解析業(yè)務(wù)流程定義,推進(jìn)業(yè)務(wù)流程的運(yùn)行,運(yùn)行的結(jié)果就是業(yè)務(wù)流程實(shí)例。一個(gè)業(yè)務(wù)流程定義被運(yùn)行一次就產(chǎn)生一個(gè)業(yè)務(wù)流程實(shí)例,在業(yè)務(wù)流程實(shí)例中包含若干待辦任務(wù)。
[0067]界面模型層
[0068]用戶界面是用戶參與到業(yè)務(wù)流程執(zhí)行業(yè)務(wù)活動(dòng)的界面,用戶界面上可以跟用戶交互執(zhí)行各種業(yè)務(wù)動(dòng)作。界面模型層作為業(yè)務(wù)模型體系的一部分,用于感知業(yè)務(wù)數(shù)據(jù)模型的業(yè)務(wù)本體、數(shù)據(jù)規(guī)則;感知組織權(quán)限模型的業(yè)務(wù)權(quán)限;感知業(yè)務(wù)流程模型的流程規(guī)則。
[0069]界面模型層主要包含.W (Π展現(xiàn)描述部分)、.J (Π邏輯實(shí)現(xiàn)部分)、組件、JS、CSS、布局等要素。
[0070].W是界面模型中的重要組成部分,一個(gè).W對(duì)應(yīng)一個(gè)功能頁(yè)面,每個(gè)功能頁(yè)面都必須有對(duì)應(yīng)的process和activity, UI通過(guò)process和activity來(lái)和biz模型進(jìn)行關(guān)聯(lián),從而實(shí)現(xiàn)Π和功能權(quán)限,動(dòng)作權(quán)限,數(shù)據(jù)權(quán)限的關(guān)聯(lián)。同時(shí)通過(guò).J可以進(jìn)行Π層的服務(wù)端邏輯擴(kuò)展。
[0071]對(duì)于同一個(gè)業(yè)務(wù)模型,為了適應(yīng)不同的終端,需要開(kāi)發(fā)不同的界面模型,當(dāng)前界面模型有兩類:UI (針對(duì)PC終端)和mobilen (針對(duì)MOBILE終端)。兩類界面模型的框架都是基于Window組件,同時(shí)針對(duì)終端UI展現(xiàn)和操作各自的特點(diǎn)提供了不同的組件。
[0072]其中,界面模型中的核心是.W文件(擴(kuò)展名為w”),它既負(fù)責(zé)描述一個(gè)具體的頁(yè)面,也同時(shí)是功能頁(yè)面的入口。它可以是由平臺(tái)提供的window組件框架構(gòu)成的頁(yè)面,也可以是標(biāo)準(zhǔn)的xhtml頁(yè)面,同時(shí)也支持由第三方組件體系構(gòu)成?;趙indow組件框架構(gòu)成的.W 文件的根節(jié)點(diǎn)是 window 組件(/Ul/system/components/window.xbl.xml#window)。Window組件下包含model數(shù)據(jù)部分、resource資源部分、view部分、layout布局部分。關(guān)于.W文件的具體可以參考第三章.W。
[0073]其中,.J是UIServer的重要組成部分,是UIServer擴(kuò)展能力的Java手段,是UI模型上提供的servlet能力(注:.J不是servlet,它提供了類似于servlet的能力)。.J相對(duì).W更靈活,能力更強(qiáng),但是.J同時(shí)增加了代碼量(需要用Java代碼實(shí)現(xiàn)),目前在Π上.J主要有兩種用途:代碼邏輯處理和頁(yè)面(或者頁(yè)面片段)生成。
[0074]其中,JS文件是JavaScript代碼文件,提供對(duì)w的控制和操作。JavaScript是一種廣泛用于客戶端Web開(kāi)發(fā)的腳本語(yǔ)言,常用來(lái)給網(wǎng)頁(yè)添加動(dòng)態(tài)功能,比如響應(yīng)用戶的各種操作。JavaScript是客戶端腳本語(yǔ)言,也就是說(shuō)JavaScript是在用戶的瀏覽器上運(yùn)行。在界面模型中通常情況下一個(gè).W文件會(huì)有一個(gè)與它對(duì)應(yīng)同名的JS文件。
[0075]其中,CSS文件為層疊樣式表(英文:Cascading Style Sheets,簡(jiǎn)寫(xiě)為CSS),又稱串樣式列表,由W3C定義和維護(hù)的標(biāo)準(zhǔn),一種用來(lái)為結(jié)構(gòu)化文檔(如HTML文檔或XML應(yīng)用)添加樣式(字體、間距和顏色等)的計(jì)算機(jī)語(yǔ)言。
[0076]CSS的語(yǔ)法很簡(jiǎn)單,它使用一組英語(yǔ)詞來(lái)表示不同的樣式和特征。
[0077]—個(gè)樣式表由一組規(guī)則組成。每個(gè)規(guī)則由一個(gè)“選擇器”(selector)和一個(gè)定義部分組成。每個(gè)定義部分包含一組由半角分號(hào)(;)分離的定義。這組定義放在一對(duì)大括號(hào)(H )之間。每個(gè)定義由一個(gè)特性,一個(gè)半角冒號(hào)(:)和一個(gè)值組成。
[0078]CSS檔內(nèi)也可以包含注釋,注釋以廣開(kāi)始,以7結(jié)尾,例如'r注釋7
[0079]其中,布局文件,即在.W文件中,布局支持兩種寫(xiě)法:在.W文件中內(nèi)嵌布局(通過(guò)view元素下layout來(lái)表示布局)和獨(dú)立于.W文件之外的Excel布局文件進(jìn)行布局。
[0080]對(duì)于每一個(gè)業(yè)務(wù)過(guò)程模塊都能有與之對(duì)應(yīng)的界面模型模塊,它們之間通過(guò)目錄關(guān)系對(duì)應(yīng)(Biz和UI之間目錄一一對(duì)應(yīng));對(duì)于每一個(gè)業(yè)務(wù)過(guò)程模型的環(huán)節(jié),也都可以找到相應(yīng)的界面模型.W (不需要界面的環(huán)節(jié)除外),它們之間的對(duì)應(yīng)規(guī)則是:環(huán)節(jié)標(biāo)識(shí).W。
[0081]本申請(qǐng)的管理軟件平臺(tái)采用XForms標(biāo)準(zhǔn)作為用戶界面的基礎(chǔ)實(shí)現(xiàn)技術(shù),以提供跟用戶的復(fù)雜交互,支持復(fù)雜應(yīng)用的要求。XForms把用戶界面的表單分隔成數(shù)據(jù)、視圖和控制器三個(gè)部分。
[0082]數(shù)據(jù)部分定義了包含在表單中的數(shù)據(jù),并規(guī)定了當(dāng)用戶提交時(shí)如何處理數(shù)據(jù)。表單中的數(shù)據(jù)有主要數(shù)據(jù)和輔助數(shù)據(jù),例如:銷售訂單編制表單的銷售訂單數(shù)據(jù)是主要數(shù)據(jù),訂單中的銷售員對(duì)應(yīng)組織機(jī)構(gòu)中的人員,這個(gè)人員數(shù)據(jù)在這里就是輔助數(shù)據(jù)。
[0083]多個(gè)數(shù)據(jù)之間會(huì)有主從關(guān)系。例如:銷售訂單編制表單中,訂單數(shù)據(jù)是主數(shù)據(jù),訂單中的產(chǎn)品價(jià)格數(shù)量組成的數(shù)據(jù)就是從數(shù)據(jù)。
[0084]用戶提交數(shù)據(jù)時(shí)候,需要檢查簽訂日期一定要大于等于今天,銷售員一定是組織機(jī)構(gòu)中已經(jīng)存在的人員等在業(yè)務(wù)概念中定義的數(shù)據(jù)規(guī)則也是屬于數(shù)據(jù)部分的。這些數(shù)據(jù)的規(guī)則檢查既在瀏覽器上檢查,又在服務(wù)端檢查,這樣可以減少不符合條件的數(shù)據(jù)在瀏覽器和服務(wù)器之間傳遞,也可以保證服務(wù)器端得到的數(shù)據(jù)是經(jīng)過(guò)嚴(yán)格數(shù)據(jù)規(guī)則檢驗(yàn)的。
[0085]視圖部分定義了數(shù)據(jù)如何在表單中布局,采用什么組件來(lái)表現(xiàn)數(shù)據(jù)等。在表單中,可以用平臺(tái)預(yù)置的各種表現(xiàn)組件來(lái)表現(xiàn)數(shù)據(jù),也可以用XBL定義擴(kuò)展組件來(lái)表現(xiàn)數(shù)據(jù)。數(shù)據(jù)在表單的布局,可以用Excel來(lái)定義,也可以直接用XHTML來(lái)定義。表單組件使用的數(shù)據(jù)模型引用實(shí)際上是XPath表達(dá)式。在服務(wù)器端的數(shù)據(jù)和瀏覽器的組件之間的數(shù)據(jù)使用XML作為底層的序列化形式來(lái)傳遞的,數(shù)據(jù)以Unicode格式進(jìn)行編碼和傳遞。
[0086]組織模型層
[0087]組織模型有兩個(gè)部分內(nèi)容,一個(gè)是組織機(jī)構(gòu)中部門人員構(gòu)成,一個(gè)是權(quán)限與分工。組織模型就是用來(lái)定義企業(yè)的組織形式的模型,它以職責(zé)、權(quán)限的形式定義了企業(yè)成員、企業(yè)各個(gè)部門的作用與任務(wù),同時(shí)提供靈活的結(jié)構(gòu)以適應(yīng)不同的企業(yè)或企業(yè)中不同的組織結(jié)構(gòu)。
[0088]組織模型層是業(yè)務(wù)模型的重要組成部分和基礎(chǔ),它是企業(yè)中組織機(jī)構(gòu)計(jì)算機(jī)化的抽象定義,對(duì)應(yīng)于一個(gè)業(yè)務(wù)模型,其組織模型是唯一的。X5平臺(tái)中的組織機(jī)構(gòu)模型的核心是組織(org)、人員(person)和角色(role),通過(guò)這三個(gè)核心元素就可以完備地描述組織機(jī)構(gòu)。
[0089]組織機(jī)構(gòu)是為了優(yōu)化管理和業(yè)務(wù)活動(dòng)而建立的人員的集合,這個(gè)集合具有一定的內(nèi)部層次和隸屬結(jié)構(gòu),具有一定的職能和責(zé)任,并需要在指定時(shí)間內(nèi)完成指定任務(wù)。每一個(gè)組織有一個(gè)最高管理決策者,組織成員具有一定的職責(zé)、權(quán)利和技能,成員之間根據(jù)組織結(jié)構(gòu)廣生一定的權(quán)利和義務(wù)關(guān)系。
[0090]現(xiàn)代企業(yè)組織形式有直線制、直線職能制、事業(yè)部制、矩陣制等幾種形式,一般都是以樹(shù)的形式表示。
[0091]管理軟件平臺(tái)支持機(jī)構(gòu)、部門、崗位,從而支持現(xiàn)代企業(yè)組織的各種形式。機(jī)構(gòu)和部門可以嵌套,機(jī)構(gòu)下可以有機(jī)構(gòu)和部門,部門下可以有部門和崗位。
[0092]機(jī)構(gòu)和部門都可以指定管理者,在管理軟件中可以根據(jù)管理權(quán)限設(shè)置不同用戶查看的數(shù)據(jù)、不同用戶可以查看的任務(wù)等。如每名員工可以在任務(wù)中心看到自己提交的任務(wù)和自己處理的任務(wù)。部門經(jīng)理可以在任務(wù)中心查看自己的任務(wù),也可以查看下屬的任務(wù)。
[0093]人員分配到機(jī)構(gòu)、部門或者崗位下,可以一人多部門,一人多崗位,一人多角色等。
[0094]角色:企業(yè)人員是始終在動(dòng)態(tài)變化著的,其工作能力、狀態(tài)、權(quán)限等都是經(jīng)常變動(dòng)的,以致其行動(dòng)特征也會(huì)變動(dòng)。但動(dòng)態(tài)的為人員分配或刪除角色,以及賦予同一個(gè)人員可扮演多個(gè)角色的能力,可以自然的體現(xiàn)組織中人員自身的演化。
[0095]角色(Role)作為一個(gè)用戶(User)與權(quán)限(Privilege)的代理層,解稱了權(quán)限和用戶的關(guān)系,所有的授權(quán)是給予角色而不是直接給用戶或部門、崗位等。通過(guò)引入角色的概念,減小了授權(quán)管理的復(fù)雜性,降低了管理開(kāi)銷;靈活地支持企業(yè)的安全策略,并對(duì)企業(yè)的變化有很大的伸縮性。
[0096]角色是可以繼承的。所有員工都有請(qǐng)假、領(lǐng)用辦公用品的功能權(quán)限。除此之外,會(huì)計(jì)還可以記賬。在管理軟件平臺(tái)上,既可以每一個(gè)人都分配一個(gè)所有員工的角色,一名會(huì)計(jì)就需要分配兩個(gè)角色:所有員工角色、會(huì)計(jì)角色;也可以讓其他的角色都從所有員工這個(gè)角色繼承下來(lái),這樣,一名會(huì)計(jì)只需要分配一個(gè)會(huì)計(jì)角色就可以了,既靈活又方便。
[0097]企業(yè)在開(kāi)展業(yè)務(wù)時(shí),業(yè)務(wù)活動(dòng)是按照一定的業(yè)務(wù)流程展開(kāi)的,而每一個(gè)業(yè)務(wù)活動(dòng)的開(kāi)展又是在一定的數(shù)據(jù)的基礎(chǔ)上,并且對(duì)業(yè)務(wù)數(shù)據(jù)進(jìn)行一定的操作來(lái)完成的。管理軟件平臺(tái)中,業(yè)務(wù)活動(dòng)包括業(yè)務(wù)流程(Process)、活動(dòng)(Activity)、動(dòng)作(Action),因此,業(yè)務(wù)權(quán)限包括業(yè)務(wù)流程、活動(dòng)、動(dòng)作,不同的用戶進(jìn)行不同的業(yè)務(wù)時(shí)候,所處理的數(shù)據(jù)權(quán)限不同,業(yè)務(wù)權(quán)限還包括數(shù)據(jù)條件(Condition)。
[0098]基于角色的權(quán)限控制(RBAC)體系,業(yè)務(wù)權(quán)限分配到角色上,用戶分配不同的角色從而擁有不同的業(yè)務(wù)權(quán)限。業(yè)務(wù)權(quán)限是業(yè)務(wù)的權(quán)限,不是界面的權(quán)限。
[0099]最后應(yīng)說(shuō)明的是,以上實(shí)施例僅用以描述本發(fā)明的技術(shù)方案而不是對(duì)本技術(shù)方法進(jìn)行限制,本發(fā)明在應(yīng)用上可以延伸為其他的修改、變化、應(yīng)用和實(shí)施例,并且因此認(rèn)為所有這樣的修改、變化、應(yīng)用、實(shí)施例都在本發(fā)明的精神和教導(dǎo)范圍內(nèi)。
【權(quán)利要求】
1.一種基于業(yè)務(wù)模型的架構(gòu)平臺(tái),包括:基礎(chǔ)支撐體系、業(yè)務(wù)運(yùn)行平臺(tái)和業(yè)務(wù)模型系統(tǒng);其中,基礎(chǔ)支撐體系用于統(tǒng)一各類基礎(chǔ)要素和邏輯的管理,包括操作系統(tǒng)、數(shù)據(jù)庫(kù)組件、基礎(chǔ)架構(gòu)平臺(tái)、web平臺(tái)以及應(yīng)用協(xié)議類模塊;業(yè)務(wù)運(yùn)行平臺(tái),用于提供統(tǒng)一、整體性的業(yè)務(wù)運(yùn)行支撐環(huán)境;業(yè)務(wù)模型系統(tǒng)描述各類管理信息系統(tǒng)的業(yè)務(wù),實(shí)現(xiàn)業(yè)務(wù)要素間的協(xié)作,在數(shù)據(jù)、信息、文檔、流程、分工層次上進(jìn)行業(yè)務(wù)級(jí)協(xié)作。
2.根據(jù)權(quán)利要求1所述的架構(gòu)平臺(tái),其中,業(yè)務(wù)模型系統(tǒng)用于定義各類管理信息系統(tǒng)的組織方式、構(gòu)成系統(tǒng)的模型要素、模型要素的接口、模型要素的行為,限定組織模型要素的結(jié)構(gòu)風(fēng)格和分工職責(zé)。
3.根據(jù)權(quán)利要求1所述的架構(gòu)平臺(tái),其中,業(yè)務(wù)模型系統(tǒng)包括數(shù)據(jù)模型層、流程模型層、界面模型層和組織模型層;其中,數(shù)據(jù)模型層從概念層描述業(yè)務(wù)數(shù)據(jù)結(jié)構(gòu),并將概念數(shù)據(jù)結(jié)構(gòu)與實(shí)際物理數(shù)據(jù)結(jié)構(gòu)進(jìn)行映射;流程模型層描述業(yè)務(wù)動(dòng)作、活動(dòng)和流程;界面模型層用來(lái)對(duì)用戶界面進(jìn)行描述;組織模型層用于組織機(jī)構(gòu)的描述及權(quán)限管理;其中,業(yè)務(wù)模型系統(tǒng)還包括基于該四個(gè)模型層進(jìn)行可視化建模的業(yè)務(wù)建模工具,用于對(duì)業(yè)務(wù)進(jìn)行可視化快速建模開(kāi)發(fā)和靈活調(diào)整。
4.根據(jù)權(quán)利要求3所述的架構(gòu)平臺(tái),其中,業(yè)務(wù)運(yùn)行平臺(tái)包括: 數(shù)據(jù)引擎,用于解析數(shù)據(jù)模型層; 流程引擎,用于解析流程模型層; 組織引擎,用于解析組織模型層;和 界面引擎,用于解析界面模型層。
5.根據(jù)權(quán)利要求3所述的架構(gòu)平臺(tái),其中,數(shù)據(jù)模型層包括概念數(shù)據(jù)模型和物理數(shù)據(jù)模型;概念數(shù)據(jù)模型包括業(yè)務(wù)概念、關(guān)系和數(shù)據(jù)規(guī)則;其中,物理數(shù)據(jù)模型負(fù)責(zé)維護(hù)業(yè)務(wù)的數(shù)據(jù),包括業(yè)務(wù)概念向數(shù)據(jù)庫(kù)表的映射信息和數(shù)據(jù)庫(kù)的連接配置信息。
6.根據(jù)權(quán)利要求3所述的架構(gòu)平臺(tái),其中,流程模型層包括業(yè)務(wù)流程模塊、業(yè)務(wù)活動(dòng)模塊、業(yè)務(wù)動(dòng)作模塊和業(yè)務(wù)條件模塊;其中,業(yè)務(wù)流程模塊包括業(yè)務(wù)流程定義、業(yè)務(wù)流程運(yùn)行和業(yè)務(wù)流程實(shí)例,業(yè)務(wù)流程定義描述業(yè)務(wù)流程的整個(gè)過(guò)程和各種規(guī)則,業(yè)務(wù)流程運(yùn)行業(yè)務(wù)流程引擎,解析業(yè)務(wù)流程定義,推進(jìn)業(yè)務(wù)流程的運(yùn)行,運(yùn)行的結(jié)果是業(yè)務(wù)流程實(shí)例。
7.根據(jù)權(quán)利要求3所述的架構(gòu)平臺(tái),其中,界面模型層界面模型層包含Π展現(xiàn)描述部分、Π邏輯實(shí)現(xiàn)部分、組件、JS、CSS以及布局要素,界面模型層還用于感知業(yè)務(wù)數(shù)據(jù)模型的業(yè)務(wù)概念、數(shù)據(jù)規(guī)則,感知組織權(quán)限模型的業(yè)務(wù)權(quán)限,感知業(yè)務(wù)流程模型的流程規(guī)則。
8.根據(jù)權(quán)利要求7所述的架構(gòu)平臺(tái),其中,Π展現(xiàn)描述部分分別對(duì)應(yīng)功能頁(yè)面,每個(gè)功能頁(yè)面都對(duì)應(yīng)過(guò)程和行為,UI通過(guò)過(guò)程和行為和biz模型進(jìn)行關(guān)聯(lián),實(shí)現(xiàn)UI和功能權(quán)限、動(dòng)作權(quán)限、數(shù)據(jù)權(quán)限的關(guān)聯(lián)。
9.根據(jù)權(quán)利要求3所述的架構(gòu)平臺(tái),其中,組織模型層用來(lái)定義企業(yè)的組織形式的模型,以職責(zé)、權(quán)限的形式定義企業(yè)成員、企業(yè)各個(gè)部門的作用與任務(wù),是企業(yè)中組織機(jī)構(gòu)的抽象定義;其中,對(duì)應(yīng)于一個(gè)業(yè)務(wù)模型,其組織模型是唯一的。
10.根據(jù)權(quán)利要求5所述的架構(gòu)平臺(tái),其中,業(yè)務(wù)流程事件在業(yè)務(wù)過(guò)程上定義或者在業(yè)務(wù)環(huán)節(jié)上定義;觸發(fā)順序是先觸發(fā)業(yè)務(wù)過(guò)程上級(jí)的事件,后觸發(fā)業(yè)務(wù)環(huán)節(jié)上的事件;其中,業(yè)務(wù)動(dòng)作模塊分為三級(jí):全局的業(yè)務(wù)動(dòng)作、業(yè)務(wù)過(guò)程級(jí)的業(yè)務(wù)動(dòng)作、業(yè)務(wù)環(huán)節(jié)級(jí)的業(yè)務(wù)動(dòng)作。
【文檔編號(hào)】G06F9/44GK103455325SQ201310314380
【公開(kāi)日】2013年12月18日 申請(qǐng)日期:2013年7月24日 優(yōu)先權(quán)日:2013年7月24日
【發(fā)明者】馬科, 宋興烈 申請(qǐng)人:北京起步科技有限公司