SlideShare ist ein Scribd-Unternehmen logo
1 von 69
Downloaden Sie, um offline zu lesen
UML 2.5杂谈
周进刚
知识管理中心主任/软件架构师 东软集团平台产品事业本部基础软件事业部
科研项目经理 软件架构国家重点实验室(东软集团)
2015.11.03
UMLChina讲座
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 2
引子…
• 为什么会有今天的讲座?
https://www.gitbook.com/book/zhoujg/uml-2_5-zh/details
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 3
为什么要翻译OMG UML 2.5 beta?
• OMG OCUP 考试升级,招募志
愿者
图片来源:http://www.umlchina.com/book/book2.htm
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 4
主要内容
• OMG的UML认证考试
• UML 2.5规范本身的一些内容
• 如何阅读UML 2.5规范
• 工作中的UML建模杂谈与交流
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 5
OMG的UML认证
官网:http://www.omg.org/ocup-2/index.htm
• 三个级别:基础、中级、高级
– 不可越级考试,每一级考试费 $210
• 每一级都划定了考点、题目数量、各部分的比
重、考试时间、通过分数
• 参加考试需要预约,并在指定的考试中心进行
建模的
意义
项目管理
知识技能
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 6
OMG的UML认证
Examination Number: .... OMG-OCUP2-FOUND100
Duration: ........................ 120 minutes for residents of English-speaking countries; 150 minutes for all others
Exam Fee ...................... US$200 (or local equivalent) for residents of English-speaking countries; US$210 (or local equivalent) for all others.
Minimum Passing Score: 60 items correct out of 90
Prerequisites: ................ None
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 7
OMG的UML认证
Examination Number: .... OMG-OCUP2-FOUND100
Duration: ........................ 120 minutes for residents of English-speaking countries; 150 minutes for all others
Exam Fee ...................... US$200 (or local equivalent) for residents of English-speaking countries; US$210 (or local equivalent) for all others.
Minimum Passing Score: 60 items correct out of 90
Prerequisites: ................ None
Why We Model
Many domains construct or use models, including those listed on the
entrance page to this certification program. This section surveys the
types of models they use, and the benefits they obtain.
15%
Interpretation and Construction of UML Models and Diagrams:
Interpretation and construction of the UML Diagrams listed here,
using the model elements listed below:
The Class Diagram 25%
The Object Diagram 5%
The Package Diagram 5%
The Use Case Diagram 5%
The Activity Diagram 20%
The Sequence Diagram 15%
The State Machine Diagram 10%
Total 100%
STRUCTURAL
DIAGRAMS:Common
Structure
• Type
• Dependency
• Namespace
• VisibilityKind (public,
private, protected)
• MultiplicityElement
• Constraint
• Comment
• PackageImport
Packages
• Package
Simple Classifiers
• PrimitiveType
• DataType
• Enumeration
• EnumerationLiteral
• Interface
• InterfaceRealization
• Signal
• Reception
Structured Classifiers
• Association
• Class
BEHAVIORAL DIAGRAMS:Use
Cases
• UseCase
• Actor
• Include
Interactions
• Interaction
• OccurrenceSpecification
• ExecutionSpecification
• ExecutionOccurrenceSpecification
• DestructionOccurrenceSpecification
• Lifeline
• Message
• MessageOccurrenceSpecification
• MessageSort
• MessageEnd
Common Behavior
• CallEvent
• SignalEvent
• Trigger
• OpaqueBehavior
Activities
• Activity
• ActivityFinalNode
• ControlFlow
• InitialNode
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 8
OMG的UML认证
Examination Number: .... OMG-OCUP2-FOUND100
Duration: ........................ 120 minutes for residents of English-speaking countries; 150 minutes for all others
Exam Fee ...................... US$200 (or local equivalent) for residents of English-speaking countries; US$210 (or local equivalent) for all others.
Minimum Passing Score: 60 items correct out of 90
Prerequisites: ................ None
Why We Model
Many domains construct or use models, including those listed on the
entrance page to this certification program. This section surveys the
types of models they use, and the benefits they obtain.
15%
Interpretation and Construction of UML Models and Diagrams:
Interpretation and construction of the UML Diagrams listed here,
using the model elements listed below:
The Class Diagram 25%
The Object Diagram 5%
The Package Diagram 5%
The Use Case Diagram 5%
The Activity Diagram 20%
The Sequence Diagram 15%
The State Machine Diagram 10%
Total 100%
STRUCTURAL
DIAGRAMS:Common
Structure
• Type
• Dependency
• Namespace
• VisibilityKind (public,
private, protected)
• MultiplicityElement
• Constraint
• Comment
• PackageImport
Packages
• Package
Simple Classifiers
• PrimitiveType
• DataType
• Enumeration
• EnumerationLiteral
• Interface
• InterfaceRealization
• Signal
• Reception
Structured Classifiers
• Association
• Class
BEHAVIORAL DIAGRAMS:Use
Cases
• UseCase
• Actor
• Include
Interactions
• Interaction
• OccurrenceSpecification
• ExecutionSpecification
• ExecutionOccurrenceSpecification
• DestructionOccurrenceSpecification
• Lifeline
• Message
• MessageOccurrenceSpecification
• MessageSort
• MessageEnd
Common Behavior
• CallEvent
• SignalEvent
• Trigger
• OpaqueBehavior
Activities
• Activity
• ActivityFinalNode
• ControlFlow
• InitialNode
参考资料
UML 2.0 in a Nutshell
Dan Pilone, Neil Pitman - O'Reilly Media, 2005 [ISBN 978-0-596-00795-9]
UML 2 for Dummies
Michael J Chonoles, James A. Schardt - Wiley, 2003 [ISBN 978-0-7645-2614-5]
IBM Software Group, The Value of Modeling Also available as pdf.
Joshua M. Epstein, Why Model?
Business Modeling: A Practical Guide to Realizing Business Value
Rebecca Wirfs-Brock, Why Domain Modeling, blog posting, Feb 2013. Wirfs-Brock, a pioneer in object-
oriented design, writes in this post about the value of domain modeling.
J.D. Baker, Model Organization with Packages and the Package Diagram, White Paper, May 2013.
Filip Stachecki, Concurrency in UML, White Paper, March 2014. Various Authors, What's New in UML
2.5 (White Paper, Coming Soon)
Unified Modeling Language (UML), V2.5
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 9
OMG的UML认证
Exam Number: .............................. OMG-OCUP-200
Duration: ........................................ 90 minutes (70 questions)
Minimum Passing Score: .......... 31
Exam Fee: ..................................... US$200 (or equivalent in local currency)
Prerequisite: ................................ Passing Score on OCUP Fundamental Exam
COVERAGE TABLE - INTERMEDIATE
Composite Structure Diagrams (Intermediate) .......... 15%
Component diagrams (Basic)........................................ 15%
Action Model (Intermediate)............................................. 10%
Activity Diagrams (Intermediate)..................................... 15%
Interaction Diagrams (Intermediate)............................. 15%
State Machines (Behavioral)........................................... 15%
Deployment diagrams (basic, without Components) ..... 5%
Profiles................................................................................ 10%
Total .............................. 100%
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 10
OMG的UML认证
Exam Number: .............................. OMG-OCUP-200
Duration: ........................................ 90 minutes (70 questions)
Minimum Passing Score: .......... 31
Exam Fee: ..................................... US$200 (or equivalent in local currency)
Prerequisite: ................................ Passing Score on OCUP Fundamental Exam
COVERAGE TABLE - INTERMEDIATE
Composite Structure Diagrams (Intermediate) .......... 15%
Component diagrams (Basic)........................................ 15%
Action Model (Intermediate)............................................. 10%
Activity Diagrams (Intermediate)..................................... 15%
Interaction Diagrams (Intermediate)............................. 15%
State Machines (Behavioral)........................................... 15%
Deployment diagrams (basic, without Components) ..... 5%
Profiles................................................................................ 10%
Total .............................. 100%
Topic Area Details
1.0 Composite Structure Diagrams (Actions, Ports, and Structured Classes)
Covers this material from Chapter 9 Composite Structures:
1.1 Demonstrate the ability to understand internal structures.
Composite Structures::Internal Structures
1 Structured classifier (Figure 9.2)
2 Connectors (Figure 9.3)
1.2 Verify the understanding of modeling ports.
CompositeStructures::Ports
1 Port (Figure 9.4)
2 Connector End (Figure 9.4)
1.3 Verify the understanding of structure class.
CompositeStructures::StructuredClasses
1 Class (from StructuredClasses) (Figure 9.5)
1.2 Verify the understanding of modeling invocations
CompositeStructures::InvocationActions
1 Invocation Action (Figure 9.8)
2 Trigger (Figure 9.8)
2.0 Component Diagrams (Basic)
Covers this material from Chapter 8 Components:
2.1 Confirm the ability to understand and represent basic components
Components::BasicComponents (Figures 8.2 and 8.3)
1 Component (without Packaging) (Sec. 8.3.1)
2 Connector (for components) (Sec. 8.3.2)
3 Realization (for components) (Sec. 8.3.3)
4 Other Basic Component concepts
3.0 Action Models (Intermediate)(Basic Actions in Activity Diagrams)
Covers this material from Chapter 11 Actions:
3.1 Demonstrate intermediate knowledge and comprehension of the UML Action Language
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 11
OMG的UML认证
UML 2 Certification Guide
Fundamental and Intermediate Exams
Tim Weilkiens
Bernd Oestereich Morgan Kaufmann OMG Press 2006
Can I study for the OCUP 2 Foundation exam using
the Certification Guide written for the original OCUP
Fundamental? In a word,No. The two exams are very
different - while the original restricted itself to UML syntax
and semantics (including the UML metamodel), the OCUP
2 Foundation exam tests UML usage in the context
of modeling and this aspect is not presented in the study
guide. Study from one of the books just mentioned or
another good book about UML modeling, and explore the
ways you can control the listed UML elements in your
modeling tool. Learn how to use, or recognize and
interpret, these elements in larger diagrams and how they
can relate to each other. We based the new examination
on these aspects of UML because they are the ones that
you will use in your career as either a model builder or a
model user. If you concentrate on the material presented
in the original OCUP Certification Guide, you will be
unprepared for the new OCUP 2 exam.
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 12
OMG的UML认证
The use case diagram is a
a) behavior diagram.
b) interaction diagram.
c) structure diagram.
d) context diagram.
e) requirements diagram.
Which statement(s) about DataTypes is/are correct?
a) A DataType has no attributes.
b) A DataType has no operations.
c) Instances of a DataType are different even if their attribute
values are equal.
d) A DataType is a specialized class.
e) An instance of a DataType has no identity.
图片来自UML 2.5 Figure 14.2 (p. 316)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 13
OMG的UML认证
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 14
OMG的UML认证
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 15
OMG的UML认证
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 16
OMG的UML认证
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 17
UML 版本变化
Ver. Date Description
1.1 11-1997 UML 1.1 议案被OMG所接受.
1.3 03-2000 包含一些对UML元模型、语义和表示法的改变,可视为对原议案的小升级.
1.4 09-2001 绝大部分是优化, 但与1.3并不是完全兼容. Addition of profiles as UML extensions grouped together. Updated visibility of features. 交互图中的Stick
arrowhead 现在指示异步调用. Model元素可以有多个stereotypes. Collaborations更清晰. 对Components和相关概念更为精化的定义.增加了用于表示
components的物理展现的Artifact.
1.5 03-2003 增加了 actions (see Part 5 of spec) - executable actions and procedures, 包括它们的运行时语义,定义了actions间携带数据的数据流的概念,等.
1.4.2 01-2005 该版本被接收为ISO specification (standard) ISO/IEC 19501. UML 1.5 was released 2 years before.
2.0 08-2005
新图: 对象图, 包图, 组合结构图, 交互概览图, 时间图, profile diagrams. 协作图改名为通信图.
活动图 和序列图进行了增强. 使用类Petri网的语义对活动进行了重定义. 边可以被包含在分区中, 分区可以是层级化和多维的. 支持显示的对
象流建模.
利用内部结构和端口 (组合结构)对类进行了扩展. 增加了信息流. 协作称为一种分类符, 可以关联任意种类的行为描述. 交互可以被包含在分
类符中, 而不仅仅是协作中. 分类符可以拥有用例 , 而不仅仅是包.
使用联合片段来表示并发和分支的新表示法. 组件、实现和制品的部署的表示法或语义进行了更新. 组件不能再直接部署到节点,而是制品.
实现被«manifest»所取代. 制品可以由可打包元素(而非仅是之前的组件)来体现. 可以部署到具有内部结构的节点上.
新元类: connector, collaboration use, connector end, device, deployment specification, execution environment, accept event action, send object
action, structural feature action, value pin, activity final, central buffer node, data stores, flow final, interruptible regions, loop nodes,
parameter, port, behavior, behaviored classifier, duration, interval, time constraint, combined fragment, creation event, destruction event, execution
event, interaction fragment, interaction use, receive signal event, send signal event, extension, 等.
删除了许多标准的UML Profile, 例如«destroy», «facade», «friend», «profile», «requirement», «table», «thread».
Integration between structural and behavioral models was improved with better support for executable models.
2.1 04-2006 Minor revision to UML 2.0 - corrections and consistency improvements.
2.1.1 02-2007 Minor revision to the UML 2.1
2.1.2 11-2007 Minor revision to the UML 2.1.1
2.2 02-2009 Fixed numerous minor consistency problems and added clarifications to UML 2.1.2
2.3 05-2010 Minor revision to the UML 2.2, clarified associations and association classes, added final classifier, updated component diagrams, composite structures, actions, etc.
2.4.1 08-2011 a minor revision to the UML 2.3, with few fixes and updates to classes, packages - added URI package attribute; updated actions; removed creation event, execution event,
send and receive operation events, send and receive signal events, renamed destruction event to destruction occurrence specification; profiles - changed stereotypes and
applied stereotypes to have upper-case first letter - «Metaclass» and stereotype application.
2.5 B2 09-2013 https://www.gitbook.com/book/zhoujg/uml-2_5-zh/details 翻译版本 (12年发布B1版本)
2.5 06-2015 从语言视角, UML作者声称2.5是2.4.1的一个小的改进, 主要是对文档本身进行了重构和简化以使其更为易读. 不再有两个单独的基础设施和超
结构文档, 2.5规范就一个单一文档. 规范中也不再使用包合并.
由于在实践中用处不大, 删除了UML的四层符合性级别 (L0, L1, L2, and L3). UML 2.5 工具需要支持完整的规范. Information flows, models和
templates 不再是UML的辅助构造. 同时 use cases, deployments,和 information flows 在2.5中成为“补充概念".
2.5有一些修正、澄清和增加了解释. 更新了对multiplicity和multiplicity元素的描述, 澄清了聚合和组合的定义, 并终于修正了轿车工厂实例中
«instantiate» 的错误依赖. 引入‘^’ 符号来标识inherited members. UML 2.5澄清了feature redefinition和重载.
generalization sets 的缺省值由 {incomplete, disjoint} 变为 {incomplete, overlapping}.
对stereotypes, state machines和activities有一些澄清和修正. 协议状态机使用«protocol»而非{protocol}来标识. Use cases 不再必须要有actors ,
也不必由一个actor来启动.
调整自: uml-diagram.org
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 18
UML 2.5 结构图
图片来自UML 2.5 Figure B.8 (p.691)
Collaboration
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 19
UML 2.5 结构图
• 分类符(classifier)
分类符名称
属性
操作
receptions
内部结构
协作
用例
内嵌的分类符
拥有的行为
约束
图片来自UML 2.5 Figure 11.19
(p.195), 9 .11 (p. 113)
继承特征
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 20
UML 2.5 结构图
选自UML 2.5 Figure 10.8 (p. 170), 10.9 (p. 171)
• 继承接口的表示
/ISensor is Depreciated
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 21
UML 2.5 结构图
• 关联端的归属
关联端属性的归属
选自UML2.5 figure.12.1 (p. 239)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 22
UML 2.5 结构图
选自UML 2.5 figure.11.29 (p. 203), Figure 11.30 (p. 204)
• 可导航性
可导航性与关联端的归属是相互独立的
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 23
UML 2.5 结构图
选自UML 2.5 Figure 11.5 (p. 185)
• 组合结构图/Composite Structure Diagram
part
role
connector
association 名称 : 类型
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 24
UML 2.5 结构图
选自UML 2.5 Figure 11.47 (p. 247)
• 组合结构图/Composite Structure Diagram
port
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 25
UML 2.5 结构图
• 共轭端口的表示
port
选自UML 2.5 Figure 11.11 (p. 190)
isConjugated = trueisConjugated = false
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 26
UML 2.5 结构图
• 协作图
协作名
角色
连接器
图片选自UML 2.5 Figure 11.52, 11.53 (p. 216)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 27
UML 2.5 结构图
• 协作图
协作名
角色
连接器
图片选自UML 2.5 Figure 11.52, 11.53 (p. 216)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 28
UML 2.5 结构图
• 泛化集(Generalization Sets)
{incomplete, overlapping} 指示泛化集不完备且特定的分类符有共享的实例
{complete, disjoint} 指示泛化集完备且特定分类符没有实例交集
{incomplete, disjoint} 指示泛化集不完备且特定的分类符没有实例交集
{complete, overlapping} 指示泛化集完备且特定的分类符有共享的实例
{constraint} {constraint}
选自UML 2.5 Figure 9.16 (p. 119), 9.23 (p. 121)
gender employment status
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 29
UML 2.5 结构图
选自UML 2.5 Figure 9.26 (p. 124)
• 泛化集(Generalization Sets)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 30
UML 2.5 结构图
图片选自UML2.5 Figure 19.9, 19.10 (p. 655), 19.12 (p. 657)
• 部署图
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 31
UML 2.5 结构图
图片选自UML2.5 Figure.12.6, 12.7 (p. 248)
• 包合并
– 类似一些编程语言中的Mixin机制
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 32
UML 2.5 结构图
• 重定义
图片选自UML2.5 Figure 14.38, 14.39 (p. 337)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 33
UML 2.5 行为图
UMLDiagram
UMLBehaviorDiagram
UMLUseCaseDiagram
UMLStateMachineDiagram
Behavior Protocol
UMLActivityDiagram
UMLInteractionDiagram
Sequence
Timing
Communication
Interaction Overview
Information Flow
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 34
UML 2.5 行为图
上图选自UML2.5 Figure 18.2 (p. 641)
无箭头指向
• 用例图
下图选自:Sinan Si Alhir,
Learning UML, 2003.07
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 35
UML 2.5 行为图
图片选自UML2.5 Figure 15.56 (p. 399)
• 活动图-对象流(1)
图示: 执行节点 对象节点 异常
入参
出参
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 36
UML 2.5 行为图
图片选自UML2.5 Figure
15.58, 15.59 (p. 400)
• 活动图-对象流(2)
ObjectNode
CentralBufferNode
DataStoreNode
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 37
UML 2.5 行为图
图片选自UML2.5 Figure 16.23 (p. 454)
• 活动图-动作(Action)
– 参数集(Parameter Set)
InvocationAction
两个输入参数集和三个输出参数集
ObjectNode
Pin
InputPin
+ isControl = false
OutputPin
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 38
UML 2.5 行为图
图片选自UML2.5 Figure 16.52 (p. 482), 16.53 (p. 483)
• 活动图-Expansion Regions
keyword
• parallel
• iterative
• stream
ExpansionNode
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 39
UML 2.5 行为图
图片选自UML2.5 Figure 17.27 (p. 601)
• 交互概览图
/Interaction
Overview
Diagram
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 40
UML 2.5 行为图
图片选自uml-diagrams.org
• 信息流图/Information Flow Diagram
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 41
规范如何阅读
• 元模型:模型的模型
– 用于对建模元素进行描述和约束,是模型背后的语法
– 体现该类模型的建模能力和范围
• UML模型
– 用于描述UML建模元素的语法和语义
– 限定用户模型的表达能力
– 指明哪些用户模型是合法的
– 如何对用户模型进行解读
– 由抽象语法和语义所构成
– 是UML建模工具所必须遵循的
– 三方面元素:分类符/Classifiers、事件/Events、行为/Behaviors
元模型
模型
约
束
遵
循
UML模型
用户模型
约
束
遵
循
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 42
规范如何阅读
7. 公共结构 8. 值 9. 分类
1-6. 杂项
10. 简单分类符 11. 结构化分类符 12. 包
13. 公共行为 14. 状态机
15. 活动 16. 行为
17. 交互
18. 用例
19. 部署
附录A-E
22. 标准Profile21. 基本类型 20. 信息流
先后
并行
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 43
规范如何阅读
• 概要/Summary (0..1)
• 元模型(1..*)
– 概要
– 抽象语法
– 语义
– 表示法(具体语法)
– 示例
• 分类符描述
• 关联描述
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 44
规范如何阅读
https://zhoujg.gitbooks.io/uml-2_5-
zh/content/chapter7/7.4/summary_syntax_semantics.html
示例:
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 45
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 46
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 47
规范如何阅读
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 48
规范如何阅读
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 49
UML 2.5 规范中的不足
• 缺乏整体性(完整)的清晰描述
– 对象图
• 逻辑表达不清/二义性
– 包合并
• 明显的错误
– 计算错误
– 标号错引
– 示例输入性错误
• 示例未更新(使用了不推荐使用的例子)
• 命名反模式
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 50
UML 2.5 规范中的不足
• 对象图缺乏清晰的定义
– 1.5有定义:"a graph of instances, including objects and data values. A static object
diagram is an instance of a class diagram; it shows a snapshot of the detailed state of a
system at a point in time."
– 2.4之后再无定义,只是提到:"the following nodes and edges are typically drawn in
an object diagram: Instance Specification and Link (i.e., Association).“
– 有的“权威”的UML来源还提到只包含实例规约的组件图和部署图也是一种对象
图(令人费解)
• 转变(Transition)的重定义约束和规则未提及guard,也未有相关示
例,导致在重定义中对guard的处理不明确
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 51
UML 2.5 规范中的不足
• 包合并
– 属性合并:规范中前提要求两个匹配属性的isUnique的值相同(约束第2条);但
在转换实施规则的第7条却又无视上述约束,貌似两个匹配属性的isUnique的值可
以不同,这做如何解读?
– 枚举合并:枚举的合并在约束上提到了顺序的相关性,既然约束中提到了顺序,
那就是说顺序是有意义的,那么不匹配的字面量以何种顺序被包含进来呢?考虑
如下的情况:枚举E1: {A, B, C, E},枚举E2: {A, C, D, F},E1和E2的合并结果中E、D、
F的顺序如何?
CONSTRAINTS: 2 The value of isUnique of matching Properties must be the same.
TRANSFORMATIONS: 7 For matching Properties: if either the merged and/or receiving elements have isUnique
= false, the resulting element has isUnique = false; otherwise, the resulting element has isUnique = true.
CONSTRAINTS: 1 Matching EnumerationLiterals must be in the same order.
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 52
UML 2.5 规范中的不足
• 包合并
图片选自UML2.5 Figure.12.6, 12.7 (p. 248)
“The expressions in square brackets indicate
which individual elements were merged to produce
the final result, with the “@” character denoting the
conceptual merge ‘transformation’ as an operator,
where X@Y signifies the resulting element from the
merge transformation applied to matching receiving
element X and merged element Y. ”
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 53
UML 2.5 规范中的不足
• 文字错误
UML 2.5 formal (p. 113) UML 2.5 Beta2 (p. 115)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 54
UML 2.5 规范中的不足
• 错引
图片选自UML 2.5 Figure 15.72 (p. 408) 文中被错引为15.71
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 55
UML 2.5 规范中的不足
• 错误
A ReduceAction can be used to reduce a list of numbers to the sum of
the numbers. Such a ReduceAction has one InputPin for a collection of
numbers, one OutputPin for a number and an addition function as the
reducer Behavior. For example, suppose the input collection has four
integers: (2, 7, 5, 3). The result of applying the ReduceAction to this
collection with an addition function is 11. With the default of
isOrdered=false, this can be computed in a number of ways, for example,
(((2+7) + 5) + 3), (2 + (7 + (5 + 3))), ((2 + 7) + (5 + 3)).
选自:UML 2.5 p. 485 16.13.5 对ReduceAction的示例
“
”
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 56
UML 2.5 规范中的不足
• 示例未更新
图片选自UML 2.5 Figure 11.46 (p. 212)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 57
UML 2.5 规范中的不足
• 印刷排版问题
图片选自UML 2.5
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 58
UML 2.5 规范中的不足
• 元素命名
Element
NamedElement
PackageableElement Relationship
Artifact
DeployedArtifact
DirectedRelationship
PackageImport
反模式
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 59
应用中的UML
• 并发/多线程
– 现有支持(参见: Concurrency in UML)
• 活动图:(显示/隐式)Fork/Join
• 序列图:并行联合片段
• 状态图:正交(复合)状态、join/fork伪状态
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 60
应用中的UML
• 并发/多线程
– Modeling Behavioral Design Patterns of Concurrent Objects (Robert G. Pettit IV, Hassan Gomaa, ICSE 2006)
• 基于UML通信图,采用主动类和被动类,自定义的Stereotype等
• 以Colored Petri Nets (CPN)为形式化支撑
• 基于行为设计模式定义了一组并发表示模板,并给出了相应的CPNs映射
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 61
应用中的UML
• 并发/多线程
– Modeling Behavioral Design Patterns of Concurrent Objects (Robert G. Pettit IV, Hassan Gomaa, ICSE 2006)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 62
应用中的UML
• 并发/多线程
– Modeling Behavioral Design Patterns of Concurrent Objects (Robert G. Pettit IV, Hassan Gomaa, ICSE 2006)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 63
应用中的UML
• 并发/多线程
– Modeling Behavioral Design Patterns of Concurrent Objects (Robert G. Pettit IV, Hassan Gomaa, ICSE 2006)
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 64
应用中的UML
• 并发/多线程
– UED : Designed by Philips HealthCare
图片选自InfoQ文章,见UED链接
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 65
应用中的UML
• 并发/多线程
– UED : Designed by Philips HealthCare
图片选自InfoQ文章,见UED链接
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 66
应用中的UML
• 建模不严谨、不规范
– 用例图中不标注用例之间关系的类型(关键字)
– 类图中关联的导航性不一致
– 序列图中消息的类型不一致
– 不写约束
大家并不把UML当做一种严谨的语言来使用
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 67
应用中的UML
• 对模型管理/演化支持不足
– FIESE, Software Architecture Documentation for Developers: A Survey, ECSA 2013
• 1 Architecture documentation is often not up-to-date and thus strongly lacks utility.
• 3 Architecture documentation is often nconsistent. Inconsistency comes in different forms
like inconsistent structure in and across documents, inconsistent notations, or contradicting
information.
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 68
应用中的UML
• 对模型管理/演化支持不足
– 管理/成本问题?技术问题?
• 简单线框图?
• 只关注高层(见右图,图片来自Michael Keeling.
Architecture Haiku-A Case Study in Lean
Documentation. IEEE Software, 2015, 32(3):35-39)
• ......
No one solution fits all!
周进刚 UML 2.5杂谈
UMLChina讲座 2015.11.03 Slide 69
Questions?
1. http://www.uml-diagrams.org/
2. UML Professionals Group in LinkedIn :
http://www.linkedin.com/grp/home?gid=1330747
3. MDA Group in LinkedIn: http://www.linkedin.com/grp/home?gid=50539

