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 evolution � UML contributors and revision process � Model interchange with XMI � Structural Modeling Diagrams � Behavioral Modeling Diagrams ASII - Fernando Brito e Abreu 2 30-09-2005 1
By the mid-nineties … � The OOA&D methods proliferation was enormous � Among those, 3 were particularly important and formed indeed the basis for UML: � 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 3 30-09-2005 ASII - Fernando Brito e Abreu Model interchange problem � Modeling tools had no provisions for model interchange Many methods, many tools, many formats. ??? ??? ??? ASII - Fernando Brito e Abreu 4 30-09-2005 2
By the mid-nineties � This situation was bad for: � Practitioners and other development shareholders � Academia � Tool vendors � Then, the Object Management Group (OMG) laid out a standardization initiative to put an end to this situation! 5 30-09-2005 ASII - Fernando Brito e Abreu The roots … UML 1.2 through UML 2 Oct. 98 Maintenance by OMG UML 1.1 Jul. 97 Submission to OMG UML 1.0 Jan. 97 UML 0.9 Jun. 96 UML Partners Oct. 95 Unified Method 0.8 Booch'93 OMT-2 Other methods Booch'91 OMT-1 Objectory ASII - Fernando Brito e Abreu 6 30-09-2005 3
The Unified Modeling Language (UML) � UML is a graphical language for � visualizing � specifying � constructing � documenting the artifacts of software-intensive systems, using the Object-Oriented paradigm 7 30-09-2005 ASII - Fernando Brito e Abreu OMG UML Contributors Contributors = Original Submitters + RTF1 + RTF2 + … Microsoft Aonix ObjecTime Colorado State University Oracle Computer Associates Ptech Concept Five OAO Technology Solutions Data Access Rational Software EDS Reich Enea Data SAP Hewlett-Packard Softeam IBM Sterling Software I-Logix Sun Inline Software Taskon Intellicorp Telelogic Klasse Objecten Unisys Lockheed Martin … ASII - Fernando Brito e Abreu 8 30-09-2005 4
UML Revision Processes UML Submission Team Analysis & Design Task Force UML Revision Task Force Members submit Members issue Members correct and proposal Requests for clarify adopted specifications in Information (RFIs) technology response to RFPs. and Requests for specifications. This is This is the primary Proposals (RFPs) for the primary mechanism for major major revisions to mechanism for minor revisions to UML. UML. revisions to UML. Begin Develop technology Issue RFP specification RFP [issued] ... ... ... 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. 9 30-09-2005 ASII - Fernando Brito e Abreu UML specifications evolution 2003 (Major revision) <<document>> UML 2.0 2001 <<refine>> <<document>> (minor revision) UML 1.5 <<refine>> Q3 2000 <<document>> (minor revision) UML 1.4 <<refine>> ISO Publicly Available Q3 1999 <<document>> Specifications UML 1.3 (PAS) <<formalLiaison>> <<refine>> <<document>> Editorial revision Q2 1998 with no significant UML 1.2 technical changes. <<refine>> Q3 1997 <<document>> (OMG Adopted UML 1.1 Technology) ASII - Fernando Brito e Abreu 10 30-09-2005 5
Relations to Other OMG Technologies XML Metadata Meta Object Metadata Layer Interchange Facility (XMI) Facility UML XMI Specification Layer OMG UML Document Type Definition Platform Domain Technology Technology profiles*** profiles*** UML Profiles for UML Profile for Customization Layer Business CORBA Domains *** In process, not yet adopted 11 30-09-2005 ASII - Fernando Brito e Abreu Model Interchange with XMI � UML, with XMI, has partly solved the model interchange problem � Model layout problem still pending � No loss of information ASII - Fernando Brito e Abreu 12 30-09-2005 6
The UML 2 diagrams � UML 2 defines 13 basic diagram types, divided into two general sets: � Structural Modeling Diagrams � define the static architecture of a model � are used to model the 'things' that make up a model - the classes, objects, interfaces and physical components � 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. 17 30-09-2005 ASII - Fernando Brito e Abreu Structural Modeling Diagrams � 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 18 30-09-2005 7
Behavioral Modeling Diagrams � 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 of an object's state over time and messages which modify that state � Interaction Overview diagrams fuse Activity and Sequence diagrams to provide allow interaction fragments to be easily combined with decision points and flows 19 30-09-2005 ASII - Fernando Brito e Abreu 8
Recommend
More recommend