萬 方
[摘要]通過統一建模語言(UML),提出了基于UML的構件抽取的方法,在此基礎上,運用UML的構件抽取方法對教務管理系統進行了構件抽取,為在開發基于構件的教務管理系統中進行構件的抽取提供一種可行的解決方案。
[關鍵詞]統一建模語言 構件 教務管理
中圖分類號:TP3文獻標識碼:A文章編號:1671-7597(2009)0120062-01
一、統一建模語言及構件發展概況
軟件構件技術是當前復用研究的焦點,被視為實現成功復用的關鍵因素之一。構件是封裝了設計和實現的細節而僅向外部提供接口的相對獨的可復用軟件單元,構件可以與其他構件組成更大規模的構件。統一建模語言(Unified Modeling Language)UML是一種在面向對象開發中用來建模和開發軟件系統的圖形化語言,可以對軟件進行可視化、詳述、構造和文檔化,主要用于為系統建造模型。用UML建立起的系統模型可以是獨立于最終系統實現語言的模型,具有更大的通用性,便于交流。它提供了軟件開發的各個階段的可視化建模支持,使得涉及項目各級人員都可以從UML模型中方便地獲取自己需要的信息,從而使多數應用領域的軟件開發具有一種實際、高效的保證。
二、基于UML的構件抽取方法
構件設計既要滿足系統需求,又要具備高內聚、低耦合、易重用的特點。構件具有不同的粒度,可以有不同的大小和分類,小的可以是一個類,大的可以是完成某個獨立系統功能和服務的獨立的軟件包。構件的粒度要適中。構件粒度過小,構件雖然易于復用,但是不利于構件的管理:構件粒度越大,雖然復用程度越高,但是管理和實現構件相對比較困難,復用難度加大。因此合理的構件粒度有利于實現、復用和管理之間的平衡。目前通常采用MUL語言來描述需求模型。識別出高內聚、低耦合的構件,是構件設計階段的重要環節。以UML語言描述的業務用例模型作為輸入,通過聚類分析算法識別業務構件,進而設計出構件的接口。
基于UML的構件抽取過程:
1.通過USE CASE框圖映射系統的需求視圖,得到系統的功能模型。
2.利用交互圖來描述每個用例的具體實現流程和所涉及的相關對象。
3.通過分析USE CASE和交互圖得到類圖,來描述系統的靜態結構和完成功能的實體;為得到滿足實際應用的構件,必須分析獲取系統中的類,得到類圖。
4.通過分析類圖,抽象出系統的構件模型;UML模型圖中類圖是進行構件劃分和提取的關鍵,構件是對類的更大粒度的抽象和封裝。
5.通過組件圖表示組件與外界的交互。
基于UML的構件抽取是一個復雜的過程,需要考慮的角度比較多,根據不同的構件,應用的知識也是不同的。為了抽取更加合理的構件,一般需要多次迭代,同時也需要團體的協調工作。構件的抽取由用例驅動,用例描述系統的需求,交互圖描述用例的流程和所涉及的類,類圖則描述實現用例的類和類間的關系,構件則是類的抽象。統一軟件開發過程RUP,即是以用例為驅動、以體系結構為中心、迭代和遞增的軟件開發過程。所以,在構件的抽取過程中,用例圖和類圖的建立是至關重要的。
三、教務管理系統構件的抽取
教務系統包含的功能很多,為了更好地抽取構件,按照圖3所示,我們把構件分為兩類:基礎構件和業務構件。基礎構件是應用到整個系統中,需要從全局考慮,它的抽取主要依靠經驗知識。業務構件從功能模塊中進行抽取,它通過“聚類分析”方法進行抽取。
對系統進行整體的構件抽取,采用復用的原則進行分析,看這些構件是不是達到復用性最高,抽取出系統的基礎構件。基礎構件有:連接數據庫構件、數據導入構件,數據導出構件,界面管理構件、報表構件。如圖所示。

為了更加準確的識別業務構件,采用聚類分析算法。聚類分析(Cluster Algorit加nr)是數理統計中研究“物以類聚”的一種方法。按照構件語義從領域模型中選擇樣本點進行分類。聚類分析依賴于樣本點集合的選取以及對樣本點之間的關聯值的理解,定義不同的樣本點集合和關聯值度量將產生不同的聚類結果。構件是對業務過程和業務規則的封裝,采用UML用例圖和活動圖描述的用例是一種目前較為通用的描述業務過程的表示元素,因而選擇以業務用例作為識別構件的X樣本點合。用聚類分析法對系統的業務構件進行抽取。
目前基于構件的軟件復用技術獲得越來越廣泛的應用,復用中所使用的構件即可以從已有的系統中抽取,也可以在軟件開發的初期就設計成構件的形式。許多高校已經有自己的教務系統,只是有些功能和性能已經有些落后,因此從已有的系統中抽取構件,組裝成新的教務系統,也不失為解決現有問題的一個好的策略。
參考文獻:
[1]徐建民,軟構件技術在信息系統開發中的應用研究,微機發展,2003-03.
[2]溫泉徹、馬智峰,UML及其在構件抽取中的應用,湛江師范學院學報,2004年12月,第25卷第6期,111~114.
[3]裴慶裕、耿玉水、王新剛,基于JavaBean的構件抽取和實現,山東輕工業學院學報(自然科學版),2008-03.
[4]司加全,基于軟件構件的研究生教育管理信息系統,哈爾濱工程大學,2005-02.
作者簡介:
萬方,2005年畢業于西安電子科技大學計算機科學與技術專業,畢業后進入廣東省貿易職業技術學校任教,助理講師,主要負責計算機應用、網絡技術等專業課程。