Real-time systems embedded into larger applications are reactive: they are stimulated by signals from the environment and they respond with signals to the environment. Reactions of the system have to fulfill real-time requirements. The basic O-O properties are needed to hide hardware/software design decisions, to master the development of variants and to achieve maintainable, flexible system architectures. Additional models of the system dynamics are needed to specify real-time properties. After reviewing approaches to model dynamic behavior of systems, we concentrate on synchronous behavior models, their integration into an object-oriented design and the introduction of quantitative time constraints. A classification of preemptive and non-preemptive system tasks is discussed. In a system configuration the time-critical objects are identified. Classes are augmented by a behavior description. Time-critical objects are conceptionally executing in parallel. For a system configuration reaction times are obtained by a worst-case bottom-up analysis and used for prescheduling time-critical parts. Examples from medium sized industrial applications demonstrate, how the approach works in practice.
K-H Sylla and R. Budde are computer scientists at the German National Research Center for Information Technology. Their current work is on the design of embedded systems. They give tutorials and seminars on object-oriented system development and are consultants of industrial O-O projects.
Reinhard Budde is head of a project, in which an integration of O-O and synchronous languages for reactive systems is investigated.
Karl-Heinz Sylla is working on the analysis of real-time characteristics of O-O systems.
This tutorial describes the DSOM implementation of the CORBA Object Request Broker specification. The DSOM classes are described and the roles which they perform in an implementation outlined. In addition, DSOM is placed in the context of the joint Object Transaction Service specification as submitted to the OMG. The OTS layer adds transaction control and servicing to the distributed object management services provided by DSOM. This tutorial discusses the complementary nature of OTS and DSOM services, in the context of designing an object architecture for distributed transactional applications.
Mari Fleming is Solutions Consultant at IBM Banking Solutions Center, London, with a fourteen years' experience in IT and project management acquired in Europe and in the US. She is currently a lead technical consultant on IBM's worldwide O-O Foundry project which is developing standard objects and a standard object architecture for the banking industry.
The message-passing paradigm of objects fits in exceptionally well with the distributed nature of client/server systems. However, client/server systems pose a challenge for existing object development strategies, especially in their need for concurrency, distribution, and asynchronous messaging. Current O-O methods are rich in notation and description, but weak in process and heuristics. They do not adequately address the design of systems that must operate in distributed environments. This tutorial introduces a set of object analysis and design strategies found especially useful in developing client/server systems. The discussion particularly addresses the compatibility between O-O technology and client/server systems. Techniques for partitioning, taking advantage of distribution and concurrency, utilizing asynchronous message passing to the full are described. Examples are used to reinforce the ideas presented.
Sanjiv Gossain is Technology Director (Europe) for Cambridge Technology Partners, a professional services organization specializing in high-payback open systems in unprecedented time frames. Dr Gossain has been involved in the construction of object systems for over nine years, and holds a PhD in Object-Oriented Development and Reuse. He is a columnist for ObjectExpert magazine and a regular contributor to the Report on Object Analysis and Design.
This tutorial presents the OCTOPUS method which provides a systematic and effective approach for developing object-oriented software for embedded real-time systems that has been applied in a number of real projects in telecommunications and control systems, with far better results compared to other OO methods and to earlier conventional techniques. The OCTOPUS method is based on the popular OMT and Fusion methods, but also embodies common practice found in real-time systems. It applies proven object-oriented techniques and enhances them, if necessary, to match the specific needs of real-time systems such as concurrency, synchronization, communication, handling of interrupts, hardware interfaces and end-to-end response times. The method covers requirements specification, system architecture, subsystem analysis and design, and performance analysis in a well- integrated development process. This tutorial has two major parts: Part 1 walks through the development process and models, and Part 2 includes a complete case study.
Maher Awad has more than eight years of experience in developing hardware and real-time software at Nokia Telecommunications and later at Nokia Research Center. He is currently the manager of embedded systems area at Nokia Research Center.
Jurgen Ziegler worked ten years for Hewlett Packard Co. in developing real-time systems. After that, he was responsible for the development of system software products in Nokia Data. Since joining Nokia Research Center, he has worked on a company-wide initiative, that transfers object-oriented technology for the development of embedded microprocessor products.[an error occurred while processing this directive]