程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 使用Eclipse RCP為移動作業提供操作支持

使用Eclipse RCP為移動作業提供操作支持

編輯:關於JAVA

現在,工作人員的移動性日益增加,很多工作都需要在現場進行,遠離標准的工作場所工 具,比如桌面計算機和有線網絡。即便是對於移動設備,連接性也只能限於具有無線網絡的 區域。在本文中,了解基於開源 Eclipse Rich Client Platform (RCP) 的 Mobile Workforce Framework 在為工作在沒有網絡連接或網絡連接有限的偏遠地區的團隊提供支持 方面的發展。Mobile Workforce Framework 項目,即 Maestro,充分展示了通過使用 Eclipse RCP 如何能讓諸如同步化、插件功能和離線支持這些架構方面的需求得到滿足。

遠程操作支持概述

有很多種現場支持服務需要移動性很高的工作人員。這些 遠程操作團隊越來越需要為其提供計算支持以協助他們完成工作。大量為某個特定任務量身 定做的應用程序不僅開發成本很高,並且只能部分甚至完全不能為其他的現場工作人員所用 。因此,急需一個能提供通用服務和特性的統一開放平台,且這個平台需要具有可擴展性以 滿足各組現場員工的特定需求。

Eclipse RCP 為開發這樣的框架提供了一個理想的基 礎。Eclipse 是一個穩定的開源框架,支持很多架構驅動需求。Eclipse 通過一個定義良好 的插件架構提供可擴展性,包括傳送更新和補丁的機制。Eclipse RCP 還以 JFace/Standard Widget Toolkit (SWT)、工具欄、窗口和其他通用開發框架的形式提供對用戶界面開發的支 持。

提供移動支持平台還體現了 “綠色計算” 的概念,因其減少了案頭 工作和出差。比如,在 Mine Safety and Health Administration (MSHA),以往,檢查員常 常需要在紙上進行記錄、返回家裡辦公、將這些記錄抄寫進一個計算機文件、然後將文件歸 檔。這樣一個例行的過程常會造成報告的延誤、額外的工作量及數據錄入錯誤等問題。一種 更高效、更精確的做法是直接提供基於計算機的輸入,從而省去紙上記錄這個中間環節。此 外通過使用多設備平台,遠程工作人員還可以使用更小、更節能的設備,從而減少了能源消 耗並延長了電池使用壽命。

用於遠程計算的架構驅動因素

遠程工作團隊在工 作時通常會面臨兩個挑戰。第一個就是來自於環境方面的挑戰,即設備要適應不利的環境條 件,例如濕度、溫度和灰塵。第二個挑戰就是很多工作地點都比較偏遠且標准的無線技術沒 法覆蓋。一個可以在各種便攜計算設備(例如,手持計算機、tablet、微型計算機、筆記本 電腦)上運行且高度可配置的移動作業平台(例如 Eclipse RCP 及插件架構)允許進行遠程 的在線或離線計算,並可在網絡連接可用時實現與中心數據庫的同步。

一些遠程工作 任務的示例列出如下:

檢查

庫存/物流

調度

時間管理

銷售

協作

車隊管理

地圖信息系統(GIS)計劃線路

基礎設施

銷售點

自助服務

產品描述

法律實施

社會服務

醫藥品

固定資產管理

位置跟蹤

緊急響應

架構驅動因素對系統 至關重要,必須得到滿足,才能為組織提供價值。特別是,架構驅動因素的實施會直接關系 到整個項目的成敗。例如,如果驅動因素是為了構建一個靈活的、可擴展的系統,那麼就需 要實現一些機制來達到此目的,例如一個插件架構。架構驅動因素可由一個或多個架構機制 (比如數據持久性、聯網及安全)所滿足。

下面列出了一些用於遠程支持平台的架構 驅動因素。

表 1. 支持遠程操作的架構驅動因素

驅動因素 機制 加固了的平台 加固設備 (MIL-STD-810) 數據同步 多數據庫適配器 惟一標識符管理 本地 ID 協調 可插入組件 Eclipse 透視圖與插件框 架 離線信息存儲 本地數據庫持久性 自動更 新 Eclipse 更新設施 多媒體支持 Eclipse 視圖與擴 展(顯示與打印) 用戶安全 Eclipse 透視圖框架與擴展

