2.在數據傳遞到JSP頁面時,使用Java Server Pages (JSP) model
雖然這個方案相當好,開發小組發現頁面上要顯示的數據的數量太大,這會打擊用戶的使用興趣。另外,從效率角度來說,圖形數據的交換和傳遞特別慢。例如,Iconix Confidence Interval Graphic——用來顯示掃描到的基因表達式數據,最少需要2到3秒才能全部載入,原因是這個方案需要一個專門的圖形Servlet來單獨的顯示每一個圖形。
DrugMatrix Confidence Interval Graphic的例子
注意:此圖包含了DrugMatrix Confidence Interval Graphic,通過Html表格矢量圖型瞬間顯示。
3.一個AJax開發框架外加接口創建器
最後的被采用的解決方案,通過使用TIBCO通用接口框架,十分容易的處理復雜的AJax。這個成熟的方案包括了幫助開發小組比其他方案更快的將DrugMatrix交付市場的特性並且能降低開發費用。這個方案的主要的不同包括:
。可視化的開發工具、相似的API和擴展庫、高效的GUI組件
。能夠重復使用和定制對象的組件化的、基於公開標准的架構
。客戶端數據緩存,能夠在整個session期間保存數據以供客戶端使用,減少了不必要的訪問數據庫的過程,使得服務端能夠傳遞更多的數據
。通過領導性的標准和協議,如HTTP/S、XML 和 SOAP 支持同步、異步和實時的通訊能力
RIA解決方案能夠使用XML來產生全色的Html表格,產生圖像能比Java Applet快50%,比JSPs快97%。
圖三:DrugMatrix Data Browser Environment
圖一:DrugMatrix可擴展信息系統(XIS)的架構
通過如下特性,DrugMatrix UI 經濟的顯示了大批量與信息相關的數據:
。使用Outer tabs來識別不同的信息域(data warehouse dimension tables)
。使用Inner tabs來包括標注域的信息(data warehouse fact tables)
。可擴展的超鏈接來支持域到域的浏覽
表達式試驗域(圖三)包含了10個fact tables,每一個fact tables都有50-300條記錄。雖然這個頁面只載入12條記錄,它能迅速熟練的翻倒下一個頁面,而不會對整個頁面刷新。列能夠被伸縮和改造,記錄能夠被分類。
除了TIBCO普通接口,這個我們為DrugMatrix的客戶端選擇的基於AJax的RIA產品外,其他的廠商大多提供基於JSP或HMTL的方案。這些都沒有超出我們當初想象之外的重大突破。
收益
DrugMatrix的GUI 滿足了制藥公司的信息要求:易用、在交互上跟以前的胖客戶端一樣。Iconix PharMaceuticals公司的開發小組對開發這樣一個GUI感興趣:滿足一個更大范圍的藥品相關信息並且提供顯示這種數據的更多的視圖。另外,小組有志於開發一種超越頁面或文檔等基本類型的WEB頁面,並且開發和維護費用要盡量少。
特別的,在開發DrugMatrix過程中使用AJax技術允許Iconix:
。集成200個百萬的藥品數據到一個富的、可視化的互交接口
。比標准的客戶服務器架構,將DrugMatrix交付給客戶提早了一半的時間並且減少了三分之二的開發費用
。GUI的槓桿作用使得我們的產品和競爭者的產品區分開來
。區別於一個桌面的應用系統,我們使用標准的浏覽器為客戶節省了發布和維護方面的費用
其他方面
開發小組希望基於AJax的RIA解決方案能加速 DrugMatrix的開發,結果正如我們所希望的,就像下面舉的例子:
對於像Iconix這樣的科學研究機構,對於新的和改良的工具會有一個持續的要求。我們所面臨的一個挑戰,也是開銷的一個重要來源:為新產品迅速開發可用的規格說明。
在使用RIA框架之前,基於Internet Development Environment (IDE)的解決方案,我們需要寫一個頁面規格到開發規劃裡並且把它們發給產品開發委員會。包括視頻會議的時間,整個過程通常需要3到4周的時間。
通常,Iconix 開發者十分混亂的創建和修改頁面規格,常常在開發會議中途。這些規格已經完成80%,需要少量的優化,但這些優化將大大的減少開發時間。
我們相信AJAX的那些優勢並不是Iconix開發環境都有的,其他項目肯定也是這樣。對於一切使用RIA框架的企業級系統的開發來說,AJAX都有助於取得相同的魯棒性和相同的收益。AJax使得發布一個高效的、基於浏覽器的應用成為可能,這種應用的發布沒有破壞性、發布開銷和產生一個胖的客戶端桌面應用。
我們學到什麼
在開發DrugMatrix 過程中,可能我們得到的最重要的教訓是,通過允許我們創建感、觀和運行像桌面系統一樣的聰明系統,並且使得我們比預想的開發更快、開銷更少,AJAX顛覆了關於瘦客戶端的一些慣性的想法。一個對於RIA的AJax方案使得我們持續的開發有效的系統走在前面成為可能。
更進一步
DrugMatrix開發的成功增加了Iconix對於AJax的興趣。2005年底,開發小組計劃完成將DrugMatrix 轉化為WEB服務的必要工作。
這項工作允許大型的制藥公司——很多這樣的公司都是當前客戶——在不同的部門使用DrugMatrix 的一部分,調整他們自己的需要或在他們自己的應用裡使用DrugMatrix產生的數據。
Iconix 開發小組也提前完成了關於實時數據顯示問題的計劃,這些數據基於一個財務服務系統而產生的。
關於作者:John Calvin畢業於California State University,擁有計算機的B.S.和生物學的B.S.他曾服務於IBM公司,後來加入生物技術工業,是Iconix PharMaceuticals公司的高級工程師。