【摘要】:從高校科研項目管理的實際需要出發,應用面向對象的UML建模技術,開發一個通用的包括科研項目申報、評審、過程管理的科研項目管理信息系統。實現對科研項目相關信息的高效、智能的管理,提高科研項目管理工作的效率。
【關鍵詞】:UML;科研項目;用例圖
1、引言
目前高等院校的主要任務包括兩個方面:一個是教學,一個是科研。隨著科技的發展,檢驗高校綜合實力的重要指標逐漸向科研活動和科研能力方面傾斜,近年來隨著國家對科技活動的逐漸重視和資金投入的增多,高校的科研工作量也在逐年增加[1]。為提升一線教師的科研能力,許多高校結合自身發展現狀,自籌經費,針對不同層次設立校內科研基金,以項目的形式給予資助。作為申請高層次項目的實踐演練,大大提高了一線教師參與科研的積極性。目前我校設立了青年基金和博士基金。本著使項目管理更科學、方便的目標,本文使用面向對象技術基于UML對科研項目管理系統進行分析和設計。
面向對象分析與設計(OOA&OOD)方法的發展在80年代末至90年代中出現了高潮,UML是這個高潮的產物[2]。UML(Unified Modeling Lan-guage,統一建模語言)它不僅統一了Booth、Rum-baugh和Jacobson的表示方法,而且對其作了進一步發展,并于1997年11月被OMG接受為工業標準,成為大眾所接受的標準建模語言[3]。UML作為標準建模語言,它的定義包括UML語義和UML表示法兩個部分[4]。通常使用九種圖中的幾種來描述系統:其中用例圖、類圖、對象圖、構件圖、配置圖用來建立系統的靜態模型,主要描述需求和構造系統結構;而順序圖、狀態圖、活動圖和協作圖用來建立系統的動態模型,主要是描述系統的行為。
2、需求分析
2.1系統功能分析
結合現階段高校科研管理部門的工作職能,從科研項目管理的內容、流程出發,根據系統的實際需求,我們歸納出科研項目管理信息系統需要實現如下基本功能:項目申請、項目審批、項目進度、項目終結和項目統計報表等信息的網絡化管理。實現基于網絡的基本信息錄入、上傳功能;實現對項目相關信息的查詢、增加、修改、刪除的功能;實現對項目信息的審核、統計和匯總的功能。
科研項目管理信息系統的主要用戶包括:一般科研人員、科研秘書、科研管理人員、系統管理員和評審專家,各用戶通過網絡協同工作。其中科研管理人員負責對科研信息的全面管理工作;科研秘書負責所在系的科研信息管理工作;而一般科研人員負責提供科研成果并具有查詢功能;系統管理員主要進行系統維護和用戶管理等工作;評審專家的主要工作是對項目進行立項篩選和評審。
2.2系統用例分析
在使用面向對象方法,基于UML的建模過程中,系統需求分析的結果可以用一個用例(UesCase)模型表達。
1.創建用例圖
用例圖(UseCasediagram)從用戶的角度描述系統的功能,并指出各功能的操作者。它主要由用例、參與者和關系組成。其中用例被用來描繪一個系統外在可見的需求情況,被用來創建和驗證被提議的設計,并確保該設計滿足所有的需求。通過全面、認真地定義用例,可把用戶對系統的功能需求比較準確地在用例中表達出來[5]。以執行者的角度看,用例應該是一個完整的任務,一個用例的行為經常是在一個相對較短的時間段內完成。參與者是與所建系統進行交互的人、物或系統等。用例描述系統內的一切,而參與者描述系統外的一切。關系是事物之間相互聯系的方式,主要有包含(Include)、擴展(Extend)和泛化(Generalization)三種關系。包含表示:一個基本用例的行為包含了另一個用例的行為;擴展表示:基本的用例由另一個用例的功能擴展而來;泛化又被稱作繼承,表示其中一個元素是其他元素的一種。
從系統的參與者對系統的使用情況,以一般科研人員、和科研管理人員為例得到如下系統頂層用例圖:科研人員用例圖1、科研管理人員用例圖2。
圖1科研人員用例圖
科研人員(即普通教師)只能瀏覽自己的項目信息,進行科研項目信息的申報、修改、刪除;個人的項目申請必須提交本部門科研秘書審核通過才能作為正式數據;并可以對個人基本信息、密碼進行修改。
此外,對已經審核通過的項目信息科研人員不能進行修改、刪除,也就是說科研人員在進行修改、刪除著作信息時系統要進行審核檢查,檢查相關信息是否已被科研秘書審核通過,因此把審核檢查抽象為一個用例,修改、刪除相關內容時都要使用此用例。
圖2科研管理人員用例圖
科研管理人員是校科研處的工作人員。主要對科研秘書提交上來的科研項目信息進行常規管理;通過平臺對項目管理評價指標進行設置、調整;在線組織專家對校級項目進行立項評審和篩選;進行年度科技信息統計等多項工作。另外科研管理人員還負責在科研處網站上發布公告和通知、上傳文件。
在分析得到系統級頂層用例后,可以繼續對頂層用例圖中的每一個用例進行分析和細化,從而得到低一層次的用例圖,以便對系統的要求和目標深入理解。下面以項目申報、審批用例為例來進行細化設計。如圖3所示。
圖3項目申報、審批用例圖
2.2系統靜態模型
系統靜態視圖主要用于對軟件系統進行結構建模,不描述與時間有關的系統行為。類圖描述了系統中的類及類與類之間的關系。是系統中靜態視圖的一部分。
構建面向對象模型的基礎是尋找正確的類、對象。其中對象可以是控制和操作的實體;類是支持繼承的抽象數據類型,是對具有相同屬性和行為的一個或多個對象的描述。
在定義了類之后就可以定義類與類之間的關系,類與類之間最常見的關系,是關聯關系和泛化(即繼承)關系。
通過對本系統中的用例分析發現系統中的類,確定類的屬性和主要操作,以及各種類之間的關系。下面我們給出用戶類及其子類類圖,如圖4所示。
圖4用戶類及其子類類圖
其中,科研人員、科研秘書、科研管理人員、專家、系統管理員與人員之間是泛化(即繼承)關系。
2.3系統動態模型
建立靜態模型后,為了體現系統的動態特征,需建立系統的動態模型。系統的動態模型可以用交互圖、狀態圖和活動圖來表示。通過對系統中主要的用例和對象類繪制這些圖形,來分析系統的行為,印證和修改系統的靜態結構。
本節使用專家進行科研項目立項評審的活動圖對項目涉及的部分用例進行動態行為描述。如圖5所示。
圖5項目立項評審活動圖
項目立項評審是對多個項目的評審活動。其中立項指標權重的設置尤為重要。在評審的過程中,系統為專家用戶提供相應的表格,專家根據判斷為各項評價指標錄入分值,系統自動進行指標權重的計算;打分通常要進行兩到三次,最終得出最后權重。
4、結語
論文從理論和應用兩個方面,立足于軟件工程思想,結合管理信息系統理論,基于UML對高校學院級的科研項目管理進行了系統建模。從方便適用出發,以河南工程學院的實際情況為依托,從科研項目管理的實際需求,制定了系統的總體方案;使用面向對象的方法,對系統進行了需求分析,進而完成了對系統的設計和功能的實現。(本文2012年發表于《福建電腦》)