廣告管理系統的UML分析與設計[3] UML模型
關鍵字:廣告管理系統 UML分析
廣告管理系統擁有大量廣告信息資源,這些資源包括各種用戶、廣告、合同以及版面信息。其數據量大、信息變化快,非結構化信息與結構化信息共存。使用UML對廣告管理系統進行基于面向對象的分析和實現,可以從開發的第一步開始,從系統的底層就把握住廣告信息資源的特征,為下一步具體實現打好基礎。在廣告管理系統建立模型時要涉及到處理大量的模型元素,如類、進口、組件、節點、圖等,可以將語意上相近的模型元素組織在一起,這就構成了UML的包,包從較高的層次來組織管理系統模型。
系統主要有以下四個包:
• 用戶接口包(U ser Interface Package)
用戶接口包在其他包的頂層次,為系統用戶提供訪問信息和服務。要注意一點,由于開發工具使用不同,該接口描述也是有區別的。如果采用java開發,就要以java AWT(Abstract Window Toolkit)為基礎,如果采取Microsoft的Asp.net開發,其基礎就是標準化控件組。
• 業務邏輯包 (Business Rule Package)
該包是廣告管理系統業務的核心實現部分,包括廣告、合同、客戶等,其他包可以通過訪問該包提供的接口,實現業務邏輯,如執行廣告預訂業務等。
• 數據持久訪問包 (Data Persistence Package)
該包實現數據的持久化,也就是與數據庫交互,實現數據的存取、修改等操作。
• 通用工具包(U til Package)
該包主要包括應用程序安全檢查的類,可以為上面三個包提供安全檢查,如客戶端檢查和服務器端業務規則檢查等,同時包括一些系統異常檢查與拋出處理以及系統日志服務等。
2.2.2系統詳細設計
詳細設計主要是描述在系統分析階段產生的類,與分析階段類的區別就是偏重于技術層面和類的細節實現。廣告管理系統提供的各種服務都是建立在分布、開放的信息結構之上,依托高速、可靠的網絡環境來完成的。每項服務都可以看作一個事件流,由若干相關的對象交互合作來完成。對于這種系統內部的協作關系和過程行為,可以通過繪制順序(Sequence)框圖和協作(Collaboration)框圖來幫助觀察和理解。此外,描述工作流和并發行為還可以通過活動框圖,表達從一個活動到另一個活動的控制流。同時,可以在理解這些圖的基礎上,抽象出系統的類圖,為系統編碼階段繼續細化提供基礎。 軟件開發網
順序圖和協作圖適合描述多個對象的協同關系,而狀態圖適合描述一個對象穿越多個Use Case的行為。狀態圖和活動圖的區別在于,狀態圖描述的是對象類響應事件的外部行為,而活動圖描述的是響應內部處理對象類的行為。
一個普通客戶預訂廣告業務的順序框圖例子。用戶向預訂子系統的用戶接口登陸,經用戶合法性驗證后,向預訂子系統的客戶信息數據庫提交查詢請求,客戶信息需要經過驗證,保證該廣告記錄到該客戶數據集中。比如一個客戶曾經到該報刊訂過 5條廣告,通過該新廣告同客戶歷史廣告信息添加操作,為決策支持客戶信息統計分析提供數據源。如果該客戶是新客戶,則需要對客戶信息執行記錄操作,該步操作為客戶關系管理提供數據源。
原文轉自:http://www.anti-gravitydesign.com