吳征
【摘 要】本文以某軍工企業(yè)對于合同管理突破長期以來傳統(tǒng)手工管理,轉向規(guī)范化、制度化、信息化的新的探索為范本,詳細論述了合同管理系統(tǒng)的設計思路,及如何應用SOA應用開發(fā)平臺EOS Studio完成合同管理系統(tǒng)開發(fā)的詳細過程。
【關鍵詞】EOS;SOA;合同管理
0 引言
隨著企業(yè)的逐步發(fā)展壯大,業(yè)務領域的不斷拓展,人們對于反應企業(yè)經營活動重要載體——合同逐步重視起來,合同管理也就逐漸成為企業(yè)管理的一個重要組成領域和研究的集中點。運用信息技術手段,利用現(xiàn)代企業(yè)的先進管理思想為企業(yè)提供決策、計劃、控制與經營績效評估的全方位、系統(tǒng)化的合同管理平臺也就成為企業(yè)所日益迫切的需求。某軍工企業(yè)長期以來一直以傳統(tǒng)的手工方式對公司的海量合同進行管理,管理效率低下流程難以監(jiān)控等諸多問題嚴重的制約了企業(yè)的運營管理,以快速方式開發(fā)一套適應企業(yè)日常合同起草、流程審批、履行監(jiān)控等要求的合同管理系統(tǒng)就顯得尤為必要和迫切了。
1 EOS概述
1.1 EOS Platform概述
EOS Platform是SOA應用平臺,基于JavaEE、Eclipse等開放的技術和平臺,采用SOA架構和標準規(guī)范,支持在線業(yè)務配置化開發(fā),并把平臺化擴展技術、構件技術、可視化技術、圖形化技術與SCA、SDO等SOA標準技術結合起來,為構造SOA應用提供從設計、開發(fā)、調試和部署,到運行、維護、管控和治理的全生命周期支持。
1.2 EOS編程模式
EOS采用的編程模式是:流程+數(shù)據(jù)+人機交互。
其中流程包括:工作流、頁面流、邏輯流。頁面流用于描述用戶界面元素流轉關系的圖形化流程,管理頁面和頁面間的跳轉關系,以及頁面和頁面間共享的數(shù)據(jù)。邏輯流用于完成后端業(yè)務功能,采用圖形化的方式將小粒度的運算構件組裝成一段業(yè)務邏輯。工作流用于完成包含人工和自動的業(yè)務活動流程的構件,通過BPS for EOS開發(fā)環(huán)境來開發(fā)的流程管理的圖形化描述。
不同類型的流程從邏輯設計上把業(yè)務邏輯、業(yè)務服務及業(yè)務流程松耦合分離開來,按照SCA規(guī)范封裝、組合,達到業(yè)務應用的流程化。
數(shù)據(jù)包括持久化實體和非持久化尸體,并采用SDO標準來描述這些數(shù)據(jù)的格式,SDO作為一種數(shù)據(jù)編程架構和API,它統(tǒng)一了不同數(shù)據(jù)源類型的數(shù)據(jù)編程,讓開發(fā)人員可以從不同的數(shù)據(jù)源以統(tǒng)一的方式訪問和操作數(shù)據(jù)。
人機交互采用富客戶端控件及具體頁面來實現(xiàn)。
2 合同管理系統(tǒng)需求分析
在信息化的應用逐漸深入到從設計到生產及企業(yè)運營的方方面面,合同管理信息化需求的聲音也日顯強烈,為進一步規(guī)范公司合同管理,防范和控制合同法律風險,完善合同管理制度體系,建立一套從起草到生效,從履約到歸檔的全生命周期的完整的合同管理系統(tǒng),實現(xiàn)合同信息化管理,達到對合同的實時監(jiān)控預警,有效防范和控制合同法律風險,真正實現(xiàn)全過程的、系統(tǒng)性的、動態(tài)性的閉環(huán)合同管理,滿足合同管理事前、事中、事后風險防控需求。
合同的全生命周期管理分為以下幾個階段:合同起草、合同審批、合同執(zhí)行、文檔管理和合同統(tǒng)計。
1)合同起草
提供合同范本庫,起草人選擇對應的合同范本,填寫合同要素,完成合同文本的擬寫。合同范本只允許起草人填空,不允許修改固定條款和格式。
2)合同審批
合同文本擬寫完成,在企業(yè)內部依照相關規(guī)定及流程,提交相應的審批流程,流轉經業(yè)務主管、財務價格審核、法律事務等相關部門,履行必須的審批手續(xù),完成合同審批。
3)合同執(zhí)行
合同審批結束雙方蓋章,合同正式生效,進入履約階段,此階段合同雙方需要按合同約定完成各階段的合同交付及付款,直到全部完成合同約定內容。其中包括:正常履約和中途發(fā)生合同變更、解除或終止等情況,如果發(fā)生變更需要以更新后條款對合同進行相同程序的管理。
4)文檔管理
合同履行完畢,對合同進行歸檔,對于已歸檔的合同需要一個完善的合同文檔臺帳管理,記錄合同相關信息,并且可以查看原始及變更合同、查看審批單等內容。
5)統(tǒng)計分析
對于企業(yè)簽訂的合同按階段、類別、金額等可以進行統(tǒng)計分析,給企業(yè)管理者提供統(tǒng)攬全局,分析決策的參考。
3 合同管理系統(tǒng)的設計與實現(xiàn)
3.1 功能設計
根據(jù)以上的需求分析,合同管理系統(tǒng)劃分為:合同相對方管理、合同范本管理、合同起草管理、合同審批流程管理、合同履行與風險監(jiān)控管理、合同臺帳管理、合同變更解除終止管理和合同統(tǒng)計分析管理幾大功能模塊。
1)合同相對方管理
在合同管理系統(tǒng)中建立合同相對方資信管理模塊,其中包括相對方的基本信息、信用等級、合作領域、履約評價的管理,通過對合作單位資信的有效管理,在源頭上規(guī)避合同法律風險的產生。此模塊內容為合同起草的必要條件,所有擬寫合同的相對方必須從已經登記在冊的具有相應資質的相對方中選取,否則無法擬寫合同。
2)合同范本管理
以合同范本管理標準化為基礎,建立完整的合同范本庫管理模塊,提供合同范本管理平臺。該模塊中,將企業(yè)常用合同文本以word文檔形式固化并上傳,減少手工填寫部分,同時固化合同固定條款和格式使擬寫者不可隨意修改固定文本,在簡化合同擬寫的內容同時約束擬寫者的隨意性使之標準化,以減少審核人員的工作難度及強度。整個系統(tǒng)中使用的合同均由此功能模塊提供范本完成擬寫。
3)合同起草管理
合同起草管理模塊為合同文本的在線擬寫平臺。流程是由擬稿人填寫必要的合同基本信息,再選擇范本進行在線合同擬寫,擬寫的合同存放于草稿箱,可隨時進行編輯修改,直到定稿后提交流程審批。
4)合同審批流程管理
根據(jù)公司的業(yè)務及合同類型不同,定制了四種類型的流程:審價流程、不審價流程、培訓流程及課題流程。合同擬寫完成,由擬稿人選擇相應的審批流程,根據(jù)不同的類型流轉于不同業(yè)務部門進行審批及提交審批意見,全部完成后提交流程結束,系統(tǒng)自動生成公司統(tǒng)一的合同編號,填寫價格審核部門最終審定的合同金額,自動計算依照合同類型和最終核準價格的印花稅并記錄到合同信息中。同時可以在流程管理的流程歷史中隨時跟蹤合同審批狀態(tài)及查看當前審批人和審核意見,并在流程結束時,提供合同及審批單打印功能以供相關部門存檔。
5)合同履行與風險監(jiān)控管理
合同管理系統(tǒng)通過合同信息,自動生成合同履約任務,對于合同履行情況進行監(jiān)督,對于超期履約情況系統(tǒng)生成不同級別的履約報警,為合同履約負責人提供實時的合同風險預警,有效控制因合同履行引發(fā)的法律風險。合同履行由合同擬稿人按合同不同階段的交付及付款情況維護履行信息,到期未履行的亮燈提示。
6)合同臺帳管理
合同履行完畢進行合同歸檔,歸檔后可以在合同臺帳管理中查看和導出合同的全部信息,并且可以查看合同文本(包括原始文件及變更文件)和合同審批單。其中合同信息包括:合同編號、合同名稱、經辦人、所在部門、對方當事人名稱、合同金額、印花稅、合同類型、合同簽訂時間、合同收付款情況、是否存在變更終止解除、等信息、合同交付情況、合同付款情況、合同是否全部履行完畢等信息,并且可以按照不同查詢條件查看合同并導出查詢結果。
7)合同變更解除終止管理
該模塊為合同變更解除終止提供專門管理,首先,列出已生效進入履行階段的合同,用戶可從中選擇對其發(fā)起變更、解除、終止的申請并擬寫相應協(xié)議,完成合同補充協(xié)議的擬寫后提交審批流程,通過審批,合同以變更后的新條款進行履約,在臺帳信息中關聯(lián)原合同。
8)合同統(tǒng)計分析管理
合同管理系統(tǒng)提供針對合同數(shù)量、金額、類別、履行情況的內容,對實效、工作量、質量,基于公司維度、部門維度、個人維度的統(tǒng)計分析功能,并進行圖形化展示。
時效類統(tǒng)計:范本及非范本類合同審批時間、月審批時間最長的10個合同、各承辦部門平均處理時間、各審批部門平均處理時間等;工作類統(tǒng)計:按所屬部門統(tǒng)計合同數(shù)量及合同金額,未履行、部分履行和全部履行的合同數(shù)量及金額,按合同類型統(tǒng)計合同數(shù)量及金額,變更、解除、終止合同的數(shù)量、金額及占比等;質量類統(tǒng)計:合同倒簽數(shù)量、合同審批退回數(shù)量及占比、承辦部分廢除數(shù)量及占比等。
3.2 系統(tǒng)實現(xiàn)
合同管理系統(tǒng)應用EOS Studio開發(fā)環(huán)境,Tomcat應用服務器,Oracle數(shù)據(jù)庫進行開發(fā)。具體由以下步驟實現(xiàn):
1)創(chuàng)建項目
作為一個應用系統(tǒng)運行的功能模塊放在同一個項目中進行開發(fā)。項目開始是要創(chuàng)建一個合同管理系統(tǒng)的空EOS項目,然后再進行構件包設計。
2)構件包設計
構件包設計主要是針對整個系統(tǒng)的子模塊進行劃分。在系統(tǒng)設計視圖中,將一個系統(tǒng)劃分成若干構件包,并且可以設計構件包間的依賴關系。這里分別對應以上功能模塊設置構建包,并創(chuàng)建一個公共構件包用于放置通用服務構件,供復用。
3)數(shù)據(jù)建模
數(shù)據(jù)模型是構建一個業(yè)務系統(tǒng)的基礎,在進行具體的構件設計前,需要首先設計系統(tǒng)的數(shù)據(jù)模型。首先在oracle中完成數(shù)據(jù)庫表的創(chuàng)建,然后導入到EOS系統(tǒng)中生成數(shù)據(jù)實體。在數(shù)據(jù)建模的視圖中,可以設置實體間的關聯(lián)關系、設置實體和數(shù)據(jù)庫表的映射關系、將一個查詢SQL語句映射成一個數(shù)據(jù)實體、根據(jù)數(shù)據(jù)庫的Schema生成數(shù)據(jù)實體。
4)頁面流開發(fā)
頁面流由一系列頁面、從這些頁面發(fā)出的用戶請求、以及系統(tǒng)為響應用戶請求而執(zhí)行的邏輯處理所構成。它不僅描述了頁面之間的流轉關系,同時也定義了從一個頁面可能發(fā)出的用戶請求,以及對這些請求的響應行為。在頁面流設計中,對每項功能定義一個頁面流,從功能菜單為入口進入頁面,在頁面觸發(fā)一系列動作及響應。
5)頁面開發(fā)
可通過JSP源代碼編輯開發(fā),或使用EOS提供的頁面控件、組合控件、控件向導以及JavascriptAPI,快速生成jsp頁面。
6)業(yè)務邏輯開發(fā)
邏輯構件開發(fā):一個邏輯構件相當于一個Java類,邏輯構件是由多個邏輯流組成的,一個邏輯流相當于一個Java類里面的方法。邏輯流開發(fā)是利用EOS提供的基礎構件庫及用戶自己開發(fā)的運算邏輯和Spring構件,通過圖形化的構件組裝來實現(xiàn)應用的后臺處理邏輯。使用邏輯構件和邏輯流可以用可視化的類似流程的方式開發(fā)。這里在頁面流里需要使用邏輯構件實現(xiàn)的頁面提交后的功能都在邏輯構建里進行開發(fā)。
7)業(yè)務流程開發(fā)
業(yè)務流程是用于完成包含人工和自動的業(yè)務活動流程的構件,它是通過 BPS for EOS 開發(fā)環(huán)境來開發(fā)的流程管理的圖形化描述。BPS負責對業(yè)務流程整個生命周期的管理,包括業(yè)務流程的定義、測試驗證、部署、運行、監(jiān)控、管理、業(yè)務化定制調整。合同管理系統(tǒng)中所有的審批流程都在BPS中定義和開發(fā),通過運用開始活動、人工活動、自動活動、路由活動、子流程、連線、結束活動等圖元繪制整個業(yè)務流程圖,在每一個流程活動中設置對應的流程活動頁面流及流程參與者。
8)部署調試
EOS的部署調試提供了開發(fā)期的開發(fā)資源部署和調試功能。通過部署功能將整個項目、構件包和所需的開發(fā)資源文件部署到服務器上,并通過在邏輯流、頁面流和代碼中設置斷點的方式調試跟蹤每一個業(yè)務功能的執(zhí)行過程,借助調試功能完成業(yè)務邏輯和頁面流的單元測試,保證邏輯運行和頁面流轉的正確性。
9)功能打包
系統(tǒng)開發(fā)完畢后,通過EOS提供的導出部署包和導出EAR的功能將開發(fā)的構件包導出,供上線實施時使用。對于已上線的系統(tǒng),可以將修改和增加的內容導出生成補丁包,在EOSGovernor中對系統(tǒng)打補丁或進行升級。
10)部署實施
通過EOS Governor進行服務器、應用系統(tǒng)的配置管理,部署應用和構件包,完成系統(tǒng)的上線實施。
在實際開發(fā)過程中,其中的步驟不一定是嚴格按順序進行的,很多情況下是交互進行的。在開發(fā)模式上,EOS支持自頂向下、自底向上、迭代開發(fā)等開發(fā)模式,開發(fā)和實施人員可以根據(jù)項目的實際情況靈活執(zhí)行這幾個步驟,完成應用系統(tǒng)的開發(fā)和實施。
4 結論
EOS面向構件的開發(fā)方式和豐富的基礎構件庫及其強大的工作流開發(fā)平臺大大簡化了系統(tǒng)的開發(fā)工作,使得復雜合同管理功能及流程得以快速實現(xiàn)。合同管理系統(tǒng)的開發(fā)實施,實現(xiàn)了合同完善的全生命周期管理,規(guī)范了合同管理的業(yè)務流程,增強了合同業(yè)務處理過程的透明度,節(jié)約了管理成本,提升了管理水平,實現(xiàn)了由傳統(tǒng)管理階段向信息管理與決策分析階段的轉變。
【參考文獻】
[1]Primeton EOS?誖Platform.產品白皮書.
[2]劉琳.合同全生命周期的信息化管理鵬泰的設計與實現(xiàn)[J].北京郵電大學,2012.
[責任編輯:田吉捷]