張獻忠(常州工學院計算機信息工程學院,常州 213002)
UML建模在房產中介管理系統中的應用研究
張獻忠
(常州工學院計算機信息工程學院,常州 213002)
UML是目前用于面向對象開發過程中建模的語言。它通過一些可視化的圖形符號和文本語法來完成。在系統不同的開發階段,在UML中會使用不同的建模用圖。如在系統分析階段,可以通過用例圖、活動圖和分析類圖實現。在系統設計階段,可以使用設計類圖、時序圖、狀態圖等。在系統實現階段,可以通過部署圖和組件圖來完成。從實際使用的情況來看,UML建模用圖主要有兩大功能,一是用于描述系統靜態結構的用圖,如類圖和用例圖等;另一類是用于描述系統動態行為的用圖,如活動圖和時序圖等。使用UML建模的基本過程如下:
(1)建立系統的需求模型。系統的需求模型反映了系統的功能要求,即對系統參與者而言,系統需要提供哪些功能或服務。用例圖是用來描述系統需求模型的主要形式;
(2)根據需求模型,建立系統的結構模型。對用例圖進行分析,找出參與實現該用例的類。如果存在多種類,則需要明確這些類的結構及其相互之間的關系。結構模型是為系統設計服務的,主要由類圖來描述;
(3)根據結構模型,建立系統的動態模型。動態模型用以表示執行時的時序狀態或交互關系。UML建模的核心是用例驅動,用例的實現靠類中的對象去完成。動態模型是要明確這些對象是如何執行其操作,相互之間發送什么消息以及這些消息發送的時序關系。動態模型主要通過時序圖完成。
通過對某房產中介有限公司的業務分析,確定系統角色有客戶、房產中介員工和管理員。客戶又分為未注冊的游客和已注冊的用戶(會員)。游客只能瀏覽房源信息、房產新聞和公告等,但不能發布房源信息;注冊用戶(會員)可以發布房源供求信息,并可管理個人資料和個人發布的房源信息;房產中介員工可以自己發布和查詢房源信息,審核客戶發布的房源信息;也可以添加、查詢、刪除和修改自己的業務成交合同信息。管理員負責系統的維護和管理工作。維護的內容有注冊用戶、房源信息、合同信息、房產新聞、留言信息等,管理員可以管理自己的信息,包括修改管理員登錄密碼。系統總體業務模型如圖1所示。


圖1 系統總體業務模型圖
用例建模的目的是為了在需求分析階段搞清楚系統的主要業務功能,它是從參與者的角度去描述系統實現的功能。用例建模的另一目的是明確系統邊界,確定哪些功能是系統內部擁有的,哪些是外部的。而用例就是用于建立這種模型的良好方法。因此,找出系統用例是件既重要又細致的工作。用例建模主要由用例圖及其相關用例描述組成。用例建模的成果就是繪制出系統的用例圖。在本系統中,通過分析系統的功能性需求,可以得到注冊會員和游客的系統用例圖,如圖2所示。系統管理員和中介人員用例圖如圖3所示。

圖2 會員和游客用例圖

活動圖是用來描述系統內部的動態關系,用來反映業務用例的具體處理流程。對于稍微復雜的用例,從活動圖中可以進一步來確認系統子用例。下面以會員發布房源為例加以說明。會員發布房源信息,首先要登錄系統,然后選擇發布房源類型,并輸入房源信息,最后提交給系統,等待中介工作人員審核。會員發布房源活動圖,如圖4所示。

圖3 管理員和中介人員用例圖

類圖是用來描述系統的靜態模型的,它定義系統中的類的內部結構及類之間的關系。根據基于用例驅動的思想,為每個用例設計其類圖。限于篇幅,此處以用戶登錄為例,介紹其類圖。在本系統中,登錄用戶有三種,分別是會員、中介人員和管理員。由于登錄過程采用了相似的處理方法,因此,可以把三種用戶的登錄處理抽象出來,成為一個接口。接口中保存對登錄處理的方法定義,但沒有代碼實現。登錄管理接口中主要提供了一個IsLogin()的方法,它的返回值是一個布爾類型的值。其作用是返回登錄成功與否的信息。邊界類是Login.aspx頁面,它提供了用戶登錄的界面。用戶登錄類圖,如圖5所示。

