国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      使用基于事件的遺留應(yīng)用進(jìn)行的集成系統(tǒng)組合建模的制作方法

      文檔序號:6332266閱讀:534來源:國知局
      專利名稱:使用基于事件的遺留應(yīng)用進(jìn)行的集成系統(tǒng)組合建模的制作方法
      技術(shù)領(lǐng)域
      本公開涉及一種用于使用基于事件的遺留應(yīng)用來擴(kuò)展建模環(huán)境的工具。特別地, 本公開涉及這樣的工具,其允許建模人員創(chuàng)建用于來自圖形用戶界面(GUI)應(yīng)用(GAP)的 建模環(huán)境工具箱的建模元素,以及生成用以控制和操縱由建模元素表示的GAP的GUI對象 的源代碼。
      背景技術(shù)
      集成系統(tǒng)由交換信息的組件組成,這樣的組件也被稱為互操作組件。集成系統(tǒng)的 組件可以包含基于事件的不同遺留應(yīng)用,例如圖形用戶界面(⑶I)應(yīng)用(GAP)。組織使用遺 留的GAP來協(xié)助業(yè)務(wù)運營,以使業(yè)務(wù)處理自動化,例如,增加信息交換的速度和有效性。組織發(fā)現(xiàn)將GAP重新建造到編程組件中是困難的,這是因為脆弱的遺留架構(gòu)、不 良的文檔、巨大的編程努力、以及由此導(dǎo)致的這些項目的巨大成本。因為業(yè)務(wù)成功使用GAP 數(shù)十年,管理者不愿意批準(zhǔn)更改源代碼,因這可能破壞GAP和擾亂已經(jīng)良好建立的業(yè)務(wù)服 務(wù)。為了通過增加GAP與新組件(例如網(wǎng)絡(luò)服務(wù))的互操作性來改善業(yè)務(wù)處理,許多組織 探索如何在新的集成系統(tǒng)中包含遺留GAP。組織經(jīng)常依賴建模人員開發(fā)新集成系統(tǒng)的模型。建模人員可以使用統(tǒng)一建模語言 (UML)圖形表示應(yīng)用(例如,ArgoUML 應(yīng)用),其提供了用來創(chuàng)建描述新集成系統(tǒng)的模型的 一套圖形符號技術(shù)。然而,建模人員發(fā)現(xiàn),對包含GAP的新集成系統(tǒng)進(jìn)行建模是困難的,因 為許多GAP是封閉的、整體的,并且沒有以已知的格式公開任何編程接口或數(shù)據(jù)。盡管建模 人員渴望將GAP作為集成系統(tǒng)中的組件使用,但是建模人員發(fā)現(xiàn),捕獲GAP的功能和接口以 作為基于UML的模型的元素(例如,類和接口)是困難的。建模人員發(fā)現(xiàn),捕獲GUI對象的 屬性和GUI對象間的依賴關(guān)系是困難的,因為GUI模型對于遺留應(yīng)用經(jīng)常是不可得的。當(dāng)前,建模人員使用手工的、費勁的、易于出錯的過程來研究GAP以及將GUI對象 轉(zhuǎn)換為UML元素,以作為這些GAP功能的抽象。建模人員發(fā)現(xiàn),在建模環(huán)境中使用GAP是困 難的,因為許多遺留GAP沒有公開任何編程接口。建模人員發(fā)現(xiàn),捕獲GUI對象的屬性和 GUI對象間的依賴關(guān)系是困難的,因為GUI模型對于遺留應(yīng)用經(jīng)常是不可得的。理論上,能夠從GAP的源代碼中提取GUI模型,然而,存在兩個根本的限制。第一, GAP的源代碼經(jīng)??赡苁遣豢傻玫?。例如,建??赡芡獍o外部組織,遺留應(yīng)用的源代碼可 能不對該組織共享。這樣,外部組織沒有能力從源代碼中導(dǎo)出精確的⑶I模型。第二,即使 外部組織具有或擁有對源代碼的訪問權(quán),依然存在使從源代碼導(dǎo)出GUI模型的方法低效的 限制。例如,Microsoft Windows 應(yīng)用編程接口(API)調(diào)用CreatWindow,其用在大量的 GAP中,獲得包括字符串變量的若干參數(shù)變量,該字符串變量保有GUI對象的類型的值,這 個值常常是只有在運行時才可知。另外,從GAP的源代碼導(dǎo)出模型依賴于了解創(chuàng)建和操縱GUI對象的API調(diào)用的精 確語義(例如,CreatWindow)、為用于創(chuàng)建GUI應(yīng)用的語言建立適當(dāng)?shù)慕馕銎骱头治銎饕?及開發(fā)用于從集成開發(fā)環(huán)境(IDE)GUI資源庫中提取GUI模型的IDE特定工具。元組的數(shù)量按照“API調(diào)用X編程語言XIDE”的成千上萬的笛卡爾積來測量,這增加了識別與不同 GUI應(yīng)用的源代碼庫一起工作的方法的難度。UML模型中使用⑶I對象的一個根本限制是⑶I對象不是可以使用UML標(biāo)準(zhǔn)元素 來建模的編程對象。在相應(yīng)的GAP內(nèi)使用底層GUI框架創(chuàng)建GUI對象,GUI對象不是任何建 模環(huán)境的一部分。一些GUI對象要求用戶在GUI對象實例化之前執(zhí)行對GAP的多個動作。 在未將這些動作嵌入UML元素中的情況下,建模人員發(fā)現(xiàn)創(chuàng)建能夠轉(zhuǎn)變成使用這些⑶I對 象的源代碼的UML模型是困難的。GAP以很多不同的語言編寫并運行在很多不同的平臺。存在很多從GAP中提取數(shù) 據(jù)的平臺和語言特定的技術(shù)。然而,在用于不同建模平臺和語言的工具中實現(xiàn)這些特定技 術(shù)導(dǎo)致用于各個工具的多個源代碼版本、增加了維護(hù)工具的成本、難以維護(hù)和演進(jìn)不同的 代碼庫。最后,建模人員發(fā)現(xiàn)從包含描述GUI對象的元素的UML模型中生成源代碼是困難 的。表示⑶I對象的類應(yīng)包含訪問和操縱這些⑶I對象的代碼,因為這些⑶I對象在GAP 進(jìn)程和底層⑶I框架(例如,MS-Windows 或Java SWT-標(biāo)準(zhǔn)部件工具包)的上下文中動 態(tài)地創(chuàng)建。因為模型沒有反映GUI對象存在的上下文,建模人員發(fā)現(xiàn)維護(hù)和利用相應(yīng)的GAP 演進(jìn)這些模型是困難的。上述技術(shù)沒有一個是足夠一致的、非侵入性的和有效的。因此,需要解決上述問題 和之前經(jīng)歷的其它問題。

      發(fā)明內(nèi)容
      通過為GAP的GUI對象和GAP的功能定義建模元素,“基于事件的集成應(yīng)用組合建 ?!?CINEMA)有效地且非侵入性地擴(kuò)展了 UML建模環(huán)境。為了創(chuàng)建模型,CINEMA通過導(dǎo)航 GUI對象、選擇GUI對象、將GUI對象拖放到建模畫布上,允許用戶對包含遺留GAP的集成 系統(tǒng)進(jìn)行建模。由于CINEMA廣泛的適用性,CINEMA使用不依賴于語言的底層技術(shù),其對于 控制和操縱GAP的主要計算平臺是通用的。CINEMA從GUI結(jié)構(gòu)分離UML建模環(huán)境,并隱藏 CINEMA中模型和GAP之間的連接。CINEMA⑴便于用戶使用GAP創(chuàng)建集成系統(tǒng)模型,⑵在 用戶與GAP交互期間捕獲結(jié)構(gòu)和狀態(tài),以及(3)指定用在模型中并隨后部署在產(chǎn)生的集成 系統(tǒng)中的GUI對象的類型和名稱。CINEMA可以用于數(shù)據(jù)集成、GAP復(fù)用、協(xié)同計算和應(yīng)用向新平臺的移植。使用 CINEMA,建模人員花費最少的開發(fā)努力來建模集成系統(tǒng)。例如,CINEMA通過在集成系統(tǒng)中簡 單地復(fù)用遺留應(yīng)用,提供了重寫遺留應(yīng)用的有吸引力的替代方式。CINEMA提供有效和非侵 入性的方式,允許工程師使用現(xiàn)有的GAP來創(chuàng)建供CINEMA用來擴(kuò)展建模環(huán)境的組合模型。 CINEMA結(jié)合了輔助技術(shù)的非標(biāo)準(zhǔn)用途以用于訪問和控制GAP。CINEMA擴(kuò)展了 UML建模環(huán) 境,允許建模人員使用GAP特性創(chuàng)建集成環(huán)境的模型。通過允許工程師使用現(xiàn)有的GAP創(chuàng) 建組合模型,CINEMA逆轉(zhuǎn)了從需求到應(yīng)用的標(biāo)準(zhǔn)建模方向(例如,GAP到需求)。CINEMA允許用戶(例如,建模人員)將GAP建模為編程對象、將這些GAP的⑶I對 象建模為這些編程對象的域,并通過調(diào)用對編程對象的方法執(zhí)行對這些編程對象的動作。 不幸的是,集成系統(tǒng)和建模環(huán)境(IS/ΜΕ)不能象純粹的編程對象那樣訪問和操縱GUI對象, 因為GUI對象只能支持用戶級別的交互。輔助技術(shù)公開了特殊的接口,其方法能夠被調(diào)用、
      5其域值能夠被設(shè)置和獲取以控制GUI對象。為了以一致的方式訪問和控制GAP,CINEMA結(jié)合了輔助技術(shù)的非標(biāo)準(zhǔn)用途。 CINEMA使用可視化機(jī)制,能夠使用戶通過對GAP執(zhí)行點擊和拖放操作創(chuàng)建包含GAP的GUI 對象的集成系統(tǒng)模型。CINEMA使用可訪問性層和鉤子將事件監(jiān)聽器注入GAP。為了創(chuàng)建擴(kuò) 展UML建模環(huán)境(例如,Eclipse 軟件-在Eclipse Public License (EPL) 1. 0開源許可 下發(fā)布)的建模元素,事件監(jiān)聽器響應(yīng)CINEMA記錄的事件。輔助技術(shù)對于殘障計算機(jī)用戶提供不同的幫助。由輔助技術(shù)提供的一些幫助包括 用于視覺受損用戶的屏幕閱讀器、用于喪失聽力的用戶的視覺指示器或字幕、以及對行動 不便用戶進(jìn)行彌補(bǔ)的軟件。大多數(shù)計算平臺包含輔助技術(shù),因為要求電子信息技術(shù)產(chǎn)品和 服務(wù)滿足電子信息輔助標(biāo)準(zhǔn)。例如,Mircosoft Active Accessibility(MSAA )技術(shù)設(shè) 計用來改善輔助幫助與運行在MS-Windows 上的應(yīng)用一起工作的方式,Sun Microsystem Accessibility技術(shù)幫助在Java虛擬機(jī)(JVM )上運行軟件的殘疾人士。為了公開關(guān)于用 戶接口元素的信息,輔助技術(shù)被并入計算平臺、庫和應(yīng)用中。輔助技術(shù)提供了許多復(fù)雜的服 務(wù),要求這些服務(wù)取得⑶I對象屬性、設(shè)置和獲取用于⑶I對象的值、以及產(chǎn)生和攔截不同 的事件。例如,盡管可以使用用于Windows 的MSAA ,但是使用一個不同的輔助技術(shù)也會 產(chǎn)生相似的結(jié)果。盡管不存在用于輔助應(yīng)用編程接口(API)調(diào)用的標(biāo)準(zhǔn),但是不同的技術(shù) 提供相似的API調(diào)用,這意味著達(dá)成用于輔助技術(shù)的通用編程標(biāo)準(zhǔn)將是緩慢的。輔助技術(shù) 利用了 GUI對象公開了一個公知的接口,該接口輸出用于訪問和操縱這些對象的屬性和行 為的方法。例如,實現(xiàn)IAccessible 接口的MS-Windows 的⑶I對象允許使用MSAA 的 API調(diào)用訪問和操縱該GUI對象。輔助技術(shù)允許程序員編寫代碼以如同標(biāo)準(zhǔn)編程對象一樣 訪問和控制GUI對象。使用輔助技術(shù),程序員還能夠為GUI對象產(chǎn)生的不同事件注冊回調(diào) 函數(shù),從而及時獲得關(guān)于GUI對象狀態(tài)的信息。例如,如果一個GUI對象接收了一個不正確 的輸入并且GAP顯示一個錯誤消息對話框通知用戶這個錯誤,則先前注冊的回調(diào)函數(shù)能夠 攔截通知產(chǎn)生錯誤消息對話框的事件、讓該事件離開、并發(fā)送一個“非法輸入”消息給控制 GAP的工具和/或編程指令。鉤子是用戶定義的庫,包含回調(diào)函數(shù)(或簡稱回調(diào)),其按照輔助技術(shù)指示的一定 規(guī)則編寫。當(dāng)一個目標(biāo)GAP啟動時,可訪問性層在該GAP的進(jìn)程空間中加載預(yù)定義的鉤子 庫,并注冊響應(yīng)特定事件而被調(diào)用的回調(diào)函數(shù)的地址。因為鉤子在GAP的進(jìn)程空間里“生 存”,鉤子的回調(diào)函數(shù)能夠影響執(zhí)行這些GAP的每個方面。鉤子允許用戶擴(kuò)展GAP的功能, 特別是不用改變GAP源代碼的情況下將鉤子和GAP集成在一起。編寫鉤子不需要任何關(guān)于 GAP源代碼的知識。鉤子庫可以是所有GAP通用的。鉤子被注入GAP、監(jiān)聽該GAP生成的事 件、執(zhí)行從集成系統(tǒng)接收的指令。作為一個例子指令,鉤子可以禁用按鈕直到一定的事件發(fā) 生。鉤子庫允許程序員改變現(xiàn)有GAP的功能,而無需修改GAP的源代碼。通用鉤子的功能 包括接收對GUI對象執(zhí)行動作的命令、報告發(fā)生在GAP內(nèi)的事件、響應(yīng)一定的命令和事件調(diào) 用預(yù)定義的函數(shù)。上面提到的一些概念可以在以下的美國專利申請中更加詳細(xì)說明,包括序 列號 11/710,681,公開號 2008/0209356,標(biāo)題是"Graphical Unit Interface Based Application to Web Services Conversion System",Mark Grechanik等人,申請日是2007 年 2 月 23 日;序列號 11/710,233,公開號 2008/0209348,標(biāo)題是"Composing IntegratedSystems Using GUI-Based Applications and Web Services,,,Mark Grechanik 等人, 申請日是2007年2月23日;序列號11/710,680,公開號2008/0209446,標(biāo)題是“Design Tool for Converting Legacy Applications to Web Services,,,Mark Grechanik 等人, 申請日是2007年2月23日;序列號11/888,970,公開號2009/0037896,標(biāo)題是“Legacy Application Decommissioning Framework,,,Mark Grechanik 等人,申請日是 2007 年 8 月 2 日;序列號 11/824,373,公開號 2009/0007066,標(biāo)題是“Refactoring Monolithic Applications into Dynamically Reconfigurable Applications,,,Mark Grechanik等人, 申請日是2007年6月29日,這些美國專利申請的每一篇的全部公開內(nèi)容通過引用結(jié)合于 此。CINEMA允許建模人員創(chuàng)建集成系統(tǒng)的模型,其高度自動化地利用遺留GAP。使用 CINEMA創(chuàng)建的模型可以表示這樣的集成系統(tǒng),該集成系統(tǒng)能夠在大型分布式企業(yè)環(huán)境中提 供功能,其協(xié)調(diào)位于不同計算機(jī)和運行在不同平臺(例如,操作系統(tǒng)和系統(tǒng)配置)的不同 GAP。CINEMA提供非侵入性的方式來創(chuàng)建模型和生成控制GAP的源代碼。CINEMA允許建 模人員僅需具有為完成業(yè)務(wù)任務(wù)如何與GAP交互的基礎(chǔ)知識,就能使用GUI對象創(chuàng)建模型。 CINEMA允許建模人員使用GUI對象創(chuàng)建模型而無需為模型編寫代碼、關(guān)于組件源代碼的知 識、解析任何源代碼、也無需編寫復(fù)雜的代碼改變程序可執(zhí)行文件。通過研讀附圖和詳細(xì)說明,對于本領(lǐng)域技術(shù)人員來說,其它系統(tǒng)、方法、特征和優(yōu) 點將會是、或?qū)兊蔑@然。所有這樣的系統(tǒng)、方法、特征和優(yōu)點包含在說明書中、在要求保 護(hù)的主題范圍內(nèi)、并由下面的權(quán)利要求所保護(hù)。


      參照下面的附圖和說明,系統(tǒng)可以被更好理解。附圖中的元素并不是必須按比例 的,而是重點放在解釋系統(tǒng)的原理。附圖中,相同的引用數(shù)字在所有的不同視圖中指示對應(yīng) 的部分。圖1說明CINEMA系統(tǒng)配置的一個例子。圖 2 說明 CINEMA 用戶界面(CINEMA UI)。圖3說明CINEMA使用GAP的⑶I對象來創(chuàng)建新建模元素可以采用的邏輯流程。圖4顯示⑶I對象的生命周期的狀態(tài)圖。圖5說明CINEMA根據(jù)模型生成用于GAP的⑶I對象的處理器可執(zhí)行模型指令可 以采用的邏輯流程。圖6說明可以對GAP的⑶I對象安全執(zhí)行的操作,如同對編程對象執(zhí)行一樣。圖7顯示用CINEMA創(chuàng)建網(wǎng)絡(luò)服務(wù)所付出努力的測量例子。圖8顯示⑶I對象屬性集的例子。
      具體實施例方式圖1說明了被稱為“基于事件的集成應(yīng)用組合建模”(CINEMA) 102 (例如,建模工 具)的系統(tǒng)和工具的系統(tǒng)配置100,該系統(tǒng)和工具允許用戶建模和創(chuàng)建對GAP和其它編程組 件(例如,網(wǎng)絡(luò)服務(wù))進(jìn)行組合的集成系統(tǒng)。CINEMA系統(tǒng)配置100包含CINEMA系統(tǒng)102,其 包含耦合到處理器106的存儲器104,通過通信接口 108與CINEMA系統(tǒng)配置100的組件通信。CINEMA系統(tǒng)配置100進(jìn)一步包含用戶接口 110、GAP 112、用戶114 (例如,建模人員)、 集成系統(tǒng)(例如,116和118)以及組合集成系統(tǒng)172 (例如,組合GAPl 12和集成系統(tǒng)如116 和 118)。存儲器104存儲基于事件的組合建模(CINEMA)指令120,其由處理器106執(zhí)行時, 使處理器通過用戶接口 110接收外部⑶I應(yīng)用(GAP) 112的⑶I對象124的圖形用戶界面 (⑶I)對象定義122。用戶114從外部GAP 112選擇⑶I對象124。⑶I對象定義112包含 ⑶I對象屬性集126。在一個實現(xiàn)中,CINEMA 102可以調(diào)用外部GAP 112。外部GAPl 12與CINEMA 102 分離。換句話說,外部GAP 112可以在沒有CINEMA 102運行和/或沒有CINEMA 102調(diào)用 外部GAP 112的情況下運行。在一個實現(xiàn)中,外部GAP 112運行在一個單獨的進(jìn)程空間中, 并且不和CINEMA 102共享變量。在另一個實現(xiàn)中,當(dāng)CINEMA102調(diào)用外部GAP 112時,外 部GAP 112運行在CINEMA 102的進(jìn)程空間中。在又一個實現(xiàn)中,用戶114可以配置CINEMA 102與外部GAP 112 一起操作,以運行在包含低度隔離、中度隔離和高度隔離模式的三個隔 離模式之一。在低度隔離模式下,當(dāng)CINEMA 102調(diào)用外部GAP 112時,外部GAP 112運行 在與CINEMA 102相同的進(jìn)程空間中。在中度隔離模式下,多個GAP 112運行在一個進(jìn)程空 間中,而CINEMA 102運行在單獨的進(jìn)程空間中。在高度隔離模式下,多個GAP 112中的每 一個運行在單獨的進(jìn)程空間中,而CINEMA102運行在另一單獨的進(jìn)程空間中。用戶114可 以基于可用于用戶114想要用于建模的特定GAP 112和/或CINEMA系統(tǒng)配置100的系統(tǒng) 計算資源,選擇隔離模式。CINEMA 102包含建模元素面板128,其包含現(xiàn)有的建模元素130和建模畫布132。 CINEMA 102允許用戶114通過為⑶I對象124生成建模元素類136來獲得新的建模元素 134,從而在建模元素面板128中根據(jù)⑶I對象定義122創(chuàng)建新的建模元素134。通過定義 由⑶I對象124執(zhí)行的動作138、建模元素類型140、數(shù)據(jù)類型142和由⑶I對象124的方法 146執(zhí)行的函數(shù)144,CINEMA 102生成建模元素類136。在一個實現(xiàn)中,用戶114為用于新 的建模元素134的建模元素類136定義動作138、元素類型140、數(shù)據(jù)類型142和函數(shù)144。 在一個實現(xiàn)中,通過將⑶I對象定義轉(zhuǎn)碼以獲得⑶I建模元素的建模元素表示,CINEMA 102 生成新的建模元素134。CINEMA 102生成模擬與GAP 112交互的人工驅(qū)動過程的代碼,這被稱為轉(zhuǎn)碼。 CINEMA 102將⑶I對象屬性集126轉(zhuǎn)碼為經(jīng)轉(zhuǎn)碼的⑶I對象指令148 (例如,編程指令), 產(chǎn)生的集成系統(tǒng)和/或組合集成系統(tǒng)(例如,116,118與172)可以執(zhí)行該指令以控制和操 縱GAP 112的⑶I對象124。在一個實現(xiàn)中,基于事件的組合建模指令120使處理器將⑶I 對象屬性集126轉(zhuǎn)碼以獲得經(jīng)轉(zhuǎn)碼的GUI對象指令148,該指令被配置為定位、操縱和控制 ⑶I對象124。CINEMA 102還可以生成異常處理代碼,其處理在控制GAP 112時可以被拋出 的異常(例如,顯示消息框以通知用戶不正確格式的輸入)。基于事件的組合建模指令120 可以進(jìn)一步使處理器綁定150經(jīng)轉(zhuǎn)碼的⑶I對象指令148,以獲得處理器106可執(zhí)行模型指 令152,該指令使處理器106根據(jù)使用新的建模元素134創(chuàng)建的模型154來操縱GUI對象 124。簡要參考圖8,⑶I對象屬性集126包括決定如何訪問⑶I對象124的⑶I對象 訪問方法802,以及捕獲如何導(dǎo)航到GAP 112中的⑶I對象124的⑶I對象導(dǎo)航信息804。⑶I對象屬性集126進(jìn)一步包括⑶I對象標(biāo)識符信息806 ;幾何信息808 ;訪問權(quán)限810 ; 讀寫約束812 ;輸入?yún)?shù)814 ;瞬態(tài)值816 ;和返回參數(shù)818。在一個實現(xiàn)中,CINEMA 102將 GUI對象屬性集126轉(zhuǎn)碼,以創(chuàng)建新的建模元素134并生成用于集成系統(tǒng)和/或組合集成系 統(tǒng)(例如,116、118與172)的編程指令(例如,經(jīng)轉(zhuǎn)碼的GUI對象指令148),用來控制和操 縱GAP 112和其它組件(例如,網(wǎng)絡(luò)服務(wù)和其它GAP),在下面詳細(xì)討論?;氐綀D1,⑶I對象屬性集126使用啟用輔助的接口 156 (例如,輔助API調(diào)用)為 CINEMA 102提供關(guān)于GAP 112和GUI對象124的結(jié)構(gòu)信息,CINEMA 102在用戶114與GAP 112、GUI對象124和GAP 112的GUI屏幕158序列交互(例如,用戶交互)時記錄這些信 息。在一個實現(xiàn)中,CINEMA 102使用輔助API調(diào)用156和GAP112中的鉤子160 (例如,事 件監(jiān)聽器)接收⑶I對象屬性集126。鉤子160響應(yīng)CINEMA 102作為⑶I對象屬性集126 捕獲的事件。下面進(jìn)一步詳細(xì)討論,CINEMA可以使用GUI對象屬性集126、根據(jù)模型154產(chǎn) 生所選編程語言(例如,語言選擇162)的源代碼(例如,模型指令152),并編譯和執(zhí)行該源 代碼(例如,模型指令152)。CINEMA 102可以生成異常處理代碼164,其處理在使用模型 指令152控制GAP 112時可能拋出的異常(例如,顯示消息框以通知用戶不正確格式的輸 入)。表1顯示了在一個實現(xiàn)中,CINEMA 102如何創(chuàng)建用于GUI對象124的GUI對象類 (例如,新的建模元素134)。
      權(quán)利要求
      一種制造產(chǎn)品,包括計算機(jī)可讀介質(zhì);以及存儲在所述介質(zhì)上的指令,當(dāng)被處理器執(zhí)行時,使所述處理器通過接收在建模工具外部的圖形用戶界面(GUI)應(yīng)用(GAP)中選擇的GUI對象的GUI對象定義;根據(jù)所述GUI對象定義生成與所述建模工具兼容的GUI建模元素;以及向建模元素面板添加所述GUI建模元素,來修改所述建模工具的所述建模元素面板。
      2.如權(quán)利要求1所述的制造產(chǎn)品,其中接收包括 接收包括以下任意組合的GUI對象定義定位所述GAP中的所述GUI對象的幾何信息; 針對所述GAP中的所述GUI對象的訪問約束;以及 針對所述GUI對象的輸入?yún)?shù)或輸出參數(shù)。
      3.如權(quán)利要求1所述的制造產(chǎn)品,其中生成包括對所述GUI對象定義進(jìn)行轉(zhuǎn)碼,以獲得所述GUI建模元素的建模元素表示。
      4.如權(quán)利要求1所述的制造產(chǎn)品,其中接收包括 接收包括以下任意組合的GUI對象定義用于對所述GUI對象執(zhí)行操作的GUI對象訪問方法;以及 指定如何到達(dá)所述GAP中的所述GUI對象的GUI對象導(dǎo)航信息。
      5.如權(quán)利要求4所述的制造產(chǎn)品,其中所述GUI對象導(dǎo)航信息包括用于從所述GAP的 選定狀態(tài)到達(dá)所述GUI對象的屏幕序列。
      6.如權(quán)利要求1所述的制造產(chǎn)品,其中接收包括通過針對所述GAP的可訪問性層和鉤子來接收所述GUI對象定義。
      7.一種系統(tǒng),包括 處理器;以及耦合到所述處理器的存儲器,所述存儲器包括指令,當(dāng)被處理器執(zhí)行時,使所述處理器 通過接收在建模工具外部的圖形用戶界面(GUI)應(yīng)用(GAP)中選擇的GUI對象的GUI對象 定義;根據(jù)所述GUI對象定義生成與所述建模工具兼容的GUI建模元素;以及 向建模元素面板添加所述GUI建模元素, 來修改所述建模工具的所述建模元素面板。
      8.如權(quán)利要求7所述的系統(tǒng),其中所述GUI對象定義包括以下任意組合 定位所述GAP中的所述GUI對象的幾何信息;針對所述GAP中的所述GUI對象的訪問約束;以及 針對所述GUI對象的輸入?yún)?shù)或輸出參數(shù)。
      9.如權(quán)利要求7所述的系統(tǒng),其中使所述處理器生成所述GUI建模元素的指令對所述 GUI對象定義進(jìn)行轉(zhuǎn)碼,以獲得所述GUI建模元素的建模元素表示。
      10.如權(quán)利要求7所述的系統(tǒng),其中所述GUI對象定義包括以下任意組合接收包括以下任意組合的GUI對象定義用于對所述GUI對象執(zhí)行操作的GUI對象訪問方法;以及指定如何到達(dá)所述GAP中的所述GUI對象的GUI對象導(dǎo)航信息。
      11.如權(quán)利要求10所述的系統(tǒng),其中所述GUI對象導(dǎo)航信息包括用于從所述GAP的選 定狀態(tài)到達(dá)所述GUI對象的屏幕序列。
      12.如權(quán)利要求7所述的系統(tǒng),其中所述存儲器進(jìn)一步包括通過其接收所述GUI對象定義的、針對所述GAP的可訪問性層和鉤子。
      13.一種方法,包括接收在建模工具外部的圖形用戶界面(GUI)應(yīng)用(GAP)中選擇的GUI對象的GUI對象 定義;根據(jù)所述GUI對象定義生成與所述建模工具兼容的GUI建模元素;以及 向建模元素面板添加所述GUI建模元素。
      14.如權(quán)利要求13所述的方法,其中接收包括 接收包括以下任意組合的GUI對象定義定位所述GAP中的所述GUI對象的幾何信息; 針對所述GAP中的所述GUI對象的訪問約束;以及 針對所述GUI對象的輸入?yún)?shù)或輸出參數(shù)。
      15.如權(quán)利要求13所述的方法,其中生成包括對所述GUI對象定義進(jìn)行轉(zhuǎn)碼,以獲得所述GUI建模元素的建模元素表示。
      16.如權(quán)利要求13所述的方法,其中接收包括 接收包括以下任意組合的GUI對象定義用于對所述GUI對象執(zhí)行操作的GUI對象訪問方法;以及 指定如何到達(dá)所述GAP中的所述GUI對象的GUI對象導(dǎo)航信息。
      17.如權(quán)利要求16所述的方法,其中所述GUI對象導(dǎo)航信息包括用于從所述GAP的選 定狀態(tài)到達(dá)所述GUI對象的屏幕序列。
      18.如權(quán)利要求13所述的方法,其中接收包括通過針對所述GAP的可訪問性層和鉤子來接收所述GUI對象定義。
      全文摘要
      本發(fā)明涉及使用基于事件的遺留應(yīng)用進(jìn)行的集成系統(tǒng)組合建模。具體地,基于事件的集成應(yīng)用組合建模(CINEMA)工具提供了一種使用基于事件的遺留應(yīng)用(諸如,圖形用戶界面(GUI)應(yīng)用(GAP))來擴(kuò)展建模環(huán)境的方式。CINEMA允許建模人員通過創(chuàng)建表示GAP的GUI對象的建模元素來擴(kuò)展建模環(huán)境的工具箱。CINEMA生成允許集成系統(tǒng)控制和操縱GAP的GUI對象的源代碼,該GUI對象由用來創(chuàng)建集成系統(tǒng)模型的建模元素表示。
      文檔編號G06F9/44GK101996078SQ20101028586
      公開日2011年3月30日 申請日期2010年7月19日 優(yōu)先權(quán)日2009年8月13日
      發(fā)明者M·格雷查尼克, 傅忱, 謝晴 申請人:埃森哲環(huán)球服務(wù)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1