CS 4448 - Fall 1998
Object-Oriented Programming and Design
Talk 4.3
by
Kelly Le
Real-Time Object-Oriented Modeling
by
Kevin W. Smith
- Introduction
The author is Kevin Smith who is a senior software designer for Nortel Canada. This article is his description of the ObjecTime CASE tool as it was used in
his company and information of the product in general.
- What is ObjectTime?
ObjecTime supplies a powerful graphic modeling environment for the
object-oriented design and simulation of event-driven real-time systems.
- ROOM methodology
The ObjectTime toolset uses the Real-time Object-Oriented Modeling (ROOM)
methodology. This methodology is similar to other modeling methodologies
such as UML and BOOCH. The one distinguishing characteristic of ROOM is
that it provides for state machine inheritance.
- Prototyping - RPL
ObjecTime provides Rapid Prototyping Language (RPL) which is a proprietary
language derived from Smalltalk. Like Smalltalk, RPL is object oriented,
typeless and interpreted. The recommendation is that RPL be used in high-level
design and C++ be used during detailed design and implementation.
- Services
Because of the importance of meeting real-time software development
requirements, two of the most important services offered by ObjectTime are:
- Run-time messaging
The messaging service allows user-defined signals to be sent between objects.
The event model guarantees that a single event is never interrupted. This is
important in guaranteeing real-time.
- Microsecond timing
The timing service allows user-defined timers to be established. Whenever a
timer fires, the object associated with that time is notified that the
specified time period has expired. This is useful in implementation of
time-critical services.
- Strengths
- Link externally defined libraries
It is possible to link existing C++ classes and libraries to ObjecTime models.
- Encourages re-use
The ROOM methodology supports state machine inheritance. States, transitions,
functions and variables are all inherited. This encourages re-use because
less time is spent on the development and testing of new objects.
- Supported on multiple platforms
-
Windows NT
-
UNIX
-
Real-time OS
- Weaknesses
- Long learning curve
There is a long learning curve unless the developer has had considerable
experience with CASE tools.
- Forbids multiple inheritance
There is a work around for this. Classes that implement multiple inheritance
can be linked in from an external source.
-
Externally defined classes do not appear in graphical models.
-
Integration with other 3rd party tools is challenging
- For more information:
Visit http://www.objectime.com
Copyright © University of Colorado. All rights reserved.
Revised: September 25, 1998