電子政務系統(tǒng)協(xié)同式開發(fā)平臺研究

岳建偉,劉生權,鐘耳順,姚敏,方利,張建平

(1. 中國科學院地理資源所,北京 100101;2. 中國科學院研究生院,北京 100039)

論文來源:計算機工程

摘要:當前應用于電子政務系統(tǒng)開發(fā)的輔助開發(fā)工具之間彼此獨立,造成系統(tǒng)開發(fā)的不連續(xù)性和重復勞動,容易產(chǎn)生錯誤。為解決該問題,提出了電子政務協(xié)同式開發(fā)平臺設計,將流程建模工具、業(yè)務邏輯建模工具、業(yè)務表單定制工具和系統(tǒng)運行平臺等有機地結合在一個平臺,使這些工具協(xié)同合作…

關鍵詞: 電子政務系統(tǒng);協(xié)同式開發(fā)平臺;模型驅動構架

1 概述

面向對象技術、構件開發(fā)技術、B/S 體系結構、J2EE和.NET 技術架構等各種先進的軟件開發(fā)技術和軟件輔助開發(fā)工具對于提高電子政務系統(tǒng)的開發(fā)速度和質量具有很大的幫助[1]。但是,由于這些工具之間的獨立性,使得電子政務系統(tǒng)的開發(fā)過程中各個環(huán)節(jié)之間是不連續(xù)的,下一階段不能充分利用前一階段的工作成果,不僅造成不必要的重復勞動,而且容易出錯。例如在數(shù)據(jù)庫設計完畢后,目前的業(yè)務建模工具只能自動生成數(shù)據(jù)庫結構和數(shù)據(jù)庫設計文檔,而在后續(xù)系統(tǒng)編碼過程中,對于數(shù)據(jù)庫與表單元素的聯(lián)系卻沒有任何幫助;此外,電子政務中業(yè)務辦理流程中不同活動對表單的處理擁有不同權限,因此工作流系統(tǒng)與表單有著緊密的聯(lián)系。但是目前工作流和表單的設計開發(fā)是相互獨立的,軟件開發(fā)人員必須在表單編碼時處理這些問題。由于不同的表單內容雖然不同,但是表單權限控制方式卻是一致的,這必然造成重復勞動,也不可避免地造成錯誤的產(chǎn)生。再者,表單與數(shù)據(jù)庫之間的數(shù)據(jù)交流的方式也基本相同,差別只是數(shù)據(jù)庫字段名稱和表單元素名稱的不同,這種情況造成代碼編寫人員看似在編寫不同的表單,但是卻在進行無數(shù)次重復相同的 工作。

如何充分利用前一階段的勞動成果,使編程工具盡可能多地生成有規(guī)律性的業(yè)務代碼,減少程序員的重復勞動,本文對此進行了研究,開發(fā)出了一套電子政務系統(tǒng)協(xié)同式開發(fā)平臺,取得了一定的效果。

2 協(xié)同式開發(fā)平臺設計

協(xié)同式開發(fā)平臺的基本設計原理是將系統(tǒng)不同開發(fā)階段工具集成在一起,使其成為一個完整統(tǒng)一的整體,各開發(fā)階段的開發(fā)工具相互協(xié)同工作,共同輔助程序開發(fā)人員完成系統(tǒng)的開發(fā)。如圖 1 所示,協(xié)同式開發(fā)平臺由 4 部分組成:業(yè)務流程建模工具,業(yè)務邏輯建模工具,業(yè)務表單定制工具和系統(tǒng)基礎運行平臺等。這 4 個系統(tǒng)開發(fā)工具相互配合輔助系統(tǒng)開發(fā)人員完成系統(tǒng)的開發(fā),其中流程建模工具輔助完成業(yè)務流程的定義;對象建模工具輔助完成業(yè)務對象的建模工作;表單定制工具將業(yè)務表單與工作流中的活動、活動中對于該表單的處理權限以及業(yè)務模型中的屬性字段相關聯(lián),并自動生成對數(shù)據(jù)的操作代碼;系統(tǒng)基礎運行平臺將開發(fā)人員根據(jù)需求搭建的系統(tǒng)原形以圖形、文字和模擬實際辦公的方式展現(xiàn)給用戶。用戶可以直觀地了解開發(fā)人員對需求的理解是否正確,系統(tǒng)功能是否完全覆蓋自己的要求等。用戶根據(jù)觀察的情況將意見反饋給系統(tǒng)開發(fā)人員,開發(fā)人員可以立即根據(jù)用戶的要求進行修改并重新展示給用戶。這種模式使得用戶和開發(fā)人員的交流更加方便快捷,并且系統(tǒng)自動生成的文檔和代碼保證了需求設計文檔與實際編碼的一致性、代碼的規(guī)范性與健壯性。

