Abstract
Increasing complexity of real-time systems, and demands for enabling their configurability and tailorability are strong motivations for applying new software engineering principles, such as aspect-oriented and component-based development. In this paper we introduce a novel concept of aspectual component-based real-time system development. The concept is based on a design method that assumes decomposition of real-time systems into components and aspects, and provides a real-time component model that supports the notion of time and temporal constraints, space and resource management constraints, and composability. We anticipate that the successful applications of the proposed concept should have a positive impact on real-time system development in enabling efficient configuration of real-time systems, improved reusability and flexibility of real-time software, and modularization of crosscutting concerns. We provide arguments for this assumption by presenting an application of the proposed concept on the design and development of a configurable embedded real-time database, called COMET. Furthermore, using the COMET system as an example, we introduce a novel way of handling concurrency in a real-time database system, where concurrency is modeled as an aspect crosscutting the system.
This work is supported by ARTES, A network for Real-time and graduate education in Sweden, and CENIIT, Center for Industrial Information Technology, under contract 01.07.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Stankovic, J.: VEST: A toolset for constructing and analyzing component based operating systems for embedded and real-time systems. Technical Report CS-2000-19, Department of Computer Science, University of Virginia (2000)
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)
Crnkovic, I., Larsson, M. (eds.): Building Reliable Component-Based Real-Time Systems. Artech House Publishers (2002); ISBN 1-58053-327-2
Xerox: The AspectJ programming guide (2002)
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 ACMSIGSOFT International Symposium on the Foundations of Software Engineering, FSE-9 (2002)
Spinczyk, O., Gal, A., Schröder-Preikschat, W.: AspectC++: An aspect-oriented extension to C++. In: Proceedings of the TOOLS Pacific 2002, Australian Computer Society (2002)
Bernat, G., Burns, A.: An approach to symbolic worst-case execution time analysis. In: Proceedings of the 25th IFAC Workshop on Real-Time Programming, Palma, Spain (2000)
Tešanović, A., Nyström, D., Hansson, J., Norström, C.: Integrating symbolic worst-case execution time analysis into aspect-oriented system development. In: OOPSLA 2002 Workshop on Tools for Aspect-Oriented Software Development (2002)
Aßmann, U.: Invasive Software Composition. Springer-Verlag, Universit t Karlsruhe (2002)
Liu, C.L., Layland, J.W.: Scheduling algorithms for multipprogramming in hard real-time traffic environment. Journal of the Association for Computing Machinery 20, 46–61 (1973)
Nyström, D., Tešanović, A., Norström, C., Hansson, J.: Data management issues in vehicle control systems: a case study. In: Proceedings of the 14th EUROMICRO International Conference on Real-Time Systems, Vienna, Austria, pp. 249–256 (2002)
Lu, H., Ng, Y., Tian, Z.: T-tree or b-tree: Main memory database index structure revisited. In: 11th Australasian Database Conference (2000)
Rastogi, R., Seshadri, S., Bohannon, P., Leinbaugh, D.W., Silberschatz, A., Sudarshan, S.: Improving predictability of transaction execution times in real-time databases. Real-Time Systems 19, 283–302 (2000)
Abbott, R.K., Garcia-Molina, H.: Scheduling real-time transactions: A performance evaluation. ACM Transactions on Database Systems 17, 513–560 (1992)
Sha, L., Rajkumar, R., Son, S.H., Chang, C.H.: A real-time locking protocol. IEEE Transactions on Computers 40, 793–800 (1991)
Lee, J., Son, S.H.: Using dynamic adjustment of serialization order for real-time database systems. In: Proceedings of the 14th IEEE Real-Time Systems Symposium (1993)
Datta, A., Son, S.H.: Is a bird in the hand worth more than two birds in the bush? Limitations of priority cognizance in conflict resolution for firm real-time database systems. IEEE Transactions on Computers 49, 482–502 (2000)
Bosch, J.: Design and Use of Software Architectures. Addison-Wesley, Reading (2000)
Bachmann, F., Bass, L., Buhman, C., Comella-Dorda, S., Long, F., Robert, J., Seacord, R., Wallnau, K.: Technical concepts of component-based software engineering. Technical Report CMU/SEI-2000-TR-008, Carnegie Mellon University (2000)
Isovic, D., Lindgren, M., Crnkovic, I.: System development with real-time components. In: Proceedings of ECOOP Workshop - Pervasive Component-Based Systems, France (2000)
Stewart, D.S.: Designing software components for real-time applications. In: Proceedings of Embedded System Conference, San Jose, CA (2000); Class 408, 428
Rashid, A., Pulvermueller, E.: From object-oriented to aspect-oriented databases. In: Ibrahim, M., Küng, J., Revell, N. (eds.) DEXA 2000. LNCS, vol. 1873, pp. 125–134. Springer, Heidelberg (2000)
Geppert, A., Scherrer, S., Dittrich, K.R.: KIDS: Construction of database management systems based on reuse. Technical Report ifi-97.01, Department of Computer Science, University of Zurich (1997)
Oracle: All your data: The Oracle extensibility architecture. Oracle Technical White Paper (1999)
Informix: Developing DataBlade modules for Informix-Universal Server. Informix DataBlade Technology (2001), Available at http://www.informix.com/datablades/
(Papers, O.D.W.)
Gomaa, H.: Software development of real-time systems. Communications of the ACM 29, 657–668 (1986)
Kopetz, H., Zainlinger, R., Fohler, G., Kantz, H., Puschner, P., Schütz, W.: The design of realtime systems: from specification to implementation and verification. Software Engineering Journal 6, 72–82 (1991)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tešanović, A., Nyström, D., Hansson, J., Norström, C. (2004). Towards Aspectual Component-Based Development of Real-Time Systems. In: Chen, J., Hong, S. (eds) Real-Time and Embedded Computing Systems and Applications. RTCSA 2003. Lecture Notes in Computer Science, vol 2968. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-24686-2_35
Download citation
DOI: https://doi.org/10.1007/978-3-540-24686-2_35
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21974-3
Online ISBN: 978-3-540-24686-2
eBook Packages: Springer Book Archive