需求分析——使用类图建模
在討論類圖之前,我們先看下面的一段文字。
“人脈項目的主要業務是用戶通過人脈系統管理名片。用戶可以通過電腦瀏覽器添加名片,添加的名片存儲到數據庫,也可以編輯和刪除名片,當用戶需要時可以隨時查詢和瀏覽名片。”
上面的這段文字介紹了人脈項目的主要業務。由于業務相對簡單,我們能夠很快理解這類業務。但對一些業務比較復雜的系統來說,理解起來就不那么容易了,如果我們能夠梳理業務中的關鍵概念及它們之間的關系,就可以幫助我們快速理解新系統的業務。
在上面介紹人脈系統業務的文字中,我們可以很容易發現業務的關鍵概念,其中用戶、名片和數據庫都是業務的關鍵概念。用戶是業務的執行者,名片是業務的材料,數據庫是業務的數據源。找出業務的關鍵概念后,我們還需要弄清業務概念之間的關系。下圖給出了人脈系統業務概念之間的關系。
?
圖 1 人脈系統業務概念關系圖
通過人脈系統業務概念關系圖,可以清晰理解人脈系統的業務內容,用戶通過人脈系統管理名片信息,名片信息通過數據庫進行存取。因此,只要我們把新系統業務的關鍵概念以及概念之間的關系描述清楚,自然也就理解了新系統的業務。
?
那么如何識別系統業務的關鍵概念呢?
在前面的課程中,我們掌握了從定義的系統事件中找出系統角色的方法,其實我們找出的系統角色就是業務的關鍵概念,角色的用例模型從系統的功能角度描述了系統應提供哪些功能,但沒有給出角色的內容以及角色之間的關系。UML建模語言中的類圖模型就是描述角色內容以及角色之間關系的模型。
在一些建模工具中(如Visio),類圖是一個矩形的方框,方框分為三部分,最上面的部分是類的名稱,中間部分是類的屬性,下面的部分是類的行為。下圖是一個簡單的類圖。
?
圖 2 一個簡單的類圖
?
類就是我們前面分析得到角色,角色有屬性和行為,因此在類圖中也有屬性和行為。
在上面的類圖模型中,用戶是類(角色)的名稱,昵稱和登錄密碼是類的屬性,注冊和登錄是類的行為。
?
類與類之間也會存在關系。在需求分析階段,類與類之間的關系有依賴關系、繼承關系、關聯關系。在設計階段類圖模型會增加聚合關系和實現關系。
依賴關系是指在類的行為中使用到另一個類。例如用戶類的注冊行為,就會使用到數據庫類來存儲用戶信息。下圖是依賴關系的類圖模型。
?
圖 3 類的依賴關系
?
繼承關系是指一個類繼承另一個類的屬性和行為,被繼承的類稱為父類,繼承的類稱為子類。繼承的思想是把同類事物的共同屬性抽取出來形成基類,基類可以被更具體化的子類來繼承。例如,假如人脈系統要支持多種類型的名片,我們就可以把名片的共同屬性和行為抽取出來形成基類,然后在基類的基礎上,通過繼承關系創建視頻名片、動畫名片、文字名片等不同媒體的名片。下圖是繼承關系的類圖模型。
?
圖 4 類的繼承關系
?
類的關聯關系是指兩個類之間有相關性,如果一個類的屬性是另外一個類,就說這兩個類之間有關聯關系。例如在人脈系統中,假如用戶類的一個屬性是名片類,則可以說用戶類和名片類有關聯關系。下圖是關聯關系的類圖模型。
?
圖 5 類的關聯關系
前面我們討論了什么是類圖以及類之間的關系。我們知道了類圖模型是從業務角度來描述系統的,從系統業務中抽取的關鍵概念構成了業務類,系統業務類之間存在依賴關系、繼承關系和關聯關系。下節課我們將利用這些知識,為人脈項目V1.0系統建立類圖模型。
總結
以上是生活随笔為你收集整理的需求分析——使用类图建模的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 驾校一点通下载|驾校一点通电脑版下载
- 下一篇: 深入理解JVM垃圾收集机制,下次面试你准