Presentation is loading. Please wait.

Presentation is loading. Please wait.

CS 491z / CS 791z Topics on Software Engineering

Similar presentations


Presentation on theme: "CS 491z / CS 791z Topics on Software Engineering"— Presentation transcript:

1 CS 491z / CS 791z Topics on Software Engineering
Spring 2004 Introduction to RTS January 26, 2004

2 RTS: A Characterization……
This section of the presentation is based on [Dascalu01] “A real-time system must respond to externally generated stimuli within a finite, specifiable time delay” [Everett95] An RTS differs from a “regular” (non-RTS) system in at least the following aspects [Stankovic88]: Have deadlines attached to some or all tasks Faults in the system may lead to catastrophic consequences Must have the ability to deal with exceptions Must be fast, predictable reliable, adaptive

3 .RTS: A Characterization.….
“Development of most software focuses on how to handle a normal situation, but real-time, critical-application development also focuses on how to handle the abnormal situation” [Everett95] RTS “must operate under more severe constraints than ‘normal’ software yet perform reliably for long periods of time” [Douglass99]

4 ..RTS: A Characterization….
A classification of RTS:

5 …RTS: A Characterization…
Requirements for RTS: Timeliness Reaction to stimuli “on time” (deadlines must be met) Relative and absolute timing constraints Reliability Many errors have roots in incorrect specification Formal techniques needed for safety-critical systems Intensive dynamics Models to describe behavior are necessary (based on finite state machines)

6 ….RTS: A Characterization..
Requirements for RTS (cont’d): Exception handling Priorities should be assigned to stimuli/events Mechanisms for handling interrupts need be developed Concurrency Parallel tasks are inherent in RTS The environment is also “concurrent” in nature Distribution & resource allocation Distribution is not necessarily a characteristic of RTS, but should be taken into consideration in larger applications

7 …..RTS: A Characterization.
Requirements for RTS (cont’d): Communication and synchronization Synchronous and asynchronous communication mechanisms should be designed Size In larger applications, there are numerous processes and threads Size is associated with continuous change Decomposition in smaller units is needed, as are mechanisms for modeling hierarchical structures

8 .…..RTS: A Characterization
Requirements for RTS (cont’d): Non time-constrained activities Worst case scenarios cannot be easily evaluated Computations & data modeling In process control systems computations can be complex In RT databases data must have temporal validity Reuse RTS are poor candidates for reuse (are too specialized) However, OO design may provide solutions

9 Additional References
[Dascalu01] Dascalu, S., Combining Semi-forma and Formal Notations in Software Specification: An Approach to Modelling Time-Constrained Systems, PhD thesis, Dalhousie University, Halifax, NS, Canada, 2001. [Douglass99] Douglass, B.P., Doing Hard Time: Developing Real-Time Systems with UML, Objects, Frameworks and Patterns, Addison-Wesley, [Everett95] Everett, W., and Honiden, S., “Reliability and Safety of Real-Time Systems,” IEEE Software, 12(3), May 1995, p [Gibbs94] Gibbs, W.W., “Software’s Chronic Crisis,” Scientific American, Sep. 1994, p [Stankovic88] Stankovic, J.A., and Ramamritham, K., Tutorial: Hard Real-Time Systems, IEEE Computer Society Press, 1988.


Download ppt "CS 491z / CS 791z Topics on Software Engineering"

Similar presentations


Ads by Google