Course Highlights:
The Unified Modelling Language (UML) is actually just a design notation. To develop software using UML you must adhere to a process which describes how to use this notation. This course describes a process for designing real-time embedded systems (RTES) using UML 2.0 as the notation.
It is assumed delegates are already familiar with the UML notation and goes on to teach its effective application. By using comprehensive real-world examples the course also identifies the areas where UML 2.0 improves on UML 1.5, but also still identifies its weaknesses (areas such as concurrency, multi-processing and distributed systems). The course is backed up by a comprehensive ‘real-world’ CASE study demonstrating how to apply UML 2.0 to RTES.
Delegates will learn:
- How to develop practical designs for real-time applications using UML 2.0 modelling techniques.
- How to apply these ideas in the framework of an integrated, traceable and consistent software design process.
- What diagrammatic and modelling underpinnings are provided by UML 2.0 for developing RTES.
Course Objectives:
- To show how to develop real-time software in a rigorous and systematic manner using UML 2.0 modelling techniques.
- To enable attendees to develop their own practical design skills.
Who Should Attend:
- Ideal for engineers who have attended vendor tool training but now need to learn practical application of UML
- Designers looking to improve the way they apply UML
- Designers new to the area of real-time software design.
- Developers with notational UML knowledge who are embarking on projects using UML-based techniques for the first time.
Pre-Requisite:
- A notational knowledge of UML.
- Knowledge of the basics of OO design principles and methods.
- Some understanding of technical software development methods and some knowledge of a high-level programming language.
Course Outline:
Analysing and formalising system requirements
- Scenarios and use cases
- System scope and direct and indirect actors.
- Modelling actor-system interactions graphically
Defining system and software requirements
- The system use case model
- The system interaction model
- The system scope model
- The system dynamic model
- The software use case model
Developing larger systems
- Developing the subsystem model
- Packages and components
- Interfacing to the real-world; device-software interactions
Developing the ideal object model
- Object relationships, communication and control in an ideal environment
Developing the specification model
- Mismatches between the ideal and the implementation models
- Composite structures, ports and provided/required interfaces
Concurrent systems and task-based design
- Problems with abstract software design
- Fundamentals of multitasking design
Implementation modelling - the tasking model
- Mapping the specification model to the implementation one
- Issues of inter-task communication
Implementation modelling - the practical sequential model
- Controlling the collective behaviour of objects in sequential code: the coordinator object
- Specifying algorithmic (processing) operations using activity diagrams
Code-related issues
- Logical and physical models
- Software - constructs and artefacts
- Structuring and packaging of software
- Implementation modelling.
Distributed and multi-computer systems
- Multi-computer architectures for real-time systems
- Criteria for mapping software onto hardware
- A practical design technique
Case study
- The case study, which is an integral part of the course, is based on developing software for an embedded application.
|
We are a professional organisation providing training services to companies. We offer a comprehensive range of training courses, workshops and seminars covering every aspects relating to engineering.
We provide various training programs that meet the immediate and future needs of engineers. The training is organised through seminar style, hands-on workshop, project-based tutorial or a mixture to bring the maximum learning benefits to the enginners. |
|
We have a quality pool of leading authorities, worldwide experts and fully trained up professionals who are constantly striving to uncover the pitfalls and best practices of modern technology development. |
 |
|