特別需要強調的是,驅動因素能否支持大量應用程序功能對於移 動平台的成功十分關鍵。不同的遠程作業團隊所執行的任務也五花八門。一方面這些團隊會 共享一些公共功能,例如時間集合、現場樣本管理、同步及參考數據,另一方面,他們也有 其任務所規定的特定需求。Mobile Workforce Framework 的用途就是通過不同專用特性集所 共享的公共組件來處理這些需求。

圖 1. Maestro Mobile Workforce Framework 時 間表原型插件

Eclipse RCP 的價值

移動作業用例

有很多的用例都可以考慮用於移動作業 支持應用程序。對於 Maestro Mobile Workforce Framework 的最初開發,可使用如下的檢 查用例和工作流:

回顧標准表單

管理惟一標識符

跟蹤時間表活動

管理檢查事件

管理現場健康樣本

管理發布

與基准同步

維持用戶首選項

這些用例涵蓋了各種檢查人員問題,比如跟蹤時間、檢查事件和取樣 ,以及像與中心數據存儲同步這樣的管理功能。

正如所注意到的,Eclipse RCP 提供 了一整套很適合於開發獨立應用程序的工具。所列的很多架構驅動因素均可受現在的 Eclipse 框架的支持,其中包括通過 Eclipse 工作空間、透視圖以及視圖模型所實現的可擴 展性。如圖 1 中所示,一個 Mobile Workforce Framework 原型時間表組件包括兩個視圖: 一個樹視圖,用來顯示各時間表的每周概述;一個編輯器,用來顯示某個特定的檢查員每周 時間表的明細。在本例中,時間明細專門用於支持地下礦井檢查。所有窗口控件、菜單選擇 、工具欄及視圖管理都由 Eclipse Workspace 直接處理。使用 JFace/SWT 支持,窗口元素 可被很快構建(在本例中,使用的是 Jigloo 可視化編輯器)並連接到操作代碼。

各 種形式的檢查員是最常見到的一類現場工作人員。這些人群有著相似的職責,即訪問現場( 一個檢查 “事件”)、依據一系列規定和標准進行觀測、對發現的違規現象給與 傳票或警告,而且還會執行後續檢查以確保其符合規范。正如側欄中所展示的,有一些公共 用例可被包括在一個通用支持應用程序內來支持移動作業。如表 2 所示,有很多受雇於聯邦 、州或企業組織的遠程工作人員是公共遠程作業支持平台開發的直接受益者。

表 2. 遠程工作人員的描述和分類

職業 分類/組織 聯邦 美國職業安全與健康監察局 (OSHA)
美國礦山安全 和健康監察局 (MSHA)
美國食品與藥物管理局 (FDA) 州 健康檢查
防火安全檢查
兒童福利監督 公司 石油 與天然汽設備檢查
鐵軌與全部車輛檢查
倉庫庫存

為了能利用各組中的相似點同時還能保持靈活性,我們使用了 Eclipse 基於透視圖的插件框 架。一個透視圖就是一組視圖、數據結構和其他一些旨在滿足特定系統用戶需求的組件。例 如,一個實施透視圖可以包括檢查事件視圖、傳票視圖、定單視圖及其他數據表單視圖,而 一個培訓透視圖則可以讓培訓者得以跟蹤活動、培訓結果及培訓課程的參加人數。

檢 查透視圖的特性依賴性

這種方式的一個主要優點就是價格昂貴的設備可由已經有了匹 配自已特定支持需求的透視圖的人們多次重用。每個用戶都可讓特定的一個透視圖在該用戶 登錄時才被載入,其他用戶不能訪問。這已經被鍵入到當前用戶的登錄 ID,所以對於每個系 統用戶來說,它都是惟一的。

基於透視圖方式的另一個優點就是可以將每個插件的開 發、發布以及核心支持應用程序框架分開來。每個插件都可以根據可用資源和資金狀況來制 定獨立的開發計劃。在部署方面,如果一個特定插件被發現有缺陷,那麼只需重新部署這個 插件的代碼。由於 Eclipse 框架直接提供自動遠程更新與傳送機制,所以不需要額外的開發 來為各個透視圖打包、配置或傳送應用程序更新。

最後,由於每個插件都是獨立的, 所以只需在第一次使用時載入它們,從而大大減少了應用程序的整體內存占用。這種所謂的 “懶加載” 方式可使所有擴展插件可用,但只有當前用戶特定需要的那個插件才 會針對該用戶會話被載入。

