系統開發基礎:UML中圖的相關知識筆記(上)

? ? ? ? ? ?

1、圖的概念

圖(Diagram) 是一組元素的圖形表示,大多數情況下,把圖畫成頂點(代表事物)和弧(表示關系)的連通圖。

2、UML中圖的分類

UML2.0中的圖主要有:類圖、對象圖、用例圖、序列圖、通信圖、狀態圖、活動圖、構件圖、部署圖、組合結構圖、包圖、交互概覽圖、時序圖。

2.1 類圖

類圖主要展現了一組對象、接口、協作和它們之間的關系。面向對象系統最常見的就是類圖。類圖給出系統的靜態設計圖。包含主動類的類圖給出了系統的靜態進程視圖。

類圖中包含的內容:類、接口、協作、依賴、泛化、關系、注解、約束、包、子系統。

作用:對系統的靜態設計視圖建模。主要包括對系統的詞匯建模、對簡單的協作建模、對邏輯數據庫模式建模。

? ? ? ? ? ? ?

?

2.2 對象圖

對象圖展現了一組對象以及它們之間的聯系。對象圖描述了在類圖中所建立的事物的實例的靜態快照。

? ? ? ? ? ? ?

?

對象圖組成:對象和鏈。

作用:從真實的或原型案例建立系統的靜態視圖或靜態進程視圖,主要用來支持系統的功能需求。

2.3 用例圖?

用來描述系統需求的方法,展現了一組用例、參與者以及它們之間的關系。

組成:用例、參與者、用例之間的關系。

? ? ? ? ? ? ?

?

?

參與者:指存在系統外部并于系統進行交互的任何事物,可以是系統的用戶,也可以是其他外部系統和設備等外部實體。

用例之間的關系:包含、擴展、泛化。

  • 包含:當可以從兩個及以上的用例中提取公共行為時,應該用包含關系來表示它們。

  • 擴展:如果一個用例明顯地混合了兩種及以上的場景,也就是根據情況可能發生多種分支,則可以將這個用例分為一個基本用例和多個擴展用例。

  • 泛化:當多個用例共同擁有一種類似的結構和行為時,可以將它們的共性抽象成為父用例,其他的用例作為泛化關系中的子用例。

作用:對系統的靜態用例圖進行建模。主要有對系統的語境建模、對系統的需求建模。

2.4 交互圖

序列圖、通信圖、交互概覽圖和時序圖都被成為交互圖,它們主要用于對系統的動態方面進行建模。一張交互圖顯示的是一個交互,由一組對象和它們之間的關系組成。包含它們之間可能傳遞的消息。

順序圖強調時間順序;通信圖強調接收和發送消息的對象的組織。

作用:交互圖用于對一個系統的動態方面的建模、對用例的特定的控制流進行建模。

組成:對象、鏈、消息。

(1)、序列圖

序列圖是場景的圖形化表示,描述了以時間順序組織的對象之間的交互活動。

特點:序列圖由對象的生命線、序列圖由控制焦點。

? ? ? ? ? ? ?

?

(2)、通信圖?

通信圖強調收發消息的對象的結構組成,早期也被稱為協作圖。

特點:通信圖有路徑、通信圖有順序號。序列圖和通信圖是可以相互轉換的。

(3)、交互概覽圖

交互概覽圖是UML2.0 新增的交互圖之一,它主要描述交互(特別是關注控制流),但是抽線掉了消息和生命線。它使用活動圖的表示法。

(4) 時序圖?

它主要描述對象狀態隨著時間改變的情況,很像示波器,比較適合分析周期和非周期性任務。

?

IT技術分享社區

個人博客網站:https://programmerblog.xyz

文章推薦程序員效率:畫流程圖常用的工具程序員效率:整理常用的在線筆記軟件遠程辦公:常用的遠程協助軟件,你都知道嗎?51單片機程序下載、ISP及串口基礎知識硬件:斷路器、接觸器、繼電器基礎知識

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/271156.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/271156.shtml
英文地址,請注明出處:http://en.pswp.cn/news/271156.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python循環頂帖_設計Python數據庫連接池1-對象的循環引用問題

在Python中如果對象定義了__del__方法的話,在對象的引用記數為0時會自動調用__del__方法(很象c中的析構函數),但如果A對象引用B對象,B對象又引用A對象,就形成循環引用,此時A,B對象引用次數都為1。python就無…

編譯時類型 和運行時類型的 區別(1)