Weitere ähnliche Inhalte

Was ist angesagt?

6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformationMajong DevJfu
 
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...Luca Berardinelli
 
Book of Uml
Book of UmlBook of Uml
Book of UmlNiit
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGERaval Chirag
 
An introduction to the MDA
An introduction to the MDAAn introduction to the MDA
An introduction to the MDALai Ha
 
EclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling FrameworkEclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling FrameworkDave Steinberg
 
Eclipse Modeling Framework
Eclipse Modeling FrameworkEclipse Modeling Framework
Eclipse Modeling FrameworkAjay K
 
03 ooad uml-03
03 ooad uml-0303 ooad uml-03
03 ooad uml-03Niit Care
 
UML - Unified Modelling Language
UML - Unified Modelling LanguageUML - Unified Modelling Language
UML - Unified Modelling LanguageAnoop VJ
 
02 ooad uml-02
02 ooad uml-0202 ooad uml-02
02 ooad uml-02Niit Care
 
01 ooad uml-01
01 ooad uml-0101 ooad uml-01
01 ooad uml-01Niit Care
 
UML-based Web Engineering (UWE)
UML-based Web Engineering (UWE)UML-based Web Engineering (UWE)
UML-based Web Engineering (UWE)elliando dias
 
11 ooad uml-14
11 ooad uml-1411 ooad uml-14
11 ooad uml-14Niit Care
 