可擴展架構的另一個常見模式是服務模式。一個服務獨立 於任何特定應用程序層被建立,它被創建用來提供特定功能或操作且只具有對其他組件的有 限依賴項。

如圖 2 所示,這個核心系統為與中心數據存儲同步提供了一個公共服務 。

圖 2. Maestro Mobile Workforce Framework 插件依賴項

在現場時,遠程用戶會請求訪問多種信息,包括位置或站點信息、檢查歷史、注釋 、承包方信息等。此外,遠程用戶還會創建必須定期上傳的記錄用以在將來處理,比如違規 傳票、時間與活動報告、事件和結果。

此服務提供了一個靈活的機制,遠端用戶可以 在一段時間內在現場進行獨立操作,之後是遠程單元與中心數據庫間數據的自動雙向同步。 這種同步服務使用了一個策略模式來實現不同的同步任務並允許創建其他相互獨立的任務以 減少依賴性連接。

此外,很多現場作業人員必須創建有惟一標識符的文件或其他記錄 。系統提供一種服務,用來管理惟一標識符的獲取、使用和發布以便與主系統同步。例如, 在現場,一位檢查員針對某項違規發出了一個傳票,這個傳票具有惟一的檢查事件編號與傳 票編號。在傳票產生時,這些編號必須惟一和不變的。Identifier Manager Service 確保了 現場中有一定數量的標識符可用。

所部署的移動平台需要對核心應用程序及功能性擴 展插件組件做定期更新。在默認狀態下,這個服務會在系統啟動、下載和安裝時檢查更新, 另外,它還會自動配置所有新更新的軟件。這大大減少了支持人員用來管理部署到大量遠端 系統所需的時間。Eclipse RCP 為這類更新操作提供了明確的支持。

Mobile Workforce Framework 的實際應用

到目前為止,我們的討論還僅限於 Mobile Workforce Framework 如何應用到實際情況中的抽象概念。為了能讓您對這種方式的 價值有全面的了解,我們舉一個現場工作人員遠程檢查油井鑽桿的的實際例子。在離開總公 司前,“Kate” 借出一個公用手提電腦和一個加固了的手持計算機。她登錄到手 提電腦並啟動 Maestro,然後選擇 Inspector Perspective。應用程序會自動檢查系統更新 並將更新安裝到平台。之後,她就可以下載檢查清單、站點歷史及檢查所需的相關信息。此 外,她還要花些時間打開時間跟蹤視圖以便能適當地跟蹤並管理她的行程及檢查時間。

Kate 到達現場,將手持計算機注冊到 Maestro 框架,並將檢查清單及相關參考信息 傳送到該設備。接下來開始檢查,她用手持計算機檢查清單記錄下查出的問題,包括口頭或 書面的記錄。按照需要,她還可以用手持計算機攝像頭拍下與當前檢查相關的照片或視頻。 在檢查結束後,她返回到手提電腦,下載已完成的檢查清單並為記錄下的問題發出建議。

一回到總公司(或任何能上網的地方),Kate 用 Maestro 打開一個與中心數據庫的 安全會話並同步她的時間表、完成的檢查清單、建議或傳票以及相關的多媒體文件。然後她 將設備歸還,此時設備就可以被下一個檢察員或其他遠程工作人員帶到現場使用了。用這種 方法,組織就可重復使用價格高昂的硬件,並同時能為所有現場工作人員提供細致的支持。

未來的發展方向

Maestro Mobile Workforce Framework 項目是作為一個 SourceForge 孵化器項目被建立的。建立這個項目的目的是開發與部署一個支持現場與辦公 室內移動作業的可擴展平台。最初這個項目的開發主要集中在正式平台上(基於 Eclipse RCP),最初的重點也放在了檢查團隊上。但未來的開發也將會包括面向現場培訓者、審計者 和工程支持人員的透視圖。

除了這個能被部署到傳統計算設備(即筆記本計算機)的 基本框架平台外,此項目還設想計劃支持各種手持計算機或其他移動設備。IBM® 提供了 一個 Lotus® Expeditor 移動設備支持平台,它對創建捆綁於核心 Maestro 產品的手持 計算機應用程序可能會很有用。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved