1. 程式人生 > >UML筆記01-UML的簡介

UML筆記01-UML的簡介

UML簡介

UML,統一建模語言(Unified Modeling Language),是第三代用來為面向物件開發系統的產品進行說明、視覺化和編制文件的方法

什麼是UML

UML是一種標準的圖形化建模語言,它是面向物件分析與設計的一種標準表示。它:

    • 不是一種視覺化的程式語言,而是一種視覺化的建模語言;
    • 不是工具或知識庫的規格說明,而是一種建模語言規格的說明,它是一種表示標準;
    • 不是過程,也不是方法,但允許任何過程和方法是用它;

UML的目標

    • 易於使用、表達能力強,進行視覺化建模;
    • 與具體實現無關,可應用於任何語言平臺和工具平臺;
    • 與具體過程無關,可應用於任何軟體開發的過程;
    • 簡單並且可擴充套件,具有擴充套件和專有化機制,便於擴充套件,無對核心概念進行修改;
    • 為面向物件與開發中湧現的高階概念(協作、框架、模式和元件)提供支援,強調在軟體開發中,對架構、框架、模式和元件的重用;
    • 與最好的軟體工程實踐經驗整合;
    • 可升級,具有廣闊的適用性和可用性;
    • 有利於面向物件工具市場成長。

UML的架構

UML由圖和元模型組成。圖是UML的語法,元模型則給出圖的意思,是UML的語義。UML的語義定義在一個四層(四個抽象級)建模概念框架中:

    • 元元模型(meta-metamodel)層,組成UML最基本的元素“事物(Thing)”,代表要定義的所有事物;
    • 元模型(metamodel)層,組成UML的基本元素,每個概念都是元元模型中的“事物”概念的例項。
    • 模型(model)層,組成UML的模型,每個概念都是元模型中概念的例項。這一層模型通常稱為類模型(class model)或型別模型(type model)。
    • 使用者模型(user model)層,所有模型都是UML模型的例子,每個概念都是模型層和元模型的例項。這一層模型通常稱為物件模型(object model)或例項模型(instance model)。

UML的檢視(view)和圖(diagram)

UML檢視從不同視角為系統架構建模,有:

    • 用例檢視(use case view),起吊從使用者角度看到的貨需要的系統功能,也稱為使用者模型檢視(user model view)或想定檢視(scenario view)
    • 邏輯檢視(logical view),展現系統的靜態貨結構組成及特徵,也稱為結構模型檢視(structural mdel view)或靜態模型檢視(static view)
    • 併發檢視(concurent view),體現系統的動態或行為特徵,也稱為模型檢視(behavioral model view)、過程檢視(process view)、協作檢視(collaboratiive view )、動態檢視(dynamic view)
    • 元件檢視(conponent view),體現系統實現的結構和行為特徵,也稱為實現模型檢視(implementation model view)、開發檢視(development view)
    • 展開檢視(deployment view),體現系統實現環境的機構和行為特徵,也成為環境模型檢視(Environment model view)、物理檢視(physical view)

每一種UML的檢視都是由一個或多個圖(diagram)組成的,一個圖是系統架構在某個側面的表示,它與其他圖是一致的,所以圖一起組成了系統的完整性。

UML提供了9種不同的圖,可以分成兩大類:靜態圖(用例圖、類圖、物件圖、元件圖、配置圖)和動態圖(序列圖、協作圖、狀態圖、活動圖)。根據不同架構檢視,也分成:

在使用者模型檢視:

  • 用例圖(User case diagram),描述系統功能。

在結構模型檢視:

  • 類圖(Class diagram),描述系統的靜態結構。
  • 物件圖(Object diagram),描述系統在某個時刻的靜態結構。

在行為模型檢視:

  • 序列圖(Sequence diagram),按時間順序描述系統元素間的互動。
  • 協作圖(Collaboration diagram),按照時間和空間的順序描述系統元素間的互動和他們之間的關係。
  • 狀態圖(State diagram),描述系統元素的狀態和響應。
  • 活動圖(Activity diagram),描述系統元素的活動。

在實現模型檢視:

  • 元件圖(Component diagram),描述系統元素的組織。

在環境模型檢視:

  • 展開圖(Deployment diagram),描述環境元素的配置,並實現系統元素的對映到配置上。

UML與面向物件軟體分析與設計

UML的最終用途:表示方法的的標準化,有效地促進了不同背景人們的交流,有效地促進軟體設計、開發和測試人員的相互理解,為不同領域的人們提供統一的交流標準。

