專利名稱:對象過程圖應用程序控制器-查看器的制作方法
發(fā)明
背景技術(shù):
領(lǐng)域本發(fā)明總體上涉及用戶界面,特別涉及面向?qū)ο缶幊痰哪P?視圖-控制器(MVC)框架的控制器和視圖部分。對象過程圖(OPG)涉及MVC模型部分。對象過程圖(OPG)將在隨后進行描述。
背景技術(shù):
由于面向?qū)ο蟮木幊碳夹g(shù)及相關(guān)的面向?qū)ο蟮恼Z言如Smalltalk、C++和Java的發(fā)展和被人們接受,已開發(fā)了大量應用程序開發(fā)框架。模型-視圖-控制器框架為其中之一。其定義了分配應用的功能性及產(chǎn)生可重復使用的控制功能的方式,其可應用于很廣范圍的應用。通常,模型由代表商業(yè)領(lǐng)域中的數(shù)據(jù)元素的永久不變的商業(yè)對象組成;視圖由在顯示介質(zhì)上描繪模型數(shù)據(jù)的繪制對象組成;及控制器由負責控制應用中的信息流的對象組成。
Java服務器頁面(JSP)模型2體系結(jié)構(gòu)是MVC在WEB應用中的最新應用。Jakarta Struts框架為JSP模型2體系結(jié)構(gòu)的實施。
發(fā)明內(nèi)容
本發(fā)明致力于滿足這些需要的對象過程圖應用程序控制器-查看器。
本發(fā)明的一方面是對象過程圖應用程序控制器-查看器,包括對象過程圖應用程序查看器和對象過程圖應用程序控制器。對象過程圖應用程序查看器接收與對象過程圖應用程序和應用程序狀態(tài)相關(guān)的信息。對象過程圖應用程序查看器將對象過程圖應用程序和應用程序狀態(tài)繪制在顯示介質(zhì)上。對象過程圖應用程序控制器處理用戶輸入。對象過程圖應用程序控制器提供指令給動態(tài)圖形解釋器以將對象過程圖應用程序從第一狀態(tài)轉(zhuǎn)變?yōu)榈诙顟B(tài)。對象過程圖應用程序控制器向?qū)ο筮^程圖應用程序查看器提供指令以顯示對象過程圖應用程序和應用程序狀態(tài)。
本發(fā)明的另一方面是提供對象過程圖應用程序控制器-查看器的方法。對象過程圖應用程序的運行被控制,及對象過程圖應用程序及其相關(guān)的應用程序狀態(tài)的顯示被繪制在顯示介質(zhì)上。
本發(fā)明的另一方面是保存為存儲介質(zhì)上的指令、用于執(zhí)行提供對象過程圖應用程序控制器-查看器的方法的軟件產(chǎn)品。接收與對象過程圖應用程序和應用程序狀態(tài)相關(guān)的信息。對象過程圖應用程序和應用程序狀態(tài)被繪制在顯示介質(zhì)上。用戶輸入被處理。對象過程圖應用程序被從第一狀態(tài)轉(zhuǎn)變?yōu)榈诙顟B(tài)。
本發(fā)明具有許多優(yōu)點,包括使應用程序開發(fā)人員、用戶和領(lǐng)域?qū)<以谶\行應用程序的同時能改變OPG應用程序的任何方面。應用信息被繪制在顯示介質(zhì)上。應用信息輸入基于可隨時更改的用戶定義的性質(zhì)進行確認。還提供了輸入和輸出OPG應用程序描述的手段。
本發(fā)明的這些及其它特征、方面和優(yōu)點參考下面的描述、權(quán)利要求及附圖將得以更好地理解,其中圖1為根據(jù)本發(fā)明的實施例的系統(tǒng)的概觀框圖。
圖2為根據(jù)本發(fā)明實施例的對象過程圖應用程序控制器的框圖。
圖3為根據(jù)本發(fā)明實施例的示例性的應用程序會話事務控制流的流程圖。
圖4為根據(jù)本發(fā)明實施例的等待用戶輸入的示例性方法的框圖。
圖5為根據(jù)本發(fā)明實施例的用戶輸入的變化及應用程序狀態(tài)更新的示例性方法的框圖。
圖6為根據(jù)本發(fā)明實施例的確認更新的應用程序狀態(tài)的示例性方法的框圖。
圖7為根據(jù)本發(fā)明實施例的示例性的與確認的應用程序狀態(tài)相關(guān)的新操作的框圖。
圖8為根據(jù)本發(fā)明實施例的新數(shù)據(jù)例圖添加到應用程序狀態(tài)的示例性方法的框圖。
圖9為根據(jù)本發(fā)明實施例的應用程序狀態(tài)變?yōu)橛谰脿顟B(tài)的示例性方法的框圖。
圖10為根據(jù)本發(fā)明實施例的等待用戶輸入的另一示例性方法的框圖。
圖11為根據(jù)本發(fā)明實施例的示例性應用程序輸入/輸出控制部分的框圖。
圖12為根據(jù)本發(fā)明實施例的示例性對象過程圖應用程序查看器的框圖。及圖13為根據(jù)本發(fā)明實施例的示例性對象過程圖應用程序數(shù)據(jù)性質(zhì)的框圖。
具體實施例方式
本發(fā)明的一方面是OPG應用程序控制器(OPGAC)和對象過程圖應用程序查看器(OPGAV)與OPG系統(tǒng)(對象過程圖(OPG)和動態(tài)圖形解釋器(DGI))的集成從而形成動態(tài)模型視圖控制器(DMVC)應用程序結(jié)構(gòu)。這種動態(tài)應用程序結(jié)構(gòu)表明OPG應用程序的運行例圖。動態(tài)圖形解釋器(DGI)將在隨后描述。OPGAC通過下述步驟控制應用程序的運行處理來自用戶或其它系統(tǒng)的輸入數(shù)據(jù)、指令/選擇;經(jīng)OPGAV啟動信息的顯示或輸出;指示DGI啟動應用程序狀態(tài)轉(zhuǎn)變并控制OPG應用程序描述的輸入和輸出。OPGAC是DMVC的控制器部分。
OPGAV是DMVC的視圖部分。其從OPGAC接收顯示/輸出指令以將應用程序OPG繪制在顯示介質(zhì)和/或輸出裝置上。所繪制的OPG提供經(jīng)選擇和輸入控制與應用程序相互作用的手段。它們還在它們的適當語境中顯示應用程序狀態(tài)對象并提供查看和更新其內(nèi)容的方式。
DMVC的另一組成部分OPG系統(tǒng)用作模型部分。其與OPGAC和OPGAV集成。OPG定義應用程序的復雜處理步驟及數(shù)據(jù)并提供對應用程序的永久和瞬時數(shù)據(jù)的存儲。DGI提供由OPGAC和OPGAV調(diào)用的功能以運行OPG定義的應用程序。
本發(fā)明的一示例性實施例(圖1)使OPGAC2和OPGAV3與OPG系統(tǒng)4集成以形成基于Jakarta Struts WEB應用框架的動態(tài)模型視圖控制器(DMVC)5應用程序結(jié)構(gòu)。DMVC能夠提供計算設備如個人計算機(PC)1上的顯示。結(jié)合在該示例性實施例中的其它技術(shù)包括層疊樣式表(CSS)、動態(tài)HTML(DHTM)、Java文檔模型(JDOM)、Java服務器頁面、Struts Tiles等。當然,其它實施例可使用多種其它應用程序框架和技術(shù)實施。
對象過程圖應用程序控制器(OPGAC)OPGAC的一實施例(圖2)包括兩組功能應用程序會話事務控制器8和應用程序輸入/輸出控制器9。應用程序會話事務控制器8包括與OPG系統(tǒng)4相互作用以運行OPG定義的應用程序的四個功能區(qū)用戶輸入處理控制器10、應用程序狀態(tài)轉(zhuǎn)變控制器11、永久數(shù)據(jù)存儲控制器12和OPG顯示控制器13。在本發(fā)明的示例性實施例中,應用程序輸入/輸出控制器9功能輸入和輸出OPG定義的應用程序的XML描述。
在該示例性的實施例中,OPGAC2控制功能與基于Struts的行動類和表單類結(jié)合。行動類解釋用戶選擇、指令和輸入數(shù)據(jù)并相互作用,其還指示DGI更新應用程序狀態(tài)對象、執(zhí)行狀態(tài)確認。同樣,基于應用程序的OPG中的應用程序狀態(tài)對象和處理控制對象,OPGAC2指示DGI將應用程序狀態(tài)與下一有效操作相關(guān)聯(lián)。執(zhí)行這些功能與運行傳統(tǒng)軟件應用程序相似。表單類實現(xiàn)對OPG數(shù)據(jù)對象的標準Java Bean界面訪問并提供對用戶輸入數(shù)據(jù)的訪問以由OPGAC2進行評價。
應用程序會話事務控制器應用程序會話事務控制器8功能實現(xiàn)了圖3中所示的基本應用程序會話事務控制流300的示例性實施例。圖3中所示的示例性方法的概覽開始于開始302,之后為顯示當前應用程序狀態(tài)304??刂屏鳛檠h(huán)流,每次均返回到顯示當前應用程序狀態(tài)304。在顯示當前應用程序狀態(tài)304之后為等待用戶輸入306,隨后在308用戶輸入的變化給應用數(shù)據(jù),之后在310以用戶輸入更新應用程序狀態(tài),在312確認更新的應用程序狀態(tài),然后在314確定狀態(tài)確認是否成功。如果否,控制轉(zhuǎn)到316,恢復最初的應用程序狀態(tài),在318向用戶顯示出錯,并返回等待用戶輸入306。否則,如果在314狀態(tài)確認成功,控制轉(zhuǎn)到320,新的有效操作被選擇并與確認的應用程序狀態(tài)相關(guān)聯(lián);在322,在新的有效操作的基礎上,數(shù)據(jù)例圖被創(chuàng)建并添加到應用程序;在324,新的應用程序狀態(tài)被使得為永久狀態(tài),之后返回顯示當前應用程序狀態(tài)304。
圖4-10更詳細地描述了圖3中所示的流程用于本發(fā)明的實施例的情形。圖4在OPGAV3(將在下面描述)已在304顯示應用程序的OPG及相關(guān)的應用程序狀態(tài)對象的視圖之后開始,在306,系統(tǒng)等待用戶輸入。當前應用程序狀態(tài)為X15,其包括數(shù)據(jù)例圖X、Y和Z。來自這些例圖的值由OPGAV3在OPG內(nèi)的適當位置顯示給用戶。在該例子中,顯示被提供在使用OPGAC2和DGI6的PC1上。
圖5示出了在308用戶已輸入數(shù)據(jù)及在310 OPGAC2已指令DGI6以用戶的輸入更新應用程序狀態(tài)之后的應用程序狀態(tài)。更新的應用程序狀態(tài)具有新的數(shù)據(jù)例圖值X’、Y’和Z’16。在該點,更新的應用程序狀態(tài)16是尚未被確認的試驗狀態(tài)。
圖6示出了響應于OPGAC2的指令,應用程序狀態(tài)17被DGI6確認。其使用OPG系統(tǒng)4中數(shù)據(jù)例圖的確認準則18。也可使用不同的確認,如值范圍測試、類型檢查等。如果在314確認成功,OPGAC進行到基本流程圖中的下一步驟320,如圖7中所示。如果在314確認不成功,在316,OPGAC2指示DGI6恢復最初的應用程序狀態(tài),并在318,指示OPGAV3產(chǎn)生并顯示適當?shù)某鲥e消息。
在圖7中,OPGAC2已指示DGI6執(zhí)行應用程序的OPG定義20中定義的應用程序步驟。在該例子中,DGI6發(fā)現(xiàn)操作B為下一操作,且其已在320將操作B與確認的應用程序狀態(tài)19相關(guān)聯(lián)。
在圖8中,DGI6通過在322產(chǎn)生由OPG22中的操作B定義的數(shù)據(jù)例圖T、U和V并將它們添加到應用程序狀態(tài)而完成操作B與確認的狀態(tài)21的關(guān)聯(lián)。OPG系統(tǒng)4用OPG系統(tǒng)4中定義的默認值初始化數(shù)據(jù)例圖。應用程序狀態(tài)21被重新命名為X’。
在圖9中,在324,OPGAC2指令DGI6使應用程序狀態(tài)X’23成為永久狀態(tài)24。這意味著該狀態(tài)將被保存在數(shù)據(jù)庫中。
最后,在圖10中,在304,OPGAC2指令OPGAV3將應用程序狀態(tài)X’25顯示給用戶。在該點,在本例子中,OPGAC2已完成圖3中所示的基本流程的循環(huán),并將返回到等待用戶請求應用程序的OPG的變化306。
應用程序輸入/輸出控制OPGAC2使用應用程序輸入/輸出控制器9功能裝入和保存OPG定義的應用程序的XML描述。本發(fā)明的一實施例(圖11)包括OPG XML輸入/輸出控制器9和一組輸入/輸出處理器29,OPG定義的應用程序圖的每一所選區(qū)域均有一處理器29。其使用Java文檔模型(JDOM)27分析(對于輸入)或?qū)?對于輸出)XML文件26。應用程序的組成部分由DGI6從OPG系統(tǒng)4取回,其與輸入/輸出處理器29緊密相連。
除了應用程序描述之外,OPGAC2可輸入和輸出應用程序組成部分的描述,包括操作、關(guān)系、數(shù)據(jù)事件等。
對象過程圖應用程序查看器(OPGAV)OPGAV的一示例性實施例(圖12)3包括三個功能動態(tài)頁面和/或輸出產(chǎn)生33、數(shù)據(jù)獲取、轉(zhuǎn)換和準備34、及顯示和安全特性合成34。該示例性的實施例將OPG定義的應用程序數(shù)據(jù)在標準WEB瀏覽器上繪制為WEB頁面和/或產(chǎn)生用于其它系統(tǒng)的輸出數(shù)據(jù)。在該示例性的實施例中,WEB頁面用Java服務器頁面(JSP)、CSS、JDOM和DHTML實現(xiàn)。JSP通過與DGI6相互作用的表單對象和JSP標志庫訪問OPG定義的應用程序數(shù)據(jù)。
DGI6響應于來自數(shù)據(jù)獲取、轉(zhuǎn)換和準備功能33的指令取回應用程序OPG組成部分。數(shù)據(jù)被轉(zhuǎn)換為OPG定義的顯示格式并準備用于合成在HTML頁面中。
DGI6提供為每一原始數(shù)據(jù)元素保存在OPG應用程序狀態(tài)數(shù)據(jù)例圖37中的顯示特性38和安全約束條件39。原始數(shù)據(jù)顯示特性包括元素將繪制在顯示器上的位置、元素的長度和高度等。安全約束條件包括元素是否應被顯示或其是否可被編輯等。
在該示例性的實施例中,顯示和安全特性可在三個層次40進行定義(圖13)應用程序43、操作42和應用程序例圖41。應用程序例圖41特性具有最高優(yōu)先權(quán)。如果存在應用程序例圖41,則其取代應用程序43和操作42特性。操作特性42具有第二最高優(yōu)先權(quán)。如果存在,其取代應用程序特性43。應用程序例圖特性41應用于運行應用程序的單一例圖的應用數(shù)據(jù)。操作特性42應用于運行應用程序的所有例圖,但只在特定操作的上下文內(nèi)。應用程序特性43在應用程序的上下文內(nèi)應用于應用程序的所有例圖。顯示和安全特性合成功能根據(jù)應用程序例圖的當前狀態(tài)(上下文)確定使用哪些特性。
OPGAV3為OPG定義的應用程序提供動態(tài)用戶界面。其根據(jù)應用程序的OPG中用戶、開發(fā)人員或領(lǐng)域?qū)<叶x的特性繪制顯示頁面和輸入表格。特性可被隨時改變并立即生效,即,OPGAV3使用最新的特性顯示應用程序的OPG。
對象過程圖應用程序控制器-查看器方法及示例性實施例下面是產(chǎn)生對象過程圖應用程序控制器-查看器系統(tǒng)的示例性實施例的方法的示例性實施例的描述,所述系統(tǒng)已在上面進行定義和描述。
1)假設存在OPGACV3的實施例將被添加至其的對象過程圖系統(tǒng)4的實施例,選擇硬件/操作系統(tǒng)平臺、編程框架、數(shù)據(jù)庫和/或文件系統(tǒng)和OPGACV3系統(tǒng)將建立于其上并運行的顯示介質(zhì)(如顯示設備)的初始設置,其與用于建立OPG系統(tǒng)4的一樣或兼容。對象過程圖系統(tǒng)將在隨后描述。在一實施例中,使用Linux操作系統(tǒng),其在內(nèi)聯(lián)網(wǎng)的基于Intel的服務器硬件上運行,其連接到運行Microsoft WindowsXP軟件的基于Intel的PC。來自Sun微系統(tǒng)的Java編程語言用于編程OPGACV3系統(tǒng)。該實施例可在本地運行Windows XP操作系統(tǒng)的Tomcat應用服務器上運行或在運行Tomcat的遠程Linux服務器上運行。來自Eclipse Foundation的Eclipse開發(fā)平臺和來自Genuitec的MyEclipse插件可用于做Java軟件開發(fā)。應注意,上述操作系統(tǒng)、應用程序平臺和編程語言工具僅代表可用于產(chǎn)生和運行示例性實施例的開發(fā)和操作系統(tǒng)的許可可能配置中的一種。
2)使用上面關(guān)于本發(fā)明的發(fā)明內(nèi)容和描述以及附圖1-13,定義將擁有所需功能的一組類及適當?shù)念悓哟?。在Gamma等1995年在Addison Wesley的“設計圖案”及Grand1998年在Wiley ComputerPublishing的“Java圖案”中描述的設計圖案可用以產(chǎn)生一組具有所需功能的類。也可使用高級CASE工具用于這些類的定義??杀欢x的一些類為a、擴展Struts行動類的摘要類可被定義,其實現(xiàn)圖3中描述的基本控制流。擴展該類以提供下述應用程序功能的另外的類也可被定義用戶登錄/注銷、安全性管理(新用戶、用戶權(quán)限等)、數(shù)據(jù)輸入/輸出、審計、報告及事務控制(開始、編輯、合并等)。這些類提供OPGAC2的功能,即用戶輸入狀態(tài)改變、應用程序狀態(tài)轉(zhuǎn)變和應用顯示控制。
b、提供OPG定義的應用程序輸入/輸出功能的一組類。
c、基于Struts框架定義基本應用程序頁面的JSP布局(模板),如用戶登錄/注銷、安全性管理、數(shù)據(jù)輸入/輸出、審計、報告、事務控制等。定義布局的標準區(qū)如頁眉、主體、頁腳、標題等的JSP平鋪顯示部分。
d、經(jīng)DGI6實現(xiàn)OPG訪問的一組JSP標志類和Struts表單類,其執(zhí)行數(shù)據(jù)特性合成和動態(tài)頁面產(chǎn)生功能。
e、提供窗口組成部分的屬性的一組CSS定義,其可由在WEB瀏覽器上運行的Java腳本功能更新。
上述程序和類可包括內(nèi)部類和一些第一類對象以提供特定功能。這些類中沒有一個是永久類。
對象過程圖描述對象過程圖(OPG)是對象過程圖系統(tǒng)(OPGS)的定義部分,所述系統(tǒng)為完整的應用程序開發(fā)和執(zhí)行環(huán)境。其它部分包括解釋或執(zhí)行由OPG定義的應用程序的動態(tài)圖形解釋器(DGI)及用于產(chǎn)生和修改OPG的圖形用戶界面。
OPG的實施例可被視為計算機語言(其為Turing完成),其被解釋為程序被執(zhí)行。OPG保存在瞬時及永久計算機存儲器中。OPG可保存任何數(shù)據(jù)結(jié)構(gòu),其包括但不限于關(guān)系表、層次表、n維數(shù)據(jù)陣列、電子數(shù)據(jù)表、圖形模型和3維物理模型。這些數(shù)據(jù)結(jié)構(gòu)不保存為二進制大對象,其在關(guān)系數(shù)據(jù)庫系統(tǒng)中是普通的,但在影響它們的最初結(jié)構(gòu)和內(nèi)部關(guān)系的特殊OPG結(jié)構(gòu)中不是。OPG處理和控制結(jié)構(gòu)提供對應用程序內(nèi)永久和瞬時數(shù)據(jù)確認、變換和顯示的順序和定時的控制。OPG結(jié)構(gòu)還定義數(shù)學公式、常規(guī)表示式(在文字數(shù)據(jù)或混合數(shù)字和文字的數(shù)據(jù)的情形下)及完整的算法。
應用程序的OPG可被繪制在計算機終端或靜態(tài)輸出介質(zhì)如紙上。顯示在交互式介質(zhì)上的OPG數(shù)據(jù)、處理和控制結(jié)構(gòu)可被編輯。與傳統(tǒng)的軟件開發(fā)系統(tǒng)不同,編輯應用程序的OPG不產(chǎn)生必須被編譯和安裝的代碼。而是,做出改變并立即生效。改變甚至可在DGI正進行解釋(運行應用程序)時進行。隨時安全改變應用程序的能力對于大型、復雜的企業(yè)級應用系統(tǒng)的快速開發(fā)和長期維護是需要的。
在OPG中的所有應用程序執(zhí)行狀態(tài)信息被保存在應用程序狀態(tài)對象中。DGI通過改變其保存的應用程序狀態(tài)信息而作用于OPG。應用程序狀態(tài)信息可包括任何永久數(shù)據(jù)對象。DGI可同時對多個應用程序狀態(tài)作用,在應用程序狀態(tài)對象的組合之間合并或拆分狀態(tài)信息。
OPG以原始數(shù)據(jù)級為應用程序中的所有永久和瞬時數(shù)據(jù)變化保留審計追蹤信息。審計追蹤信息很容易用于經(jīng)顯示控制顯示在用戶界面上或用于應用程序的處理和數(shù)據(jù)流的進一步更新和操控。
定義長及短事務中進行的變化的審計信息被保留和追蹤應用程序的永久數(shù)據(jù)的所有變化。長事務使系統(tǒng)能夠組織、控制和跟蹤所有永久數(shù)據(jù)的變化。這些變化可在許多工作會話中跨延長的時間段(幾天或幾周)出現(xiàn)。另一方面,短事務在單一用戶會話或與系統(tǒng)相互作用期間進行。長和短事務信息立即可經(jīng)系統(tǒng)的圖形用戶界面用于應用程序內(nèi)的操控和顯示。追蹤長事務還有助于回退到事務中的任何點,(使用審計追蹤)事務的刪除經(jīng)應用程序界面自動可用。通過系統(tǒng)界面可對用戶對應用程序內(nèi)的所有功能和數(shù)據(jù)的訪問進行控制。這包括每一用戶對確定為應用程序的一部分的每一原始數(shù)據(jù)項的分開訪問權(quán)限(讀、寫、回退)。
除了經(jīng)用戶界面輸入或改變數(shù)據(jù)以外,系統(tǒng)的實施例還接受來自其它系統(tǒng)的、任何數(shù)字格式的、對應用進程的輸入數(shù)據(jù)。
一些實施例包括圖形用戶界面。圖形用戶界面使用戶能夠指明所有輸入的格式,其隨后被自動分析和用于更新應用程序-在應用程序進程的任何點添加到或修改數(shù)據(jù)庫中的永久數(shù)據(jù)或應用程序或顯示界面中的瞬時數(shù)據(jù)。
同樣,輸出數(shù)據(jù)可從應用程序的任何點以任何格式產(chǎn)生(對于永久或瞬時數(shù)據(jù)),其使用與上面各個實施例相反的過程進行。在一些實施例中,外部數(shù)據(jù)庫如關(guān)系數(shù)據(jù)庫可向應用程序注冊,應用程序內(nèi)的所有永久數(shù)據(jù)可被保存在這樣的數(shù)據(jù)庫中或從其取回。
本發(fā)明的對象過程圖部分的實施例擴展了傳統(tǒng)的面向圖形對象的數(shù)據(jù)庫的基本功能。本發(fā)明的實施例將動態(tài)過程單元的功能和面向圖形對象的數(shù)據(jù)庫合成為單一集成系統(tǒng),這使得可快速產(chǎn)生完整的、復雜的企業(yè)級應用程序,而不使用傳統(tǒng)的編程語言。OPG被直接和動態(tài)地解釋,因此不需要產(chǎn)生代碼。改變OPG的容易及對改變的立即反饋大大簡化了基于OPG的應用程序的維護和改變。
盡管本發(fā)明已參考某些實施例進行相當詳細的描述,其它實施例也是可能的。例如,不同的操作系統(tǒng)、編程語言和軟件體系結(jié)構(gòu)可用于實施本發(fā)明的實施例。因此,所附權(quán)利要求的精神和范圍不應限于在此包含的實施例的描述。
如上所述,本發(fā)明的實施例可體現(xiàn)為硬件、軟件、固件形式或用于實現(xiàn)實施例的任何方法和/或裝置。本發(fā)明的實施例還可體現(xiàn)為計算機程序代碼的形式,其包含存儲在有形介質(zhì)如軟盤、CD-ROM、硬盤、或任何其它計算機可讀存儲介質(zhì)中的指令,其中,當計算機程序代碼被裝入計算機并由計算機執(zhí)行時,計算機成為實施本發(fā)明的裝置。本發(fā)明還可體現(xiàn)為計算機程序代碼的形式,例如,無論是保存在存儲介質(zhì)中、裝入計算機和/或有計算機執(zhí)行,還是在一些傳輸介質(zhì)如在電線或電纜上、通過光纖、或經(jīng)電磁輻射進行傳輸,其中,當計算機程序代碼被裝入計算機并由計算機執(zhí)行時,計算機成為實施本發(fā)明的裝置。當實施在通用微處理器上時,計算機程序代碼段配置微處理器以產(chǎn)生特定的邏輯電路。
在本發(fā)明已結(jié)合示例性實施例進行描述的同時,本領(lǐng)域技術(shù)人員將理解,可進行許多變化或等價替代其中的組成部分,而不會背離本發(fā)明的范圍。此外,可進行許多修改以使特定的情形或材料適應本發(fā)明的教義,而不背離本發(fā)明的實質(zhì)范圍。因此,本發(fā)明不應限于作為預計實現(xiàn)本發(fā)明的最佳方式在此公開的特定實施例,而是將包括落在所附權(quán)利要求范圍內(nèi)的所有實施例。此外,術(shù)語第一、第二等的使用并不指示任何順序或重要性,而是用于使一個組成部分與另一組成部分區(qū)別開。
權(quán)利要求
1.對象過程圖應用程序控制器-查看器,包括對象過程圖應用程序查看器,其用于接收與對象過程圖應用程序和應用程序狀態(tài)相關(guān)的信息并將所述對象過程圖應用程序和所述應用程序狀態(tài)繪制在顯示介質(zhì)上;及對象過程圖應用程序控制器,其用于處理用戶輸入、提供指令給動態(tài)圖形解釋器以將所述對象過程圖應用程序從第一狀態(tài)轉(zhuǎn)變?yōu)榈诙顟B(tài)、及向所述對象過程圖應用程序查看器提供指令以顯示所述對象過程圖應用程序和所述應用程序狀態(tài)。
2.根據(jù)權(quán)利要求1的對象過程圖應用程序控制器-查看器,其中所述對象過程圖應用程序查看器能夠?qū)踩约s束條件應用于所述對象過程圖應用程序和所述應用程序狀態(tài)。
3.根據(jù)權(quán)利要求1的對象過程圖應用程序控制器-查看器,還包括應用程序會話事務控制器,其用于處理輸入數(shù)據(jù)、向所述對象過程圖應用程序查看器提供指令以繪制所述對象過程圖應用程序和所述應用程序狀態(tài)、及將所述對象過程圖應用程序從所述第一狀態(tài)轉(zhuǎn)變?yōu)樗龅诙顟B(tài)。
4.根據(jù)權(quán)利要求3的對象過程圖應用程序控制器-查看器,其中所述輸入數(shù)據(jù)包括指令或選擇。
5.根據(jù)權(quán)利要求1的對象過程圖應用程序控制器-查看器,其中所述應用程序會話事務控制器能夠使更新的應用程序狀態(tài)成為永久狀態(tài)。
6.根據(jù)權(quán)利要求1的對象過程圖應用程序控制器-查看器,其中所述應用程序會話事務控制器能夠命令所述動態(tài)圖形解釋器確認和更新所述對象過程圖應用程序和所述應用程序狀態(tài)。
7.根據(jù)權(quán)利要求1的對象過程圖應用程序控制器-查看器,還包括應用程序輸入/輸出控制器,其用于裝入和保存與所述對象過程圖應用程序相關(guān)的描述。
8.根據(jù)權(quán)利要求1的對象過程圖應用程序控制器-查看器,其中所述對象過程圖應用程序查看器包括動態(tài)輸出產(chǎn)生控制器,其用于將所述對象過程圖應用程序和所述應用程序狀態(tài)繪制在所述顯示介質(zhì)上;數(shù)據(jù)獲取、轉(zhuǎn)換和準備控制器,其用于向所述動態(tài)圖形解釋器提供指令以取回并將所述對象過程圖應用程序和所述應用程序狀態(tài)轉(zhuǎn)換為預定格式;及顯示和安全特性合成控制器,用于將安全約束條件和顯示特性應用于所述對象過程圖應用程序和所述應用程序狀態(tài)。
9.根據(jù)權(quán)利要求1的對象過程圖應用程序控制器-查看器,其中所述安全約束條件為面向語境的約束條件。
10.提供對象過程圖應用程序控制器-查看器的方法,包括控制對象過程圖應用程序的運行;及在顯示介質(zhì)上提供所述對象過程圖應用程序和相關(guān)的應用程序狀態(tài)的顯示。
11.根據(jù)權(quán)利要求10的方法,其中所述控制包括處理輸入數(shù)據(jù);啟動所述顯示;提供開始應用程序狀態(tài)轉(zhuǎn)變的指令;及控制對象過程圖應用程序描述的輸入和輸出。
12.根據(jù)權(quán)利要求10的方法,其中所述輸入數(shù)據(jù)包括指令或選擇。
13.根據(jù)權(quán)利要求10的方法,其中所述提供顯示包括接收用于所述顯示的指令;提供經(jīng)輸入數(shù)據(jù)與所述對象過程圖應用程序和所述應用程序狀態(tài)相互作用的手段;及在語境中顯示所述應用程序狀態(tài)。
14.保存為存儲介質(zhì)上的指令的軟件產(chǎn)品,其執(zhí)行提供對象過程圖應用程序控制器-查看器的方法,該方法包括接收與對象過程圖應用程序和應用程序狀態(tài)相關(guān)的信息;在顯示介質(zhì)上繪制所述對象過程圖應用程序和應用程序狀態(tài);處理輸入數(shù)據(jù);及將所述對象過程圖應用程序從第一狀態(tài)轉(zhuǎn)變?yōu)榈诙顟B(tài)。
15.根據(jù)權(quán)利要求14的方法,其中所述用戶輸入包括指令或選擇。
16.根據(jù)權(quán)利要求14的方法,還包括使更新的應用程序狀態(tài)成為永久狀態(tài)。
17.根據(jù)權(quán)利要求14的方法,還包括確認和更新所述對象過程圖應用程序和所述應用程序狀態(tài)。
18.根據(jù)權(quán)利要求14的方法,還包括裝入并保存與所述對象過程圖應用程序相關(guān)的描述。
19.根據(jù)權(quán)利要求14的方法,還包括格式化所述對象過程圖應用程序和所述應用程序狀態(tài)。
20.根據(jù)權(quán)利要求14的方法,還包括將面向語境的安全約束條件應用于所述對象過程圖應用程序和所述應用程序狀態(tài)。
全文摘要
本發(fā)明提供了計算機軟件系統(tǒng),即對象過程圖應用程序控制器-查看器(OPGACV)系統(tǒng)。OPGACV通過引發(fā)動態(tài)圖形解釋器(DGI)將應用程序從一狀態(tài)轉(zhuǎn)變?yōu)榱硪粻顟B(tài)及使用應用程序設計者/用戶定義的特性控制運行對象過程圖(OPG)應用程序,其在顯示介質(zhì)上繪制應用程序狀態(tài)、結(jié)構(gòu)和數(shù)據(jù)并確認對應用程序的數(shù)據(jù)輸入。OPGACV還控制OPG應用程序的輸入和輸出。
文檔編號G06F9/44GK101027638SQ200580023966
公開日2007年8月29日 申請日期2005年6月23日 優(yōu)先權(quán)日2004年7月16日
發(fā)明者斯蒂芬·艾倫·戈爾德, 戴維·馬文·貝克, 弗拉迪米爾·古謝夫, 梁紅平 申請人:圖形公司