曾凡勇 ,梅秀英 ,李 凡 ,劉 丹 ,趙 揚
1.中國林業科學院科技管理處,北京 100091
2.中國林業科學研究院資源信息研究所,北京 100091
科研活動是科研院所的主旋律之一,科研院所的科研活動日益成為反映綜合實力的重要指標。隨著國家科研投入和從事科研活動的人員的不斷增加,科研院所的科研管理的壓力也越來越大。同時,建設高水平的科研院所,信息系統的建設是重要的一環,是提高科研管理的質量和效益乃至建設知名的高水平的科研院所的關鍵環節。在網絡和通訊日益發達的今天,人們足不出戶就可以獲得信息、完成工作;實現辦公的電腦化、網絡化,也是實現科研管理現代化和信息化的重要內容。
建立一套完善的科研管理業務系統可以極大地提高管理效率,為領導的決策提供較科學的依據。一套較完善的研究院所的科研管理系統應以項目管理為中心,涵蓋計劃、合同、成果、專利、資金、人員、設備等方面,并可關聯到辦公、人事、財務、設備等其它業務系統,整個系統龐大而復雜。
科研管理系統是一個科研院所內部管理的核心部分,包括人員檔案、機構設置、項目申報、科研評估、成果管理、基金管理、科技統計、成果管理、專利管理、經費管理、報表管理等多項信息管理職能。隨著計算機應用水平的提高和科研管理的規范化和制度化,建立一套適用于科研院所科研管理工作管理信息系統,已經成為各大的科研院所較為迫切的需求。
用面向服務的思想來對系統進行建模,使系統的各功能模塊能夠以服務的形式進行劃分。由于系統計劃是基于JAVA 語言的Web 服務進行開發的,所以能更加方便、快捷地實現系統的分層架構,能夠使系統的開發符合SOA 的軟件架構模式,從而使系統的軟件架構具有SOA 的松散藕合及可重用的特性。系統中各角色通過系統的功能模塊實現具體的操作服務,各功能模塊通過系統平臺與后臺數據庫交換數據,獲得所需的數據返回給請求方。由Web 服務的工作機理,結合三層分布式體系結構計算模型,細劃后的系統基本架構如圖1 所示。

圖1 系統基本架構
模塊化設計,簡單地說就是程序的編寫不是開始就逐條錄入計算機語句和指令,而是首先用主程序、子程序、子過程等框架把軟件的主要結構和流程描述出來,并定義和調試好各個框架之間的輸入、輸出鏈接關系。逐步求精的結果是得到一系列以功能塊為單位的算法描述。以功能塊為單位進行程序設計,實現其求解算法的方法稱為模塊化。模塊化的目的是為了降低程序復雜度,使程序設計、調試和維護等操作簡單化。

