Real-Time Systems

, Volume 35, Issue 1, pp 1–31 | Cite as

Enforceable component-based realtime contracts

Supporting realtime properties from software development to execution
  • Hermann Härtig
  • Steffen Zschaler
  • Martin Pohlack
  • Ronald Aigner
  • Steffen Göbel
  • Christoph Pohl
  • Simone Röttger
Article

Abstract

We present enforceable component-based realtime contracts, the first extension of component-based software engineering technology that comprehensively supports adaptive realtime systems from specification all the way to the running system.

To provide this support, we have extended component-based interface definition languages (IDLs) and component representations in repositories to express realtime requirements for components. The final software, which is assembled from the components, is then executed on a realtime operating system (RTOS) with the help of a component runtime system. RTOS resource managers and the IDL-extensions are based on the same mathematical foundation. Thus, the component runtime system can use information expressed in a component-oriented manner in the extended IDL to derive parameters for the task-based admission and scheduling in the RTOS. Once basic realtime properties can thus be guaranteed, runtime support can be extended to more elaborate schemes that also support adaptive applications (container-managed quality assurance).

We claim that this study convincingly demonstrates how component-based software engineering can be extended to build systems with non-functional requirements.

Keywords

Component-based software engineering Real-time systems Component runtime environment Model-driven software development 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aagedal, J (2001) Quality of service support in development of distributed systems. Ph.D. diss., University of OsloGoogle Scholar
  2. Aigner R, Pohl C, Pohlack M, Zschaler S (2004) Tailor-made containers: Modeling non-functional middleware Service. Workshop on models for non-functional aspects of component-based software (NFC’04), colocated with UML 2004. Lissabon, PortugalGoogle Scholar
  3. Aigner R, Pohlack M, Röttger S, Zschaler S (2003) Towards pervasive treatment of non-functional properties at design and run-time. In: Proc intl conf on software & systems engineering and their applications (ICSSEA’03), Paris, FranceGoogle Scholar
  4. Cheesman J, Daniels J (2001) UML components: a simple process for specifying component-based software. Addison Wesley Longman, IncGoogle Scholar
  5. Chung, J-Y, Liu JWS, Lin K-J (1990) Scheduling periodic jobs that allow imprecise results. IEEE Trans on Comput 39(9)Google Scholar
  6. DeMichiel LG (2003) Enterprise JavaBeans specification version 2.1 Final Release. Sun MicrosystemsGoogle Scholar
  7. Feske N, Härtig H (2004) Demonstration of DOpE—A window Server for Real-Time and Embedded Systems. In: 24th IEEE real-time systems symposium (RTSS) Cancun, Mexico, pp 74–77Google Scholar
  8. Fleury M, Reverbel F (2003) The JBoss extensible server. In: Endler M, Schmidt D (eds) Intl Middleware Conf vol 2672 of Lecture Notes in computer science. ACM / IFIP / USENIX, Rio de Janeiro, Brazil, SpringerGoogle Scholar
  9. Göbel, S (2004) Encapsulation of structural adaptation by composite components. ACM workshop on self-managing systems (WOSS’04). Newport Beach, CA, USAGoogle Scholar
  10. Göbel S, Pohl C, Aigner R, Pohlack M, Röttger S, Zschaler S (2004) The COMQUAD component container architecture. In: 4th IEEE/IFIP working conf. on software architecture (WICSA-4). Oslo, NorwayGoogle Scholar
  11. Göbel S, Pohl C, Röttger S, Zschaler S (2004) The COMQUAD component model—enabling dynamic selection of implementations by weaving non-functional aspects. In: Murphy G, Lieberherr K (eds) 3rd intl conf on aspect-oriented software development (AOSD’04). ACM Press, Lancaster, UK, pp 74–82Google Scholar
  12. Gokhale A, Schmidt DC, Natarajan B, Wang N (2002) Applying model-integrated computing to component middleware and enterprise applications. Communications of the ACM, vol. 45. Special Issue on Enterprise Components, Service and Business RulesGoogle Scholar
  13. Hamann C-J, Löser J, Reuther L, Schönberg S, Wolter J, Härtig H (2001) Quality assuring scheduling—Using stochastic behavior to improve resource utilization. In: Proc. 22nd IEEE real-time systems symposium (RTSS-XXII), London, UKGoogle Scholar
  14. Härtig H, Baumgartl R, Borriss M, Hamann Cl-J, Hohmuth M, Mehnert F, Reuther L, Schönberg S, Wolter J (1998) DROPS: OS support for distributed multimedia applications. In: Proc 8th ACM SIGOPS European workshop: support for composing distributed applications (Sintra, Portugal, Sept. 1998)Google Scholar
  15. Härtig H, Reuther L, Wolter J, Borriss M, Paul T (1999) Cooperating resource managers. In: 5th IEEE real-time technology and applications symposium (RTAS), Vancouver, CanadaGoogle Scholar
  16. International Standardisation Organisation. (1998). Information technology—Quality of service: Framework. ISO/IEC 13236:1998, ITU-T X.641Google Scholar
  17. J Consortium. 2000, September. Real-time core extensions (RTCE). J Consortium. Available at http://www.j-consortium.org/
  18. Kon F, Campbell RH, Ballesteros FJ, Mickunas MD, Nahrstedt K (2000) 2K: A distributed operating system for dynamic heterogeneous environments. In: 9th Intl symposium on high performance distributed computing, IEEE, Pittsburgh, USAGoogle Scholar
  19. Kon F, Yamane T, Hess CK, Campbell RH, Mickunas MD (2001) Dynamic resource management and automatic configuration of distributed component systems. In: 6th conf on object-oriented technologies and systems (COOTS ’01), USENIX, San Antonio, USAGoogle Scholar
  20. Liedtke J (1995) On μ-Kernel construction. 15th ACM symposium on operating system principles (SOSP), Copper Mountain Resort, CO, pp 237–250Google Scholar
  21. McIlroy MD (1968) Mass produced software components. In: Proc Nato software eng conf (Garmisch, 1968), pp 138–155Google Scholar
  22. Medvidovic N, Taylor RN (2000) A classification and comparison framework for software architecture description languages. IEEE Trans Soft Engng 26(1):70–93CrossRefGoogle Scholar
  23. Meyerhöfer M, Neumann C (2004) TESTEJB—A measurement framework for EJBs. In: Crnkovic I, Stafford JA, Schmidt HW, Wallnau K (eds) In: Proc 7th intl symposium on component-based software engineering (CBSE’04), LNCS no. 3054. Springer, pp 294–301Google Scholar
  24. National Institute of Standards and Technology (1999). Requirements for real-time extensions for the Java platform. National Institute of Standards and Technology. Available at http://www.nist.gov/rt-java/
  25. Object Management Group (2001) CORBA Components. OMG document. ptc/01-11-03Google Scholar
  26. Object Management Group (2002) UML Profile for schedulability, performance, and time specification. OMG document. URL http://www.omg.org/ cgi-bin/doc?ptc/02-03-02
  27. Object Management Group (2003a) Real-time CORBA specification. OMG document. formal/03-11-01Google Scholar
  28. Object Management Group (2003b) UML 2.0 OCL Specification. OMG document. ptc/2003-10-14Google Scholar
  29. Pohlack M, Aigner R, Härtig H (2004) Connecting real-time and non-real-time components. Technical Report TUD-FI04-01, Technische Universität DresdenGoogle Scholar
  30. Reuther L (2005) Disk storage and file systems with quality-of-service guarantees. Ph.D. diss., TU Dresden, Fakultät InformatikGoogle Scholar
  31. Reuther L, Pohlack M (2003) Rotational-position-aware real-time disk scheduling using a dynamic active subset (DAS). In: 24th IEEE real-time systems symposium (RTSS), Cancun, Mexico, pp 374–385Google Scholar
  32. Rietzschel C (2003) VERNER—ein video EnkodeR uNd playER für DROPS. Diploma thesis, Technische Universität Dresden. In GermanGoogle Scholar
  33. Röttger S, Aigner R (2002) Modeling of non-functional contracts in component-based systems using a layered architecture. Component Based Software Engineering and Modeling Non-functional Aspects (SIVOES-MONA), Workshop at UML 2002Google Scholar
  34. Röttger S, Zschaler S (2003) CQML+: Enhancements to CQML. In: Bruel J-M (ed) Proc 1st intl workshop on quality of service in component-based software engineering, Toulouse, France. Cépadués-Éditions, pp 43–56Google Scholar
  35. Röttger S, Zschaler S (2004) A software development process supporting non-functional properties. In: Proc IASTED intl conf on software engineering (IASTED SE 2004). ACTA PressGoogle Scholar
  36. Röttger S, Zschaler S (2004) Model-driven development for non-functional properties: refinement through model transformation. Proc UML Conf To appearGoogle Scholar
  37. RTJ (The Real-Time for Java Expert Group) (2001) The real-time specification for java. v1.0. The Real-Time for Java Expert Group. http://www.rtj.org/
  38. Schmidt DC, Levine DL, Mungee S (1998) The design of the TAO real-time object request broker. Computer Communications 21Google Scholar
  39. Staehli R, Eliassen F (2002) QuA: A QoS-Aware component architecture. Technical Report Simula 2002-12, Simula Research LaboratoryGoogle Scholar
  40. Szyperski C (2002) Component software: beyond object-oriented programming, 2nd Edition. Component Software Series. Addison-Wesley Publishing CompanyGoogle Scholar
  41. TimeSys C (2004) TimeSys linux. TimeSys Corp. See http://www.timesys.com/
  42. Wang N, Gill CD, Schmidt DC, Gokhale A, Natarajan B, Rodrigues C, Loyall JP, Schantz RE (2003) Total quality of service provisioning in middleware and applications. Microprocessors and Microsystems 27(2):45–54 Special Issue on Middleware Solutions for QoS-enabled Multimedia Provisioning over the InternetGoogle Scholar
  43. Zschaler S (2004) Towards a semantic framework for non-functional specifications of component-based systems. In: Proc EUROMICRO conf 2004, track on component-based software engineering, Rennes, FranceGoogle Scholar

Copyright information

© Springer Science + Business Media, LCC 2006

Authors and Affiliations

  • Hermann Härtig
    • 1
  • Steffen Zschaler
    • 1
  • Martin Pohlack
    • 1
  • Ronald Aigner
    • 1
  • Steffen Göbel
    • 2
  • Christoph Pohl
    • 2
  • Simone Röttger
    • 1
  1. 1.Department of Computer ScienceTechnische Universität DresdenDresdenGermany
  2. 2.SAP AGSAP Research CEC DresdenDresdenGermany

Personalised recommendations