A challenging 5 day UML course designed to stretch students and equip them with the essential skills of modelling in the broadest possible sense. It finishes with a full day exercise to consolidate the learnings of the week.
This is neither a software engineering or a business analysis course. Its purpose is to enable students to recognise and abstract problems, and articulate those problems in a language that has been accepted as the de facto standard for business, software and architectural modelling for the past 15 years.
|Pre-requisites:||Any business modelling or software development skills would put attendees in good stead for this course. The course covers a lot of basic ground work so students should not be put off from attending if they do not possess these skills.|
|Delegates will learn:||How to effectively use; use cases, activity diagrams, sequence diagrams, state diagrams, class diagrams, deployment and package diagrams. Students will learn from industry experts, each having over 10 years UML experience. These lecturers will show students how to guarantee consistency amongst their models and ensure that they correlate with one another, through tried and tested techniques that they have applied in the field.|
|Customization:||This course is suitable for customization to meet your needs|
|Introduction||A review of the IT landscape, how we arrived at UML and where we believe we are going.|
|Software engineering principles||Abstraction, encapsulation, modularisation, coupling, cohesion, interfaces and services etc. Are all basic concepts that most people involved with IT use in their everyday vocabulary. This section de-mystifies these terms and sets up a standard language for the rest of the course.|
|Basic architectural thinking||Partitioning systems horizontally and verticially, different types of architectural thinking such as TOGAF, RealTime UML and 4+1. Discover why not having a solid architecture can adversely affect the results of a systems development.|
|Use cases||Actors, use cases, use case relationships such as includes, extends and generalisations, dependencies, package level thinking, scenarios and a basic introduction to sequence diagrams as a shorthand to modelling use cases.|
|Activity diagrams||Activity nodes, object nodes and flow, control flow, forking and joining of control flows, decision and merge points, concurrency modelling, signals, using actors on activity diagrams, and interruptible regions. How to ensure your activity diagrams is synchronised with your use case diagrams.|
|Sequence diagrams||Actors/Objects, the importance of the system boundary, messages, focus of control bars, parameters, object Ids, fragments, the correlation between sequence diagrams and activity diagrams, and how to build a sequence diagram from an activity diagram.|
|Class diagrams||Classes, objects, attributes, operations, associations, aggregation, association classes, dependencies, XOR relations, qualifiers, constraints, multiplicity and cardinality constraints, reflexive associations, homomorphic and metamorphic relations, and inheritance. Building a class diagram from a sequence diagram and by simply reading documentation.|
|State diagrams||States, transitions, state and transitional behaviour, events, nested states, building state diagrams from sequence diagrams, and actors and objects on a state diagram.|
|Bringing all the models together||Demonstration of how all the diagrams that have been seen work together to form a single model. Graphic depiction of the relationship between the different models and a demonstration of traceability throught a complete UML model.|
|Hands on experience||The instructor lead teaching is augmented with a running case study that exercises each concept as it is taught. At the end of the teaching of the above topics, students are given 7 hours to model a complex business problem. This exercise is designed to consolidate everything that has been taught.|