Skip to main content
Log in

Specifying real-time properties in autonomic systems

  • ORIGINAL PAPER
  • Published:
Innovations in Systems and Software Engineering Aims and scope Submit manuscript

Abstract

Increasingly, computer software must adapt dynamically to changing conditions. The correctness of adaptation cannot be rigorously addressed without precisely specifying the requirements for adaptation. In many situations, these requirements involve absolute time, in addition to a logical ordering of events. This paper introduces an approach to formally specifying such timing requirements for adaptive software. We introduce TA-LTL, a timed adaptation-based extension to linear temporal logic, and use this logic to specify three timing properties associated with the adaptation process: safety, liveness, and stability. A dynamic adaptation scenario involving interactive audio streaming software is used to illustrate the timed temporal logic.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. RAPIDware. http://www.cse.msu.edu/rapidware/, Software Engineering and Network Systems Laboratory, Department of Computer Science and Engineering, Michigan State University, East Lansing, Michigan

  2. Allen R, Douence R, Garlan D (1998) Specifying and analyzing dynamic software architectures. In: Proceedings of the 1998 conference on fundamental approaches to software engineering (FASE’98), Lisbon

  3. Alur R, Henzinger TA (1994) A really temporal logic. J ACM 41(1):181–203

    Article  MATH  MathSciNet  Google Scholar 

  4. Appavoo J, Hui K, Soules CAN, Wisniewski RW, Silva DMD, Krieger O, Auslander MA, Edelsohn DJ, Gamsa B, Ganger GR, McKenney P, Ostrowski M, Rosenburg B, Stumm M, Xenidis J (2003) Enabling autonomic behavior in systems software with hot swapping. IBM Syst J Special Issue on Autonomic Comput 42(1)

  5. Bellini P, Mattolini R, Nesi P (2000) Temporal logics for real-time system specification. ACM Comput Surv 32(1):12–42

    Article  Google Scholar 

  6. Berry DM, Cheng BHC, Zhang J (2005) The four levels of requirements engineering for and in dynamic adaptive systems. In: Proceedings of the 11th international workshop on requirements engineering: foundation for software quality, Porto, Portugal

  7. Bershad BN, et al (1994) Spin—an extensible microkernel for application-specific operating system services. Techincal report Department of Computer Science and Engineering, University of Washington

  8. Bolot JC, Vega-Garcia A (1996) Control mechanisms for packet audio in Internet. In: Proceedings of IEEE INFOCOM’96, San Francisco, pp 232–239

  9. Bowman H, Thompson SJ (1998) A tableaux method for interval temporal logic with projection. In: TABLEAUX’98, international conference on analytic tableaux and related methods. Springer-Heidelberg, no. 1397 in Lecture Notes in AI, pp 108–123, http://www.cs.ukc.ac.uk/pubs/1998/528

  10. Chen WK, Hiltunen MA, Schlichting R (2001) Constructing adaptive software in distributed systems. In: of the 21st international conference on distributed computing systems, Phoenix, pp 635–643, http://citeseer.nj.nec.com/chen01constructing.html

  11. Cuesta CE, de la Fuente P, Barrio-Solarzano M (2001) Dynamic coordination architecture through the use of reflection. In: Proceedings of the 2001 ACM symposium on applied computing, ACM, New York, pp 134–140

  12. Degener J, Bormann C (2000) The GSM 06.10 lossy speech compression library and its applications. Available at http://kbs.cs.tu-berlin.de/ jutta/toast.html

  13. Emerson EA (1990) Temporal and modal logic. Handbook of theoretical computer science: formal models and semantics. vol B pp 995–1072

  14. Jahanian F, Mok AK (1986) Safety analysis of timing properties in real-time systems. IEEE Trans Softw Eng 12(9):890–904

    Google Scholar 

  15. Kephart JO, Chess DM (2003) The vision of autonomic computing. IEEE Comput 36(1):41–50

    Google Scholar 

  16. Kon F, Román M, Liu P, Mao J, Yamane T, Magalhães LC, Campbell RH (2000) Monitoring, security, and dynamic configuration with the dynamicTAO reflective ORB. In: Proceedings of the IFIP/ACM international conference on distributed systems platforms and open distributed processing, Springer-Heidelberg, no. 1795 in LNCS, pp 121–143

  17. Koymans R (1990) Specifying real-time properties with metric temporal logic. Real-Time Syst 2(4):255–299

    Article  Google Scholar 

  18. Kramer J, Magee J (1990) The evolving philosophers problem: dynamic change management. IEEE Trans Softw Eng 16(11):1293–1306

    Article  Google Scholar 

  19. Kramer J, Magee J, Sloman M (1992) Configuring distributed systems. In: Proceedings of the 5th workshop on ACM SIGOPS European, ACM, New York, pp 1–5

  20. Kulkarni SS, Biyani KN (2004) Correctness of component-based adaptation. In: Proceedings of the 7th international symposium on component-based software engineering, pp 48–58

  21. Kulkarni SS, Biyani KN, Arumugam U (2003) Composing distributed fault-tolerance components. In: Proccedings of the international conference on dependable systems and networks (DSN), supplemental volume, workshop on principles of dependable systems, pp W127–W136

  22. Lichtenstein O, Pnueli A (1985) Checking that finite state concurrent programs satisfy their linear specification. In: Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on principles of programming languages, ACM Press, pp 97–107, doi http://doi.acm.org/10.1145/318593.318622

  23. McKinley P, Sadjadi SM, Kasten EP, Cheng BHC (2004) Composing adaptive software. IEEE Comput 37(7):56–64

    Google Scholar 

  24. Ostroff J, Wonham W (1987) Modeling and verifying real-time embedded computer systems. In: Proceedings of the IEEE real-time systems symposium, pp 124–132

  25. Pal PP, Loyall J, Schantz RE, Zinky JA, Webber F (2000) Open implementation toolkit for building survivable applications. In: Proceedings of the DARPA information survivability conference and exposition, Hilton Head Island

  26. Pnueli A (1977) The temporal logic of programs. In: Proceedings of the 18th IEEE symposium foundations of computer science (FOCS 1977), pp 46–57

  27. Rizzo L (1997) Effective erasure codes for reliable computer communication protocols. ACM Comput Commun Rev

  28. Rosenberg J, Qiu L, Schulzrinne H (2000) Integrating packet FEC into adaptive voice playout buffer algorithms on the Internet. In: Proceedings of IEEE INFOCOM 2000, pp 1705–1714

  29. Rosner R, Pnueli A (1986) A choppy logic. In: Proceedings of symposium on logic in computer science, Cambridge, pp 306–313

  30. Sadjadi S, McKinley P, Kasten E, Zhou Z (2006) Metasockets: design and operation of run-time reconfigurable communication services. Softw Pract Exp 36:1157–1178

    Article  Google Scholar 

  31. Sadjadi SM, McKinley PK (2004) ACT: an adaptive CORBA template to support unanticipated adaptation. In: Proceedings of the 24th IEEE international conference on distributed computing systems (ICDCS), Tokyo

  32. Sadjadi SM, McKinley PK, Kasten EP (2003) Architecture and operation of an adaptable communication substrate. In: Proceedings of the ninth IEEE international workshop on future trends in distributed computing, San Juan, Puerto Rico

  33. Wang F, Mok A, Emerson EA (1992) Formal specification of asynchronous distributed real-time systems by APTL. In: Proceedings of the 14th international conference on software engineering, ACM, New York, pp 188–198

  34. Zhang J, Cheng BHC (2005) Specifying adaptation semantics. In: Proceedings of the 2005 workshop on architecting dependable systems, ACM, pp 1–7

  35. Zhang J, Cheng BHC (2006a) Model-based development of dynamically adaptive software. In: Proceedings of international conference on software engineering (ICSE’06), Shanghai

  36. Zhang J, Cheng BHC (2006b) Modular model checking of dynamically adaptive programs. Technical Report MSU-CSE-06-18, computer science and engineering, Michigan State University, East Lansing, Michigan, http://www.cse.msu.edu/zhangji9/Zhang06Modular.pdf, http://www.cse.msu.edu/zhangji9/Zhang06Modular.pdf

  37. Zhang J, Cheng BHC (2006c) Using temporal logic to specify adaptive program semantics. J Syst Softw (JSS), Architecting Dependable Systems 79(10):1361–1369

    Google Scholar 

  38. Zhang J, Yang Z, Cheng BHC, McKinley PK (2004) Adding safeness to dynamic adaptation techniques. In: Proceedings of ICSE 2004 workshop on architecting dependable systems, Edinburgh

  39. Zhang J, Cheng BHC, Yang Z, McKinley PK (2005) Enabling safe dynamic component-based software adaptation. Architecting Dependable Systems, Lecture Notes in Computer Science pp 194–211

  40. Zhou Z, McKinley PK, Sadjadi SM (2004) On quality-of-service and energy consumption tradeoffs in FEC-enabled audio streaming. In: Proceedings of the 12th IEEE international workshop on quality of service (IWQoS 2004), Montreal

  41. Zhou Z, Zhang J, McKinley PK, Cheng BHC (2006) TA-LTL: Specifying adaptation timing properties in autonomic systems. In: 3rd IEEE workshop on engineering of autonomic systems (EASe 2006), Columbia

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Betty H. C. Cheng.

Additional information

A number of related papers and technical reports of the Software Engineering and Network Systems Laboratory can be found at the following URL: http://www.cse.msu.edu/sens.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Zhang, J., Zhou, Z., Cheng, B.H.C. et al. Specifying real-time properties in autonomic systems. Innovations Syst Softw Eng 3, 3–16 (2007). https://doi.org/10.1007/s11334-006-0016-6

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11334-006-0016-6

Keywords

Navigation