Modular Verification of Reconfigurable Components
Abstract
This chapter presents a framework for modular verification of reconfigurable real-time components. The framework enables proving that the reconfiguration of components via aspect weaving provides expected functional and temporal behavior in the reconfigured component. Within the framework we formally represent components and aspects as augmentations of timed automata. The verification is based on two algorithms: an algorithm that extracts necessary information into component verification interfaces, and an algorithm that checks, on an aspect, whether the property is preserved upon reconfiguration. Hence, the method ensures that components are verified only once for a particular property, while the property satisfaction under reconfiguration is checked only on aspects. Verification interfaces for a given property can be reused for multiple aspects and reconfigurations.
Keywords
Model Check Reachability Analysis Component Interface Time Automaton Clock ConstraintPreview
Unable to display preview. Download preview PDF.
References
- 1.Stankovic, J.: VEST: a toolset for constructing and analyzing component based operating systems for embedded and real-time systems. In: Henzinger, T.A., Kirsch, C.M. (eds.) EMSOFT 2001. LNCS, vol. 2211, pp. 390–402. Springer, Heidelberg (2001)CrossRefGoogle Scholar
- 2.Szyperski, C.: Component Software - Beyond Object-Oriented Programming. Addison-Wesley, Reading (1999)Google Scholar
- 3.Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)CrossRefGoogle Scholar
- 4.Tešanović, A., Nyström, D., Hansson, J., Norström, C.: Towards aspectual component-based real-time systems development. In: Chen, J., Hong, S. (eds.) RTCSA 2003. LNCS, vol. 2968, pp. 558–577. Springer, Heidelberg (2004)CrossRefGoogle Scholar
- 5.Tešanović, A., Nyström, D., Hansson, J., Norström, C.: Aspects and components in real-time system development: Towards reconfigurable and reusable software. Journal of Embedded Computing (2004)Google Scholar
- 6.Pichler, R., Ostermann, K., Mezini, M.: On aspectualizing component models. Software Practice and Experience 33, 957–974 (2003)CrossRefGoogle Scholar
- 7.Tešanović, A.: Towards aspectual component-based real-time system development. Technical report, Department of Computer Science, Linköping University, Licentiate Thesis, ISBN 91-7373-681-3 (2003)Google Scholar
- 8.Li, H., Krishnamurthi, S., Fisler, K.: Interfaces for modular feature verification. In: Proceedings of the International Conference on Automated Software Engineering, IEEE Computer Society Press, Los Alamitos (2002)Google Scholar
- 9.Li, H., Krishnamurthi, S., Fisler, K.: Verifying cross-cutting features as open systems. In: Proceedings of the ACM SIGSOFT Conference on Foundations of Software Engineering, ACM Press, New York (2002)Google Scholar
- 10.Nyström, D., Tešanović, A., Norström, C., Hansson, J., Bånkestad, N.E.: Data management issues in vehicle control systems: a case study. In: Proceedings of the 14th Euromicro International Conference on Real-Time Systems, Vienna, Austria (2002)Google Scholar
- 11.Coady, Y., Kiczales, G., Feeley, M., Smolyn, G.: Using AspectC to improve the modularity of path-specific customization in operating system code. In: Proceedings of the Joint European Software Engineering Conference (ESEC) and 9th ACM SIGSOFT International Symposium on the Foundations of Software Engineering, FSE-9 (2002)Google Scholar
- 12.Spinczyk, O., Gal, A., Schröder-Preikschat, W.: AspectC++: an aspect-oriented extension to C++. In: Proceedings of the 40th International Conference on Technology of Object-Oriented Languages and Systems (TOOLS Pacific 2002), Australian Computer Society, Sydney (2002)Google Scholar
- 13.Xerox Corporation: The AspectJ Programming Guide (2002), Available at: http://aspectj.org/doc/dist/progguide/index.html
- 14.Nyström, D., Tešanović, A., Nolin, M., Norström, C., Hansson, J.: COMET: A componentbased real-time database for automotive systems. In: Inverardi, P., Jazayeri, M. (eds.) ICSE 2005. LNCS, vol. 4309, Springer, Heidelberg (2006)Google Scholar
- 15.Alur, R., Courcoubetis, C., Dill, D.: Model checking for real-time systems. In: Proceedings of the 5th IEEE International Symposium on Logic in Computer Science, IEEE Computer Scoiety Press, Philadelphia (1990)Google Scholar
- 16.Henzinger, T., Nicollin, X., Sifakis, J., Yovine, S.: Symbolic model checking for real-time systems. In: Proceedings of the 7th. Symposium of Logics in Computer Science, pp. 394–406. IEEE Computer Society Press, Los Alamitos (1992)CrossRefGoogle Scholar
- 17.Bengtsson, J., Yi, W.: Timed Automata: Semantics, Algorithms and Tools. In: Desel, J., Reisig, W., Rozenberg, G. (eds.) Lectures on Concurrency and Petri Nets. LNCS, vol. 3098, pp. 87–124. Springer, Heidelberg (2004)CrossRefGoogle Scholar
- 18.Alur, R., Dill, D.L.: A theory of timed automata. Theoretical Computer Science 126, 183-235 (1994)MATHCrossRefMathSciNetGoogle Scholar
- 19.Uppaal tool, http://www.uppaal.com
- 20.Kronos tool, http://www-verimag.imag.fr/TEMPORISE/kronos/
- 21.Sipma, H.: A formal model for cross-cutting modular transition systems. In: Proceedings of the Workshop on Foundations of Aspect-Oriented Languages (FOAL 2003), Boston, USA (2003)Google Scholar
- 22.Krishnamurthi, S., Fisler, K., Greenberg, M.: Verifying aspect advice modularity. In: Proceedings of the ACM SIGSOFT International Symposium on the Foundations of Software Engineering, ACM Press, New York (2004)Google Scholar
- 23.Alur, R.: Timed automata. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 8–22. Springer, Heidelberg (1999)CrossRefGoogle Scholar
- 24.Larsen, K., Pettersson, P., Yi, W.: Compositional and symbolic model-checking of real-time systems. In: Proceedings of the 16th IEEE Real-Time Systems Symposium, IEEE Computer Society Press, Pisa (1995)Google Scholar