圖2 科研管理系統功能結構
模塊化的主要方法是系統的分解和組合,模塊化的系統是由標準的模塊組成的。模塊如何產生,能否有效地組合成系統,系統的分解和組合的技巧和運用水平,是模塊化的核心問題。模塊化的目標是建立模塊系統和對象系統。模塊化活動的目標或產物有兩個,即形成模塊系統和模塊化的系統。建立模塊系統是實施模塊化設計的前提,形成模塊化系統則是模塊化的最終歸宿。
經過對科研管理流程的分析,我們劃分出來主要的模塊功能有綜合辦公、人員管理、機構管理、成果管理、項目管理、科研經費、報表管理、考核獎勵、系統管理、基礎數據等。
1)綜合辦公模塊:提供信息發布、通知公告、新聞發布、政策法規、大事記、部門信息欄目等辦公功能,方便科研管理人員和科研人員瀏覽消息。科技處根據國家及上級單位的課題的研究要求,編制科研項目信息,并在“科研信息發布平臺中”向研究室相關的課題組發布科研項目信息。該信息主要包括研究內容、顧客需求、以及相關的項目信息等等;
2)人員管理模塊:科研人員是科技活動的主體,無論何種類型的科研項目,在申報、執行與驗收階段都必須有人員參加,同時院也要對科研人員進行科研工作量的考核,因此對科研人員的管理方便了對科研人員的跟蹤與考核.科研人員管理可以由科研人員自行管理個人資料,一旦個人資料發生變動,科研人員可以自己進行修改,減輕了管理部門信息采集與維護工作的工作量;
3)機構管理模塊:對國家級和省部級重點實驗室、工程中心、研究所及中心的基本信息進行管理,其中研究成果可由科研機構負責人登錄后自主更新;
4)成果管理模塊:成果分為論文、著作、專利、獲獎等.可由研究人員隨時在線提交,待管理員確認后,將不可修改.論文信息包括論文題目,發表論文的刊物名稱、出版年、卷、期、級別和論文頁碼、作者排序等;
5)項目管理模塊:能完成院級項目的在線申報、評審、中檢和結題.系統可以通過提醒和催辦的方式對在研項目進行中檢、驗收等操作.項目信息包括項目來源、編號、名稱、負責人、狀態、成果、研究周期、成果形式、經費等信息.科研人員登錄后可查閱個人項目情況,并要在線提交中期檢查報告、項目驗收報告等資料,待科研管理員審核通過后該資料將不可修改.管理員可提交、修改、刪除、確定與項目相關的信息;
6)經費管理模塊:科研經費管理是科研工作的重要組成部分,本模塊旨在實現兩部分:一是實現科技處對科研經費的統籌管理,主要包括經費的收入統計、支出統計和綜合統計三部分;二是幫助課題負責人對項目經費的使用情況作記錄,使課題負責人清楚的了解其所管轄的項目的經費、批次及每筆支出的金額大小、用途等信息;
7)報表管理模塊:靈活提供各種查詢入口,包括項目編號查詢、項目負責人查詢、年度查詢、項目狀態查詢、研究周期查詢等,提供經費對比分析、年度項目立項分析等多種報表.用戶根據權限確定其查詢的范圍:科研人員只能查詢與個人相關的科研項目與成果,所及中心管理員可查詢整個所及中心科研數據,科研處與院領導可查詢全院科研數據及數據匯總、分類、對比分析等信息;
8)考核獎勵模塊:考核項目的進展情況和完成情況,對沒有按進度進行的項目,系統會發出警告,對于完成情況比較好的項目,會有相應的獎勵措施等;
9)系統管理模塊:由科研處管理員對系統進行設置、維護、管理及數據備份,對系統的基礎數據、基本信息、賬號及用戶的權限進行管理。權限管理主要包括權限元素的定制和權限的分配。權限元素制定就是以實際業務中的責任職權為原型,將其抽象為計算機可管理的最小單位——權限元素。權限分配就是按照實際工作中用戶擔任的職位、擁有的職權,分配給用戶對應的權限元素。簡單說來,權限管理就是對資源操作的權限控制管理。定制權限元素的最終目的是為了分配給用戶與實際職權相一致的權限,權限分配有兩種途徑,一種是將某些權限賦予一個部門,則在該部門的所有用戶就同時、一次性的獲得了這些權限;另一種是直接給用戶分配權限,其中又有兩種方式:一是直接將權限元素分配給用戶,二是將某些權限元素存放在一權限組中,我們在這里稱權限組為角色,角色由一個或者多個權限組成,賦予用戶一定的角色即可使用戶得到該角色擁有的所有權限;
10)基礎數據模塊:包括項目來源與等級、論文級別、評分標準、工作量量化指標體系和全院各部門信息等。
Web Services是一種與平臺無關的、按標準語言描述并通過網絡發布、發現和調用的自包含、自描述、松耦合的構件集合,是一種在Internet 上使用的全新的分布式計算技術。它使用基于XML的消息處理作為基本的數據通訊方式,消除使用不同組件模型、操作系統和編程語言的系統之間存在的差異,使異構系統能夠作為計算網絡的一部分協同運行。開發人員可以像創建分布式應用程序時使用組件的方式,創建由各種來源的Web Services組合在一起的應用程序。由于Web Services是建立在一些通用協議的基礎上,如HTTP(Hypertext Transfer Protocol, WWW服務程序所用的協議),SOAP(Simple Object Access Protocol,簡單對象訪問協議),XML,WSDL(Web Services Description Language,Web服務描述語 言 ),UDDI(Universal Description,Discovery,and Integration,通用描述發現和集成協議)等。Web Services基于XML文檔進行服務描述,服務請求和反饋結果,可以在Internet上通過HTTP協議進行傳遞,很容易的被訪問和返回結果。Web Services是一種動態的集成方案,所有的服務都可以通過UDDI標準動態地被發現、綁定和使用,容易適應系統的變動,提高系統的靈活性和伸縮性。
使用Web Services技術進行系統集成和過去使用其它面向函數和方法的技術進行集成類似:在進行初始設計的時候主要考慮不同應用之間,系統不同模塊之間消息及數據傳遞的需求;根據具體需求設置相應的接口,描述接口特性;針對不同應用的平臺選擇相應的Web Services組件,進行相應設置;實現不同應用的接口,進行相應調試;實際運行,應用程序間進行協同調試。
使用Web Services進行系統集成的基本模式(不同應用之間),如圖3所示。

