
| |
Building Executable Models Using Rose©
RealTime
Course Overview
This course is designed to teach the basic skills
necessary to use Rose RealTime (RRT) to build executable models. RRT is a
powerful tool with many features that support all phases of software
development, from Systems Engineering all the way through Implementation and
Test. In addition to the basic skill, the instructor will use his
extensive experience and knowledge to put all of the analysis and design
activities in perspective, so that proper and deliberate thought is employed
while using RRT. An understanding of the basic steps in object-oriented
analysis and design are covered early in the course. From there, the
student goes through a series of parts that deal with the analysis and design of
structural and behavior elements--first from an introductory level, then
intermediate and then again at a more advanced level. The instructor is
very adept at using examples from the customer's business domain to help
students understand basic and advanced principles.
Students with working knowledge of OOAD concepts and practices, real-time, and
UML will do better--the more they know the better. This is NOT a beginner
modeling/programming course. The lab exercises are carefully designed to
draw upon an individual's analysis and design skills. The instructor is
skilled at dealing with students of varying skill levels and experience.
This five day course is complete with lectures and lab
exercises.
Part 1 – Real-Time Systems
Review of basic real-time
concepts relevant to modeling real-time systems; challenges to real-time
development and how this course and model driven development helps solve them; UML;
executable models; model views; basic software engineering principles applied to
modeling; passive versus active modeling; finite state machines; introduction to
real-time profile to UML.
Part 2 – Basic Analysis Work Flow
Analysis work flow for
building executable models with Rose® RealTime; modeling heuristics;
best practices; topical overview of use-case analysis.
Part 3 – Basic Design Work Flow
Design work flow for building
executable models with Rose® RealTime; modeling heuristics; best
practices; class view versus interaction view; model design refinement.
Part 4 – Introduction to Rose® RealTime
Rose® RealTime
GUI; key aspects of the RRT environment such as model repository, diagrams,
specifications; model and workspace files; browsers and browser views;
controlling the RRT environment; RRT gotchas; diagrams types and tool boxes; RRT
configuration options.
Part 5 – Real-Time Profile for UML –Structure Modeling Basics
Introduction to the basic
concepts in RRT that support the Real-Time Profile for UML, such as Capsules,
Protocols, Ports, and Connectors; diagrams to support modeling RT-UML structure
and behavior; use of components and deployment view elements to build
executability.
Part 6 – Real-Time Profile for UML –Behavior Modeling Basics
Explore capsule behavior
implemented through finite state machines; modeling state driven behavior; state
machine states, transitions, and actions; action code.
Part 7 – Run-Time Services
Rose® RealTime
run-time services overview; log services; communication services; timer
services; basic introduction to frame services; asynchronous send versus
synchronous send; supporting concepts and constructs for design and testing.
Part 8 – Modeling Complex Structure
Capsule structure;
sub-capsules; Aggregation, Attribute, and Operation tool wizards; relay ports
versus end ports; capsule structure hierarchies; port cardinality; containment
view.
Part 9 – Modeling Complex Behavior
Capsule state machines;
hierarchical state machines; RRT state machine mechanics; internal versus
external self-transitions; transition; run-to-completion semantics; insight into
how communication services works.
Part 10 – Using Inheritance
Structure inheritance;
behavior inheritance; caveats, limitations, and best practices; inheritance
view; overriding base class features.
Part 11 – Object-Oriented Software Architecture
Software architecture
issues; architecture layering; architecture design conventions for hierarchy,
abstractions, and dependencies; model organization; packages; interfaces;
documentation conventions; naming conventions; best practices.
Part 12 – Modeling Dynamic Structure and Behavior
Dynamic model structure;
Plug-in and Optional capsule roles; importation and deportation; multiple
containment; RTS and debugging dynamic behavior.
Part 13 – Concurrency
Modeling concurrency;
physical and software threads; processes and executable deployment; run-time
frame service; components; brief overview of RTS PeerController; implementing
IPC.
Part 14 – Team Development
Rose® RealTime
Controlled Units; model sharing, import and export; configuration management
basics as they relate to RRT models; Path Maps; managing external code and
resources.
Part 15 – Integration
Integrating external
components into RRT; use external code.
Part 16 – Testing
Introduction to auto test
generation in RRT; specification sequence diagrams; auto generating test
harnesses.
Part 17 – Open Topics
Discussion of any number of
possible topics, including those that prove more challenging to students during
the course but were deferred; Any “advanced” topics raised during the course or
arranged for ahead of time can be covered during this time; complete lab
exercises; demonstration of certain RRT features not covered in detail during
the course.
Rose©
RealTime, officially called Rational Rose Realtime, is a registered trademark of
IBM in the United States
|