程 海,王趙軍 ,許俊虎 ,胡傳政,馬 淼
(1.江蘇三六五網(wǎng)絡(luò)股份有限公司,江蘇 南京 210004;2.河海大學港口海岸與近海工程學院,江蘇 南京 210004;3.南京旅游集團,江蘇 南京 210004;4.南京大學商學院,江蘇 南京 210004;5.江蘇省產(chǎn)業(yè)技術(shù)研究院,江蘇 南京 210004)
系統(tǒng)開發(fā)中最為關(guān)鍵的工作是設(shè)計方案的實用性與規(guī)范性。如果在設(shè)計上出現(xiàn)重大問題,將會導致最終開發(fā)完成的系統(tǒng)無法滿足省產(chǎn)研院全面預(yù)算管理要求,因此在設(shè)計階段必須遵循統(tǒng)一的原則,以便構(gòu)建易用、可靠的預(yù)算系統(tǒng):
(1)技術(shù)上的先進性原則。全面預(yù)算業(yè)務(wù)會隨著省產(chǎn)研院的發(fā)展而不斷發(fā)生變化,若系統(tǒng)技術(shù)上不領(lǐng)先,則只能重新構(gòu)建,但這樣信息化管理成本太高,且會加大省產(chǎn)研院的應(yīng)用成本;為此,系統(tǒng)保持技術(shù)上的先進性特別重要。
(2)使用上的實用性原則。全面預(yù)算管理業(yè)務(wù)專業(yè)性較強,包括:預(yù)算編制、預(yù)算審批、預(yù)算上報、預(yù)算考核等日常工作,系統(tǒng)不僅要保證功能完善,而且處理過程必須面向?qū)嶋H工作,以保證系統(tǒng)的實用性。
(3)規(guī)劃上的可擴展性原則??蓴U展性一是針對在系統(tǒng)出現(xiàn)故障人工進行修復時系統(tǒng)能有一定的承載量,承載人工修復過程中加入的新功能。二是適應(yīng)預(yù)算系統(tǒng)后期發(fā)展的進一步需求,不會在短期內(nèi)被更新替代。
(4)應(yīng)用上的可維護性原則。系統(tǒng)正式投入使用后一定會出現(xiàn)一些故障,系統(tǒng)的可維護性就是要求系統(tǒng)在遇到此類故障時能夠在第一時間進行快速修復,通過系統(tǒng)內(nèi)部解決或是壓制故障的發(fā)生及蔓延。
(5)安全上的可靠性原則。這是設(shè)計時十分重要的一個原則,用戶愿意使用系統(tǒng)表達了對該系統(tǒng)的認可,那系統(tǒng)就應(yīng)當提供更好的安全保護,若系統(tǒng)的安全性和可靠性欠佳,那用戶信息就可能遺漏,由此所帶來的損失難以估量。
(1)網(wǎng)絡(luò)拓撲結(jié)構(gòu)設(shè)計。從預(yù)算業(yè)務(wù)處理需求出發(fā),省產(chǎn)業(yè)技術(shù)研究院全面預(yù)算系統(tǒng)基于B/S模式進行實現(xiàn),由此各用戶通過瀏覽器來接入服務(wù)器進行業(yè)務(wù)處理。為了保證系統(tǒng)安全,在網(wǎng)絡(luò)入口處部署了防火墻,目的在于阻擋非法請求進入省產(chǎn)研院全面預(yù)算系統(tǒng),這樣就可以有效降低省產(chǎn)研院全面預(yù)算管理系統(tǒng)面臨的安全風險。
(2)系統(tǒng)技術(shù)架構(gòu)設(shè)計。省產(chǎn)研院全面預(yù)算系統(tǒng)基于J2EE平臺進行構(gòu)建,并采用B/S模式,為此在表示層需使用JSP技術(shù)來接收請求、并進行信息展示;表示層的請求通過Structs框架進行控制和轉(zhuǎn)發(fā),其會轉(zhuǎn)發(fā)給對應(yīng)的Services業(yè)務(wù)接口進行處理,業(yè)務(wù)層承擔著最關(guān)鍵的工作,處理請求以及返回結(jié)果,在該層可使用Spring框架;若業(yè)務(wù)涉及到數(shù)據(jù)庫,則需要調(diào)用hibernate技術(shù)方法,目的在于實現(xiàn)與數(shù)據(jù)庫的交互,業(yè)務(wù)處理后獲得的數(shù)據(jù)會被返回到顯示層,以便展示。從上述描述可明確省產(chǎn)研院全面預(yù)算管理系統(tǒng)的技術(shù)要求以及各技術(shù)作用。圖1展示了各項技術(shù)在系統(tǒng)中的交互。
圖1 省產(chǎn)研院預(yù)算系統(tǒng)技術(shù)架構(gòu)圖
(3)系統(tǒng)功能模塊劃分。在模塊劃分時,需按照業(yè)務(wù)相近的原則進行處理?;谏鲜鲈瓌t劃分,可提升系統(tǒng)可維護性,使代碼組織更規(guī)范,其由預(yù)算組織機構(gòu)維護、年度預(yù)算編制管理、預(yù)算編制審批以及預(yù)算變更管理等功能模塊構(gòu)成。系統(tǒng)各部分模塊在省產(chǎn)研院全面預(yù)算系統(tǒng)中承擔不同的任務(wù);年度預(yù)算編制管理用于上報預(yù)算的編制,預(yù)算編制審批用于審批上報的預(yù)算編制;如編制不正確,則可申請預(yù)算變更。
在廣泛調(diào)研對比各類數(shù)據(jù)庫優(yōu)缺點的基礎(chǔ)上,系統(tǒng)選擇Oracle數(shù)據(jù)庫來存儲預(yù)算信息。Oracle在性能上具有一定的優(yōu)勢,并且與省產(chǎn)研院的應(yīng)用需求相符。在選定數(shù)據(jù)存儲平臺之后,需要對功能進行逐一分析,以便確定全面預(yù)算系統(tǒng)包含的實體,以下將詳細闡述系統(tǒng)的數(shù)據(jù)模型。
(1)E-R圖設(shè)計。預(yù)算組織機構(gòu)維護模塊需提供組織機構(gòu)實體以及組織機構(gòu)員工實體,年度預(yù)算編制管理模塊需提供項目預(yù)算實體以及部門預(yù)算實體,預(yù)算編制審批模塊需提供預(yù)算編制審批實體,在獲得系統(tǒng)實體列表之后,需對實體之間的關(guān)系進行分析,分析結(jié)果使用E-R圖表示,見圖2。
圖2 省產(chǎn)研院預(yù)算系統(tǒng)E-R圖
(2)數(shù)據(jù)庫表設(shè)計。在實體列表確定后,需要對實體屬性進行分析,并根據(jù)屬性作用明確屬性存儲模式,下面對關(guān)鍵數(shù)據(jù)表表結(jié)構(gòu)進行說明。
(3)預(yù)算組織機構(gòu)信息。省產(chǎn)研院下屬有數(shù)十家單位,這些機構(gòu)的信息都需登記到系統(tǒng)中,以便進行合并預(yù)算,其包含:部門編號名稱、資產(chǎn)系統(tǒng)部門編碼以及財務(wù)核算類型等字段。上述字段需保存不同的信息,各信息長度不一,需逐一確定(下同)。表1展示了預(yù)算機構(gòu)信息表的存儲結(jié)構(gòu)。
(4)項目預(yù)算編制信息。省產(chǎn)研院下屬項目的預(yù)算編制信息都需存儲到數(shù)據(jù)庫中,以便實現(xiàn)統(tǒng)一審批,其包含:項目名稱、開始日期、結(jié)束日期、申請類型及項目可執(zhí)行等字段。表2為項目預(yù)算編制信息表的存儲結(jié)構(gòu)。
(5)項目預(yù)算編制審批信息。在預(yù)算上報后,需要進行審批,以便明確預(yù)算是否符合要求,其包含:預(yù)算編制審批編號、項目預(yù)算編號、項目審批意見、項目工作人員編號以及時間等屬性。表3展示了項目預(yù)算編制審批信息表的存儲結(jié)構(gòu)。
表1 預(yù)算組織機構(gòu)信息表
表2 項目預(yù)算編制信息表
表3 項目預(yù)算編制審批信息表
綜上,系統(tǒng)設(shè)計從網(wǎng)絡(luò)結(jié)構(gòu)、技術(shù)架構(gòu)、功能劃分、數(shù)據(jù)庫設(shè)計等方面闡述了系統(tǒng)的總體設(shè)計方案,這都為后期通過功能時序圖明確系統(tǒng)各模塊的工作流程及后續(xù)的系統(tǒng)實現(xiàn)、系統(tǒng)檢測等工作奠定了堅實的基礎(chǔ);在此基礎(chǔ)上將給出省產(chǎn)研院全面預(yù)算系統(tǒng)的整體性方案;上述設(shè)計成果共同構(gòu)建出基于J2EE平臺的省產(chǎn)研院全面預(yù)算系統(tǒng)完整設(shè)計方案不同階段的研究特征。