在眾多成功的軟體設計與實現的經驗中,最突出的兩條,一是注重系統架構的開發,一是注重過程的迭代和遞增型。儘管UML本身沒有對過程有任何定義,但是UML對任何使用它的方法(或過程)提出的要求是:支援用力驅動(use-case driven),以架構為中心(architecture-centric)以及遞增(incremental)和迭代(iterative)地開發。遞增和遞增的開發過程反映了專案開發的節奏。

UML在軟體開發的不同階段中的應用

  • 需求分析。UML的用力檢視可以表示客戶的需求。通過用例建模,可以對外部的角色以及它們所需要的系統功能建模。角色和用例是用它們之間的關係、通訊建模。每個用例都指定了客戶的需求:他/她需要系統幹什麼。不僅要對軟體系統,對商業過程也要進行需求分析。
  • 分析。分析階段主要考慮所要解決的問題,可用UML的邏輯檢視和動態檢視來描述:類圖描述系統的靜態結構,協作圖、狀態圖、序列圖、活動圖描述系統的動態特徵。在分析階段,只為問題領域的類建模,不定義軟體系統的解決方案細節(使用者介面的類,資料庫)。
  • 設計。在設計階段,把分析階段的結果擴充套件成技術解決方案。加入新的類來提供技術基礎結構(使用者介面,資料庫操作等)。分析階段的領域問題類被嵌入在這個技術基礎結構中。設計階段的結果 是構造階段的詳細的規格說明。
  • 構造。在構造(程式設計階段),把設計階段的類裝換成某種面向物件程式設計語言的程式碼。在UML表示的分析和設計模式進行轉換時,最好不要直接把模型轉換為程式碼。因為在早期階段,模型是理解系統並對系統進行結構化的手段。
  • 測試。對系統的測試通常分為單元測、整合測試、系統測試和接受測試幾個不同級別。單元測試時對幾個類貨一組類的測試,通常由程式設計師進行;整合測試整合元件和類,確認它們之間是否欠當地協作;系統測試把系統當作一個“黑箱”,驗證系統是否具有使用者所要求的所有功能。接受測試由客戶完成,驗證系統是否滿足所有需求。不同測試小組使用不同UML作為他們的工作基礎:單元測試使用類圖和類說明規格,整合測試典型地使用元件圖和協作圖,而系統測試實現用例圖來確認系統的行為符合這些圖中的定義

相關推薦

UML筆記01-UML簡介

UML簡介 UML,統一建模語言(Unified Modeling Language),是第三代用來為面向物件開發系統的產品進行說明、視覺化和編制文件的方法 什麼是UML UML是一種標準的圖形化建模語言,它是面向物件分析與設計的一種標準表示。它: 不是一種視覺化

UML實驗01 Rose環境和用例圖

實驗01  Rose環境和用例圖 實驗目的 (1) 熟悉Rose的工作環境;             (2) 掌握Rose的基本操作方法; (3) 熟悉用例圖

UML 建模】01 UML 概述

什麼是 UML ? UML 是一種為面向物件開發系統的產品進行說明、視覺化和編制文件的標準語言 UML 作為一種模型語言,它使開發人員專注於建立產品的模型和結構,而不是選用什麼程式與語言和演算法實現; UML 的目標: UML 被定義為一個簡單建模機制,幫助

UML類圖建模簡介

類圖(Class Diagram)是顯示出類、介面以及它們之間的靜態結構和關係的圖。類圖最基本的元素是類或介面。 描述類的類圖 完整的類圖總共分五層:類名層、屬性層、方法層、性質層、內部成員類層類名層:類名如果是正體,表明類是具體類。類名如果是斜體,表示類是抽象類。類名不

UML各種檢視的簡介

    UML中各種檢視並沒有明顯的概念區別,然後呢為了好講解和說明,檢視大體分為三類:結構分類,動態行為,模型管理。     結構分類主要描述了系統中的結構成員及其相互關係。類元包括類,用例,構件和節點。類元為研究系統的動態行為奠定了基礎。類元檢視包括靜態檢視,用例檢視和

UML——9種圖簡介

UML中的圖 (1)用例圖(Use Case Diagram):     是指由參與者(Actor)、用例(Use Case)以及它們之間的關係構成的用於描述系統功能的檢視。用例圖(User Case)是被稱為參與者的外部使用者所能觀察到的系統功能的模型圖,呈

軟體設計師考試筆記UML統一建模語言

