OO-101
An Overview of UML for Real-Time Embedded Development
Length: 1 day Cost: £545 Course description - see below or view PDF Check course dates - click here Booking information - click here
Course Detail
Course Description:
This one-day course introduces the Unified Modelling Language
(UML) but with a special consideration for its use in the
development of real-time embedded systems. The course gives a
history of UML, introduces all the UML diagrams, discusses a
typical process for applying UML and then addresses the current
issues of using UML for real-time embedded development.
Overview:
A one-day course introducing UML for use in the design of realtime
embedded systems. The course is also a good primer in the
concepts of object orientation (OO), such as inheritance and
polymorphism. The course is intended only to be an overview -
attendees will not be equipped to start using UML after attending
this course.
Course Objectives:
• Provides an overview of UML, including its history
• Introduces each diagram in UML
• Familiarises attendees with basic OO concepts
• Introduces an example process in which to apply UML
• Highlights current weaknesses when applying UML to realtime
embedded systems
• Highlights the current UML case-tools suitable for use in
real-time embedded development
Delegates will learn:
• How UML has developed
• The concepts of an iterative and incremental process for
applying UML
• A conceptual understanding of OO features (e.g. inheritance
and polymorphism)
• Basic understanding of the UML diagrams and their uses
• Where UML falls short for real-time embedded systems
• Which case-tools support UML for real-time development
Pre-requisites:
Knowledge/experience of the development of real-time embedded
systems
Who Should Attend:
The course is suitable for anyone who currently only needs an
overview of UML e.g. managers or engineers who are trying to
decide if UML is the right way forward for them or Field
Application Engineers whose products are involved in UML in
some way. It is also suitable for managers who just need to
understand what their engineers or customers are doing without
needing to take a full UML course.
Duration:
One day
Course Materials:
• Delegate Handbook
Related courses:
• OO-503 Real-Time Software Design with UML 2.0
• OO-301 Applying Real-Time UML
• SE-501 Real-Time Software Engineering
• SE-401 Systems Engineering using SysML
Course Outline
History and Background:
- Principles and benefits of OO
- Background to UML
- OMG-UML specification
- Overview of UML diagrams Process and Diagrams:
- Core features of real-time embedded systems
- Models of Software Development
- An Incremental and iterative development
process for UML
- The importance of diagrams Classes, Objects and Code:
- Objects and their features
- The class and how it relates to an object
- Software templates
- Encapsulation
- Interfacing
- Information hiding
- The three basic models of an OO design
- UML class and object notation
- Association and multiplicity Inheritance and Aggregation:
- Concept of aggregation
- UML notation for aggregation
- Composite aggregation
- How Inheritance simplifies design change
- Classes and sub-classes
- Inheritance notation
- Benefits of inheritance
- Interface classes
- Polymorphism Interaction Diagrams:
- Collaborating objects
- The sequence diagram
- The collaboration diagram
- Active and passive objects
- Active and passive object communication State and Activity:
- Concept of states
- Introduction to the state diagram
- Relating the state diagram to the other UML
diagrams
- The activity diagram Use Cases:
- Basic use case notation
- Identifying use cases
- Use case text descriptions
- Scenarios
- The extend relationship
- The include relationship
- The CRC technique
- Object stereo types
- How use cases relate to interaction diagrams
and classes Issues:
- Problems of applying UML to real-time
embedded systems
- Semantic problems
- Modelling concurrency and distribution
- Notation issues
- Missing diagrams
- Process issue
- Case-tool vendors
- Further reading