2003 IRISH SCIENTIST YEAR BOOK

Home Page

Table of contents

Index by Author

Index by topics

Search


Limerick Institute of Technology

John Cosgrove & Rachel O'Toole
Extending UML for real-time industrial automation applications

Architecture mapping in a real-time system

Object-oriented modelling consists of the analysis of a problem and the design of a solution to that problem through identifying objects to be modelled. The problem can be anything from a new system to be developed to the re-engineering of an existing system. Through understanding the relationship between the objects, an overview of the system can be created.

As part of an on-going MSc project at LIT, which is evaluating the application of object-oriented methodologies in industrial automation, the Unified Modelling Language (UML) is being investigated as a method that facilitates real-time system development. Real-time systems are usually embedded systems in which the result of a computation is secondary to the time in which it is received; concurrency and hardware/software partitioning are also important in such systems. An example of a real-time system is a production line at a bottling plant. There are two different machines on the production line: one, which labels the bottles, and another, which puts lids on the bottles. The time at which each machine operates is critical, as too early or too late will result in a bottle either being unlabelled or without a lid.

UML is essentially a mixture of several different object oriented design methodologies. The current version of UML (1.4) doesn't support the design of real-time systems, and the critical issue of timing is not adequately represented. In order to use UML for the development of real-time systems, it must be extended to model timing, concurrency, and partitioning issues.

The timing can be expressed by extending the 'Sequence Diagram' to show the mapping of the events and operations in each object. The available diagrams in UML are inadequate to represent concurrency; therefore another diagram must be added to the model to show the different multi-tasking issues, and is aptly called a 'Concurrency Diagram'. Lastly, to represent partitioning, a 'System Architecture Diagram' is used. The deployment diagram offered by UML is insufficient to represent the three different architecture layers of a real time system (object, software, and system architecture).

In conclusion, UML has been widely adopted for the development of Information Technology Systems, since its initial release in 1997. It is now being used in the electronics industry as a means for developing industrial automation applications. Although real-time system development is only currently supported by extending UML, it is envisaged that UML 2.0 will automatically support the design and development of such systems.


Contact: John Cosgrove & Rachel O'Toole, Department of Electrical/Electronic Engineering, LIT;
E-mail: [email protected] & [email protected]