統一建模語言UML是用一組檢視反應系統的各個方面,以完整地描述系統,每個檢視代表系統描述中的一個抽象,顯示系統中一個特定的方面。 UML中有四種關係:依賴、關聯、泛化和實現: 依賴(dependency):依賴是兩個事物間的語義關係,其中一個事物(獨立事務)發生變化會影響另一個事務(依賴事務)的語義。在

UML四種關係簡介

開篇點題:     UML中的四種關係是依賴(Dependency)關聯(Association)泛化(Generalization)實現(Realization)。     一張圖奉上 簡要

《推薦系統實踐》筆記 01 推薦系統簡介

# 推薦系統簡介 ## 什麼是推薦系統 由於當前社會由資訊匱乏轉變為資訊過載,需要篩選工具對資訊進行篩選,如個性化推薦系統,可以對那些沒有什麼明確需求的使用者進行推薦。如何從海量的資料中篩選出使用者真正感興趣的事情是一件非常具有挑戰性的事情。 **推薦系統的任務就是聯絡使用者和資訊,一方面幫助使用者發現對

Log4j筆記----01

毫秒 診斷 ets 一個 不存在 末尾 otl 所在 images 新建普通java project 項目創建文件如上 log4j.properties中編輯屬性 ### 設置### log4j.rootLogger = debug,stdout,D,E #

mysql學習筆記(1-安裝簡介)

配置文件 服務器 二進制 mysql 通用 mysql的安裝方式:(1)通過系統提供的默認版本(穩定版,該版本滿足了使用的需求,建議使用,os vendor)(2)mysql官方提供 官方提供的通用rpm安裝包 官方提供的文件,以文件覆蓋的方式安裝 源碼包編譯安裝

JQuery 學習筆記--01

隱藏 mat 不包含 rst 基本選擇器 多重 title back first 1. JQuery 基本選擇器 express description remarks $("#idName") id選擇器 $(".className") 類選擇器 $

AngularJS 學習筆記--01

bsp 指令 操作 angular 增強 lar col 表示 nbsp 學習 AngularJS 要先了解 MVC 模式 , 即 " 模型--視圖--控制器 " . 模型: 包含了需要用到的數據 ; 有兩種廣義上的模型 : 視圖模型 , 只表示

HTML 筆記01

... 字母 騰訊 cat 份額 需要 視頻 scrip tle HTML5可以做什麽? 第一 網站頁面 響應式頁面 (淘寶 京東 ...) 第二 WebApp (webQQ 在線美圖 web淘寶...) 第三 遊戲 (網頁遊戲, canvas小遊戲,

UML總結4---UML九種圖關系說明

-cp 旅行 聯系 charge 5.1 用戶 通過 屬於 又是 轉自:http://blog.csdn.NET/chenyujing1234/article/details/8173519 UML中包括九種圖:用例圖、類圖、對象圖、狀態圖、時序圖、協作圖、活動圖、組件

Linux網絡編程筆記01

linux網絡編程1.計算機聯網的目的1) 使用遠程資源2) 共享信息,程序和數據3) 分布處理2.協議的概念1) 網絡中的任意兩臺計算機之間的通信必須有一些約定(比如, 傳輸速率, 數據格式,出錯檢測機制等),這個約定,我們就稱之為協議2) 在Internet中,最為通用的網絡協議就是TCP/IP協議3)

Struts2筆記01——基礎MVC架構(轉)

ima pan als 視圖 進行 tex www 執行 lsp 原始內容:https://www.tutorialspoint.com/struts_2/basic_mvc_architecture.htm Apache Struts 2是用來創建企業級Java

【JavaScript】筆記01——Making Stuff Happen???

文件 eight tin clas 快捷 strong init chrome scrip While, generally speaking, HTML is for content and CSS is for presentation, JavaScript is

構建之法閱讀筆記01

style 提高自己 結合 bsp 思想 宋體 玩具 spa nbsp 構建之法閱讀筆記01 在網上找到《構建之法》這本書的電子版,經過幾天的閱讀瀏覽,對於這本書,我覺得有很多的優點,但是更多的有一種感覺,這本書更註重的對編程者的思想的啟發。書裏提供了很多的實例以及模型或者

浪潮之巔閱讀筆記01

微軟公司 發展 應該 協議 新的 bsp 用戶 自己 微軟 浪潮之巔閱讀筆記01 這本書是一本IT行業歷史書,從一百年前算起,AT&T 公司、IBM 公司、蘋果公司、英特爾公司、微軟公司、思科公司、雅虎公司和Google公司都先後被幸運地推到了浪尖。雖然,它們來自不