999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一套可行的Oracle Forms — ASP.NET遷移方案

2014-04-29 00:50:36崔陽華
智能計算機與應用 2014年4期
關鍵詞:程序用戶功能

摘要:許多老舊的Oracle Forms程序都面臨著更新換代的壓力。然而更大的壓力來自于Oracle Forms,這一曾經輝煌的快速開發平臺已完全過時這一事實。本文通過分析Oracle Forms和ASP.NET的部分功能, 提出了一套由舊的Oracle Forms系統漸近地、逐步地遷移向使用最新技術的基于ASP.NET的應用程序的技術方案。該方案可以分期地實施, 并在實施過程中最大化地降低用戶的不便性。本文旨在通過該方案為那些受困于老舊的Oracle Forms程序的維護人員指出一條跳出圍城的路子。

關鍵詞:ASP.NET; Oracle Forms; 遷移; 漸近; 遺留系統; 無縫切換

中圖分類號:TP311 文獻標識碼:A文章編號:2095-2163(2014)04-0106-03

Abstract:Many legacy Oracle Forms-based applications are facing tremendous pressure of evolution. However, greater pressure comes from the fact that Oracle Forms, the once popular RAD development environment, has become an obsolete technology. This article analyzes some features of Oracle Forms and ASP.NET, and introduces a migration plan from legacy Oracle Forms applications to newer ASP.NET-based applications that utilize latest technologies. The plan can be carried out progressively, in phases, and minimize inconvenience to the end users during the migration. Through this plan, this article intends to give some guidance to those confused developers who are maintaining Oracle Forms applications.

Key words:ASP.NET; Oracle Forms; Migration; Progressive; Legacy Systems; Seamless Switch

0引言

Oracle Forms作為一項誕生于上世紀七十年代的終端實用技術,以其簡單的編程模式以及與Oracle數據庫的緊密集成,曾在上世紀末、本世紀初廣泛用于數據密集型應用程序的開發與實現。而且,迄至目前,許多程序也仍在使用。然而,隨著各行業的業務運營規則及運營模式的不斷發展變化,支持該項業務的Oracle Forms應用程序也必然要實時更新以滿足業務需求的升級改變。這些程序的維護人員大都面臨著一個重要抉擇:是繼續擴充現有的Forms程序,還是遷移到一個現代化的開發平臺上(比如.NET或Java)?但是這種遷移卻將導致一定壓力,而這種壓力則主要來自于以下幾個方面:

(1)僵硬的用戶界面。依靠Java Applet來顯示其用戶界面的機制, 不能充分適應當今軟硬件的發展現狀,比如高分辨率顯示器(高于1024 X 768像素)的廣泛應用,不同用戶對不同設備的個性喜好,而這些設備則包括了各種尺寸的普通電腦屏幕、筆記本電腦、Tablets、智能手機等等。

(2)日趨不兼容的運行環境。在當今的操作系統及瀏覽器中,尋獲可以運行Oracle Forms程序的瀏覽器及Java版本的難度已明顯增大。

(3)日趨不兼容的開發環境。Oracle Forms Builder 10gR1 (9.0.4)[1]在Windows XP上可以順利運行,但在Windows 7上卻不能正常工作。而Windows XP的使用卻正在成為歷史。

(4)有限的功能。Oracle Forms,作為一個4GL快速開發工具,由于其性能高端,缺乏現代化程序編制中應該具備的眾多設置,進而也欠缺了一定的靈活性。比如,Oracle Forms只有可數的幾項支持SOAP Web Service的功能,這就使其只能作為Web Service的客戶端,并且還要編寫大量代碼以實現底層SOAP協議的操作處理。

(5)不適于團隊開發的源代碼格式。Oracle Forms的源代碼采用非文本的二進制格式。當代的團隊開發模式經常會涉及源代碼的合并(Merge),既可以是在同一代碼分支中不同程序員之間的合并, 也可以是在不同代碼分支之間的合并。但是采用二進制格式的Oracle Forms源代碼卻無法借助于任何合并工具的現有成果,而與其有關的全部合并只能依靠程序員的記憶或額外的文檔經由純手工的操作來實現。不僅耗時,而且容易出錯。

(6)昂貴的升級成本。歷史上幾次主要的Oracle Forms升級都涉及到為數眾多代碼的改動或者運行環境的改變,由此而導致了漫長的開發,測試的周期。

(7)稀缺的程序員資源。時下的就業市場上具有Oracle Forms開發經驗的程序員日益稀少。僅存的有限數目的Oracle Forms程序員,也在逐漸轉換到其它的開發平臺上去。

1Oracle Forms到ASP.NET的遷移選項分析

1.1選項一:用ASP.NET完全重新實現

