摘要:簡要的介紹了UML建模技術,描述了公務員培訓項目管理系統的設計與建模過程。在對系統進行需求分析的基礎上,對系統進行需求模型、靜態模型、動態模型的建模。
關鍵詞:統一建模語言;培訓項目管理;可視化;系統設計
中圖分類號:TP311文獻標識碼:A文章編號:1009-3044(2008)20-20269-03
Application Study of UML in Train Project Management System in Civil Servant
HOU Rong
(Huadu Branch School,Guangzhou Municipal Committee Party School,Guangzhou 510800,China)
Abstract:This paper briefly introduces the UML Modeling technology, describes the design and the modeling process of train project management system in civil servant .started with the requirement analysis several kinds of models, such as requirement model, static state model dynamic state mode.
Key words:UML;train project management;visualization;system design
1 引言
隨著各地公務員大培訓工作不斷推進,傳統經驗式的培訓模式越來越不能滿足培訓管理的要求,因此我們把培訓作為項目進行管理,采取項目管理的手段即計劃、組織、指導和控制,來實現項目全過程的動態管理,大大提高培訓了管理水平,提升了培訓質量。而運用計算機來輔助培訓項目管理,更會是如虎添翼。因此,構建公務員培訓項目管理系統有著重要的現實意義,借助現代的計算機及網絡技術,我們能有效實現公務員培訓過程中從建立培訓項目、制定教學計劃、教學準備工作、實施培訓、培訓評估等各個環節信息的共亨。它為培訓管理工作提供了一個有效的信息管理平臺。
UML(Unified Modeling Language統一建模語言)是一種面向對象的標準建模語言,能使用戶、領域專家、系統分析員、程序員、測試工程師以及培訓人員之間以直觀、一致、通用的方式交流溝通,也能使他們能充分理解和表達自己所關注的那部分內容,因此我們采用統一建模語言UML對公務員培訓項目管理系統的需求和設計進行形式化描述,利用面向對象思想對問題域進行建模。
2 UML及Rational Rose概述
UML是一種通用的可視化建模語言,用于對軟件的描述、可視化處理、說明并構造系統模型,以及建立各種所需文檔。UML已經獲得工業界和科技界的廣泛支持,有成千上萬家公司采用UML語言作為建模語言。UML溶入了軟件工程領域的新思想、新方法和新技術,具有定義良好、易于表達、功能強大、且普遍適用的特點。它不僅可以支持面向對象的分析和設計,更重要的是能夠有力地支持從需求分析開始的軟件開發全過程。UML通過三類圖形建立系統模型:Use Case圖,靜態結構圖和動態行為圖,這些圖可以從不同的抽象角度使系統可視化。
(1)用例(Use case)圖。描述了用例、系統參與者以及它們之間的關系,用于對系統行為組織和建模。
(2)靜態結構圖。包括類圖、對象圖、包圖和實現圖。類圖描述系統中類、接口、協作及其之間的關系。對象圖是類圖的實例,只能在系統的一定時間段存在。包圖用于描述系統的分層結構。實現圖包括組件圖和配置圖。組件圖描述代碼部件的物理結構及各部件之間的依賴關系。配置圖定義系統中軟硬件的物理體系結構,它顯示計算機和設備以及它們之間的連接關系、類型及依賴性。
(3)動態行為圖。描述系統的動態模型和組成對象間的交互關系,包括活動圖、狀態圖、順序圖和合作圖?;顒訄D描述滿足用例要求所要進行的活動以及活動間的約束關系。狀態圖描述類的對象所有可能的狀態以及事件發生時狀態的轉移條件。順序圖顯示對象之間的動態合作關系,強調對象之間消息發送的順序。合作圖用于描述相互合作的對象間的交互關系和鏈接關系。[1]
開發公務員培訓項目管理系統,我們采用Rational Rose,它是基于UML的Case工具,它使得在需求分析、對象分析與設計、軟件實現階能夠方便地建立起系統模型。利用模型可以更方便捕獲設計缺陷,從而能及時修正錯誤,降低開發成本。
3 公務員培訓項目管理系統設計
從應用的角度看,當采用面向對象技術設計系統時,首先是描述需求,然后根據需求建立系統的靜態模型,以構造系統的結構,第三步是描述系統的行為。下面通過UML來分析和構造公務員培訓項目管理系統模型,以便能簡潔的模擬客觀現實,最終能夠直接轉化成系統設計和實現。
3.1 需求分析和業務建模
業務建模和需求分析的目的是為了采集和分析系統的需求,理解系統要解決的問題。在這一過程,UML采用的主要技術是用例分析,首先確定系統角色(Actor),它可以幫助界定軟件系統的邊界,引導和發掘用戶需求;其次再依據系統功能來確立系統的用例(Use Case)模型。本系統的需求分析如下:創建培訓項目,制定方案,設計項目的進程和分配項目參與人員;根據培訓項目參與人員任務不同,設置各自的項目角色;通過培訓項目進程管理,項目參與人員能根據自己的權限管理項目進程日志;項目結束后,能對培訓情況進行統計,并生成報告。
由此可以確定系統的角色有:校長,項目負責人,班主任,后勤主管,教學輔助設備主管。在確定好角色的基礎上,設計出系統用例圖,見圖1。
當用例模型構造完成后,開發者將模型交給用戶討論。由用戶檢查模型能否滿足他們對系統的需求,用戶可以使用“漫游用例”的方法來測試用例,即由用戶模擬系統的整個運行過程,通過模擬來發現并改正用例對系統功能描述中存在的問題。
對用例測試完畢后,通過把用例描述的動作轉化為對象之間的相互協作來完成對用例的實現。即進入了系統分析和設計階段。
3.2 系統分析與設計
系統設計就是在分析系統需求的基礎上,根據需求分析的結果,發現對象類及其聯系,繼而構建系統的靜態結構模型和動態行為模型,使設計的系統在特定的領域下完成需求階段捕獲的任務和功能。[2]對于系統的靜態結構,可以通過類圖、對象圖、組件圖和配置圖來描述;對于系統的動態行為,可以通過順序圖、協同圖、狀態圖、活動圖描述。以上圖形再加上支持說明文檔就構成一個完整的設計模型。
3.2.1 靜態結構的分析與設計
建立系統靜態模型最重要的工作是確立系統的類圖。在得到了系統用例場景對象之后,可以將對象映射到需要實現的類,通過詳細設計對象和對象間的消息,得到完整的類。[3]類圖用來描述系統中類的靜態結構,它不僅定義類之間的聯系,如關聯、聚合、組成、依賴、泛化等,還包括類的內部結構,如類的屬性和操作等。從公務員培訓項目管理系統的需求出發,可確定以下幾個主要類:TrainProject(培訓項目),TeachingProgram(教學計劃),TrainProjectMember(項目管理人員),TrainProjectCourse(培訓項目進程),TrainProjectDetail(培訓項目細節),TrainProjectReport(項目報告),其中TrainProject和TrainProjectDetail、TrainProjectMember之間是聚合的關系,TrainProjectReport依賴于TrainProject、TrainProjectCourse,而TrainProject和TeachingProgram、TrainProjectCourse之間是關聯關系。我們繪制出系統的關鍵部分—培訓項目類圖,見圖2。
使用UML技術,在軟件開發的不同階段只要有不同的觀點就會有不同的類圖。
在UML中將組件圖和部署圖組合在一起就構成實現圖,圖3給出了公務員培訓項目管理系統的實現圖。
3.2.2 動態結構的分析與設計
UML的動態建模機制包括順序圖、合作圖、狀態圖和活動圖四種圖。順序圖用來描述對象之間動態的交互關系。由于從培訓的準備階段到培訓的實施階段,系統各類對象都具有極強的動態特性,我們建立順序圖可以很清晰的描述出整個培訓項目管理的過程。圖4給出了公務員培訓項目管理系統順序圖。
培訓項目負責人首先建立培訓項目,然后通過項目進程類對項目進行管理。從圖中我們看到,項目負責人通過消息機制來控制培訓進程的進度,在培訓進程的準備消息使用的是實線和實心箭頭,這表明這是同步消息,表示只有做好培訓前的制定教學計劃、發送通知、教學資源布置等工作,培訓工作流才會繼續,培訓進程才會進入下一個階段。培訓進程的實施、評估都是如此。通過順序圖可以很方便的使我們看清以上行為的發生次序,這對于首次接觸面向對象程序設計的人來說是尤其有幫助。順序圖比較適合交互規模較小的可視化圖解,因此可以將過程細化,這樣能有效地幫助我們了解代碼,便于今后的系統維護。
描述對象與對象之間消息連接關系地還有合作圖,但它更側重于說明那些對象之間有消息傳遞。狀態圖是對類圖的一種補充描述,它展示此類對所具有的所有可能狀態以及某些事件發生時其狀態的轉移情況,動態建模機制的最后一種圖形是活動圖,它與常用的程序流程圖非常相似,用來描述系統中各種活動的執行順序,由于篇幅關系,以上三種圖我們這里就不再給出。
4 結束語
實踐表明,在系統開發中,使用統一建模語言有助于開發人員對整個系統有清晰的認識,從而建立各種系統模型。充分發揮UML的優勢,利用UML豐富的建模圖形來分析設計公務員培訓項目管理系統,加速了開發過程,提高了代碼質量,確保WEB頁面將來的應用維護更加容易。
參考文獻:
[1] 張衛山,巫家敏,嚴新民.基于UML的管理信息系統開發[J].計算機工程,1999(12):94.
[2] 陳世基.基于UML建模技術的智能選課系統設計與實現[J].計算機與現代化,2007(2):47.
[3] 高利軍,許清.基于UML的教務管理系統模型分析[J].沈陽航空工業學院學報,2005(4):37-38.
[4] Jason T Roff.UML:A Beginner's Guide.[M].USA:The McGraw-Hill Companies,2003:82-84,99-101.
[5] 張龍祥.UML與系統分析設計[M].北京:人民郵電出版社,2001:30-35.
注:“本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文。”