2.1 業(yè)務邏輯建模工具

業(yè)務邏輯建模工具主要功能為圖示化顯示設計對象的屬性以及對象之間的關系、自動生成業(yè)務數(shù)據(jù)庫建庫腳本、自動生成系統(tǒng)詳細設計文檔、實現(xiàn)數(shù)據(jù)庫關系模型到業(yè)務對象模型的逆向工程、業(yè)務對象模型到數(shù)據(jù)庫關系模型的正向工程和將有關業(yè)務邏輯對象的相關信息存入業(yè)務邏輯數(shù)據(jù)庫中等。這些信息為表單定制工具將業(yè)務對象與表單元素結合創(chuàng)造了必要條件,是協(xié)同式開發(fā)平臺工作的基礎。

在業(yè)務邏輯建模工具中主要應用了模型驅動構架(Model Driven Architecture)的思想。MDA 的核心在于在設計階段系統(tǒng)就已經(jīng)完全描述,所以,在創(chuàng)建系統(tǒng)的時候,幾乎就沒有錯誤解釋的可能,模型也就可以直接生成代碼。業(yè)務邏輯建模工具從平臺無關模型(Platform Independent Model)開始,然后由系統(tǒng)自動生成平臺相關(Platform Specialize Mode)的代碼。通過業(yè)務邏輯建模工具可以搭建數(shù)據(jù)庫及應用程序的基礎框架。其關鍵技術主要包括:對象代碼自動生成,關系數(shù)據(jù)庫自動生成,對象關系映射(Object Relation Mapping)模型自動構建。這些自動生成功能使用戶可以從繁重的編碼工作中解放出來,從而更專注于業(yè)務設計。

2.2 業(yè)務流程建模工具

一般的業(yè)務流程建模工具主要是用于系統(tǒng)設計階段。由于在設計完成后用戶才能看到系統(tǒng)原型,因此在系統(tǒng)設計完成后用戶和系統(tǒng)開發(fā)人員才能與用戶進行更進一步的交流,才能夠知道設計人員的理解與用戶的意圖是否一致。這種狀況必然造成交流的困難和延長系統(tǒng)的開發(fā)周期。

協(xié)同式開發(fā)平臺與一般流程建模工具主要區(qū)別在于可以直接利用該工具記錄用戶對于業(yè)務流程的需求,并立即建立業(yè)務辦理的流程模型,進而向用戶展示系統(tǒng)的原型。該工具主要功能為用戶定義維護、角色定義維護、組織機構定義維護、系統(tǒng)模塊定義維護和自動生成用戶需求與系統(tǒng)設計文檔等。它最終的成果是系統(tǒng)業(yè)務處理流程對應的工作流模型,用戶需求文檔和系統(tǒng)設計文檔。協(xié)同式開發(fā)平臺具有以下優(yōu)點:可視化的流程建模,直觀,減小了和用戶之間的交流誤差;業(yè)務流程模型與業(yè)務工作流一體化,業(yè)務的流程模型的建立和編輯與對應的工作流數(shù)據(jù)庫一致;業(yè)務流程模型與業(yè)務需求調查分析文檔的高度一致;業(yè)務流程建模工具可以根據(jù)業(yè)務流程模型自動生成圖文并茂的需求分析文檔,減少了編寫需求分析文檔的工作量,也使得文檔與系統(tǒng)高度一致。

2.3 業(yè)務表單定制工具

業(yè)務表單定制工具在協(xié)同式開發(fā)平臺中起到協(xié)同綜合的作用。它充分利用了前面兩個工具生成的工作流模型和業(yè)務模型等信息,將表單與業(yè)務和工作流相關聯(lián),充分表現(xiàn)了協(xié)同開發(fā)系統(tǒng)的思想。

目前,在電子政務系統(tǒng)的開發(fā)過程中,表單設計工作主要是表單界面的設計和將表單元素與業(yè)務模型建立聯(lián)系,從而使數(shù)據(jù)能夠在表單和數(shù)據(jù)庫之間準確順利交互。不同表單其界面也不相同,所以對于表單界面的設計工作無法由系統(tǒng)

更多內容請查看pdf