淺談財(cái)務(wù)管理系統(tǒng)用戶可定制性技術(shù)論文
1引言
目前,不管在行政事業(yè)單位,還是在生產(chǎn)企業(yè)單位,財(cái)務(wù)管理系統(tǒng)是一個(gè)較典型的應(yīng)用系統(tǒng)。在軟件工程界,很多軟件組織在現(xiàn)有的開(kāi)發(fā)環(huán)境下使用了各種可能的方法與途徑進(jìn)行過(guò)此方面應(yīng)用系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),但是還存在一些共同的問(wèn)題,主要表現(xiàn)在:
(1)按通用系統(tǒng)來(lái)進(jìn)行設(shè)計(jì),把業(yè)務(wù)的主要邏輯或計(jì)算公式存放在數(shù)據(jù)庫(kù)中,除系統(tǒng)表以外設(shè)計(jì)模式,大部分表采用自定義方式,保證所開(kāi)發(fā)的財(cái)務(wù)管理系統(tǒng)能用于所有學(xué)校或行政企業(yè)單位。
(2)從界面和業(yè)務(wù)分離到分布式多層體系結(jié)構(gòu),包括界面和業(yè)務(wù)的邏輯分離、界面與業(yè)務(wù)的物理分離、界面和業(yè)務(wù)的空間分離。
(3)系統(tǒng)與其他系統(tǒng)的數(shù)據(jù)導(dǎo)入與導(dǎo)出的設(shè)計(jì)。
(4)各種自定義報(bào)表的設(shè)計(jì)。
(5)在創(chuàng)建型模式、結(jié)構(gòu)型模式以及行為型模式系列中選擇合式的模式運(yùn)用到本系統(tǒng)中。
(6)功能對(duì)象、協(xié)調(diào)對(duì)象以及數(shù)據(jù)對(duì)象的如何設(shè)計(jì),才能使系統(tǒng)性能達(dá)到最佳。
(7)系統(tǒng)的安全性考慮,如基于角色的訪問(wèn)控制管理問(wèn)題等。
為使得財(cái)務(wù)管理系統(tǒng)具有用戶可定制性,以軟件復(fù)用技術(shù)為設(shè)計(jì)理念,利用面向?qū)ο蟪绦蛟O(shè)計(jì)思想,充分使用組件開(kāi)發(fā)、模式設(shè)計(jì)的思想、分布式多層體系結(jié)構(gòu)等現(xiàn)代軟件工程關(guān)鍵詞匯,便于人們?cè)谲浖_(kāi)發(fā)中的交流與溝通,有助于實(shí)現(xiàn)應(yīng)用程序的功能,有助于建立一個(gè)復(fù)雜的架構(gòu)。每個(gè)模式提供組件、作用以及相互關(guān)系的預(yù)定義集。
系統(tǒng)采用演進(jìn)軟件開(kāi)發(fā)過(guò)程模型,使用面向?qū)ο筌浖_(kāi)發(fā)方法,貫徹設(shè)計(jì)模式思想,采用分布式多層體系結(jié)構(gòu)與DCOM/COM+組件等技術(shù)[4,5,6,7]來(lái)實(shí)現(xiàn)財(cái)務(wù)管理系統(tǒng)的業(yè)務(wù)邏輯,主要有對(duì)工資類、津貼類、福利類、加班類、獎(jiǎng)勵(lì)類以及其他類各項(xiàng)收入進(jìn)行日常管理(包括日常數(shù)據(jù)修改、查詢及報(bào)表打印),能夠按指定要求將六類收入?yún)R總統(tǒng)計(jì),方便對(duì)各項(xiàng)數(shù)據(jù)進(jìn)行財(cái)務(wù)分析;根據(jù)人事信息資料,對(duì)各類人員的信息增加修改、查詢;根據(jù)財(cái)務(wù)核算要求任意添加、修改各大類明細(xì)項(xiàng)目;以工資號(hào)為主鍵,通過(guò)手工修改、成批修改、公式修改待等方式方便、靈活地修改人各收入類數(shù)據(jù)設(shè)計(jì)模式,降低數(shù)據(jù)集操作的工作量,提高工作效率;根據(jù)各項(xiàng)指定條件(單個(gè)條件或組合條件),方便、快捷地篩選數(shù)據(jù);自定義報(bào)表輸出,根據(jù)業(yè)務(wù)需要,將系統(tǒng)中的查詢數(shù)據(jù)、匯總信息及變動(dòng)信息實(shí)時(shí)打印或轉(zhuǎn)換成Excel表的形式輸出;在校園網(wǎng)環(huán)境中,允許多用戶同時(shí)登錄系統(tǒng);界面人性化設(shè)計(jì),充分考慮財(cái)務(wù)核算人員的操作思路,直觀反映財(cái)務(wù)管理要求,方便人機(jī)信息交換。
2財(cái)務(wù)管理系統(tǒng)架構(gòu)用戶可定制性技術(shù)
財(cái)務(wù)管理系統(tǒng)架構(gòu)用戶可定制性體現(xiàn)在:真正的軟件復(fù)用和高度的互操作性[8],開(kāi)發(fā)者可利用它組合成不同的應(yīng)用系統(tǒng);接口的可靠性,組件接口是不變的,接口是穩(wěn)定的;可擴(kuò)充服務(wù),每個(gè)組件是自主的,有其獨(dú)自的功能,只能通過(guò)接口與外界通信;具有強(qiáng)有力的基礎(chǔ)設(shè)施,為了組件有機(jī)地組織在一起;具有構(gòu)建和組合組件的工具,可以方便地增加和替換應(yīng)用中的組件,充分發(fā)揮可復(fù)用的優(yōu)勢(shì),實(shí)現(xiàn)客戶應(yīng)用程序的組裝和升級(jí)。在開(kāi)發(fā)鹽城師范學(xué)院財(cái)務(wù)管理系統(tǒng)時(shí)設(shè)計(jì)模式,采用了COM/DCOM組件技術(shù)。通過(guò)該系統(tǒng)可以對(duì)學(xué)院的教職的收入的六大組成部分(工資、福利、津貼、加班、獎(jiǎng)勵(lì)和其它)的信息進(jìn)行輸入、導(dǎo)入、導(dǎo)出、查詢、統(tǒng)計(jì)、修改、打印和生成銀行報(bào)盤。
系統(tǒng)采用三層結(jié)構(gòu),客戶端表示層由FORM窗體組成,可實(shí)現(xiàn)COM組件的調(diào)用,業(yè)務(wù)邏輯和數(shù)據(jù)訪問(wèn)由一組用Delphi實(shí)現(xiàn)的COM組件構(gòu)成。為了便于維護(hù)、升級(jí)和實(shí)現(xiàn)分布式應(yīng)用,在實(shí)現(xiàn)過(guò)程中,又將業(yè)務(wù)邏輯層和數(shù)據(jù)訪問(wèn)層分離開(kāi),客戶端不直接調(diào)用數(shù)據(jù)訪問(wèn)層,而是通過(guò)業(yè)務(wù)邏輯層來(lái)調(diào)用數(shù)據(jù)庫(kù),如圖1所示。
圖1 三層結(jié)構(gòu)示意圖
中間層組件對(duì)所用到的數(shù)據(jù)庫(kù)中的表示進(jìn)行了封裝,形成了組件。通過(guò)接口為表現(xiàn)層提供服務(wù)。建立Remote Data Module業(yè)務(wù)邏輯,確定應(yīng)用程序服務(wù)器的名稱、實(shí)例屬性以及服務(wù)器所使用的線程模型等信息。然后向空白窗體中加入非可視化的VCL組件。
本系統(tǒng)中主要ADOConection, ADOCommand,ataSetProvider, ADODataSet等組件,如圖2所示。 圖2 系統(tǒng)數(shù)據(jù)存取組件 表現(xiàn)層的主要組件包括登錄組件,數(shù)據(jù)查詢組件,數(shù)據(jù)修改組件,個(gè)人信息項(xiàng)目管理組件,基本表管理組件,銀行報(bào)盤組件,公式設(shè)置組件,信息初始化組件設(shè)計(jì)模式,生成匯總數(shù)據(jù)組件和報(bào)表打印組件等。
3財(cái)務(wù)管理系統(tǒng)模塊用戶可定制性技術(shù)
3.1 數(shù)據(jù)庫(kù)模塊用戶可定制性技術(shù)
為使本系統(tǒng)具有通用性,后臺(tái)可使用不同的數(shù)據(jù)庫(kù),如Access數(shù)據(jù)庫(kù)、SQL數(shù)據(jù)庫(kù)等。而應(yīng)用程序中提供用戶訪問(wèn)數(shù)據(jù)庫(kù)的某一專用的數(shù)據(jù)集對(duì)象往往難以勝任這種多變的需求。由于數(shù)據(jù)庫(kù)的連接和訪問(wèn)機(jī)制比較復(fù)雜。如果將數(shù)據(jù)庫(kù)連接方式寫死在程序中,將不利于今后的維護(hù)和復(fù)用。如果客戶端能夠創(chuàng)建一個(gè)通用的數(shù)據(jù)集對(duì)象創(chuàng)建方法來(lái)創(chuàng)建數(shù)據(jù)集對(duì)象,就可以解決這個(gè)問(wèn)題。這樣,對(duì)象的創(chuàng)建方法要與要?jiǎng)?chuàng)建的對(duì)象就可以分離開(kāi)來(lái),達(dá)到去耦的效果。
如圖3所示,是一個(gè)用于數(shù)據(jù)庫(kù)訪問(wèn)的工廠方法設(shè)計(jì)模式圖,圖中的TDataFactory和TDataSet分別是工廠方法模式中的工廠類和產(chǎn)品類。它們都是抽象類,負(fù)責(zé)維護(hù)工廠和新產(chǎn)品之間的關(guān)系,TDataFactroy負(fù)責(zé)創(chuàng)建TDataSet對(duì)象。
圖3 工廠模式
顯然,系統(tǒng)事先無(wú)法知道會(huì)使用何種類型的數(shù)據(jù)庫(kù)以及使用何種數(shù)據(jù)庫(kù)連接機(jī)制。只知道何時(shí)有一個(gè)新的數(shù)據(jù)集對(duì)象要被創(chuàng)建,但不知道所要?jiǎng)?chuàng)建的是哪一種數(shù)據(jù)集對(duì)象。這就是說(shuō)系統(tǒng)將實(shí)際創(chuàng)建工作委派到TDFactory類的派生中了。而這個(gè)抽象類TDFactory提供創(chuàng)建數(shù)據(jù)集對(duì)象的抽象方法CreateDataSet,它相當(dāng)于一個(gè)虛構(gòu)造子,而具體工廠類創(chuàng)建具體產(chǎn)品的過(guò)程是通過(guò)多態(tài)來(lái)實(shí)現(xiàn)的。
3.2系統(tǒng)界面模塊用戶可定制性技術(shù)
不同用戶對(duì)系統(tǒng)界面的要求不同,有的`用戶喜歡使用傳統(tǒng)的按鈕界面,有的用戶喜歡使用菜單界面。鹽城師范學(xué)院財(cái)務(wù)部門的操作人員就有這兩種不同的需求。本系統(tǒng)通過(guò)使用抽象工廠模式實(shí)現(xiàn)兩種操作界面,即按鈕界面和菜單界面。
本文來(lái)源:http://www.nvnqwx.com/shiyongwen/2648027.htm