這一選項顯然耗資費時,往往需要幾個到幾十個人工周期年。如果投入很多人力來加速開發,卻少有企業能夠擔負起如此一筆預算。但若只是投入較少人力來緩解預算壓力,工期又會無限延伸。而且,又由于項目范圍大、工期長,最終產品對用戶需求在滿足上的欠缺(包括設計缺陷和需求分析缺陷)將會集中突顯,由此形成較大的負面影響。

但是,該選項也并非沒有可稱道之處。由于一切都是嶄新起點,設計者既可以吸取舊程序中的經驗教訓,也可以自由選擇當前各種最新技術,包括自由選擇體系結構。并且如果設計開發管理均顯優良,新程序即可達到較高的可維護性。

1.2選項二:借助于某些遷移工具來將Oracle Forms程序“翻譯”到ASP.NET

相對于選項一,運用這樣的工具無疑會大大地加快遷移周期,然而,這種遷移也并非全自動的過程,諸如Forms2Net(www.forms2net.com)工具。其工作原理主要是實現從Oracle Forms form到ASP.NET Web Form的一對一翻譯,但由其生成的Web Forms通常要經過些許微調才能進入正常工作。若要生成的Web Forms看似更接近于普通的Web程序而非Oracle Forms程序,就需要加入更多的人力。據稱,相對于完全手工遷移,Forms2Net可以節省約75%的人力。

值得一提的是,由此類工具協助生成的代碼,體系結構上卻并不完善。例如,這些工具通常要借助于其自身的一定量程序庫來填補Oracle Forms和ASP.NET體系結構上的差別,從而使得生成的代碼依賴于這些額外的程序庫,由此必將提高對新員工的培訓成本。 再如,從數據訪問上,此類工具往往會使用某一種數據訪問機制(比如基本的ADO.NET),這就在一定程度上限制了另外一些更為現代化的數據訪問機制(比如NHibernate、 Entity Framework等)的選擇使用。

針對該選項的價值評估,其預算大約相當于選項一的30%~40%,而見效周期卻通常相當于選項一的25%。但由于這些移植工具只能起到輔助作用,且每個Form都需要經過或多或少的手工移植才能正常工作,無形中必然增加了漏洞(Bug)機率。另外,由于遷移過程是頁面對頁面的“一對一”翻譯,新程序至少在總體流程方面必將受到舊程序的設計制約。同時,代碼中也必將充斥著遷移工具“注入”的各種與業務邏輯完全無關的“噪音”代碼。并且,用戶雖然可能較早地開始使用新程序,但是由于新程序是由舊程序逐屏翻譯得來的,在用戶體驗上也應該與舊程序較為接近。

1.3選項三:漸進式的遷移

筆者目前尚未見過有類似遷移方式的研究文獻,因而本文將致力于這一遷移方式的探索分析。其可行性成果在于:程序功能可以漸進地,長期性地從Oracle Forms遷移到新的基于ASP.NET的程序中;新的ASP.NET程序具有采用任何體系結構,任何程序庫,以及任何框架的自由;并且在遷移過程中,新舊程序可以并行存在,同時允許用戶由舊程序向新程序進行“無縫”(無需重新登錄,無需重新定位數據記錄)切換。企業可根據自身人力物力情況而自由調整前期項目的規模。基于此,由于新老程序可以同時存在,新程序可以在很短的時間內付諸運行,哪怕最初只有可數的幾樣功能。第4期崔陽華:一套可行的Oracle Forms - ASP.NET遷移方案智能計算機與應用第4卷

另外,由于整個項目可分為無數個小項目來分期實施,每一期項目既可以包含新功能的開發,也可以包含對前期項目缺陷的修復。尤其是,在程序維護性方面,該選項將不僅具有選項一的所有優點,而且,早期不當的體系結構設計也會在實踐中得到及時的發現與修復。仍然需要指出的是,在用戶體驗上,用戶可以很早就開始使用新程序上的新功能。盡管在相當長一段時間內,用戶將不得不同時使用新舊兩個程序并在二者之間來回切換,但是切換的過程是流暢自然的,而且無需重復輸入登錄口令。

綜上所述。三種遷移方案在若干性能方面的優缺點對比則如表1所示。

(6)其后的新程序中每次添加新功能后,可重復步驟(3), 即在舊程序中添加一個指向新功能的連接。這樣,在一段時間之后,新程序中的功能就日漸增多,舊程序中功能將日漸減少。直至某一天,舊程序將完全廢棄。企業可以根據自身預算及其它因素,具體決定整個遷移過程的進行速度。

3實際應用性能分析