MDD with Executable UML Models
MDD with Executable UML ModelsMDD with Executable UML Models
MDD with Executable UML ModelsRafael Chaves
 
Introduction To Uml
Introduction To UmlIntroduction To Uml
Introduction To Umlguest514814
 

Was ist angesagt? (20)

Acceleo Code Generation
Acceleo Code GenerationAcceleo Code Generation
Acceleo Code Generation
 
QVT & MTL In Eclipse
QVT & MTL In EclipseQVT & MTL In Eclipse
QVT & MTL In Eclipse
 
6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation6 - Architetture Software - Model transformation
6 - Architetture Software - Model transformation
 
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
fUML-Driven Design and Performance Analysis of Software Agents for Wireless S...
 
Book of Uml
Book of UmlBook of Uml
Book of Uml
 
UNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGEUNIFIED MODELING LANGUAGE
UNIFIED MODELING LANGUAGE
 
An introduction to the MDA
An introduction to the MDAAn introduction to the MDA
An introduction to the MDA
 
EclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling FrameworkEclipseCon 2006: Introduction to the Eclipse Modeling Framework
EclipseCon 2006: Introduction to the Eclipse Modeling Framework
 
Eclipse Modeling Framework
Eclipse Modeling FrameworkEclipse Modeling Framework
Eclipse Modeling Framework
 
