Project Management with UML and Enterprise Architect Training Documentation – 7th Revised Edition SparxSystems GmbH, Wien About this Edition Whereas from the 1st through the 3rd editions only very few changes were made, the 4th Edition represented a major departure. This is where the theoretical UML section was restructured and the entire content overhauled. The practical section on Enterprise Architect was extended by numerous chapters and adapted to the current Version 5.0. The general scope has also been greatly expanded. The 5th Edition experienced major enhancements in the Enterprise Architect section. Updating to Version 6.1 was carried out, along with the addition of numerous new topics. In the 6th Edition, only small changes and corrections were made in the UML section. The Enterprise Architect section, however, was expanded by numerous chapters and adapted to the current Version 6.5. In the 7th Edition, for the most part an update to Enterprise Architect 7.1 was carried out. Vienna, April 27, 2008 ISBN-10:3-9502692-1-5 ISBN-13:978-3-9502692-1-5 © 2008 SparxSystems GmbH, Wien All rights reserved. No part of this document may be reproduced in any way, shape or form (photocopy, print, microfilm or otherwise), or processed, changed, duplicated or distributed electronically without the express written permission of the publisher, SparxSystems GmbH. This documentation has been prepared and checked with great care. Unfortunately, however, it cannot be assumed that errors herein do not exist. The author therefore assumed no responsibility or liability for inaccurate entries. Contents Introduction to UML ...................................................................................... 9 Documentation ..................................................................................................................... 9 Advantages of UML .............................................................................................................. 9 UML Standard ........................................................................................................................ 9 Historical Development of UML ..................................................................................... 10 Diagram Implementation ................................................................................................ 12 Fundamentals of Behavioural Modelling .................................................................... 13 Use Case Diagram .............................................................................................................. 14 Actors ............................................................................................................................................... 14 Use Case .......................................................................................................................................... 15 System ............................................................................................................................................. 15 Relationships ................................................................................................................................. 15 Use Case Relationships ............................................................................................................... 15 Descriptions and Notes ............................................................................................................... 17 Graphical Elements ...................................................................................................................... 17 Example .......................................................................................................................................... 18 Chapter Review ............................................................................................................................. 19 Activity Diagram ................................................................................................................ 20 Activities ......................................................................................................................................... 20 Connections ................................................................................................................................... 20 Junctions ......................................................................................................................................... 20 Splitting and Synchronisation ................................................................................................... 20 Composition of Activity Diagrams ........................................................................................... 21 Responsibility Zones (Swimlanes) ............................................................................................ 21 Token Concept for Activity Diagrams...................................................................................... 21 Graphical Elements ...................................................................................................................... 22 Example .......................................................................................................................................... 23 Chapter Review ............................................................................................................................. 24 Class Diagram ..................................................................................................................... 25 Class ................................................................................................................................................. 25 Object .............................................................................................................................................. 26 Attributes........................................................................................................................................ 27 Methods (Operations) ................................................................................................................. 27 Relationships ................................................................................................................................. 27 Interfaces ........................................................................................................................................ 32 Symbols ........................................................................................................................................... 34 Example .......................................................................................................................................... 35 Chapter Review ............................................................................................................................. 37 State Machine Diagram ................................................................................................... 38 States ............................................................................................................................................... 38 Transitions...................................................................................................................................... 39 Symbols ........................................................................................................................................... 39 Example .......................................................................................................................................... 40 Package Diagram ............................................................................................................... 41 Chapter Review ............................................................................................................................. 43 Interaction Diagram .......................................................................................................... 44 Sequence Diagram............................................................................................................. 44 ExecutionOccurence .................................................................................................................... 44 Message Types .............................................................................................................................. 44 Symbols ........................................................................................................................................... 45 Example .......................................................................................................................................... 46 Chapter Review ............................................................................................................................. 48 Communication Diagram ................................................................................................ 49 Symbols ........................................................................................................................................... 50 Example .......................................................................................................................................... 50 Sequence Diagrams vs. Communication Diagrams ............................................................ 51 Chapter Review ............................................................................................................................. 52 Interaction Overview Diagram ....................................................................................... 53 Component Diagram ........................................................................................................ 54 Symbols ........................................................................................................................................... 54 Example .......................................................................................................................................... 55 Deployment Diagram ....................................................................................................... 56 Symbols ........................................................................................................................................... 56 Example .......................................................................................................................................... 57 Chapter Review ............................................................................................................................. 58 Timing Diagram.................................................................................................................. 59 Composite Structure Diagram........................................................................................ 59 Object Diagram .................................................................................................................. 60 Chapter Review ............................................................................................................................. 61 Introduction to Enterprise Architect ........................................................... 62 Creating a New Project ..................................................................................................... 62 Use of a Model Project ...................................................................................................... 63 Remove Entry in “Recent Projects” List ........................................................................ 63 Set Up User-Defined Structure ....................................................................................... 63 Deleting an element in the Project View................................................................................ 64 Create Views and Packages ....................................................................................................... 64 Recommendations for the Structuring of an EA Project .................................................... 64 Online Banking Example .................................................................................................. 65 Specification (Requirements Specifications) ......................................................................... 65 Tasks ................................................................................................................................................ 65 Use Case Diagrams....................................................................................................................... 66 Use Case Description with Scenarios ...................................................................................... 70 Activity Diagram ........................................................................................................................... 72 Child Diagrams .............................................................................................................................. 72 Setting Link..................................................................................................................................... 74 Activity Diagram for the Use Case “Capture Transfer”....................................................... 75 User Interface Diagram............................................................................................................... 80 Domain Model ............................................................................................................................... 82 Class Diagram ................................................................................................................................ 84 State Diagram ............................................................................................................................... 87 Example State Diagram .............................................................................................................. 88 Create Internal Activities ............................................................................................................ 89 Sequence Diagram ....................................................................................................................... 90 Code Generation ........................................................................................................................... 93 Entity Relationship (ER) Diagram ...........................................................................................100 Deployment Diagram ................................................................................................................106 Extended Functionality of Enterprise Architect ........................................ 107 Use of Stereotypes ........................................................................................................... 107 Use of Metafiles (Clipart) for Stereotypes ............................................................................107 Use of Shape Scripts for Stereotypes.....................................................................................108 Relationship Matrix ......................................................................................................... 109 Relationship Matrix Profile ......................................................................................................110 Additional Settings and Usage Options................................................................................110 Creation of Documentation .......................................................................................... 111 RTF Documentation ...................................................................................................................111 HTML Documentation ...............................................................................................................113 Team Collaboration – Multiple Users of a Model .................................................... 114 Use of a DB Server for Project Stability ...................................................................... 114 EA Security – Integrated Authorisation System .................................................................115 Changing the Security Mode ...................................................................................................118 Working with the Authorisation System .............................................................................119 XMI Import and Export ................................................................................................... 120 Version Management ..................................................................................................... 122 Set Up Version Control for Package .......................................................................................125 Check In Complete EAP File ......................................................................................................126 Use of Local Paths .......................................................................................................................127 Cost/Effort Evaluation .................................................................................................... 128 Build and Run .................................................................................................................... 132 Configuration Scripts for Build and Run ...............................................................................132 Build Settings...............................................................................................................................133 Test Settings ................................................................................................................................133 Unit Testing..................................................................................................................................133 Debugging ....................................................................................................................................134 MDG Plugin for Eclipse ................................................................................................... 135 Installing .......................................................................................................................................135 Establishing a Connection between EA and Eclipse ..........................................................135 Synchronising between the Model and the Source Code ................................................137 Visual Studio Integration .......................................................................... 138 List of All Permissions in EA and Their Meaning ...................................................... 140 List of all Keyboard Shortcuts ....................................................................................... 141 Images ................................................................................................................................ 143 Additional Literature ....................................................................................................... 147