將本文所述漸進式遷移應用在一個基于Oracle Forms 9.0.4的醫療程序中。但是由于最初需求分析的不夠充足,程序中某一配型模塊不僅很難使用,還經常引入錯誤數據,而且也跟不上該醫學技術近幾年的最新發展成果,于是決定對此模塊進行修改。鑒于這是一個較大項目,在老舊的Oracle Forms平臺上重寫將會是資源上的一個極大浪費。所以最終選擇將這一項目作為漸進式遷移的試驗項目。該課題共耗四個人年左右(四人團隊,一年時間)。項目結束時,重建模塊在一個嶄新的基于ASP.NET的程序中獲得實現,舊程序中原有的模塊則隨之得到了隱藏。用戶若要訪問新的模塊,既可以直接登錄到新程序中,也可以從舊程序中通過點擊相應的菜單項而流暢無縫地切換到新程序中去。產品應用之后,已經收到了眾多好評。該項目成功地驗證了漸進式遷移策略的可行性,為日后的不斷縮減舊程序,并日漸擴充新程序奠定了一定的理論及實踐基礎。

4結束語

本文討論的這套遷移機制,其最大特點在于保持整個遷移進程進度的靈活性而同時又不會給終端用戶帶來任何不便。另外,從廣義角度來說,這套機制對于從Oracle Forms向Java平臺遷移也具有重要的指導意義及借鑒價值。

參考文獻:

[1]Oracle Application Server 10g – Integrating Oracle Reports in Oracle Forms Services Application.http://www.oracle.com/technetwork/database/migration/frm10gsrw10g-132606.pdf.

[2]Oracle 9i AS Forms Services - Best Practices for Application Development. http://www.oracle.com/technetwork/developer-tools/forms/documentation/bestpractices9i-134677.pdf.

[3]PL/SQL內置函數UTL_ENCODE.BASE64_ENCODE() 的說明文檔:http://psoug.org/reference/utl_encode.html.

[4]PL/SQL內置函數DBMS_OBFUSCATION_TOOLKIT.DES3ENCRYPT() 的說明文檔:http://docs.oracle.com/cd/B19306_01/appdev.102/b14258/d_obtool.htm.

猜你喜歡
程序用戶功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
關于非首都功能疏解的幾點思考
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 国产成人精品一区二区三区| 天天色天天综合网| 欧美成人免费午夜全| 中文字幕无码制服中字| 在线国产三级| 国产亚洲精品在天天在线麻豆 | 亚洲国产精品日韩欧美一区| 成人毛片免费在线观看| 日韩欧美高清视频| 国产小视频在线高清播放| 国产成人乱码一区二区三区在线| 五月综合色婷婷| 在线网站18禁| 一本久道久久综合多人| 亚洲av无码久久无遮挡| 亚洲第一成年人网站| 久久精品视频亚洲| 国产人前露出系列视频| 亚洲精品第一页不卡| 亚洲美女一区二区三区| 中文字幕佐山爱一区二区免费| 九九这里只有精品视频| 91区国产福利在线观看午夜 | 91小视频在线观看免费版高清| 国产精品亚洲天堂| 国产成人精品亚洲日本对白优播| 国产91精品调教在线播放| 伦精品一区二区三区视频| 人妻精品久久久无码区色视| 亚洲AV成人一区国产精品| 播五月综合| h视频在线观看网站| 色噜噜综合网| 亚洲美女一级毛片| 激情爆乳一区二区| 日韩国产欧美精品在线| 天天色综合4| 国产在线观看精品| 国产成人综合久久| 四虎永久免费在线| 精品国产一二三区| 日韩少妇激情一区二区| 亚洲天堂高清| 亚洲五月激情网| 国产高潮流白浆视频| 亚洲精品不卡午夜精品| 色婷婷色丁香| 国产精品亚洲va在线观看| 日本伊人色综合网| 东京热av无码电影一区二区| 国产精品福利尤物youwu| 久久人妻系列无码一区| 国产成人精品第一区二区| JIZZ亚洲国产| 女人天堂av免费| 国产不卡在线看| 亚洲天堂啪啪| 欧美亚洲国产日韩电影在线| 亚洲美女一区| 欧美日韩高清| 国产在线无码av完整版在线观看| 夜精品a一区二区三区| 日韩大乳视频中文字幕| 欧美日韩国产在线观看一区二区三区 | 色婷婷视频在线| 久996视频精品免费观看| 国产精品一老牛影视频| 亚洲日本一本dvd高清| 毛片免费网址| 天堂岛国av无码免费无禁网站| 黄色福利在线| 亚洲不卡网| 91久久青青草原精品国产| 国产福利影院在线观看| 国产免费福利网站| 香蕉国产精品视频| 亚洲精品动漫在线观看| 一区二区三区国产精品视频| 欧美中出一区二区| 日本午夜在线视频| 亚洲视频在线网| 人妻丝袜无码视频|