03 ooad uml-03
03 ooad uml-0303 ooad uml-03
03 ooad uml-03
 
UML - Unified Modelling Language
UML - Unified Modelling LanguageUML - Unified Modelling Language
UML - Unified Modelling Language
 
02 ooad uml-02
02 ooad uml-0202 ooad uml-02
02 ooad uml-02
 
Uml3
Uml3Uml3
Uml3
 
Uml & rup
Uml & rupUml & rup
Uml & rup
 
01 ooad uml-01
01 ooad uml-0101 ooad uml-01
01 ooad uml-01
 
UML-based Web Engineering (UWE)
UML-based Web Engineering (UWE)UML-based Web Engineering (UWE)
UML-based Web Engineering (UWE)
 
11 ooad uml-14
11 ooad uml-1411 ooad uml-14
11 ooad uml-14
 
MDD with Executable UML Models
MDD with Executable UML ModelsMDD with Executable UML Models
MDD with Executable UML Models
 
TextUML Toolkit
TextUML ToolkitTextUML Toolkit
TextUML Toolkit
 
Introduction To Uml
Introduction To UmlIntroduction To Uml
Introduction To Uml
 

Andere mochten auch

Glosario salud ocup 2 parcial
Glosario salud ocup 2 parcialGlosario salud ocup 2 parcial
Glosario salud ocup 2 parcialElena Tapias
 
UML2.5: What is changed and what is unchanged.
UML2.5: What is changed and what is unchanged.UML2.5: What is changed and what is unchanged.
UML2.5: What is changed and what is unchanged.Hiroyuki Yoshida
 
Online Communities in Citizen Science & BirdCams
Online Communities in Citizen Science & BirdCamsOnline Communities in Citizen Science & BirdCams
Online Communities in Citizen Science & BirdCamsAndrea Wiggins
 
Intellectual Diversity in the iSchools: Past, Present and Future
Intellectual Diversity in the iSchools: Past, Present and FutureIntellectual Diversity in the iSchools: Past, Present and Future
Intellectual Diversity in the iSchools: Past, Present and FutureAndrea Wiggins
 
SIGMET Panel at ASIST: Altmetrics - Present and Future
SIGMET Panel at ASIST: Altmetrics - Present and FutureSIGMET Panel at ASIST: Altmetrics - Present and Future
SIGMET Panel at ASIST: Altmetrics - Present and FutureStefanie Haustein
 
How far are we to the "enhanced" doctoral dissertations? ASIST ESC Webinar
How far are we to the "enhanced" doctoral dissertations? ASIST ESC WebinarHow far are we to the "enhanced" doctoral dissertations? ASIST ESC Webinar
How far are we to the "enhanced" doctoral dissertations? ASIST ESC WebinarGema Bueno
 
2013: DC Plan Member Behavior—Key Information for Better Design and Consulting
2013: DC Plan Member Behavior—Key Information for Better Design and Consulting2013: DC Plan Member Behavior—Key Information for Better Design and Consulting
2013: DC Plan Member Behavior—Key Information for Better Design and Consultingvanderhei
 
GeoChronos - CANARIE NEP Showcase 2009 Presentation
GeoChronos - CANARIE NEP Showcase 2009 PresentationGeoChronos - CANARIE NEP Showcase 2009 Presentation
GeoChronos - CANARIE NEP Showcase 2009 PresentationCameron Kiddle
 
Using Contextual Information to Understand Searching and Browsing Behavior
Using Contextual Information to Understand Searching and Browsing BehaviorUsing Contextual Information to Understand Searching and Browsing Behavior
Using Contextual Information to Understand Searching and Browsing BehaviorJulia Kiseleva
 
Empirical analyses of scientific papers and researchers on Twitter: Results...
 	Empirical analyses of scientific papers and researchers on Twitter: Results... 	Empirical analyses of scientific papers and researchers on Twitter: Results...
Empirical analyses of scientific papers and researchers on Twitter: Results...Stefanie Haustein
 
EDUCAUSE 2016 Analytics and Student Success: Research & Benchmarking
EDUCAUSE 2016 Analytics and Student Success: Research & BenchmarkingEDUCAUSE 2016 Analytics and Student Success: Research & Benchmarking
EDUCAUSE 2016 Analytics and Student Success: Research & BenchmarkingJeffrey Pomerantz, Ph.D.
 
Your Browsing Behavior for a ! Big Mac: Economics of Personal Information Online
Your Browsing Behavior for a ! Big Mac: Economics of Personal Information OnlineYour Browsing Behavior for a ! Big Mac: Economics of Personal Information Online
Your Browsing Behavior for a ! Big Mac: Economics of Personal Information OnlineGabriela Agustini
 
Information Visualization Workshop, ASIS&T 2015
Information Visualization Workshop, ASIS&T 2015Information Visualization Workshop, ASIS&T 2015
Information Visualization Workshop, ASIS&T 2015Joseph Ryan
 
Information Behavior: Theories, Models & Studies (20091208)
Information Behavior: Theories, Models & Studies (20091208)Information Behavior: Theories, Models & Studies (20091208)
Information Behavior: Theories, Models & Studies (20091208)Charles (XXC) Chen
 
Suicide prevention presentation ppt
Suicide prevention presentation pptSuicide prevention presentation ppt
Suicide prevention presentation pptrionar
 
Practica prefesional ii Elsa Caceres
Practica prefesional ii Elsa CaceresPractica prefesional ii Elsa Caceres
Practica prefesional ii Elsa CaceresElsa Caceres
 
Google I/O 2011, Android Accelerated Rendering
Google I/O 2011, Android Accelerated RenderingGoogle I/O 2011, Android Accelerated Rendering
Google I/O 2011, Android Accelerated RenderingRomain Guy
 

Andere mochten auch (20)

Glosario salud ocup 2 parcial
Glosario salud ocup 2 parcialGlosario salud ocup 2 parcial
Glosario salud ocup 2 parcial
 
UML2.5: What is changed and what is unchanged.
UML2.5: What is changed and what is unchanged.UML2.5: What is changed and what is unchanged.
UML2.5: What is changed and what is unchanged.
 
Diapositivas
DiapositivasDiapositivas
Diapositivas
 
Online Communities in Citizen Science & BirdCams
Online Communities in Citizen Science & BirdCamsOnline Communities in Citizen Science & BirdCams
Online Communities in Citizen Science & BirdCams
 
Community Identity
Community IdentityCommunity Identity
Community Identity
 
Intellectual Diversity in the iSchools: Past, Present and Future
Intellectual Diversity in the iSchools: Past, Present and FutureIntellectual Diversity in the iSchools: Past, Present and Future
Intellectual Diversity in the iSchools: Past, Present and Future
 
SIGMET Panel at ASIST: Altmetrics - Present and Future
SIGMET Panel at ASIST: Altmetrics - Present and FutureSIGMET Panel at ASIST: Altmetrics - Present and Future
SIGMET Panel at ASIST: Altmetrics - Present and Future
 
E scidocdays review
E scidocdays reviewE scidocdays review
E scidocdays review
 
How far are we to the "enhanced" doctoral dissertations? ASIST ESC Webinar
How far are we to the "enhanced" doctoral dissertations? ASIST ESC WebinarHow far are we to the "enhanced" doctoral dissertations? ASIST ESC Webinar
How far are we to the "enhanced" doctoral dissertations? ASIST ESC Webinar
 
