摘要:軟件工具及其生產環(huán)境是軟件技術及其產業(yè)的重要組成部分。提高軟件生產效率和質量一直是軟件生產領域的重大課題。運行環(huán)境和應用模式的變化總是帶動軟件工具和生產環(huán)境的發(fā)展。當前,軟件工具與生產環(huán)境呈現(xiàn)若干新特點:基于Internet 的工具資源開放共享與協(xié)同開發(fā)成為提高軟件開發(fā)效率、降低軟件開發(fā)成本的重要途徑;基于復用思想的大規(guī)模的軟件資源庫構建與共享成為提高軟件生產率和產品質量的有效手段;軟件的可信性成為軟件質量的焦點,強化對軟件可信性的分析、度量和應用支撐成為熱點問題。綜合而言,新一代的軟件工具與生產環(huán)境的關鍵要素體現(xiàn)為軟件開發(fā)協(xié)同化、軟件資源共享化和軟件質量可信化三個方面。
關鍵詞:電子政務;開發(fā)工具;圖形化
中圖分類號:TP399 文獻標識碼:A 文章編號:1007-9599 (2012) 23-0000-03
1 引言
有人說,.NET的成功是因為有Visual Studio,而J2EE的復雜是因為缺乏一個J2EE的Visual Studio。作為一種成熟的語言和技術,確實需要一個良好的工具支持,并通過工具支持來降低學習曲線、提升開發(fā)效率。
2 市場規(guī)模與趨勢分析
軟件生產工具與協(xié)同開發(fā)環(huán)境是軟件產業(yè)的重要組成部分,其應用與市場同軟件產業(yè)的發(fā)展存在密切的關系。我國軟件產業(yè)對軟件生產開發(fā)等支撐工具有著巨大的市場容量,且市場增長率超過40%,而目前我國軟件企業(yè)的業(yè)務范圍主要分布在各個應用領域,雖然它們對軟件開發(fā)生產工具有著迫切的需求,但從事國產軟件開發(fā)工具生產的專業(yè)廠商嚴重缺乏,制約了我國軟件產業(yè)的持續(xù)發(fā)展。國外廠商產品費用高,后期培訓、支持成本巨大,使得我國軟件企業(yè)缺乏必要的軟件生產配套裝備,大量企業(yè)或使用盜版或依賴開源工具,而缺少必要的技術支持,使得先進軟件技術在企業(yè)中推廣難度大,制約了軟件生產效率的提升。
3 國內廠商分析
目前,國內各大業(yè)務基礎平臺產品提供商在其產品線構成上,基本都包含了開發(fā)工具這個部分。下面針對國內目前知名廠商所提供的開發(fā)工具做一簡單的分析:
3.1 東軟UniEAP
UniEAP? Workshop就是UniEAP?為基于之上的企業(yè)應用系統(tǒng)量身定做的全生命周期開發(fā)環(huán)境,通過對UniEAP?方法學的貫徹和對可復用構件的可視化使用。只有基于這種面向業(yè)務的集成開發(fā)環(huán)境,才能從根本上提升應用系統(tǒng)的開發(fā)效率。
能夠快速生成并部署基于UniEAP? Platform框架的企業(yè)級J2EE應用程序;提供了一個直觀的程序設計模型,使您可以集中精力生成應用程序展現(xiàn)界面和業(yè)務邏輯,而不用考慮復雜的底層實現(xiàn)技術細節(jié)。主要功能有:
支持對共享平臺資源的多個應用的管理和部署;
支持對可復用構件的按需選取和可視化利用;
支持對頁面流程、業(yè)務流程、數(shù)據(jù)資源、電子表單、報表的定義和管理;
支持對頁面元素、業(yè)務邏輯構件的可視化配臵與管理;
支持基于模板的向導機制;
支持基于大量擴展點的功能擴充。
3.2 普元EOS
在EOS Studio中,以項目的形式組織了EOS應用開發(fā)的資源,提供相應的向導、視圖和編輯器等工具供開發(fā)人員在開發(fā)過程中可視化地開發(fā)各種構件,并提供了強大的調試及團隊開發(fā)功能。對于一個應用項目而言,所有的開發(fā)內容都可以方便快捷的通過EOS Studio完成,而不需要使用其他開發(fā)工具。
EOS Studio是集面向構件應用的設計、開發(fā)、組裝、調試、維護、部署、管理和發(fā)布于一體的集成開發(fā)環(huán)境,提供對SOA應用和服務全生命周期的開發(fā)、維護和管理;
產品特點:
圖形化設置界面控件的屬性,比如列表,樹等結構數(shù)據(jù);
與后臺的實體、Action等服務的交互結合的較好;
能夠針對典型場景生成復雜的代碼(場景的各類參數(shù)可通過可視化設置)
高性能的開發(fā)工具:對開發(fā)機器配置要求不高
圖形化的SOA服務設計與服務裝配;圖形化的數(shù)據(jù)模型設計;
圖形化的構件組裝;圖形化的構件調試
圖形化的頁面流開發(fā):支持變量的不同范圍內的共享;
豐富的Ajax控件與普通頁面控件; 豐富頁面控件屬性向導;
3.3 金蝶OperaMasks
金蝶Opera Masks Studio開發(fā)平臺是建立在eclipse基礎上的一個輕量級開發(fā)平臺,集成了多個優(yōu)秀框架以及他自己的應用服務器,還提供了可視化Web開發(fā)環(huán)境,通過拖拽的方式生成頁面。
金蝶Opera Masks Studio通過對開發(fā)工具應用服務器的集成提升開發(fā)效率,通過對優(yōu)秀框架的支持,解決了軟件開發(fā)中質量,成本,風險等問題,快速開發(fā)頁面,對J2EE開發(fā)提供了開發(fā),配置,部署,監(jiān)控等生命周期管理。同樣他具備以下的特點:
提供流程引導視圖,引導用戶一步步建立工程;
提供了全新的J2EE工程視圖;
該環(huán)境提供了實體對象設計,數(shù)據(jù)源生成的可視化環(huán)境,在可視化頁面拖拽生成實體bean;
提供了數(shù)據(jù)源和控件的綁定,例如tree或者grid;
支持數(shù)據(jù)庫反向導入數(shù)據(jù)模型,支持數(shù)據(jù)庫腳本導出;
提供了一系列的控件庫,用來支持可視化開發(fā),支持控件對后臺業(yè)務的綁定;
頁面控件提示工程強大;頁面控件異常提示功能;
4 研究內容
電子政務領域軟件生產環(huán)境功能上由三個部分集成而成:軟件開發(fā)協(xié)同平臺、業(yè)務基礎平臺和軟件生產管理平臺。其中軟件開發(fā)協(xié)同平臺提供對電子政務領域軟件生產中各類活動的協(xié)同支撐;業(yè)務基礎平臺包括應用開發(fā)工具集、應用運行支撐框架、應用監(jiān)管工具集、領域構件庫四部分,是生產環(huán)境的核心支撐;軟件生產管理平臺提供對整個軟件生產環(huán)境中的核心資產、主要過程和產品質量進行監(jiān)控和統(tǒng)計分析,如下圖:
5 技術路線
5.1 統(tǒng)一應用運行支撐框架技術
通過綜合使用構件化開發(fā)技術、SOA技術、業(yè)務流程管理技術、異構信息集成技術,服務總線技術、門戶技術,可以抽取電子政務應用系統(tǒng)的共性,形成統(tǒng)一的應用運行支撐框架,對上提供統(tǒng)一的應用開發(fā)接口,屏蔽中間件、數(shù)據(jù)庫、操作系統(tǒng)等系統(tǒng)平臺之間的差異性,方便用戶開發(fā)和整合各類應用系統(tǒng),對下統(tǒng)一接入操作系統(tǒng)、數(shù)據(jù)庫、中間件等,這樣能夠在不影響或者盡量少影響應用開發(fā)的前提下,實現(xiàn)應用系統(tǒng)在不同系統(tǒng)軟件環(huán)境下的遷移,從而可以有效地促進領域構件在不同系統(tǒng)軟件環(huán)境、不同項目中的復用。
5.2 統(tǒng)一應用監(jiān)管技術
從保障業(yè)務持續(xù)可用的角度出發(fā),從業(yè)務流程、業(yè)務操作、業(yè)務數(shù)據(jù)等各個業(yè)務層面進行監(jiān)控,對監(jiān)測數(shù)據(jù)進行綜合的分析研判,對系統(tǒng)的隱患進行提前預警;提供標準的應用監(jiān)控接口,同時提供開發(fā)包,支持針對特定業(yè)務場景的二次開發(fā),從而能夠更深入地監(jiān)控業(yè)務系統(tǒng),提高系統(tǒng)的可信度。
5.3 軟件開發(fā)協(xié)同平臺
軟件開發(fā)協(xié)同平臺在持續(xù)集成、論壇、即時通訊、缺陷管理、郵件列表工具基礎上,為了適應軟件企業(yè)內部的使用需要,一方面需要根據(jù)需求進行功能調整,另一方面需要通過開放的API接口公開部分服務,和其他辦公系統(tǒng)進行整合。
5.4 軟件生產線過程監(jiān)控技術
在軟件生產線的過程監(jiān)控技術方面,采用實時數(shù)據(jù)采集為主要手段、以指標考核為保證手段的綜合過程監(jiān)控方法。在生產線模型的基礎上,分析需求建模、資產開發(fā)、應用組裝、資產管理和質量保障等主要過程控制點,充分利用監(jiān)控工具進行整合和適應性改進,實現(xiàn)不同開發(fā)環(huán)境下軟件生產線的過程監(jiān)控,并可結合開發(fā)過程的需求,對過程監(jiān)控模型進行改進和擴展。
6 總體結構
在我看來,面向電子政務領域的一體化平臺應該由如下幾個方面組成:
6.1 應用運行支持環(huán)境
應用運行支撐環(huán)境建立在J2EE應用服務器之上,提供了對各類業(yè)務構件的運行支持,必須作為最終應用軟件的一部分。
為了滿足應用軟件的穩(wěn)定、高性能、可維護、可擴展的要求,應用運行支撐環(huán)境本身也需要滿足上述特性。從軟件架構上來看,應用運行支撐環(huán)境的設計需要保持架構的簡單性,提供給開發(fā)人員的接口要盡量簡單。應用運行支撐環(huán)境需要采用微內核的架構,所有業(yè)務構件和通用構件均是可插拔的方式,通過微內核進行管理。
6.2 應用開發(fā)環(huán)境
應用開發(fā)環(huán)境支持應用系統(tǒng)的構件化開發(fā)和部署,提供一個集成的項目開發(fā)工作環(huán)境。應用開發(fā)環(huán)境基于開放源代碼的IDE工具Eclipse,提供了增強的開發(fā)插件,為用戶提供了數(shù)據(jù)模型、業(yè)務規(guī)則模型、界面模型、業(yè)務流程模型等的描述能力,可以基于這些模型直接生成應用程序的框架代碼,開發(fā)人員只需要關注核心的業(yè)務邏輯,添加相應的代碼就可以完成開發(fā),不需要糾纏于實現(xiàn)的細節(jié)。另外,所依賴的代碼模板可以調整,以采用新的技術模式,或者是根據(jù)實施的經驗進行優(yōu)化。當然,不可能在模型中描述應用系統(tǒng)的所有細節(jié),也就不可能生成直接可以運行的所有代碼,需要由開發(fā)人員補充這些關鍵的業(yè)務邏輯代碼,應用開發(fā)環(huán)境保證代碼的同步。最終所有的代碼經過編譯后,由應用開發(fā)環(huán)境部署到應用服務器上。
綜上所述,我總結了如下幾個方面來概括
6.3 應用管理環(huán)境
應用管理環(huán)境提供了對應用系統(tǒng)執(zhí)行的各個方面的監(jiān)管和控制功能,可以是集中式管理的方式,監(jiān)管多個運行環(huán)境,也可以作為構件整合在應用系統(tǒng)之內。它可以監(jiān)管所有實現(xiàn)了應用管理接口的業(yè)務功能,以及對上層業(yè)務構件的運行監(jiān)控等功能。包括對業(yè)務流程、數(shù)據(jù)訪問、業(yè)務規(guī)則等基礎服務的監(jiān)管功能,有助于在系統(tǒng)運行時察看運行狀況,發(fā)現(xiàn)并解決問題。
電子政務領域通用業(yè)務構件
電子政務領域的通用業(yè)務構件,是可以用于多數(shù)政府部門的信息化建設中。主要包括以下幾類:
1)辦公類業(yè)務構件:公文處理、會務管理、行政督察、活動安排、資料庫管理等;
2)辦事類業(yè)務構件:在線申報、政務公開、集成辦事、咨詢交流、辦事通知、服務導航、網(wǎng)上審批、監(jiān)察管理等;
3)網(wǎng)站建設類業(yè)務構件:信息發(fā)布、網(wǎng)頁防篡改、網(wǎng)上調查、論壇、全文檢索等;
4)信息交換類業(yè)務構件:信息抽取、信息轉換、信息加載、信息傳輸?shù)龋?/p>
5)信息安全類業(yè)務構件:統(tǒng)一用戶管理、單點登錄、認證授權、訪問審計等。
[作者簡介]
李可俊(1983-),男,東華大學計算機科學與技術學院,主要研究方向為計算機網(wǎng)絡、數(shù)據(jù)庫、軟件工程等。