Course Code
UML
Duration
21 hours (usually 3 days including breaks)
Requirements
Basic knowledge of any object-oriented language is recommended.
Overview
This course is intended for analysts, designers, developers, testers and project managers. It is an introduction to system modeling using UML.
Based on selected systems (case study) following phases of system modeling are presented: from modeling requirements, through business process modeling and documentation of functional and non-functional requirements, to the analytical model. The next step is the design phase - static and dynamic modeling using project classes and the interaction between the system components. For exercises is used Enterprise Architect - popular modeling tool.
Training can be the basis for a comprehensive process modeling in enterprise systems through the use of UML in all phases of software development.
Because training lasts only 3 days, participants perform exercises together with trainer, also state machine and code generation topics are marked as optional. For those, who are interested with gaining more experience in modeling with UML, this training can be expanded to 4 or 5 days, in which case participants have time to solve exercises themselves and compare them to model created during summary. In 4 days training all topics are mandatory, 5 days version also includes more advanced elements, in booth cases participants have much more time for exercises. This training can be also profiled for analytics or designers, in booth cases some changes in program are made to adjust it to recipients.
Course Outline
Introduction to UML
- A brief History of UML
- Overview of issues in the field of object-oriented modeling
- UML overview
Requirements management
- Requirements Types
- Requirements Categories (FURPS)
- Methods for gathering requirements
- Modeling requirements using UML
- The relationship matrix for the requirements
- Creating a requirements specification
Modeling business processes
- Activity Diagram
- Business process modeling in UML
- The definition of a business process
- Concurrent flows and decisions
- Exceptions and Exception Handling
- Partition, fork, join and other elements
Modeling non-functional requirements
- Components and Deployment diagrams
- The initial architecture of the system - logical and physical
- Modeling requirements for security, performance, reliability, ...
Modeling functional requirements
- Modeling functionality with the Use Case diagram
- Determining the scope of the system
- Actors and the relationships between them
- Identifying use cases
- Association "actor - use case" and its properties
- The relationship between use cases: include, extend, generalization
- Creating a use case scenarios and generate diagrams from them (activity)
Analytical model of the system
- Using sequence diagrams
- The types of messages: asynchronous, synchronous, reply
- Categories of objects: Boundary, Control and Entity
- Modeling the interaction
Static Modeling
- Class Diagram
- Class, abstract class, interface
- Association relationship and its characteristics.
- Other relationships: aggregation, composition, generalization, dependency, association class
- Forward/Reverse engineering (OPTIONAL)
- Generating source code from the model
- Generating diagram based on the source code
- Synchronizing code and diagram
Dynamic Modeling
- Verification of the static model
- Clarification of method signatures
- Verification of the class diagram
- The dynamic modeling at the level of method calls
- Sequence diagram on design level
- State Machine diagram (OPTIONAL)
Overview of other diagrams (OPTIONAL)
- Object Diagram
- Composite Structure Diagram
- Package Diagram
- Timing Diagram
- Communication Diagram
- Interaction Overview Diagram
Courses Discounts
-
2021-03-01 2021-03-03Luxembourg, Place de la Gare