(惠州市自來水總公司,廣東惠州 516003)
張群,張戎,宋致遠,陳建煌,楊愛群
張群(1978-)男,安徽宿州人,畢業于合肥工業大學,碩士研究生,系統分析師,現就職于惠州市自來水總公司信息中心。
摘要:企業管理信息系統的應用大多存在著重復開發現象嚴重、代碼重用率低、功能模塊擴展性差、可移植性差等問題,以惠州市自來水總公司營業管理信息系統為例研究了基于組件的企業管理信息系統的開發方法,建立了自來水營業管理系統的模型和具體組件庫。
關鍵詞:組件;組件對象模型;營業管理信息系統
Abstract: The development of the enterprise information management system always meets some problems, such as serious redevelopment, low code reusing,bad functional module extension and bad transfer ability, etc.. In order to solve these problems, taking the water charge management information system of Huizhou water supply company as an example, this paper studies the developing method of business management information system based on components and sets up the model and component library of water charge management system.
Key words: Component; Component object model; Information management system
惠州市位于廣東省東南部,珠江三角洲的東北,南臨大亞灣與深圳、香港毗鄰,北連河源市,東接汕尾市,西鄰東莞市和廣州市。惠州市是以電子信息、石油化工為主的制造業基地,廣東風景旅游城市和歷史文化名城。惠州市自來水總公司始建于1962年9月,是一家以自來水生產與供應為主,集工程設計、管道安裝與維修、二次供水清洗等多項業務為一體的大型國有獨資供水企業,日供水能力為70萬噸,供水范圍100多平方公里,肩負著城區及周邊鄉鎮近百萬人口的生活及經濟建設用水重任。2006年惠州市自來水總公司利用環衛費與水費合并收取的契機規劃建設全新的營業管理信息系統,該系統采用基于組件的開發方法,在實用的前提下力求技術方向的高起點和先進性,并適應未來的網絡互聯趨勢,以保證系統具有開放性、可擴展性和較長的使用期,系統提供統一的接口平臺,方便與其它信息系統的集成。
1 基于組件的軟件開發方法
組件是封裝編譯成獨立的二進制單元并且可復用的自描述程序,與編程語言無關,而且當組件系統的外面軟硬件環境發生變化時,不需要對整個系統進行修改,只需要修改或替換受影響的組件即可。面向組件的軟件開發是將復雜的應用程序分解成一些小的、功能相對單一的組件模塊,組件之間可以跨進程、跨平臺、跨語言等進行通信。圖1顯示了基于組件的軟件開發過程,包括系統功能分解、組件需求分析、組件開發和組件裝配等。功能分解是分析系統的功能模型,為規劃系統所需的組件提供基礎。
組件需求分析根據系統的功能模型提取規劃實現系統功能所需的組件,建立系統的組件庫模型,然后設計后臺數據庫、設計組件的功能與接口。組件開發是根據規劃好的系統組件功能與接口,采用具體的組件技術具體實現組件功能與接口,并完成該組件的測試工作。組件裝配指根據組件需求分析建立的組件庫模型,將各種組件通過包容、聚合等機制組裝完成,實現系統的功能。
圖1 基于組建的軟件開發流程
2 功能模型的建立
惠州市自來水總公司下轄11個營業所和辦事處,各個營業網點功能基本類似,主要業務功能有報裝、抄表、收費、維修維護及對內辦公、對外服務客戶等,因此概要功能模塊有基礎數據管理、報裝管理、抄表管理、收費管理、綜合查詢、統計報表、水表管理、系統管理、權限管理、用戶認證管理以及與企業其它信息系統的數據接口等,自來水營業管理系統架構圖如圖2所示。
基礎數據管理定義并維護系統運行所需的基本參數,具體可分為運行環境定義、用水類型定義、收費類型定義、水表參數定義、水價數據錄入等。報裝管理包括報裝申請、報裝勘察、施工、成本預算等環節。收費管理包括門市收費、托收收費、銀行代收、Pos機等多種收費方式,收費操作界面要求簡單易用,具有找零等功能。系統管理包括部門資料錄入、員工資料錄入、用戶冊號錄入、數據轉月處理、數據年度結轉等。權限管理要求可對每個營業系統操作員設置相應的使用權限,為簡化權限管理,可采用基于角色的方式授權,防止沒有權限的用戶登陸計算機操作。為防止非授權用戶入侵營業管理信息系統,采用用戶認證服務器與營業管理系統數據庫服務器分離的形式,客戶端先向認證服務器發送登錄信息數據包,通過認證后才能進一步獲取營業系統數據庫的連接信息,從而進一步增強數據的安全性。數據接口模塊主要是對本系統或總公司其它信息系統如OA辦公自動化系統、客戶服務系統、GIS管網信息系統等提供統一的數據接口,保證數據的完整統一,又方便維護管理。
3 組件需求分析
通過對系統的功能模型進行細分,外殼組件、支撐組件、內核組件、虛擬數據層及模型等建立營業管理系統的組件庫模型如圖3所示。該模型根據組件在系統中承擔的角色及變化頻率建立組件的層次關系,界面操作組件、業務邏輯組件、報表操作組件、數據接口組件等外殼組件改動的頻率最大,信息中心開發工程師通過修改這些組件可以最大限度滿足用戶需求的變化,而基本功能組件、數據庫操作組件、錯誤處理組件、協調組件等內核組件很少變化,開發具體應用模塊時可以直接調用;虛擬數據庫定義組件、報表格式定義組件、通信定義組件等支撐組件則可以根據運行環境的具體要求,改變系統的內部信息顯示的格式,為系統的運行提供支撐。這種分層的組件模型充分利用組件的重用與易維護的優點,從而達到軟件開發的快速、高效。根據營業管理系統的功能分析,對系統組件層次模型具體主要組件描述如下。
界面操作組件:包括登錄組件、密碼修改組件、圖像字段處理組件、通用查詢組件、業務組件、分析組件、查詢統計組件等。其中營收分析組件包括用戶類型分析界面組件、用戶區域分析界面組件、用戶欠費分析界面組件、水量分析界面組件和區域水量分析界面等小組件;營收查詢統計組件包括營收主賬查詢界面組件、營收流水賬查詢界面組件、營收批次主賬查詢界面組件、營業人員業務量統計等小組件。
業務邏輯組件:包括報裝業務組件、收費業務組件、抄表業務組件、客戶服務業務組件等,其它業務分析組件如用戶區域分析組件以及其它業務處理組件如核算期生成組件、月結轉組件。
報表特征定義組件:包括報表格式獲取組件與報表格式定義組件。報表格式獲取組件獲取用于預先自定義的各種格式,包括報表特征獲取組件與報表模板獲取組件;報表格式定義組件包括報表特性定義組件、報表模板定義組件。報表特性定義組件定義報表的字體等特征;報表模板定義組件提供模板文件的生成、保存、預覽等。
基本組件:包括數據庫樹顯示組件、查詢設置組件、顯示內容設置組件、快速定位組件、編輯信息參照組件、輸出到Word組件、輸出到Excel組件、用戶狀態維護組件、日志記錄組件、分頁顯示組件等。
圖3營業管理系統組件模式
4 組件的設計開發
建立了系統的組件庫經過對組件分析,確定組件的對外接口,即組件的屬性、事件和方法。組件的設計關鍵在于接口的設計應兼顧重用性、實用性和簡單性。因為組件的通用性好就可以提高系統的重用能力,但組件通用能力的提高勢必造成接口復雜程度的提高,所以應根據情況對三者進行兼顧。同時組件的內部實現細節不能反映到接口中。組件接口同內部實現細節的隔離度越高,組件或應用發生變化對接口的影響就越小,組件的靈活性和適用性就越好。
下面以收費業務為例來說明如何利用組件實現系統的功能。
自來水行業營收系統水費收繳方式種類較多,如門市收費、托收收費、預收收費、銀行代收等,而且業務邏輯比較復雜,系統采用業務規則驅動建模方法分析門市收費業務處理邏輯。其業務邏輯處理流程如圖4所示。
由圖4可以得出,門市收費業務邏輯主要由收費信息檢查、主賬更新、批次賬更新、流水帳更新、日志更新、發票打印等若干個相對獨立的步驟組成。它們分別完成信息檢查、主賬修改、批次賬修改、流水賬修改、日志記錄等功能。信息檢查組件首先核查用戶資料和繳費資料,核實用戶繳費類型、有無欠費等信息。如用戶多月未繳費,信息檢查組件給出提示,提醒用戶必須按時間順序補交(遵循時間久先繳原則),同時收繳相應滯納金。
繳費信息只有通過信息檢查組件核實通過,才能開始事務處理,順次調用主帳更新組件、批次帳更新組件、流水帳更新等組件來更新數據庫相關表數據,全部執行成功則提交事務,收費結束。
若事務開始后,某更新組件執行失敗,則進行事務回滾,不更新數據庫相關數據,同時返回到收費單據錄入狀態或收費結束。
5 組件的組裝和系統的實現
根據組件庫模型開發實現所有組件,組件之間的裝配采用包容、聚合、調用等機制。在程序主界面中根據操作人員權限的不同調用相應功能模塊的組件,由于界面與數據操作分離,各功能模塊相對獨立,單一模塊的變更基本上不影響其它模塊組件,提高了軟件的可靠性、重用性、可擴展性等。通過對基于組件的自來水營業管理系統軟件開發方法的探索,建立了營業管理系統的組件庫模型,并在此基礎上實現了營業管理系統的組件庫,用于解決管理軟件重復編碼、開發效率低的問題,同時使系統更容易維護、擴展和升級,適應企業動態變化的外部環境。
6 結語
自來水營業管理信息系統自2006年12月開始開發,于2007年10月投入使用。該系統整合了自來水公司主要業務,包括報裝、抄表、收費、客戶服務和辦公管理等,在一個系統上完成所有業務,具有良好的通用性、完整性、可靠性、擴展性等,可以靈活應對各種規模水司的應用,最終為用戶提供管理嚴謹、業務全面、運行穩定、擴展性強并具有強大分析能力的營業收費管理系統。該系統對供水企業整個營業業務過程進行一體化管理,達到企業營業信息共享、降低成本、提高效益和管理水平的目的,在惠州自來水總公司已穩定運行2年,推動總公司信息化水平邁上新臺階,創造了良好的經濟效益和社會效益。2009年10月榮獲第十九屆廣東省企業信息化建設創新成果二等獎。
參考文獻:
[1] 劉濤,殷國富,崔靜. 基于組件技術的電氣設計資源管理系統的研究[J].機電一體化,2006,01.
[2] 張曦澤,王化文,王中秋. 基于組件的報表自動生成系統的研究與實現[J].計算機工程與設計,2005,26(5):1358~1360.
[3] 赫爾祖姆,西姆斯. 基于組件的企業級開發[M]. 北京: 機械工業出版社.2005.
[4] 謝規良,江琳等. 基于組件的車間管理信息系統模型[J]. 計算機工程與應用. 2002,38 (18).
摘自《自動化博覽》2010年第三期