Abstract
In this paper we discuss how the concept of separation of concerns could be conveniently applied to improve the model-driven component-based development of real-time high-integrity systems. Interpreting Dijkstra’s view in this regard, we seek separation of concerns between the specification of needs (expressed declaratively by the user as requirements and assumptions) and the conception of a demonstrable solution for them (which we want to implement automatically, in the spirit of model-driven development). We aim to enable software designers to specify the assumptions needed on the expected behavior of the system solely by attaching declarative attributes to the affected elements of the system model. We then want the underlying design environment to produce a solution that provably achieves that behavior at run time. We find this vision to fit very well in a component-based development as it naturally allows the declarative space to be confined to interfaces (for the outside view of components) and operations (for the inside view of them). To prove the viability of our vision we apply it to the handling of synchronization requirements as seen from the perspective of the calling component, which is acutely more challenging than from the standpoint of the provider component.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Szyperski, C.: Component Software: Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley Professional, Boston (2002)
Panunzio, M., Vardanega, T.: On component-based development and high-integrity real-time systems. In: 15th IEEE Intl. Conf. Embedded and Real-Time Computing Systems and Applications. IEEE Press, Beijing (2009)
Dijkstra, E.W.: On the role of scientific thought. In: Dijkstra, E.W. (ed.) Selected writings on Computing: A Personal Perspective, pp. 60–66. Springer (1982)
Panunzio, M., Vardanega, T.: A Component Model Fit for Embedded Real-Time Systems. Submitted to REDS Special Issue of ACM Transactions on Embedded Computing Systems
Panunzio, M.: Definition, realization and evaluation of a software reference architecture for use in space applications. Ph.D. thesis. University of Padua, Italy (2011)
Mili, H., Sahraoui, H., Lounis, H., Mcheick, H., Elkharraz, A.: Understanding separation of Concerns. In: Early Aspects: Aspect-Oriented Requirements Engineering and Architecture Design, pp. 75–84 (2004)
Schmidt, D.C.: Model-Driven Engineering. IEEE Computer 39(2) (2006)
Wallnau, K.: Point/Counterpoint. IEEE Software 28(3) (2011)
Bondarev, E., de With, P., Chaudron, M.: Compositional Performance Analysis of Component-Based Systems on Heterogeneous Multiprocessor Platforms. In: Proc. 32th. Euromicro Conf. on Software Engineering and Advanced Applications. IEEE Press (2006)
Díaz, M., Garrido, D., Llopis, L., Rus, F., Troya, J.M.: UM-RTCOM: An analyzable component model for real-time distributed systems. J. Syst. Software 81 (2008)
Artho, C., Havelund, K., Biere, A.: High-level data races. Software Testing, Verification and Reliability 13, 207–277 (2003)
Flanagan, C., Qadeer, S.: Types for Atomicity. In: Workshop on Types in Language Design and Implementation. ACM Press (2003)
López Martínez, P., Barros, L., Drake, J.M.: Scheduling Configuration of Real-Time Component-Based Applications. In: Real, J., Vardanega, T. (eds.) Ada-Europe 2010. LNCS, vol. 6106, pp. 181–195. Springer, Heidelberg (2010)
Jones, C.B.: An approach to splitting atoms safely. In: 21st Annual Conference of Mathematical Foundations of Programming Semantics, MFPS XXI. Electronic Notes in Theoretical Computer Science, vol. 155, pp. 43–60 (2006)
Object Management Group, UML Profile for Modeling and Analysis of Real-Time and Embedded systems (MARTE), version 1.0, OMG doc. formal/2009-11-02 (2009)
González Harbour, M., Gutiérrez, J.J., Palencia, J.C., Drake, J.M.: MAST: Modeling and Analysis Suite for Real-Time Applications. In: 22nd. Euromicro Conf. Real-Time Systems. IEEE Press (2001)
Burns, A., Dobbing, B., Vardanega, T.: Guide for the Use of the Ada Ravenscar Profile in High Integrity Systems. Technical Report YCS-2003-348. University of York (2003)
Medina, J., García Cuesta, A.: From composable design models to schedulability analysis with UML and UML profile for MARTE. In: 3rd Workshop on Compositional Theory and Technology for Real-time Embedded Systems (2010)
Burns, A., Dobbing, B., Romanski, G.: The Ravenscar Tasking Profile for High Integrity Real-Time Programs. In: Asplund, L. (ed.) Ada-Europe 1998. LNCS, vol. 1411, pp. 263–275. Springer, Heidelberg (1998)
Panunzio, M., Vardanega, T.: Ada Ravenscar Code Archetypes for Component-Based Development. In: Brorsson, M., Pinho, L.M. (eds.) Ada-Europe 2012. LNCS, vol. 7308, pp. 1–17. Springer, Heidelberg (2012)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
López Martínez, P., Vardanega, T. (2012). Handling Synchronization Requirements under Separation of Concerns in Model-Driven Component-Based Development. In: Brorsson, M., Pinho, L.M. (eds) Reliable Software Technologies – Ada-Europe 2012. Ada-Europe 2012. Lecture Notes in Computer Science, vol 7308. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-30598-6_7
Download citation
DOI: https://doi.org/10.1007/978-3-642-30598-6_7
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-30597-9
Online ISBN: 978-3-642-30598-6
eBook Packages: Computer ScienceComputer Science (R0)