1
Introduction to UML2
Fernando Brito e Abreu (fba@di.fct.unl.pt) Universidade Nova de Lisboa (http://www.unl.pt)
QUASAR Research Group (http://ctp.di.fct.unl.pt/QUASAR)
ASII - Fernando Brito e Abreu 2 30-09-2005
Introduction to UML2 Fernando Brito e Abreu (fba@di.fct.unl.pt) - - PDF document
Introduction to UML2 Fernando Brito e Abreu (fba@di.fct.unl.pt) Universidade Nova de Lisboa (http://www.unl.pt) QUASAR Research Group (http://ctp.di.fct.unl.pt/QUASAR) Abstract The methods quagmire UML roots OMG specifications
QUASAR Research Group (http://ctp.di.fct.unl.pt/QUASAR)
ASII - Fernando Brito e Abreu 2 30-09-2005
ASII - Fernando Brito e Abreu 3 30-09-2005
The OOA&D methods proliferation was enormous Among those, 3 were particularly important and
The Object Modelling Technique (OMT)
by James (Jim) Rumbaugh et al. @ General Electric
The Objectory method
by Ivar Jacobson @ Objectory Corporation (Sweden)
The Booch Method
by Grady Booch @ Rational Corporation ASII - Fernando Brito e Abreu 4 30-09-2005
Modeling tools had no provisions for
??? ??? ???
Many methods, many tools, many formats.
ASII - Fernando Brito e Abreu 5 30-09-2005
This situation was bad for:
Practitioners and other development
Academia Tool vendors
Then, the Object Management Group
ASII - Fernando Brito e Abreu 6 30-09-2005
Booch'91 OMT-1 Objectory Other methods Booch'93 OMT-2 Unified Method 0.8 UML 0.9 UML Partners UML 1.1 Submission to OMG UML 1.0 UML 1.2 through UML 2
Maintenance by OMG
ASII - Fernando Brito e Abreu 7 30-09-2005
UML is a graphical language for
visualizing specifying constructing documenting
ASII - Fernando Brito e Abreu 8 30-09-2005
Aonix Colorado State University Computer Associates Concept Five Data Access EDS Enea Data Hewlett-Packard IBM I-Logix Inline Software Intellicorp Klasse Objecten Lockheed Martin Microsoft ObjecTime Oracle Ptech OAO Technology Solutions Rational Software Reich SAP Softeam Sterling Software Sun Taskon Telelogic Unisys …
Contributors = Original Submitters + RTF1 + RTF2 + …
ASII - Fernando Brito e Abreu 9 30-09-2005
UML Submission Team Analysis & Design Task Force UML Revision Task Force
Members submit proposal specifications in response to RFPs. This is the primary mechanism for major revisions to UML. Members issue Requests for Information (RFIs) and Requests for Proposals (RFPs) for major revisions to UML.
Members correct and clarify adopted technology
the primary mechanism for minor revisions to UML. A complete graphic and explanation of the major and minor revision processes is available in UML 2001: A Standardization Odyssey (Communications of ACM, Oct. 99), available in press kit.
Issue RFP Develop technology specification RFP [issued] Begin
ASII - Fernando Brito e Abreu 10 30-09-2005
<<document>> UML 1.1 <<document>> UML 1.2 <<document>> UML 1.3 <<refine>> <<document>> UML 1.4 <<document>> UML 2.0 <<refine>> <<refine>> <<refine>> Q3 1997 (OMG Adopted Technology) Q2 1998 Q3 1999 Q3 2000 (minor revision) 2001 (minor revision) Editorial revision with no significant technical changes. ISO Publicly Available Specifications (PAS) <<formalLiaison>> <<document>> UML 1.5 <<refine>> 2003 (Major revision)
ASII - Fernando Brito e Abreu 11 30-09-2005
OMG UML
UML XMI Document Type Definition XML Metadata Interchange (XMI) Facility UML Profile for CORBA UML Profiles for Business Domains Meta Object Facility Specification Layer Metadata Layer Customization Layer Platform Technology profiles*** Domain Technology profiles*** *** In process, not yet adopted
ASII - Fernando Brito e Abreu 12 30-09-2005
UML, with XMI, has partly solved the
Model layout problem still pending
No loss of information
ASII - Fernando Brito e Abreu 17 30-09-2005
UML 2 defines 13 basic diagram types, divided
Structural Modeling Diagrams
define the static architecture of a model are used to model the 'things' that make up a model - the classes,
In addition they are used to model the relationships and
dependencies between elements.
Behavioral Modeling Diagrams
Behavior diagrams capture the varieties of interaction and
instantaneous state within a model as it 'executes' over time.
ASII - Fernando Brito e Abreu 18 30-09-2005
Package diagrams are used to divide the model into logical
containers or 'packages' and describe the interactions between them at a high level
Class or Structural diagrams define the basic building
blocks of a model: the types, classes and general materials that are used to construct a full model
Object diagrams show how instances of structural
elements are related and used at run-time
Composite Structure diagrams provide a means of layering
an element's structure and focusing on inner detail, construction and relationships
Component diagrams are used to model higher level or
more complex structures, usually built up from one or more classes, and providing a well defined interface
Deployment diagrams show the physical disposition of
significant artefacts within a real-world setting
ASII - Fernando Brito e Abreu 19 30-09-2005
Use Case diagrams are used to model user/system interactions. They
define behavior, requirements and constraints in the form of scripts or scenarios
Activity diagrams have a wide number of uses, from defining basic
program flow, to capturing the decision points and actions within any generalized process
State Machine diagrams are essential to understanding the instant to
intant condition or "run state" of a model when it executes
Communication diagrams show the network and sequence of
messages or communications between objects at run-time during a collaboration instance
Sequence diagrams are closely related to Communication diagrams
and show the sequence of messages passed between objects using a vertical timeline
Timing diagrams fuse Sequence and State diagrams to provide a view
Interaction Overview diagrams fuse Activity and Sequence diagrams to
provide allow interaction fragments to be easily combined with decision points and flows