圖4 會員發布房源活動圖

圖5 用戶登錄類圖

系統的靜態模型類圖建立后,可以用時序圖為其建立動態模型。時序圖顯示多個對象如何按時間的順序進行交互的細節,而對象間的交互通過發送各種消息進行。此處以會員發布房源為例,其時序圖如圖6所示。

圖6 會員發布房源順序圖
會員登錄系統后,可以發布房源信息。當會員從界面對象Addhouse.aspx上發出發布房源的消息后,房源發布界面顯示需會員填寫的各種輸入框,等待會員輸入。會員輸入結束后由房源管理對象HousemanageBll進行審核,并最終調用房源信息訪問類HouseDAL的添加方法完成本次發布過程。會員發布房源順序圖,如圖6所示。
為了更好的開展物理實現的過程,可以采用實現過程建模的方式進行。在實現過程的建模圖有兩種,一個是組件圖,另一個是配置圖。這兩種圖的區別在于,組件圖是用于描述系統實現中的各個組件及其相互之間的依賴關系,它是基于系統實現視圖層面的;而配置圖用來描述系統中的軟硬件的物理布局,是用于對系統執行過程中各種使用資源元素的配置情況進行描述,以及軟件如何體現這些資源元素的映射關系。系統測試階段,需要使用測試用例圖。測試用例和前面介紹的系統用例差不多,都是從功能上對系統進行說明。測試階段也就是圍繞這些功能展開。
與傳統的面向過程開發方法有很大的不同,使用UML建模可以大大提高面向對象開發的效率。借助于UML建模工具,真正實現了以需求為中心、以用例驅動為導向的開發模式。如果UML建模與RUP結合,可以進一步提高軟件的開發效率。對于大型軟件項目的開發、協調開發團隊之間的合作具有積極和深遠的意義。
[1]李敏.房屋中介管理系統的設計與實現[D].南昌大學,2010.3.
[2]李永紅.房屋中介信息平臺的設計與實現[D].廈門大學,2012.5.
[3]高琳.基于.NET和遠程接入技術的房產中介信息管理系統的研發[D].南開大學,2008.10.
[4]林朝國.西昌市安心居房屋中介管理系統的設計與實現[D].電子科技大學,2007.9.
[5]王紅華.俞揚信.基于B-S結構的房產中介管理系統的設計與實現[J].中國管理信息化,2007,2(13):19-21
[6]陳立紅.基于Web的房產中介管理系統的設計與實現[J].信息技術,2008(7):58-61
[7]龔赤兵,杜潔.精通ASP.NET2.0電子商務網站開發[M].北京:人民郵電出版出版社,2008.
[8]閆偉.房產中介管理系統的開發與設計[J].應用科學,2008(10):100-101.
UML Modeling;Real Estate Agent Management;Use Case Diagrams;Class Diagram;Sequence Diagram
Research and Application of RUP Visualization Modeling
ZHANG Xian-zhong
(School of Computer Information&Engineering,Changzhou Institute of Technology,Changzhou 213002)
1007-1423(2015)30-0032-04
10.3969/j.issn.1007-1423.2015.30.009
張獻忠(1969-),男,江蘇江陰人,碩士,講師,研究方向為計算機應用和軟件工程
2015-09-08
2015-09-30
介紹UML的基本概念,重點闡述房產中介管理系統中如何用UML進行建模的過程。在系統分析階段,采用用例圖和活動圖對系統業務進行描述。在系統設計階段,采用類圖和時序圖建立系統動態結構模型。UML建模技術的應用,不僅提高系統的開發效率,而且也有利于系統今后的維護和擴展。
UML建模;房產中介管理;用例圖;類圖;時序圖
Introduces the basic concepts of UML,focuses on the process of real estate agent management system,how to use UML modeling.In the analysis phase,use case diagrams and activity diagrams to describe the system of business.In the system design stage,the use of class diagrams and timing diagrams establish dynamic structural model.Application of UML modeling technology,not only improves the efficiency of system development,but also conducive to the maintenance and expansion of the system in the future.