UML applied to real-time systems

The course makes extensive use of practical exercises and examples to reinforce points made in the formal presentations. In addition to the UML diagrams, delegates learn the fundamental concepts of object oriented analysis and design including objects, classes, components, architecture and stereotypes.

The notation used is carefully restricted to the UML standard and its extensions and does not introduce any new diagrams or notation within existing diagrams. Delegates also learn how to use the UML within a style of real-time development process. This enables the attendee to understand and apply the various off-the-shelf process models currently available on the market. They will also be capable of contributing to the development or customisation of in-house process models.

Duration: 4 days

target audience

This course is suitable for people who are familiar with basic software engineering problems and techniques — no previous OO knowledge is assumed. In particular, it is aimed at:

  • team leaders, systems and applications programmers working on or preparing for projects using Object Oriented technologies;
  • analysts wishing to learn OO principles;
  • consultants and designers using or providing advice on OO development;
  • quality assurance personnel working on projects using OO technologies; and
  • project managers who are preparing for projects using OO technologies, or evaluating the technical benefits of the UML.

Introduction

  • challenges of developing real-time systems
  • objects: background and history
  • object concepts:
  • the object
  • objects collaboration
  • the class
  • inheritance
  • polymorphism
  • UML — use case diagram
  • the Use Case model
  • actors
  • use cases
  • context diagram
    • external environment
    • physical resources
    • external events
  • describing use cases
  • use case relationships: include, extend, generalisation
  • modelling guidelines

Class diagram

  • objects and classes
  • syntax of a class
  • class description
  • attributes
  • operations
  • links
  • associations
  • association class
  • qualifiers
  • ordering
  • ternary associations
  • aggregation
  • composition
  • composition vs. aggregation
  • generalisation and inheritance
  • modelling guidelines

Sequence diagram

  • objects interaction
  • sequence diagram — uml syntax
  • use cases and sequence diagrams
  • message specification
    • message signature
    • message properties — arrival pattern and sysnchronisation pattern
    • use of sequence diagrams
  • objects, roles
  • objects and responsibilities — types of control structures
  • identifying objects' responsibilities
  • stereotypes
  • timing constraints (latency and duration)
  • broadcasting messages — concurrency
  • object creation, destruction, recursion and conditions
  • relationship with class and use case diagrams
  • modelling guidelines

Statechart diagram

  • object lifecycles
  • statechart diagram
  • syntax of statechart diagram
  • states
  • transitions
  • events
  • attributes and conditions
  • action
  • activity
  • state machines
  • composite states — concurrent & sequential substates
  • modelling guidelines

The development process

  • overview of the process
  • requirements analysis
  • conceptualisation
  • analysis
  • system design
    • technical architecture
    • physical architecture
    • software architecture
    • infrastructure
    • resource management policies
    • distribution of control — design patterns
    • concurrency design
  • design increment
    • design patterns
  • build increment
  • incremental testing and delivery

Advanced modelling

  • OCL (Object Constraint Language)

Course Conclusion

Review of course

Please note, when taught at your site, this course is customizable; modules can be adapted, removed, added from other courses, or even created.

timetable

Day 1

  • introduction
  • Use Case diagram
  • class diagram

Day 2

  • sequence diagram
  • statechart diagram
  • the development process

Day 3

  • advanced modelling
  • course conclusion
  • review of course
print     printer-friendly version