Name: Shilpashree Srinivasamurthy Course: ACS 562, System Analysis And Design Paper Reviewed:

advertisement
Name: Shilpashree Srinivasamurthy
Course: ACS 562, System Analysis And Design
Paper Reviewed: Designing Real-Time and Embedded Systems with the COMET /
UML method
Author: Hassan Gomaa
Date: 06/25/2010
Combining the object-oriented concepts with the concepts of concurrent processing
is very important for successful design of real-time and distributed applications which
is lacking in most of the current object oriented analysis and design methods. This
paper introduces the key aspects of COMET method which integrates object-oriented
and concurrent processing concepts and also uses the UML notation. This method is
proven to be useful for designing real-time and embedded systems by proving the
example of Elevator Control System.
The paper starts with the definition of the COMET method and provides detailed
sections explaining of each of its phases namely Requirements Modeling with UML,
Analysis Modeling with UML, and Design Modeling with UML.
COMET stands for Concurrent Object Modeling and Architectural Design Method.
COMET is a UML based, highly iterative object-oriented software development
method that addresses the requirements, analysis, and design modeling phases of
the object-oriented development life cycle.
1. Requirements Modeling: In this phase, the system is considered as a black box
and the Use Case Model is developed. In this model the functional requirements of
the system are defined in terms of use cases and actors.
2. Analysis Modeling: In this phase static model of the system is developed which
is followed by the development of the dynamic model. Objects to be considered for
the analysis model is determined by using Object structuring criteria.
(i) Static model: This model defines the structural relationships among
problem domain classes. Static modeling is important for real-time and
embedded systems.
(ii) Dynamic model: In this model use cases from the requirements model
are refined to show the objects that participate in each use case and how they
interact with each other. State dependent objects are defined using
statecharts. Dynamic modeling is important for distributed and real-time
applications.
Design Modeling: In this phase an Architectural Design Model is developed. The
overall software architecture is decided by providing Subsystem structuring criteria.
(i) Software Architecture: A collaboration diagram for each use case is
developed in the analysis model. The consolidated collaboration diagram is a
synthesis of all the collaboration diagrams developed to support the use
cases. In this phase a consolidated collaboration diagram is constructed which
depicts the objects and messages from all the use case based collaboration
diagrams.
(ii) Architectural Design of Distributed Real-Time Systems: In this
phase
a
distributed
real-time
system
is
structured
into
distributed
subsystems. A subsystem is designed as a configurable component and
corresponds
to
a
logical
node.
Tasks
in
different
subsystems
may
communicate with each other using several different types of message
communication.
(iii) Task Structuring: In this phase each subsystem is structured into
concurrent tasks and the task interfaces are defined. Task structuring criteria
are provided to assist in mapping an object-oriented analysis model of the
system to a concurrent tasking architecture.
(iv) Detailed Software Design: In this phase the internals of composite
tasks
that
containing
nested
objects
are
designed,
detailed
task
synchronization issues are addressed, connector classes are designed that
encapsulate the details of inter-task communication, and each task's internal
event sequencing logic is defined
Performance Analysis of Real-Time Designs
Performance analysis of software designs is achieved by applying real-time
scheduling
theory. Real-time scheduling is an
approach
that
is particularly
appropriate for hard real time systems that have deadlines that must be met.
Another approach to analyze the performance is using event sequence analysis and
integrating this with the real-time scheduling theory
Download