class T{ void f(int x){ System.out.println("int in T:" x); } void f(double x){ System.out.println("double in T:"x); } void f(Object x){ System.out.println("Object in T:" x); }} class S extends T{ void f(int x){  //子類覆蓋基…

系統開發基礎:UML中圖的相關知識筆記(下)

1、狀態圖狀態圖展現了一個狀態機,它由狀態、轉換、事件、活動組成。狀態圖關注系統的動態視圖,它對于接口、類、協作的行為建模尤為重要,它強調對象行為的事件順序。組成:簡單狀態、組合狀態、轉換(事件和動作&#x…

java京東左側固定層_京東首頁右側固定層

需求說明制作京東首頁右側的固定層,6個圖標:京東會員、購物車、我的關注、我的足跡、我的消息和咨詢JIMI默認狀態下僅顯示圖標,背景顏色為深灰色;當鼠標移至圖標上時,背景顏色為深紅色,并且顯示文本css*{ma…

云開發技術應用python_云開發技術應用(Python)

本書共14章,從Python語言的語法特性開始,介紹了Python的安裝和配置、數據類型及表達式、流程控制、序列和字典、文件處理、函數等,由淺入深,循序漸進,逐步引入高級話題,包括面向對象編程、模塊和包、異常處…

記錄下Linux難記實用的命令

1 看文件大小:du -sm * | sort -n 2 合并多個文件,可以跨文件夾合并:cat *_.txt >> news.txt 3 給文件改編碼:iconv -f GBK -t UTF-8 原文件名 -o 新文件名 4 查找文件內容:grep "thermcontact" */*.i…

系統設計基礎:系統設計基本任務相關知識

1、系統設計的目的提前為系統指定藍圖,在各種技術和實施方法中進行權衡,精心設計,合理利用各種資源、最終確定新系統的詳細設計方案。2、系統設計的內容系統設計的內容主要包括系統總體結構設計、代碼設計、輸出設計、輸入設計、處理過程設計…

java7 3dm下載_3DM游戲運行庫合集安裝包v2.8

游戲運行庫大全 游戲運行環境 所有游戲組件 32位 64位系統常用運行庫合集 3DM游戲常用運行庫安裝包 下載 幸姨作品本安裝包集成32位和64位運行庫,是目前互聯網上最新最全的常用運行庫合集,能自動識別系統版本以提供適合您的組件,無人值守自動…

uci數據集_干貨收藏!三大領域常用十大開源數據集

全文共1144字,預計學習時長2分鐘機器學習的研究與實現離不開大數據。知曉通用的開源數據集,一方面可以驗證自己算法,另一方面也可以與其他算法進行比較。本文介紹了計算機視覺、自然語言處理和語音識別三大領域的十個開源數據集以供你參考&am…

系統設計知識:系統設計的基本原理介紹

1、抽象抽象主要用來將復雜的現象簡化到可以分析、實驗或者可以理解的程度。抽象的最低層就是實現該軟件的源程序代碼。在進行模塊化設計也可以有多個抽象層次,最高抽象層次的模塊用概括的方式描述問題的解決方案。較低層次的模塊是對更高抽象層次模塊對問題描述的細…

Wpf Binding.Path設置

Binding.Path 獲取或設置綁定源屬性的路徑。 每個綁定通常都具有四個組件:綁定目標對象、目標屬性、綁定源,以及要使用的綁定源值的路徑。有關這些數據綁定概念的更多信息,請參見數據綁定概述。 使用 Path 屬性可以指定您要綁定到的源值&…

java內存溢出怎樣查找代碼_JVM - 內存溢出,問題查找

當內存溢出會拋出 java.lang.OutOfMemoryError: Java heap space 的異常,那這個時候怎樣去分析到底哪里導致內存溢出呢?我們可以通過在vm的參數, -XX:HeapDumpOnOutOfMemoryError 記住這個理是大寫XX。當內存溢出后,顯示java.lang…

系統設計知識:系統模塊結構設計知識筆記

1、什么是模塊?模塊可以認為是組成系統的基本單位,它具有可組合、分解、更換的特點。系統中任何一個處理功能都能看成是一個模塊。模塊根據具體化的程度可劃分為邏輯模塊和物理模塊。模塊的要素:輸入輸出:模塊的輸入來源和去向都是…

安卓掃一掃自動跳轉軟件_ipad軟件使用技巧

適用于三款ipadipad pro 1ipad pro2ipad 2018三個ipad軟件分別是notability、goodnotes、和MarginNote,這三個軟件各有特點。其中notability、goodnotes是筆記軟件,同樣都可以自己創立筆記本配合蘋果筆像手寫一樣做筆記,也可以導入pdf作為閱讀…

第12章 使用Samba或NFS實現文件共享

章節簡述: 本章節為讀者講述文件共享系統的作用,了解Samba與NFS服務程序的開發背景以及用法。 詳細逐條講解Samba服務配置參數,演示安全共享文件的配置策方法,并使用autofs服務程序自動掛載設備, 學會后即可實現Linux…

ExtClassLoader和AppClassLoader是Launcher類的兩個內部類

sun.misc.Launcher他是一個java虛擬機的入口應用 看下Launcher類 ExtClassLoader和AppClassLoader是Launcher類的兩個內部類

Java后端帶參跨域訪問_java后端解決請求跨域

跨域跨域:指的是瀏覽器不能執行其他網站的腳本。它是由瀏覽器的同源策略造成的,是瀏覽器對javascript施加的安全限制。例如:a頁面想獲取b頁面資源,如果a、b頁面的協議、域名、端口、子域名不同,所進行的訪問行動都是跨…