圖3 Web Services進行系統集成基本模式圖
基于web的科研管理系統需要它們的客戶端進行交換和事務處理的功能。其中一個處理流程子需要和另外一個處理流程自動地有機的整合起來,比如科研項目簽訂任務書以后,科研項目模塊就要和科研經費管理模塊的流程結合起來,數據在兩個模塊之間要進行流轉。那么可以將組件層的模塊功能利用Web Services技術封裝成接口進行發布, 采用XML 語言標準定義和描述數據,采用SOAP 協議進行通信,使用XML 描述用戶請求信息,并且同時注冊到UDDI 注冊中心。而應用層是服務請求者,它們查詢UDDI 注冊中心,獲取自己所需要的服務描述信息,然后利用該描述信息與服務提供者進行通信,調用自己需要的接口。UDDI 注冊中心在這一過程中的中介作用是實現了服務的動態查找和有關安全性的認證。由于Web Services采取簡單的、易理解的標準協議作為組件接口描述和協同描述規范,完全屏蔽了不同軟件平臺的差異,無論是何種軟件平臺,都可以通過這一種標準的協議進行互操作,實現了較高的可集成性。當檔案管理的核心業務被組件化之后,那么信息就能夠很方便地在不同的部門間共享,從而實現更復雜的業務系統。大大簡化了開發的難度,加快了項目開發的速度,也便于系統的維護。

圖4 基于Web Services的科研管理信息系統流程圖

圖5 Web Services定義
如我們將項目管理模塊中的統計查詢功能封裝成Web Services并發布它,在這個功能中,我們有個通過項目類別、項目編號、項目名稱來檢索項目信息的功能。下面的代碼段說明了如何在WSDL中定義我們的Web Service,文件包括了一些定義Web服務的信息,比如說Web服務的名字,Web服務的端口綁定等等。Web Services定義如圖5所示。
使用Web Services開發向導生成的用來測試的客戶端例子程序,如圖6所示。
對應相應的Web Services方法,就會有Soap請求和響應。如圖7所示。

圖6 Web Services測試

圖7 Soap響應
上述描述了如何將已有的科研管理系統模塊的功能封裝為Web Services的過程,應用相應的Web Services來非常輕松的定義、發布、定位、訪問Web Services。
實現科研管理網絡化,可以促進科研信息資源共享,為決策層制定計劃和優化運行提供信息服務,提高科研管理工作的效率和水平。通過先劃分科研管理信息系統的模塊,然后將模塊封裝為Web Services 可以大大提高系統的開發效率,也使得該系統為一個開放的、標準的、異構的平臺,可以更靈活、更方面的使用科研管理的需求。
[1]趙穎娣,計時鳴.基于Web 的科研管理系統原型設計[J].科技情報開發與經濟,2005(15) :224-226.
[2]薛若雯,劉千賀.基于ASP.NET的科研管理系統的設計與開發[J].網絡財富,2009(11):121.
[3]周順.基于Web Services的高校科研管理信息化研究[J].湖南科技學院學報,2008,29(4):117-118.
[4]田曉芳,衰志芳,李桂寶.高校科研信息管理系統的設計與研發[J].中國教育信息化,2007(10):52-54.
[5]李春英.基于ASP.NET的科研信息管理系統開發[J].重慶工學院學報:自然科學版,2007:90-94.