140 likes | 270 Views
Applicability of UML/RT to Embedded Systems. Programming Technology Lab (PROG) System & Software Engineering Lab (SSEL) Dept. of Computer Sciences (DINF) Vrije Universiteit Brussel (VUB). Werner Van Belle (WVB) Tom Toutenel (TT). Design Issues. Concurrency Timing Constraints
E N D
Applicability of UML/RT to Embedded Systems Programming Technology Lab (PROG) System & Software Engineering Lab (SSEL) Dept. of Computer Sciences (DINF) Vrije Universiteit Brussel (VUB) Werner Van Belle (WVB) Tom Toutenel (TT) SEESCOA
Design Issues • Concurrency • Timing Constraints • Hardware Constraints • memory constraints • input/output are different • OS Constraints • event handling • interface diversification (RTOS, minikernels) • Correctness SEESCOA
Real-Time UML • Developed by ObjecTime & Rational Rose • Douglass, Bruce Powel. Real-Time UML: Developing Efficient Objects for Embedded Systems. Addison Wesley 1998. A language for expressing the constructs and relationships of complex real-time systems. SEESCOA
Feature GeneralizeableElement (Meta)class visibility:{public, protected, private} isRoot:Boolean Generalization association Classifier * Class Composition association isActive:Boolean The UML Meta-Model SEESCOA
Concurrency in UML/RT • Actors already are concurrent in UML • Interaction Primitives: • asynchronous • balking • call • waiting • timed SEESCOA
Concurrency in UML/RT (2) message queues, rendezvous, RPC guards, transactions only rudimentary support SEESCOA
Real-Time Constraints • UML:no timing information • UML/RT:possibility to add timing constraints • sequence diagram with timing annotations • timing diagram SEESCOA
call ack number call ack transfer talk Sequence Diagram Caller Operator Callee a { b - a < 1 s } b time SEESCOA
deadline Timing Diagram Connected Establishing Not Connected time SEESCOA
Hardware • Memory Constraints (Resource Constraints): • no specific support in UML/RT • Input/Output Variations: • annotated with ports and signal lines in UML/RT • OS Interfacing & Event Handling huge impact on design, but very hardware dependent SEESCOA
Seamlessness • Design to Implementation • correctness • robustness (cfr exceptions) • Impact Analysis problem is even more prominent for embedded systems SEESCOA
Problems Bare-To-The-Metal Coding Not Portable Abstraction Layers More Resource Consumption Conflict of Interests SEESCOA
Solution Abstraction at the design level: • reuse/evolution should be easy(cfr variation points) • patterns based upon implemented architectures • never too implementation oriented • should be compilable SEESCOA
Conclusion Instead of making hardware-specific abstractions, we envision tools with ready-made compilable architectures. SEESCOA