2013: DC Plan Member Behavior—Key Information for Better Design and Consulting
2013: DC Plan Member Behavior—Key Information for Better Design and Consulting2013: DC Plan Member Behavior—Key Information for Better Design and Consulting
2013: DC Plan Member Behavior—Key Information for Better Design and Consulting
 
GeoChronos - CANARIE NEP Showcase 2009 Presentation
GeoChronos - CANARIE NEP Showcase 2009 PresentationGeoChronos - CANARIE NEP Showcase 2009 Presentation
GeoChronos - CANARIE NEP Showcase 2009 Presentation
 
Using Contextual Information to Understand Searching and Browsing Behavior
Using Contextual Information to Understand Searching and Browsing BehaviorUsing Contextual Information to Understand Searching and Browsing Behavior
Using Contextual Information to Understand Searching and Browsing Behavior
 
Empirical analyses of scientific papers and researchers on Twitter: Results...
 	Empirical analyses of scientific papers and researchers on Twitter: Results... 	Empirical analyses of scientific papers and researchers on Twitter: Results...
Empirical analyses of scientific papers and researchers on Twitter: Results...
 
EDUCAUSE 2016 Analytics and Student Success: Research & Benchmarking
EDUCAUSE 2016 Analytics and Student Success: Research & BenchmarkingEDUCAUSE 2016 Analytics and Student Success: Research & Benchmarking
EDUCAUSE 2016 Analytics and Student Success: Research & Benchmarking
 
Your Browsing Behavior for a ! Big Mac: Economics of Personal Information Online
Your Browsing Behavior for a ! Big Mac: Economics of Personal Information OnlineYour Browsing Behavior for a ! Big Mac: Economics of Personal Information Online
Your Browsing Behavior for a ! Big Mac: Economics of Personal Information Online
 
Information Visualization Workshop, ASIS&T 2015
Information Visualization Workshop, ASIS&T 2015Information Visualization Workshop, ASIS&T 2015
Information Visualization Workshop, ASIS&T 2015
 
Information Behavior: Theories, Models & Studies (20091208)
Information Behavior: Theories, Models & Studies (20091208)Information Behavior: Theories, Models & Studies (20091208)
Information Behavior: Theories, Models & Studies (20091208)
 
Suicide prevention presentation ppt
Suicide prevention presentation pptSuicide prevention presentation ppt
Suicide prevention presentation ppt
 
Practica prefesional ii Elsa Caceres
Practica prefesional ii Elsa CaceresPractica prefesional ii Elsa Caceres
Practica prefesional ii Elsa Caceres
 
Google I/O 2011, Android Accelerated Rendering
Google I/O 2011, Android Accelerated RenderingGoogle I/O 2011, Android Accelerated Rendering
Google I/O 2011, Android Accelerated Rendering
 

Ähnlich wie UML 2.5_PDF

UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015Luca Berardinelli
 
SBTUG 28 May 2008 Microsoft 2008 Stack
SBTUG 28 May 2008 Microsoft 2008 StackSBTUG 28 May 2008 Microsoft 2008 Stack
SBTUG 28 May 2008 Microsoft 2008 StackCraig Bailey
 
EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!melbats
 
Istqb foundation level syllabus 2010
Istqb   foundation level syllabus 2010Istqb   foundation level syllabus 2010
Istqb foundation level syllabus 2010Professional Testing
 
Reliable mobile test automation
Reliable mobile test automationReliable mobile test automation
Reliable mobile test automationVishal Banthia
 
System verilog important
System verilog importantSystem verilog important
System verilog importantelumalai7
 
_ig1 film opening title sequence assignment 2014 to 2015
    _ig1 film opening title sequence assignment 2014 to 2015    _ig1 film opening title sequence assignment 2014 to 2015
_ig1 film opening title sequence assignment 2014 to 2015DeclanTyldsley
 
_ig1 film opening title sequence assignment 2014 to 2015 (1) 2
    _ig1 film opening title sequence assignment 2014 to 2015 (1) 2    _ig1 film opening title sequence assignment 2014 to 2015 (1) 2
_ig1 film opening title sequence assignment 2014 to 2015 (1) 2reecemechan
 
_ig1 film opening title sequence assignment 2014 to 2015
    _ig1 film opening title sequence assignment 2014 to 2015    _ig1 film opening title sequence assignment 2014 to 2015
_ig1 film opening title sequence assignment 2014 to 2015Adam Grundy
 
IG1 Film Opening Title Sequence Assignment 2014 to 2015 (1)
IG1 Film Opening Title Sequence Assignment 2014 to 2015 (1)IG1 Film Opening Title Sequence Assignment 2014 to 2015 (1)
IG1 Film Opening Title Sequence Assignment 2014 to 2015 (1)Carla Appleby
 
_ig1 film opening title sequence assignment 2014 to 2015
    _ig1 film opening title sequence assignment 2014 to 2015    _ig1 film opening title sequence assignment 2014 to 2015
_ig1 film opening title sequence assignment 2014 to 2015HemitDhanji
 
IG1 film opening title sequence assignment 2014 to 2015
 IG1 film opening title sequence assignment 2014 to 2015 IG1 film opening title sequence assignment 2014 to 2015
IG1 film opening title sequence assignment 2014 to 2015jessicagrundy98
 
_ig1 film opening title sequence assignment 2014 to 2015
    _ig1 film opening title sequence assignment 2014 to 2015    _ig1 film opening title sequence assignment 2014 to 2015
_ig1 film opening title sequence assignment 2014 to 2015Sadie Bailey
 
_ig1 film opening title sequence assignment 2014 to 2015 (1)
    _ig1 film opening title sequence assignment 2014 to 2015 (1)    _ig1 film opening title sequence assignment 2014 to 2015 (1)
_ig1 film opening title sequence assignment 2014 to 2015 (1)Georgie Austin
 
IG1 film opening title sequence assignment 2014 to 2015
   IG1 film opening title sequence assignment 2014 to 2015   IG1 film opening title sequence assignment 2014 to 2015
IG1 film opening title sequence assignment 2014 to 2015Phoebe Budgen
 
Integration of Cincom Smalltalk Systems
Integration of Cincom Smalltalk SystemsIntegration of Cincom Smalltalk Systems
Integration of Cincom Smalltalk SystemsESUG
 
Case Study IT Architect Certification & Skill Governance
Case Study IT Architect Certification & Skill GovernanceCase Study IT Architect Certification & Skill Governance
Case Study IT Architect Certification & Skill GovernanceiCMG International
 

Ähnlich wie UML 2.5_PDF (20)

Ptc Uml2 Workshop
Ptc Uml2 WorkshopPtc Uml2 Workshop
Ptc Uml2 Workshop
 
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
 
SBTUG 28 May 2008 Microsoft 2008 Stack
SBTUG 28 May 2008 Microsoft 2008 StackSBTUG 28 May 2008 Microsoft 2008 Stack
SBTUG 28 May 2008 Microsoft 2008 Stack
 
EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!EclipseCon Eu 2015 - Breathe life into your Designer!
EclipseCon Eu 2015 - Breathe life into your Designer!
 
Istqb foundation level syllabus 2010
Istqb   foundation level syllabus 2010Istqb   foundation level syllabus 2010
Istqb foundation level syllabus 2010
 
Reliable mobile test automation
Reliable mobile test automationReliable mobile test automation
Reliable mobile test automation
 
XP Injection
XP InjectionXP Injection
XP Injection
 
XP Injection
XP InjectionXP Injection
XP Injection
 
System verilog important
System verilog importantSystem verilog important
System verilog important
 
_ig1 film opening title sequence assignment 2014 to 2015
    _ig1 film opening title sequence assignment 2014 to 2015    _ig1 film opening title sequence assignment 2014 to 2015
_ig1 film opening title sequence assignment 2014 to 2015
 
_ig1 film opening title sequence assignment 2014 to 2015 (1) 2
    _ig1 film opening title sequence assignment 2014 to 2015 (1) 2    _ig1 film opening title sequence assignment 2014 to 2015 (1) 2
_ig1 film opening title sequence assignment 2014 to 2015 (1) 2
 
_ig1 film opening title sequence assignment 2014 to 2015
    _ig1 film opening title sequence assignment 2014 to 2015    _ig1 film opening title sequence assignment 2014 to 2015
_ig1 film opening title sequence assignment 2014 to 2015
 
IG1 Film Opening Title Sequence Assignment 2014 to 2015 (1)
IG1 Film Opening Title Sequence Assignment 2014 to 2015 (1)IG1 Film Opening Title Sequence Assignment 2014 to 2015 (1)
IG1 Film Opening Title Sequence Assignment 2014 to 2015 (1)
 
_ig1 film opening title sequence assignment 2014 to 2015
    _ig1 film opening title sequence assignment 2014 to 2015    _ig1 film opening title sequence assignment 2014 to 2015
_ig1 film opening title sequence assignment 2014 to 2015
 
IG1 film opening title sequence assignment 2014 to 2015
 IG1 film opening title sequence assignment 2014 to 2015 IG1 film opening title sequence assignment 2014 to 2015
IG1 film opening title sequence assignment 2014 to 2015
 
_ig1 film opening title sequence assignment 2014 to 2015
    _ig1 film opening title sequence assignment 2014 to 2015    _ig1 film opening title sequence assignment 2014 to 2015
_ig1 film opening title sequence assignment 2014 to 2015
 
