摘 要:結合會計領域背景,討論了面向對象設計和面向對象實現,在面向對象實現過程中,用對象分解取代功能分解,設計了不同的類等級,并定義各自的屬性和服務,建立了UML模型。充分考慮了系統的可移植性、重用性等方面,采用了Java語言實現。
關鍵詞:面向對象;會計;核算;信息系統
中圖分類號:F23文獻標識碼:A文章編號:1672-3198(2008)08-0346-02
0 前言
為了適應社會市場經濟發展和我國會計制度改革的需要,會計信息系統的快速建立,已成為我國各個企、事業單位急需解決的問題。能不能想一種辦法,在短時間內快速準確地建立會計信息系統已成為軟件開發領域研究的一個重要課題。由于軟件生命周期由軟件定義、軟件開發和維護三個時期組成,每個時期又可進一步劃分成若干個階段,而前一個階段的完成,下一個階段才能開始。這樣,軟件的開發時間必然很長,為了快速地建立會計信息系統,這種傳統的軟件開發方法變得不切合實際,因此需要采面向對象的方法建立會計信息系統。
1 會計核算信息系統的需求描述
會計信息系統的總體功能如圖1所示:
圖1 會計信息系統功能圖
1.1 會計核算信息系統的功能
會計核算信息系統應提供的功能如圖2所示:
(1)帳務處理子系統:以記帳憑證的各要素為輸入對象,按會計科目進行登記、匯總,輸出總帳及各種明細帳和日記帳。銀行對帳是以銀行對帳單為輸人對象,再根據帳務處理中的銀行日記帳數據,進行銀行對帳處理,輸出銀行存款余額調整表和未達帳項。
(2)工資核算子系統:根據工資結算單文件,按各工資項目和扣款項目,計算每一位職工的應發工資和實發工資,輸出工資結算單,據以發放工資,并進行匯總、分配和計提處理,輸出工資匯總表、工資費用分配表和福利費用計提表,同時進行轉帳處理。
(3)固定資產核算子系統:根據固定資產卡片文件,進行日常固定資產的增減變化處理,按使用部門和不同的折舊方法計提固定資產折舊,輸出固定資產折舊計算表,編制相應的轉帳憑證。
(4)成本計算子系統:利用帳務處理子系統中的有關費用數據,以及產品產量、工時等數據,進行費用歸集和分配,采用不同的成本計算方法,計算當月完工產品成本和在產品成本,并進行轉帳處理,為成本報表編制提供數據。
(5)往來核算子系統:往來核算是將購貨往來、銷貨往來和個入往來款的有關明細數據進行輸入,定期地進行對帳處理,以及帳齡分析處理,輸出往來款項的增減變化情況。
圖2 會計核算信息系統的功能
(6)會計報表編制子系統:根據帳務處理子系統和其他有關子系統的數據,編制各種會計報表,并按一定格式輸出相應的會計報表。
(7)系統維護模塊:系統維護模塊主要設置數據故障恢復和操作員權限設置等功能。數據故障恢復是在系統發生意外事故的情況下,對已破壞的數據文件進行恢復而設置的功能,要求使數據遭到破壞后恢復到數據的最近狀態。主要通過一些技術處理或對已備份文件復制返回處理點,來恢復被破壞的數據。操作員權限設置是對各個操作員的權限加以限制,使其不能操作不該操作的功能模塊。
1.2 會計管理信息系統的功能
會計管理信息系統應提供的功能如圖3所示:
會計決策信息系統應提供的功能如圖4所示:
圖3 會計管理信息系統的功能
圖4 會計決策信息系統的功能
2 系統的用例建模
軟件系統開發的一項最基本的工作就是分析問題領域。其結果就是對問題領域的完整、明確的定義,以決定目標系統將做些什么。
分析問題領域的主要任務是:抽象問題領域,提出解決方案。對目標系統進行需求分析,并用例圖對未來系統的行為建立模型,初步確定未來系統的體系結構等。由于會計信息系統以會計核算信息系統為核心,而會計核算信息系統又以帳務處理子系統(以下稱帳務處理系統)為核心,本文只對帳務處理系統進行分析與設計。
2.1 識別參與者
根據系統的需求可以確定參與者。包括:(1)制單人:根據原始憑證填制(錄入)記帳憑證的操作員;(2)憑證審核人:有權對制單人填制的記帳憑進行審核的操作員;(3)記帳人:有權對已審核完的記帳憑證進行記帳的操作員。
2.2 識別用例
確定參與者后,應當根據系統需求找出全部的用例。從頂層用例抽象,可以確定一個用例:“帳務處理”。用例“帳務處理”與兩個參與者都存在交互。
頂層的用例模型只包含一個用例:“帳務處理”。這個用例需要進一步細化為更小一些的用例,以便深入分析系統的要求和目標。細化用例時可以按照用例細化,也可以按照參與者細化。在這里以不同的參與者來細化用例,與“操作員”有關的用例有:“登錄”、“填制憑證(制單)”、“憑證審核”、“憑證記帳”、“憑證查詢”、“憑證匯總”、“憑證打印”、“登帳”、“對帳”、“結帳”、“查帳”、“帳簿打印”,“操作員”是通過“登錄”來進入系統的。
2.3 為用例編寫文檔
2.3.1 登錄用例
(1)前置條件:無。
(2)后置條件:如果此用例成功,參與者能夠啟動系統并使用系統所提供的功能。如果此用例沒有成功,則系統的狀態不變。
(3)擴充點:無。
(4)事件流。
①基流。
當用戶希望登錄到系統中時,用例啟動;
A-1首先系統提示用戶輸入用戶名和密碼;
A-2然后用戶輸入用戶名和密碼;
A-3系統驗證輸入的用戶名和密碼是否正確,如果正確,用戶登錄到系統中,如果不正確則執行替換流B-1。
②替換流。
B-1如果用戶輸入的用戶名和密碼不正確,系統會顯示提示信息。用戶可以選擇返回基流的起始點,重新輸入正確的用戶名和密碼;也可以取消登錄,使用例結束。
2.3.2 審核憑證用例
(1)前置條件:“操作員”必須登錄到系統中,并且有審核憑證的權限。
(2)后置條件:如果“審核憑證”用例成功,將已審核的記帳憑證打上審核標記并存儲。如果這個用例不成功,則系統的狀態沒有變化。
(3)擴充點:無。
(4)事件流。
①基流。
當操作員進入系統審核憑證時,用例啟動。
如果“操作員”選擇“憑證審核”,則執行分支流A-1,進行憑證審核。
②分支流。
A-1提供記帳憑證的種類及信息;
A-2選擇審核的記帳憑證;
A-3檢索該記帳憑證。如果該記帳憑證不存在,則執行替換流B-1;
A-4確定所審核的記帳憑證是否有審核權限,如果沒有審核權限,執行替換流B-2;
A-5確定所審核的記帳憑證是否有問題。如果該記帳憑證有問題,則不能通過審核,執行替換流B-3;
A-6確定所審核的記帳憑證是否已通過審核,若已審核完畢,則執行替換流B-4;
A-7審核通過,將審核通過的標記填入到該記帳憑證中;
A-8存儲審核完的記帳憑證(記錄)。
③替換流。
B-1如果該記帳憑證不存在,則系統顯示提示信息,用例終止;
B-2如果對該記帳憑證沒有審核權限,則系統顯示提示信息,用例終止;
B-3如果該記帳憑證有問題,則系統顯示提示信息,用例終止;
B-4如果該記帳憑證已通過審核,則系統顯示提示信息,用例終止。
2.3.3 記帳用例
(1)前置條件:在“記帳”用例開始前,“操作員”必須登錄到系統中
(2)后置條件:如果“記帳”用例成功,將已記帳的記帳憑證打上已記帳標記并存儲。如果這個用例不成功則系統的狀態沒有變化。
(3)擴充點:無。
(4)事件流:。
①基流。
當操作員進入系統進行記帳時,用例啟動。
A-1提供記帳憑證的種類及信息;
A-2選擇要進行記帳的記帳憑證;
A-3檢索該記帳憑證。如果該記帳憑證不存在,則執行替換流B-1;
A-4確定對所選的記帳憑證是否有記帳權限,如果沒有記帳權限,則執行替換流B-2;
A-5確定對所選的記帳憑證是否已通過審核,如果未通過審核,則執行替換流B-3;
A-6進行記帳,將已記帳的記帳憑證填上“已記帳”標記并存儲。
②替換流。
B-1如果該記帳憑證不存在,則系統顯示提示信息,用例終止;
B-2如果對該記帳憑證沒有記帳權限,則系統顯示提示信息,用例終止;
B-3如果該記帳憑證未通過審核,不能記帳,則系統顯示提示信息,用例終止。