IBM Software Group ® Clic k to edit Ma ster sub title styl e An Introduction to UML 2.0 Bran Selic IBM Distinguished Engineer IBM Rational Software – Canada.

Slides:



Advertisements
Similar presentations
Withdrawal Transaction Use Case Primary Actor: Customer Pre-conditions: The customer must have a valid ATM card and PIN. Post-conditions: The customer.
Advertisements

StateChart Diagrams State Machines Overview Change summary –core constructs –notation Examples Backward compatibility User benefits Issues.
UML an overview.
1 CIS224 Software Projects: Software Engineering and Research Methods Lecture 11 Brief introduction to the UML Specification (Based on UML Superstructure.
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
Nicolò Carissimi in UML 2.0. Summary what’s behind UML: MDA UML 2.0 and MDA key concepts.
CS3773 Software Engineering Lecture 03 UML Use Cases.
Activity Diagrams [Arlow and Neustadt, 2005] CS 425 / 625 Seminar on Software Engineering University of Nevada, Reno Department of Computer Science & Engineering.
RUP And Agile Development Processes Walker Royce and Gary Pollice.
©1998, 1999, 2000 Rational Software - All rights reserved Session VM08 Structuring Your Rational Rose Model Robert Bretall Rational Software.
SE 555 Software Requirements & Specification1 Use-Case Modeling: Overview and Context.
Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located.
1 © Wolfgang Pelz UML2 UML Part Two. 2 © Wolfgang Pelz UML2 Chapters Four & Twelve Interaction Diagrams.
1 CS 426 Senior Projects Chapter 14: Activity Diagrams [Arlow and Neustadt, 2005] February 17, 2009.
The Use of Zachman Framework Primitives for Enterprise Modeling
UML Notations Activity diagrams State diagrams Class diagrams Use-case diagrams.
© 2008 IBM Corporation Behavioral Models for Software Development Andrei Kirshin, Dolev Dotan, Alan Hartman January 2008.
UML – Unified Modelling Language For Effective OO Development Yves Holvoet Rational Software Corporation Yves Holvoet Rational Software Corporation (say.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
Ontologies Reasoning Components Agents Simulations Agent Modeling Language: Behavioral Models Rafael Oliveira Ricson Santana Vinícius Remigo Jacques Robin.
The RUP® process market place Creating and distributing process know-how using the RUP plug-in technology Sigurd Hopen Rational.
Systems Modeling Language ™ Overview Cris Kobryn and Sandy Friedenthal SysML Partners ( October 2003.
CS3773 Software Engineering
(C) 2009 J. M. Garrido1 Object Oriented Simulation with Java.
Introduction to UML 1 Quick Tour Why do we model? What is the UML? Foundation elements Unifying concepts Language architecture Relation to other OMG technologies.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
1 CSC 450 Slides adapted from slides created by Robert B. France UML Behavioral Models.
An Introduction to Software Architecture
1 SAD2 - UML 2 nd Lecture Sequence Diagram and other dynamic views Lecturer: Dr Dimitrios Makris
Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located.
1 UML Basic Training. UML Basic training2 Agenda  Definitions: requirements, design  Basics of Unified Modeling Language 1.4  SysML.
Chapter 2, Modeling with UML, Part 3 UML 2 Hightlights
Conceptual Modelling – Behaviour
1 Devon M. Simmonds University of North Carolina, Wilmington CSC450 Software Engineering WorkFlow Modeling with Activity Diagrams.
Winter 2007, rev. 2008SEG Chapter 21 Chapter 2 Basic Principles.
Chapter 2, Modeling with UML: UML 2 Hightlights
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
Smith’s Aerospace © P. Bailey & K. Vander Linden, 2005 Interaction and Communication Diagrams Patrick Bailey Keith Vander Linden Calvin College.
Introduction To OOP 1.0 Fundamentals Of Java Programming Language 2.0 Exception Handling 3.0 Classes, Inheritance And Polymorphism © 2011 | PN AZRINA.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Karolina Muszyńska Based on: S. Wrycza, B. Marcinkowski, K. Wyrzykowski „Język UML 2.0 w modelowaniu SI”
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
© 2001 Mercury Computer Systems, Inc. UML 2.0 Redux for HPEC Dr. Jeffrey E. Smith Mercury Computer Systems, Inc. Manfred Koethe 88solutions Corp. High.
OOP Review CS 124.
Chapter 3: Introducing the UML
CSCI 3428: Software Engineering Tami Meredith UML Unified Modeling Language.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Session 1 What Is the UML? Written by Thomas A. Pender Published by Wiley Publishing, Inc. October 5, 2011 Presented by Kang-Pyo Lee.
Introduction to Unified Modeling Language (UML) By Rick Mercer with help from The Unified Modeling Language User Guide, Grady Booch, James Rumbaugh, Ivar.
Color Palette To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides APPLYING THESE COLORS.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
UML (Unified Modeling Language)
UML AN OVERVIEW. Topics covered in this Session 1. Introducing UML. 2. What constitutes the UML. 3. Concepts of UML.
1 Advanced DataBases Unified Modelling Language An Introduction and Use Case Lecture 2 Susan Curtis.
Cliquez pour modifier le style du titre Cliquez pour modifier les styles du texte du masque Deuxième niveau Troisième niveau Quatrième niveau Cinquième.
Systems Analysis and Design in a Changing World, Fourth Edition
Evolution of UML.
Dynamic Modeling of Banking System Case Study - II
Introduction to Unified Modeling Language (UML)
State Machine Diagrams
Behavioral Models for Software Development
BPMN - Business Process Modeling Notations
Software Design Lecture : 15.
Presentation transcript:

IBM Software Group ® Clic k to edit Ma ster sub title styl e An Introduction to UML 2.0 Bran Selic IBM Distinguished Engineer IBM Rational Software – Canada

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 2 IBM Software Group | DISCLAIMER The technical material described here is still under development and is subject to modification prior to full adoption by the Object Management Group

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 3 IBM Software Group | 1967 Foundations of OO (Nygaard, Goldberg, Meyer, Stroustrup, Harel, Wirfs-Brock, Reenskaug,…) UML: The Foundation of MDA 1996 UML 1.1 (OMG Standard) UML 1.3 (extensibility) UML 1.4 (action semantics) UML Q2003 3Q2004 UML 2.0 (MDA) Jacobson Harel Booch Rumbaugh

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 4 IBM Software Group | Formal RFP Requirements 1)Infrastructure – UML internals  More precise conceptual base for better MDA support 2)Superstructure – User-level features  New capabilities for large-scale software systems  Consolidation of existing features 3)OCL – Constraint language  Full conceptual alignment with UML 4)Diagram interchange standard  For exchanging graphic information (model diagrams) 1)Infrastructure – UML internals  More precise conceptual base for better MDA support 2)Superstructure – User-level features  New capabilities for large-scale software systems  Consolidation of existing features 3)OCL – Constraint language  Full conceptual alignment with UML 4)Diagram interchange standard  For exchanging graphic information (model diagrams)

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 5 IBM Software Group | Language Structure  A core language + a set of optional “sub-languages”  Defined in three separate compliance levels  A core language + a set of optional “sub-languages”  Defined in three separate compliance levels OCL Basic UML (Classes, Basic behavior, Internal structure, Use cases…) MOF Profiles State Machines Structured Classes and Components ActivitiesInteractions Detailed Actions Flows Basic Level Intermediate Level Complete Level UML Infrastructure Multiple levels of compliance

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 6 IBM Software Group | UMLUML UML-MOF Alignment  Shared conceptual base  MOF: language for defining modeling languages  UML: general purpose modeling language  Shared conceptual base  MOF: language for defining modeling languages  UML: general purpose modeling language Infrastructure Library MOF “Superstructure” «import» UML Superstructure «import» MOFMOF

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 7 IBM Software Group | «import» ClassifiersClassifiers NamespaceNamespace ElementElementNamedElementNamedElement name : String NamespaceNamespace Infrastructure Example: Classifier Definition  Constructed from a basic set of primitive concepts «import» OwnershipOwnership ElementElement ClassifierClassifierNamespaceNamespaceNamedElementNamedElement FeatureFeature

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 8 IBM Software Group | UML 2.0: Run-Time Semantics Basic Structural Concepts BehaviorFoundation Interactions (Communications)... Activities State Machines Actions

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 9 IBM Software Group | ActivityM Behavioral Foundations  Data/control flow foundations for maximal implementation flexibility Action1 VariableAVariableA Action Action2 Input Pin (typed) OutputPin (typed) Control Flow Data Flow

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 10 IBM Software Group | Categories of Actions  Communication actions (send, call, receive,…)  Primitive function action  Object actions (create, destroy, reclassify,start,…)  Structural feature actions (read, write, clear,…)  Link actions (create, destroy, read, write,…)  Variable actions (read, write, clear,…)  Exception action (raise)  Communication actions (send, call, receive,…)  Primitive function action  Object actions (create, destroy, reclassify,start,…)  Structural feature actions (read, write, clear,…)  Link actions (create, destroy, read, write,…)  Variable actions (read, write, clear,…)  Exception action (raise)

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 11 IBM Software Group | Activities  Significantly enriched in UML 2.0 (relative to UML 1.x activities)  More flexible semantics for greater modeling power (e.g., rich concurrency model based on Petri Nets)  Many new features  Major influences for UML 2.0 activity semantics  Business Process Execution Language for Web Services (BPEL4WS) – a de facto standard supported by key industry players (Microsoft, IBM, etc.)  Functional modeling from the systems engineering community (INCOSE)  Significantly enriched in UML 2.0 (relative to UML 1.x activities)  More flexible semantics for greater modeling power (e.g., rich concurrency model based on Petri Nets)  Many new features  Major influences for UML 2.0 activity semantics  Business Process Execution Language for Web Services (BPEL4WS) – a de facto standard supported by key industry players (Microsoft, IBM, etc.)  Functional modeling from the systems engineering community (INCOSE)

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 12 IBM Software Group | Order Order Processing Invoice : InvoiceKind Activity Graph Example Receive order Fill order Ship order Send invoice Make payment Invoice Accept payment Close order Interruptible Region Input pin «precondition» Order entered «postcondition» Order complete contracts parameter Cancel order Order cancel request

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 13 IBM Software Group | Company Customer Accounting OrderDepartment Partitioning capabilities Receive order Fill order Ship order Send invoice Make payment Invoice Accept payment Close order Seattle Reno

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 14 IBM Software Group | sd ATM-transaction client:atm:dbase: Interaction Diagrams insertCard CheckPin ref alt [chk= OK] [else] error(badPIN) DoTransaction ref sd CheckPin client:atm:dbase: askForPIN data(PIN) check(PIN) result(chk) Interaction Frame Lifeline is one object or a part Interaction Occurrence Combined (in-line) Fragment

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 15 IBM Software Group | Combined Fragment Types (1 of 2)  Alternatives ( alt )  choice of behaviors – at most one will execute  depends on the value of the guard (“else” guard supported)  Option ( opt )  Special case of alternative  Break ( break )  Represents an alternative that is executed instead of the remainder of the fragment (like a break in a loop)  Parallel ( par )  Concurrent (interleaved) sub-scenarios  Negative ( neg )  Identifies sequences that must not occur  Alternatives ( alt )  choice of behaviors – at most one will execute  depends on the value of the guard (“else” guard supported)  Option ( opt )  Special case of alternative  Break ( break )  Represents an alternative that is executed instead of the remainder of the fragment (like a break in a loop)  Parallel ( par )  Concurrent (interleaved) sub-scenarios  Negative ( neg )  Identifies sequences that must not occur

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 16 IBM Software Group | Combined Fragment Types (2 of 2)  Critical Region ( region )  Traces cannot be interleaved with events on any of the participating lifelines  Assertion ( assert )  Only valid continuation  Loop ( loop )  Optional guard: [,, ]  No guard means no specified limit  Critical Region ( region )  Traces cannot be interleaved with events on any of the participating lifelines  Assertion ( assert )  Only valid continuation  Loop ( loop )  Optional guard: [,, ]  No guard means no specified limit

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 17 IBM Software Group | sd Reader r : Reader t1 Timing Diagrams (cont.) Reading Idle Uninitialized Initialize Read ReadDoneRead {d..d+0.5} {t1..t1+0.1} State Event Occurrence Constraint Observation

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 18 IBM Software Group | Structured Classes  Classes with  Internal (collaboration) structure  Ports (optional)  Primarily intended for architectural modeling  Heritage: architectural description languages (ADLs)  UML-RT profile: Selic and Rumbaugh (1998)  ACME: Garlan et al.  SDL (ITU-T standard Z.100)  Classes with  Internal (collaboration) structure  Ports (optional)  Primarily intended for architectural modeling  Heritage: architectural description languages (ADLs)  UML-RT profile: Selic and Rumbaugh (1998)  ACME: Garlan et al.  SDL (ITU-T standard Z.100)

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 19 IBM Software Group | Structured Objects: Ports  Multiple points of interaction  Each dedicated to a particular purpose  Multiple points of interaction  Each dedicated to a particular purpose e.g., Database Admin port e.g., Database Object e.g., Database User ports

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 20 IBM Software Group | Port Semantics  A port can support multiple interface specifications  Provided interfaces (what the object can do)  Required interfaces (what the object needs to do its job)  A port can support multiple interface specifications  Provided interfaces (what the object can do)  Required interfaces (what the object needs to do its job) «interface» MasterIF stateChange ( s : state ) : void … «provides» Incoming signals/calls «interface» SlaveIF start ( ) : void stop ( ) : void queryState ( ) : state … «uses» p1 c:ClassXc:ClassX Outgoing signals/calls

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 21 IBM Software Group | sender : Fax remoteremote receiver : Fax remoteremote Assembling Structured Objects  These connections can be constrained to a protocol :FaxProtocol FaxSenderFaxReceiver   Ports can be joined by connectors   Static checks for dynamic type violations are possible   Eliminates “integration” (architectural) errors   Static checks for dynamic type violations are possible   Eliminates “integration” (architectural) errors

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 22 IBM Software Group | FaxCall receiveCtrl sendCtrl sender:Fax remote receiver:Fax remote c c c c Structured Classes: Internal Structure  Structured classes may have an internal structure of (structured class) parts and connectors Delegation connector PartPart

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 23 IBM Software Group | ProductArchitecture sender:Faxsender:Fax receiver:Fax receiver:Fax Structure Refinement Through Inheritance  Using standard inheritance mechanism (design by difference) ProductB sender:Faxsender:Fax receiver:Fax receiver:Fax ProductA sender:Faxsender:Fax receiver:Fax receiver:Fax mgr:FaxMgrmgr:FaxMgr

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 24 IBM Software Group | ReadAmountSM selectAmount EnterAmount ok abort aborted amount otherAmount abort again Modular Submachines: Definition EXIT point ENTRY point Submachine definition Submachine definition

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 25 IBM Software Group | VerifyCard OutOfService acceptCard ReleaseCard VerifyTransaction outOfService releaseCard ATM ReadAmount : ReadAmountSM aborted rejectTransaction again Modular Submachines: Usage usage of exit point usage of exit point usage of entry point usage of entry point invoked submachine invoked submachine

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 26 IBM Software Group | Example: State Machine Redefinition  State machine of ATM to be redefined VerifyCard ReadAmount selectAmount acceptCard ReleaseCard VerifyTransaction selectAmount amount outOfService releaseCard OutOfService ATM {final}

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 27 IBM Software Group | VerifyCard acceptCard ReleaseCard VerifyTransaction outOfService releaseCard OutOfService ATM {final} ReadAmount selectAmount amount State Machine Redefinition enterAmount okreject {extended} otherAmount {extended} FlexibleATM

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 28 IBM Software Group | Summary: UML 2.0  First major revision of UML  Primarily motivated by the need to better support MDD  Characterized by  Modular language structure  Increased semantic precision and conceptual clarity  Recursive concepts definition for scalability  Small number of new modeling features – selected to better support scalability Structured classes for architectural specifications Complex and reusable interactions modeling Sophisticated functional modeling capabilities (activities)  First major revision of UML  Primarily motivated by the need to better support MDD  Characterized by  Modular language structure  Increased semantic precision and conceptual clarity  Recursive concepts definition for scalability  Small number of new modeling features – selected to better support scalability Structured classes for architectural specifications Complex and reusable interactions modeling Sophisticated functional modeling capabilities (activities)

Solid Palette Gradient Palette I Gradient Palette II APPLYING THESE COLORS Click on the desired color Click on the paintbrush tool located on your toolbar Click on the object you want to colorize Helpful tip: Double click the paintbrush tool to apply color to more than one object at a time. To use or remove these color palettes, go to View/Master/Slide Master Optional logo for your notes/handouts slides Do not use Gradient fills for slides to be used for Webinars 29 IBM Software Group | QUESTIONS? QUESTIONS?