_ig1 film opening title sequence assignment 2014 to 2015 (1)
    _ig1 film opening title sequence assignment 2014 to 2015 (1)    _ig1 film opening title sequence assignment 2014 to 2015 (1)
_ig1 film opening title sequence assignment 2014 to 2015 (1)
 
IG1 film opening title sequence assignment 2014 to 2015
   IG1 film opening title sequence assignment 2014 to 2015   IG1 film opening title sequence assignment 2014 to 2015
IG1 film opening title sequence assignment 2014 to 2015
 
Integration of Cincom Smalltalk Systems
Integration of Cincom Smalltalk SystemsIntegration of Cincom Smalltalk Systems
Integration of Cincom Smalltalk Systems
 
Case Study IT Architect Certification & Skill Governance
Case Study IT Architect Certification & Skill GovernanceCase Study IT Architect Certification & Skill Governance
Case Study IT Architect Certification & Skill Governance
 

UML 2.5_PDF

  • 2. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 2 引子… • 为什么会有今天的讲座? https://www.gitbook.com/book/zhoujg/uml-2_5-zh/details
  • 3. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 3 为什么要翻译OMG UML 2.5 beta? • OMG OCUP 考试升级,招募志 愿者 图片来源:http://www.umlchina.com/book/book2.htm
  • 4. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 4 主要内容 • OMG的UML认证考试 • UML 2.5规范本身的一些内容 • 如何阅读UML 2.5规范 • 工作中的UML建模杂谈与交流
  • 5. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 5 OMG的UML认证 官网:http://www.omg.org/ocup-2/index.htm • 三个级别:基础、中级、高级 – 不可越级考试,每一级考试费 $210 • 每一级都划定了考点、题目数量、各部分的比 重、考试时间、通过分数 • 参加考试需要预约,并在指定的考试中心进行 建模的 意义 项目管理 知识技能
  • 6. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 6 OMG的UML认证 Examination Number: .... OMG-OCUP2-FOUND100 Duration: ........................ 120 minutes for residents of English-speaking countries; 150 minutes for all others Exam Fee ...................... US$200 (or local equivalent) for residents of English-speaking countries; US$210 (or local equivalent) for all others. Minimum Passing Score: 60 items correct out of 90 Prerequisites: ................ None
  • 7. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 7 OMG的UML认证 Examination Number: .... OMG-OCUP2-FOUND100 Duration: ........................ 120 minutes for residents of English-speaking countries; 150 minutes for all others Exam Fee ...................... US$200 (or local equivalent) for residents of English-speaking countries; US$210 (or local equivalent) for all others. Minimum Passing Score: 60 items correct out of 90 Prerequisites: ................ None Why We Model Many domains construct or use models, including those listed on the entrance page to this certification program. This section surveys the types of models they use, and the benefits they obtain. 15% Interpretation and Construction of UML Models and Diagrams: Interpretation and construction of the UML Diagrams listed here, using the model elements listed below: The Class Diagram 25% The Object Diagram 5% The Package Diagram 5% The Use Case Diagram 5% The Activity Diagram 20% The Sequence Diagram 15% The State Machine Diagram 10% Total 100% STRUCTURAL DIAGRAMS:Common Structure • Type • Dependency • Namespace • VisibilityKind (public, private, protected) • MultiplicityElement • Constraint • Comment • PackageImport Packages • Package Simple Classifiers • PrimitiveType • DataType • Enumeration • EnumerationLiteral • Interface • InterfaceRealization • Signal • Reception Structured Classifiers • Association • Class BEHAVIORAL DIAGRAMS:Use Cases • UseCase • Actor • Include Interactions • Interaction • OccurrenceSpecification • ExecutionSpecification • ExecutionOccurrenceSpecification • DestructionOccurrenceSpecification • Lifeline • Message • MessageOccurrenceSpecification • MessageSort • MessageEnd Common Behavior • CallEvent • SignalEvent • Trigger • OpaqueBehavior Activities • Activity • ActivityFinalNode • ControlFlow • InitialNode
  • 8. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 8 OMG的UML认证 Examination Number: .... OMG-OCUP2-FOUND100 Duration: ........................ 120 minutes for residents of English-speaking countries; 150 minutes for all others Exam Fee ...................... US$200 (or local equivalent) for residents of English-speaking countries; US$210 (or local equivalent) for all others. Minimum Passing Score: 60 items correct out of 90 Prerequisites: ................ None Why We Model Many domains construct or use models, including those listed on the entrance page to this certification program. This section surveys the types of models they use, and the benefits they obtain. 15% Interpretation and Construction of UML Models and Diagrams: Interpretation and construction of the UML Diagrams listed here, using the model elements listed below: The Class Diagram 25% The Object Diagram 5% The Package Diagram 5% The Use Case Diagram 5% The Activity Diagram 20% The Sequence Diagram 15% The State Machine Diagram 10% Total 100% STRUCTURAL DIAGRAMS:Common Structure • Type • Dependency • Namespace • VisibilityKind (public, private, protected) • MultiplicityElement • Constraint • Comment • PackageImport Packages • Package Simple Classifiers • PrimitiveType • DataType • Enumeration • EnumerationLiteral • Interface • InterfaceRealization • Signal • Reception Structured Classifiers • Association • Class BEHAVIORAL DIAGRAMS:Use Cases • UseCase • Actor • Include Interactions • Interaction • OccurrenceSpecification • ExecutionSpecification • ExecutionOccurrenceSpecification • DestructionOccurrenceSpecification • Lifeline • Message • MessageOccurrenceSpecification • MessageSort • MessageEnd Common Behavior • CallEvent • SignalEvent • Trigger • OpaqueBehavior Activities • Activity • ActivityFinalNode • ControlFlow • InitialNode 参考资料 UML 2.0 in a Nutshell Dan Pilone, Neil Pitman - O'Reilly Media, 2005 [ISBN 978-0-596-00795-9] UML 2 for Dummies Michael J Chonoles, James A. Schardt - Wiley, 2003 [ISBN 978-0-7645-2614-5] IBM Software Group, The Value of Modeling Also available as pdf. Joshua M. Epstein, Why Model? Business Modeling: A Practical Guide to Realizing Business Value Rebecca Wirfs-Brock, Why Domain Modeling, blog posting, Feb 2013. Wirfs-Brock, a pioneer in object- oriented design, writes in this post about the value of domain modeling. J.D. Baker, Model Organization with Packages and the Package Diagram, White Paper, May 2013. Filip Stachecki, Concurrency in UML, White Paper, March 2014. Various Authors, What's New in UML 2.5 (White Paper, Coming Soon) Unified Modeling Language (UML), V2.5
  • 9. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 9 OMG的UML认证 Exam Number: .............................. OMG-OCUP-200 Duration: ........................................ 90 minutes (70 questions) Minimum Passing Score: .......... 31 Exam Fee: ..................................... US$200 (or equivalent in local currency) Prerequisite: ................................ Passing Score on OCUP Fundamental Exam COVERAGE TABLE - INTERMEDIATE Composite Structure Diagrams (Intermediate) .......... 15% Component diagrams (Basic)........................................ 15% Action Model (Intermediate)............................................. 10% Activity Diagrams (Intermediate)..................................... 15% Interaction Diagrams (Intermediate)............................. 15% State Machines (Behavioral)........................................... 15% Deployment diagrams (basic, without Components) ..... 5% Profiles................................................................................ 10% Total .............................. 100%
  • 10. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 10 OMG的UML认证 Exam Number: .............................. OMG-OCUP-200 Duration: ........................................ 90 minutes (70 questions) Minimum Passing Score: .......... 31 Exam Fee: ..................................... US$200 (or equivalent in local currency) Prerequisite: ................................ Passing Score on OCUP Fundamental Exam COVERAGE TABLE - INTERMEDIATE Composite Structure Diagrams (Intermediate) .......... 15% Component diagrams (Basic)........................................ 15% Action Model (Intermediate)............................................. 10% Activity Diagrams (Intermediate)..................................... 15% Interaction Diagrams (Intermediate)............................. 15% State Machines (Behavioral)........................................... 15% Deployment diagrams (basic, without Components) ..... 5% Profiles................................................................................ 10% Total .............................. 100% Topic Area Details 1.0 Composite Structure Diagrams (Actions, Ports, and Structured Classes) Covers this material from Chapter 9 Composite Structures: 1.1 Demonstrate the ability to understand internal structures. Composite Structures::Internal Structures 1 Structured classifier (Figure 9.2) 2 Connectors (Figure 9.3) 1.2 Verify the understanding of modeling ports. CompositeStructures::Ports 1 Port (Figure 9.4) 2 Connector End (Figure 9.4) 1.3 Verify the understanding of structure class. CompositeStructures::StructuredClasses 1 Class (from StructuredClasses) (Figure 9.5) 1.2 Verify the understanding of modeling invocations CompositeStructures::InvocationActions 1 Invocation Action (Figure 9.8) 2 Trigger (Figure 9.8) 2.0 Component Diagrams (Basic) Covers this material from Chapter 8 Components: 2.1 Confirm the ability to understand and represent basic components Components::BasicComponents (Figures 8.2 and 8.3) 1 Component (without Packaging) (Sec. 8.3.1) 2 Connector (for components) (Sec. 8.3.2) 3 Realization (for components) (Sec. 8.3.3) 4 Other Basic Component concepts 3.0 Action Models (Intermediate)(Basic Actions in Activity Diagrams) Covers this material from Chapter 11 Actions: 3.1 Demonstrate intermediate knowledge and comprehension of the UML Action Language
  • 11. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 11 OMG的UML认证 UML 2 Certification Guide Fundamental and Intermediate Exams Tim Weilkiens Bernd Oestereich Morgan Kaufmann OMG Press 2006 Can I study for the OCUP 2 Foundation exam using the Certification Guide written for the original OCUP Fundamental? In a word,No. The two exams are very different - while the original restricted itself to UML syntax and semantics (including the UML metamodel), the OCUP 2 Foundation exam tests UML usage in the context of modeling and this aspect is not presented in the study guide. Study from one of the books just mentioned or another good book about UML modeling, and explore the ways you can control the listed UML elements in your modeling tool. Learn how to use, or recognize and interpret, these elements in larger diagrams and how they can relate to each other. We based the new examination on these aspects of UML because they are the ones that you will use in your career as either a model builder or a model user. If you concentrate on the material presented in the original OCUP Certification Guide, you will be unprepared for the new OCUP 2 exam.
  • 12. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 12 OMG的UML认证 The use case diagram is a a) behavior diagram. b) interaction diagram. c) structure diagram. d) context diagram. e) requirements diagram. Which statement(s) about DataTypes is/are correct? a) A DataType has no attributes. b) A DataType has no operations. c) Instances of a DataType are different even if their attribute values are equal. d) A DataType is a specialized class. e) An instance of a DataType has no identity. 图片来自UML 2.5 Figure 14.2 (p. 316)
  • 13. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 13 OMG的UML认证
  • 14. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 14 OMG的UML认证
  • 15. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 15 OMG的UML认证
  • 16. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 16 OMG的UML认证
  • 17. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 17 UML 版本变化 Ver. Date Description 1.1 11-1997 UML 1.1 议案被OMG所接受. 1.3 03-2000 包含一些对UML元模型、语义和表示法的改变,可视为对原议案的小升级. 1.4 09-2001 绝大部分是优化, 但与1.3并不是完全兼容. Addition of profiles as UML extensions grouped together. Updated visibility of features. 交互图中的Stick arrowhead 现在指示异步调用. Model元素可以有多个stereotypes. Collaborations更清晰. 对Components和相关概念更为精化的定义.增加了用于表示 components的物理展现的Artifact. 1.5 03-2003 增加了 actions (see Part 5 of spec) - executable actions and procedures, 包括它们的运行时语义,定义了actions间携带数据的数据流的概念,等. 1.4.2 01-2005 该版本被接收为ISO specification (standard) ISO/IEC 19501. UML 1.5 was released 2 years before. 2.0 08-2005 新图: 对象图, 包图, 组合结构图, 交互概览图, 时间图, profile diagrams. 协作图改名为通信图. 活动图 和序列图进行了增强. 使用类Petri网的语义对活动进行了重定义. 边可以被包含在分区中, 分区可以是层级化和多维的. 支持显示的对 象流建模. 利用内部结构和端口 (组合结构)对类进行了扩展. 增加了信息流. 协作称为一种分类符, 可以关联任意种类的行为描述. 交互可以被包含在分 类符中, 而不仅仅是协作中. 分类符可以拥有用例 , 而不仅仅是包. 使用联合片段来表示并发和分支的新表示法. 组件、实现和制品的部署的表示法或语义进行了更新. 组件不能再直接部署到节点,而是制品. 实现被«manifest»所取代. 制品可以由可打包元素(而非仅是之前的组件)来体现. 可以部署到具有内部结构的节点上. 新元类: connector, collaboration use, connector end, device, deployment specification, execution environment, accept event action, send object action, structural feature action, value pin, activity final, central buffer node, data stores, flow final, interruptible regions, loop nodes, parameter, port, behavior, behaviored classifier, duration, interval, time constraint, combined fragment, creation event, destruction event, execution event, interaction fragment, interaction use, receive signal event, send signal event, extension, 等. 删除了许多标准的UML Profile, 例如«destroy», «facade», «friend», «profile», «requirement», «table», «thread». Integration between structural and behavioral models was improved with better support for executable models. 2.1 04-2006 Minor revision to UML 2.0 - corrections and consistency improvements. 2.1.1 02-2007 Minor revision to the UML 2.1 2.1.2 11-2007 Minor revision to the UML 2.1.1 2.2 02-2009 Fixed numerous minor consistency problems and added clarifications to UML 2.1.2 2.3 05-2010 Minor revision to the UML 2.2, clarified associations and association classes, added final classifier, updated component diagrams, composite structures, actions, etc. 2.4.1 08-2011 a minor revision to the UML 2.3, with few fixes and updates to classes, packages - added URI package attribute; updated actions; removed creation event, execution event, send and receive operation events, send and receive signal events, renamed destruction event to destruction occurrence specification; profiles - changed stereotypes and applied stereotypes to have upper-case first letter - «Metaclass» and stereotype application. 2.5 B2 09-2013 https://www.gitbook.com/book/zhoujg/uml-2_5-zh/details 翻译版本 (12年发布B1版本) 2.5 06-2015 从语言视角, UML作者声称2.5是2.4.1的一个小的改进, 主要是对文档本身进行了重构和简化以使其更为易读. 不再有两个单独的基础设施和超 结构文档, 2.5规范就一个单一文档. 规范中也不再使用包合并. 由于在实践中用处不大, 删除了UML的四层符合性级别 (L0, L1, L2, and L3). UML 2.5 工具需要支持完整的规范. Information flows, models和 templates 不再是UML的辅助构造. 同时 use cases, deployments,和 information flows 在2.5中成为“补充概念". 2.5有一些修正、澄清和增加了解释. 更新了对multiplicity和multiplicity元素的描述, 澄清了聚合和组合的定义, 并终于修正了轿车工厂实例中 «instantiate» 的错误依赖. 引入‘^’ 符号来标识inherited members. UML 2.5澄清了feature redefinition和重载. generalization sets 的缺省值由 {incomplete, disjoint} 变为 {incomplete, overlapping}. 对stereotypes, state machines和activities有一些澄清和修正. 协议状态机使用«protocol»而非{protocol}来标识. Use cases 不再必须要有actors , 也不必由一个actor来启动. 调整自: uml-diagram.org
  • 18. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 18 UML 2.5 结构图 图片来自UML 2.5 Figure B.8 (p.691) Collaboration
  • 19. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 19 UML 2.5 结构图 • 分类符(classifier) 分类符名称 属性 操作 receptions 内部结构 协作 用例 内嵌的分类符 拥有的行为 约束 图片来自UML 2.5 Figure 11.19 (p.195), 9 .11 (p. 113) 继承特征
  • 20. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 20 UML 2.5 结构图 选自UML 2.5 Figure 10.8 (p. 170), 10.9 (p. 171) • 继承接口的表示 /ISensor is Depreciated
  • 21. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 21 UML 2.5 结构图 • 关联端的归属 关联端属性的归属 选自UML2.5 figure.12.1 (p. 239)
  • 22. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 22 UML 2.5 结构图 选自UML 2.5 figure.11.29 (p. 203), Figure 11.30 (p. 204) • 可导航性 可导航性与关联端的归属是相互独立的
  • 23. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 23 UML 2.5 结构图 选自UML 2.5 Figure 11.5 (p. 185) • 组合结构图/Composite Structure Diagram part role connector association 名称 : 类型
  • 24. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 24 UML 2.5 结构图 选自UML 2.5 Figure 11.47 (p. 247) • 组合结构图/Composite Structure Diagram port
  • 25. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 25 UML 2.5 结构图 • 共轭端口的表示 port 选自UML 2.5 Figure 11.11 (p. 190) isConjugated = trueisConjugated = false
  • 26. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 26 UML 2.5 结构图 • 协作图 协作名 角色 连接器 图片选自UML 2.5 Figure 11.52, 11.53 (p. 216)
  • 27. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 27 UML 2.5 结构图 • 协作图 协作名 角色 连接器 图片选自UML 2.5 Figure 11.52, 11.53 (p. 216)
  • 28. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 28 UML 2.5 结构图 • 泛化集(Generalization Sets) {incomplete, overlapping} 指示泛化集不完备且特定的分类符有共享的实例 {complete, disjoint} 指示泛化集完备且特定分类符没有实例交集 {incomplete, disjoint} 指示泛化集不完备且特定的分类符没有实例交集 {complete, overlapping} 指示泛化集完备且特定的分类符有共享的实例 {constraint} {constraint} 选自UML 2.5 Figure 9.16 (p. 119), 9.23 (p. 121) gender employment status
  • 29. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 29 UML 2.5 结构图 选自UML 2.5 Figure 9.26 (p. 124) • 泛化集(Generalization Sets)
  • 30. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 30 UML 2.5 结构图 图片选自UML2.5 Figure 19.9, 19.10 (p. 655), 19.12 (p. 657) • 部署图
  • 31. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 31 UML 2.5 结构图 图片选自UML2.5 Figure.12.6, 12.7 (p. 248) • 包合并 – 类似一些编程语言中的Mixin机制
  • 32. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 32 UML 2.5 结构图 • 重定义 图片选自UML2.5 Figure 14.38, 14.39 (p. 337)
  • 33. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 33 UML 2.5 行为图 UMLDiagram UMLBehaviorDiagram UMLUseCaseDiagram UMLStateMachineDiagram Behavior Protocol UMLActivityDiagram UMLInteractionDiagram Sequence Timing Communication Interaction Overview Information Flow
  • 34. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 34 UML 2.5 行为图 上图选自UML2.5 Figure 18.2 (p. 641) 无箭头指向 • 用例图 下图选自:Sinan Si Alhir, Learning UML, 2003.07
  • 35. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 35 UML 2.5 行为图 图片选自UML2.5 Figure 15.56 (p. 399) • 活动图-对象流(1) 图示: 执行节点 对象节点 异常 入参 出参
  • 36. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 36 UML 2.5 行为图 图片选自UML2.5 Figure 15.58, 15.59 (p. 400) • 活动图-对象流(2) ObjectNode CentralBufferNode DataStoreNode
  • 37. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 37 UML 2.5 行为图 图片选自UML2.5 Figure 16.23 (p. 454) • 活动图-动作(Action) – 参数集(Parameter Set) InvocationAction 两个输入参数集和三个输出参数集 ObjectNode Pin InputPin + isControl = false OutputPin
  • 38. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 38 UML 2.5 行为图 图片选自UML2.5 Figure 16.52 (p. 482), 16.53 (p. 483) • 活动图-Expansion Regions keyword • parallel • iterative • stream ExpansionNode
  • 39. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 39 UML 2.5 行为图 图片选自UML2.5 Figure 17.27 (p. 601) • 交互概览图 /Interaction Overview Diagram
  • 40. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 40 UML 2.5 行为图 图片选自uml-diagrams.org • 信息流图/Information Flow Diagram
  • 41. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 41 规范如何阅读 • 元模型:模型的模型 – 用于对建模元素进行描述和约束,是模型背后的语法 – 体现该类模型的建模能力和范围 • UML模型 – 用于描述UML建模元素的语法和语义 – 限定用户模型的表达能力 – 指明哪些用户模型是合法的 – 如何对用户模型进行解读 – 由抽象语法和语义所构成 – 是UML建模工具所必须遵循的 – 三方面元素:分类符/Classifiers、事件/Events、行为/Behaviors 元模型 模型 约 束 遵 循 UML模型 用户模型 约 束 遵 循
  • 42. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 42 规范如何阅读 7. 公共结构 8. 值 9. 分类 1-6. 杂项 10. 简单分类符 11. 结构化分类符 12. 包 13. 公共行为 14. 状态机 15. 活动 16. 行为 17. 交互 18. 用例 19. 部署 附录A-E 22. 标准Profile21. 基本类型 20. 信息流 先后 并行
  • 43. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 43 规范如何阅读 • 概要/Summary (0..1) • 元模型(1..*) – 概要 – 抽象语法 – 语义 – 表示法(具体语法) – 示例 • 分类符描述 • 关联描述
  • 44. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 44 规范如何阅读 https://zhoujg.gitbooks.io/uml-2_5- zh/content/chapter7/7.4/summary_syntax_semantics.html 示例:
  • 47. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 47 规范如何阅读
  • 48. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 48 规范如何阅读
  • 49. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 49 UML 2.5 规范中的不足 • 缺乏整体性(完整)的清晰描述 – 对象图 • 逻辑表达不清/二义性 – 包合并 • 明显的错误 – 计算错误 – 标号错引 – 示例输入性错误 • 示例未更新(使用了不推荐使用的例子) • 命名反模式
  • 50. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 50 UML 2.5 规范中的不足 • 对象图缺乏清晰的定义 – 1.5有定义:"a graph of instances, including objects and data values. A static object diagram is an instance of a class diagram; it shows a snapshot of the detailed state of a system at a point in time." – 2.4之后再无定义,只是提到:"the following nodes and edges are typically drawn in an object diagram: Instance Specification and Link (i.e., Association).“ – 有的“权威”的UML来源还提到只包含实例规约的组件图和部署图也是一种对象 图(令人费解) • 转变(Transition)的重定义约束和规则未提及guard,也未有相关示 例,导致在重定义中对guard的处理不明确
  • 51. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 51 UML 2.5 规范中的不足 • 包合并 – 属性合并:规范中前提要求两个匹配属性的isUnique的值相同(约束第2条);但 在转换实施规则的第7条却又无视上述约束,貌似两个匹配属性的isUnique的值可 以不同,这做如何解读? – 枚举合并:枚举的合并在约束上提到了顺序的相关性,既然约束中提到了顺序, 那就是说顺序是有意义的,那么不匹配的字面量以何种顺序被包含进来呢?考虑 如下的情况:枚举E1: {A, B, C, E},枚举E2: {A, C, D, F},E1和E2的合并结果中E、D、 F的顺序如何? CONSTRAINTS: 2 The value of isUnique of matching Properties must be the same. TRANSFORMATIONS: 7 For matching Properties: if either the merged and/or receiving elements have isUnique = false, the resulting element has isUnique = false; otherwise, the resulting element has isUnique = true. CONSTRAINTS: 1 Matching EnumerationLiterals must be in the same order.
  • 52. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 52 UML 2.5 规范中的不足 • 包合并 图片选自UML2.5 Figure.12.6, 12.7 (p. 248) “The expressions in square brackets indicate which individual elements were merged to produce the final result, with the “@” character denoting the conceptual merge ‘transformation’ as an operator, where X@Y signifies the resulting element from the merge transformation applied to matching receiving element X and merged element Y. ”
  • 53. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 53 UML 2.5 规范中的不足 • 文字错误 UML 2.5 formal (p. 113) UML 2.5 Beta2 (p. 115)
  • 54. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 54 UML 2.5 规范中的不足 • 错引 图片选自UML 2.5 Figure 15.72 (p. 408) 文中被错引为15.71
  • 55. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 55 UML 2.5 规范中的不足 • 错误 A ReduceAction can be used to reduce a list of numbers to the sum of the numbers. Such a ReduceAction has one InputPin for a collection of numbers, one OutputPin for a number and an addition function as the reducer Behavior. For example, suppose the input collection has four integers: (2, 7, 5, 3). The result of applying the ReduceAction to this collection with an addition function is 11. With the default of isOrdered=false, this can be computed in a number of ways, for example, (((2+7) + 5) + 3), (2 + (7 + (5 + 3))), ((2 + 7) + (5 + 3)). 选自:UML 2.5 p. 485 16.13.5 对ReduceAction的示例 “ ”
  • 56. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 56 UML 2.5 规范中的不足 • 示例未更新 图片选自UML 2.5 Figure 11.46 (p. 212)
  • 57. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 57 UML 2.5 规范中的不足 • 印刷排版问题 图片选自UML 2.5
  • 58. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 58 UML 2.5 规范中的不足 • 元素命名 Element NamedElement PackageableElement Relationship Artifact DeployedArtifact DirectedRelationship PackageImport 反模式
  • 59. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 59 应用中的UML • 并发/多线程 – 现有支持(参见: Concurrency in UML) • 活动图:(显示/隐式)Fork/Join • 序列图:并行联合片段 • 状态图:正交(复合)状态、join/fork伪状态
  • 60. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 60 应用中的UML • 并发/多线程 – Modeling Behavioral Design Patterns of Concurrent Objects (Robert G. Pettit IV, Hassan Gomaa, ICSE 2006) • 基于UML通信图,采用主动类和被动类,自定义的Stereotype等 • 以Colored Petri Nets (CPN)为形式化支撑 • 基于行为设计模式定义了一组并发表示模板,并给出了相应的CPNs映射
  • 61. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 61 应用中的UML • 并发/多线程 – Modeling Behavioral Design Patterns of Concurrent Objects (Robert G. Pettit IV, Hassan Gomaa, ICSE 2006)
  • 62. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 62 应用中的UML • 并发/多线程 – Modeling Behavioral Design Patterns of Concurrent Objects (Robert G. Pettit IV, Hassan Gomaa, ICSE 2006)
  • 63. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 63 应用中的UML • 并发/多线程 – Modeling Behavioral Design Patterns of Concurrent Objects (Robert G. Pettit IV, Hassan Gomaa, ICSE 2006)
  • 64. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 64 应用中的UML • 并发/多线程 – UED : Designed by Philips HealthCare 图片选自InfoQ文章,见UED链接
  • 65. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 65 应用中的UML • 并发/多线程 – UED : Designed by Philips HealthCare 图片选自InfoQ文章,见UED链接
  • 66. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 66 应用中的UML • 建模不严谨、不规范 – 用例图中不标注用例之间关系的类型(关键字) – 类图中关联的导航性不一致 – 序列图中消息的类型不一致 – 不写约束 大家并不把UML当做一种严谨的语言来使用
  • 67. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 67 应用中的UML • 对模型管理/演化支持不足 – FIESE, Software Architecture Documentation for Developers: A Survey, ECSA 2013 • 1 Architecture documentation is often not up-to-date and thus strongly lacks utility. • 3 Architecture documentation is often nconsistent. Inconsistency comes in different forms like inconsistent structure in and across documents, inconsistent notations, or contradicting information.
  • 68. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 68 应用中的UML • 对模型管理/演化支持不足 – 管理/成本问题?技术问题? • 简单线框图? • 只关注高层(见右图,图片来自Michael Keeling. Architecture Haiku-A Case Study in Lean Documentation. IEEE Software, 2015, 32(3):35-39) • ...... No one solution fits all!
  • 69. 周进刚 UML 2.5杂谈 UMLChina讲座 2015.11.03 Slide 69 Questions? 1. http://www.uml-diagrams.org/ 2. UML Professionals Group in LinkedIn : http://www.linkedin.com/grp/home?gid=1330747 3. MDA Group in LinkedIn: http://www.linkedin.com/grp/home?gid=50539