ebooksgratis.com

See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
统一建模语言 - Wikipedia

统一建模语言

维基百科,自由的百科全书

统一建模语言UML,Unified Modeling Language)是非专利的第三代建模和规约语言。UML是一种开放的方法,用于说明、可视化、构建和编写一个正在开发的、面向对象的、软件密集系统的制品的开放方法。UML展现了一系列最佳工程实践,这些最佳实践在对大规模,复杂系统进行建模方面,特别是在软件架构层次已经被验证有效。

UML集成了Booch,OMT和面向对象软件工程的概念,将这些方法融合为单一的,通用的,并且可以广泛使用的建模语言。UML打算成为可以对并发和分布式系统的标准建模语言。

UML并不是一个工业标准,但在Object Management Group的主持和资助下,UML正在逐渐成為工业标准。OMG 之前曾經呼籲業界向其提供有關物件導向的理論及實現的方法,以便製作一個嚴謹的軟體塑模語言(software modeling language)。有很多業界的領袖亦真誠地回應OMG,幫助她建立一個業界標準。

目录

[编辑] 模型

類別圖顯示一般化關係一對多 (多維) 的實現

在UML系统开发中有三个主要的模型:

  • 功能模型:从用户的角度展示系统的功能,包括用例图。
  • 对象模型:采用对象,属性,操作,关联等概念展示系统的结构和基础,包括类图。
  • 动态模型:展现系统的内部行为。包括序列图,活动图,状态图。

区分UML模型和UML图是非常重要的,UML图,包括用例图、协作图、活动图、序列图、部署图、构件图、类图、状态图,是模型中信息的图形表达方式,但是UML模型独立于UML图存在。XML的当前版本只提供了模型信息的交换,而没有提供图信息的交换。

UML使用一套与Java语言或其他面向对象语言等价物,同时也是本体论等价物的图形标记。

UML并不是一个方法学,也不要求使用一个方法学,但是UML对于Rational 統一過程来说是必不可少的。

[编辑] 圖形

UML 2.0
UML 2.0
使用個案圖實例
使用個案圖實例
狀態圖實例
狀態圖實例

UML 2.0 中一共定義了13 種圖示(diagrams)。為方便了解,可分類成右側的結構。

結構性圖形(Structure diagrams) 強調的是系統式的建模:

  • 類別圖 (Class Diagram)
  • 元件圖(Component diagram)
  • 複合結構圖(Composite structure diagram)
  • 部署圖(Deployment diagram)
  • 物件圖(Object diagram)
  • 包圖(Package diagram)

行為式圖形(Behavior diagrams) 強調系統模型中觸發的事件:

  • 活動圖(Activity diagram)
  • 狀態機圖 (State Machine diagram)
  • 使用個案圖 (Use Case Diagram)

溝通性圖形(Interaction diagrams), 屬於行為圖形的子集合,強調系統模型中的資料流程:

  • 通信圖(Communication diagram]]
  • 交互概述圖(Interaction overview diagram) (UML 2.0)
  • 循序圖(Sequence diagram)
  • 時間圖(UML Timing Diagram) (UML 2.0)

協定狀態機是狀態機的子變種。它用來塑造網路通訊協定模型。

UML 並不限定 UML 要素型別非得是某圖形上的型別。一般來說,每個 UML 要素大約會出現在圖的所有型別。這種彈性在 UML 2.0 部分被限定。

為了要保持工程圖的傳統,在您的 UML 圖上加註用途、約束、或意圖永遠無傷大雅。

[编辑] 概念

UML 從來源中使用相當多的概念. 我們將之定義於統一建模語言術語彙表。下面僅列代表性的概念.

對於結構而言

執行者,屬性,類,元件,接口對象

對於行為而言

活動,事件訊息,方法,操作,狀態,用例

對於關係而言

聚合,關聯,組合,相依,廣義化 (or 繼承)。

其他概念

  • 構造型 — 這規範符號應用到的模型
  • 多重性 — 多重性標記法與資料庫塑模基數對應,例如: 1, 0..1, 1..*
  • 角色

[编辑] 参见

[编辑] 开源软件自由软件中 UML 应用程序

  • ArgoUml, UML 设计工具(主页)
  • Dia, 可绘制包含 UML 在内的多种图形 (主页)
  • UMLet, 用 Java 实现的 UML 简单绘图工具 (主页)
  • Umbrello UML modeler, 强大而又界面友好的 UML 工具。是KDE的一部分。 (主页)
  • Unimodeler, Linux 下支持 9 种 UML 图和向量打印的工具 (homepage)
  • Jude (UML Tool), Java 和 UML 开发者环境 (主页)
  • Jumli, 用 Java实现,支持 C++/C#/Java 以及解析/生成源代码 (主页)
  • omondo UML, Eclipse的UML插件, 提供有限功能的免费版 (需注册)和完整的商业版 (主页)
  • Poseidon for UML, 专业 UML 工具,提供免费的社区版(Community Edition)。从开源项目ArgoUml而来。 请参见 (主页)。
  • Violet 是为学生、教师以及只需要快速创建简单 UML 的应用者而设计的工具。 GPL 授权 (主页)


[编辑] 外部链接

統一建模語言 (UML)查看  討論  編輯  歷史 )
背景

機構: Object Management Group (OMG) • UML Partners
個人:Grady Booch • Ivar Jacobson • James Rumbaugh 

概念

物件導向: 物件導向的程式設計 

結構: 執行者 • 屬性 • 類 • 元件 • 接口 • 對象 •  

行為: 活動 • 事件 • 訊息 • 方法 • 操作 • 狀態 • 用例 

關係: 聚合 • 關聯 • 組合 • 相依 • 廣義化 (or 繼承) 

其他概念: 構造型 • 多重性 • 角色 

結構圖
類別圖 • 元件圖 • 複合結構圖 • 部署圖 • 物件圖 • 包圖 

行為圖
活動圖 • 狀態機圖 • 使用個案圖 • 通信圖 • 交互概述圖 • 循序圖 • 時間圖 

主題

關聯式資料庫模型(ERD)比較 • 統一塑模語言術語彙表 • 系統塑模語言(SysML) • UML色碼:

角色 時機,間隔
描述 哪一方,地點,事件
工具

UML工具 • Rational 統一過程


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -