Rational Rose Tutorial Making use of UML Elements Huáscar A. Sánchez Lect 1: Rational Rose Tutorial 1 Objectives Get to know Rational Rose Get Familiar with general functions of Pointed by Rational Rose for Modeling an icon Create a Class Diagram with Rational Rose 1st Part: Guided 2nd Part: Student Lect 1: Rational Rose Tutorial 2 Lab Objective: Graphic Model Specify the Graphics Class Diagram: Lect 1: Rational Rose Tutorial 3 Graphic Objects Circle Graphic Selection Panel Lect 1: Rational Rose Tutorial 4 Graphic Model: UML Elements Abstract Class Association Aggregation navigability role multiplicity Dependency Abstract operation Generalization attribute Concrete Class Concrete operation Lect 1: Rational Rose Tutorial 5 Start Rational Rose Start Rose Start Programs Rational Rose Rational Rose Lect 1: Rational Rose Tutorial 6 Create a New Model When Rose is started When Rose has been started: File New Lect 1: Rational Rose Tutorial 7 Create a New Model From Scratch Cancel the loaded window Using a Template or Frame-work Select <model> OK From File System Existing OR Recent Lect 1: Rational Rose Tutorial 8 To Save a Model File Save o Save As Lect 1: Rational Rose Tutorial 9 Create a Class Diagram Browser: Logical View Right Button Menu New Class Diagram Menu : Browse Class Diagram Lect 1: Rational Rose Tutorial 10 Creating more Diagrams Select <View> in Browser Right Button Menu New <diagram> Browse Menu <diagram> Lect 1: Rational Rose Tutorial 11 Toolbar for Class Diagrams Any element of a diagram can be created by placing the mouse pointer over a Tool in the Toolbar Drag&Drop over the diagram canvas text interface Note class Pointer asociation Note Anchor generalization package dependency or instantiation Association class Lect 1: Rational Rose Tutorial realization 12 Create a Class Place mouse pointer on Class Tool Toolbar : Click Class button Icon Menu: Tools Create Class Click on Diagram Window OR Browser : Sel. Logic View right button menu New Class (Sel. Clase Drag &Drop over Diagram Window) Lect 1: Rational Rose Tutorial 13 Create Diagram Elements Place Mouse Pointer Click on Toolbar button Sel. Diagram in Browser right button New <element> Menu Tools Create Click on diagram Lect 1: Rational Rose Tutorial 14 Specify Class Name Directely in the diagram Double click on the class “Class Specification for NewClass” Lect 1: Rational Rose Tutorial 15 Specify Diagram Elements Specification Window Allows you to specify a model element (diagrams, classes, packages, relationship...) The attributes or subelements to be specified depend on the selected element In each TabWindow attributes and sub-elements would be specified Lect 1: Rational Rose Tutorial 16 Specify Diagram Elements Open Specification Window Double Click on element via Browser or Diagram Window Sel. element (Browser,Diagram Window) Mouse right button menu Open Specification Sel. elemento Browse menu Open Specification Shorcuts of TabWindows, Properties, WIndow Specification Menus Sel. Element (Browser,Diagram Window) right button Menu new <subelement> (attribute, operation...) OR <Property> OR <TabWindow> Lect 1: Rational Rose Tutorial 17 Class Graphic An element •Can be in multiple diagrams •Only one instance in the Browser Synchronized Lect 1: Rational Rose Tutorial 18 Delete an Element Shallow Delete Edit Delete Select element in diagram key DEL It is not deleted from the MODEL!! (only from the diagram, not from Browser) Deep Delete Select element in Browser click right button Delete Select element in diagram Click CTRL+D It is deleted from the MODEL!! (It will disapear from the diagram and from the Browser) Lect 1: Rational Rose Tutorial 19 Create an Operation Diagram: Select class Mouse right button menu New Operation Browser: Select class Mouse right button menu New Operation Lect 1: Rational Rose Tutorial 20 Specify an Operation Directly: write the signature of the method << stereotype>> nameOperation( param: Typo,...) : Return Type Indirectly: Class Specifcation tab Operations right button menu Insert (operation) Double click on method Operation Specification Name Details right button menu Insert (parameter) Lect 1: Rational Rose Tutorial 21 Specify an Operation Name Parameter Return Type Accesibility Name,Type Public, Protected, Private Abstract o Concrete (checkbox Abstract in Details TabWindow) Lect 1: Rational Rose Tutorial 22 Create an Attribute Diagram: Select class Mouse right button menu New Attribute Browser: Select class Mouse right button menu New Attribute Browser: would be updated in Diagram Window Lect 1: Rational Rose Tutorial 23 Specify Attribute Directly: write the signature of the attribute << stereotype>> nameAttribute : Type Indirectly: Class Specification tab Attributes right button menu Insert ( attribute) Double click on attribute Attribute Specification Name Type Lect 1: Rational Rose Tutorial 24 Specify Attributes Name Type Accesibility Public, Protected,Private Class Abstract or Concrete (checkbox Abstract in Details TabWindow) Lect 1: Rational Rose Tutorial 25 Class Relationships UML Relationships in Rational Rose Generalization Association Aggregation Composition Dependency Lect 1: Rational Rose Tutorial 26 UML Relationships in Rational Rose Generalization (Inheritance) B A Association B roleB roleA A 1..n multiplicity B A Navegability from B to A Lect 1: Rational Rose Tutorial 27 Relaciones UML en Rose Aggregation B A Composition B A Dependency or Instantiation B A Lect 1: Rational Rose Tutorial 28 Create Generalization Place Mouse Pointer over Tool Click on button Toolbar Menu Tools Create Generalization Click on Diagram Window Connect element B to A Lect 1: Rational Rose Tutorial 29 Specify Generalization Like the rest of the elements: Double click on element Sel. element right button menu Open Specification or Shortcut of TabWindow/Property Sel. Sel element Browse menu Specification (note: it does appear on the Browser) Lect 1: Rational Rose Tutorial 30 Create an Association Place mouse pointer over Tool Click on Toolbar button Menu Tools Create Generalization Click on Diagram Window Connect element B to A Lect 1: Rational Rose Tutorial 31 Specify Association Like the rest of Elements: Double click, Sel (Browser Diagram Window) + Right Button Menu, Browse menu) It will appear as another element else in the Browser Lect 1: Rational Rose Tutorial 32 Specify Association Specify Navegability Accesibility public (+), protected (#), private (-) Multiplicity (1..n, 0..n, etc...) Aggregation B Role names Association names Content Type: -roleB 1 agregationName -roleA A 0..n Reference, Value, no specify Lect 1: Rational Rose Tutorial 33 Model Organization A model can be organized using packages Graphic Model (group, include model elements) “Folder” Structure Lect 1: Rational Rose Tutorial 34 Move Elements across Packages Drag&Drop in each Package Browser from one to another One to One Pay attention: by moving the classes it does not mean that associations will move as well!! (Rational Rose 2000>) They are elements with Identity Lect 1: Rational Rose Tutorial 35 Copy Cut Paste Elements between diagrams Within the same Rational Rose model we are talking about the diagrams figures The elements appearing in the Browser are the only elements in the entire model. An element can appear in multiple diagrams If it is a different package, indicate from where the package come from “from <Package>” Lect 1: Rational Rose Tutorial 36 Copy Cut Paste Elements between diagrams Between two instances of Rational Rose Copy, Paste create the new elements If they dont exist in the model destination If they dont exist in the model destination, but the paste is in the package destination keep the existing if they exist in the model destination and the paste is in the same package Lect 1: Rational Rose Tutorial 37 Exercise 1 Finalize the Graphics Model Lect 1: Rational Rose Tutorial 38 Exercise 2 Model of a Work Plan (Project) - Overview Project GanttView Resource Dependency TaskGroup Lect 1: Rational Rose Tutorial Task Milestone39 Exercise 2 Think in a class model that describe a workplan of a project – using Software stability concepts Draw it with Rational Rose Lect 1: Rational Rose Tutorial 40