Abstract
Currently, architecture constraints can be specified and checked in different paradigms of software development, the object-oriented, component-based and service-based one. But the current state of the art and practice do not consider their specification at a high level of abstraction, independently from any paradigm vocabulary. We propose in this paper a process combining graphs and feature modeling to specify multi-paradigm architecture constraints. These constraints are expressed with OCL on a particular meta-model of graphs. Then these constraints can be transformed to any chosen paradigm, after their configuration using a feature/variability model. This transformation allows later to handle these constraints in that (chosen) paradigm: to refine them, to generate source code from them, and to check them on models and on source code. A case study is presented in this paper; it concerns architecture constraint specification and configuration under software migration from the object-oriented to the component-based paradigm.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
OCL/UML means that the constraints are specified with OCL and navigate in the UML meta-model.
- 2.
UML http://www.omg.org/spec/UML/2.4.1 is an OMG standard and covers both class/object and component modeling.
- 3.
For space limitation, the constraints accompanying the feature diagram are not showed.
- 4.
OCL queries characterized by the keyword def:. They allow to declare and define attribute values (like let expression) and/or to return internal OCL operation values.
- 5.
A navigation pattern is a set of navigations. It includes more roles and ocl operations/quantifiers.
References
Allier, S., et al.: From object-oriented applications to component-oriented applications via component-oriented architecture. In: WICSA, pp. 214–223. IEEE (2011)
Alshara, Z., et al.: Migrating large object-oriented applications into component-based ones. In: ACM SIGPLAN Notices, no. 3, pp. 55–64. ACM (2015)
Balarin, F., et al.: Constraints specification at higher levels of abstraction. In: HLDVT Workshop, pp. 129–133. IEEE (2001)
Bauer, E.: Enhancing the dynamic meta modeling formalism and its eclipse-based tool support with attributes. Bachelor thesis. University of Paderborn (2008)
Czarnecki, K., Helsen, S., Eisenecker, U.: Staged configuration through specialization and multilevel configuration of feature models. Softw. Process: Improv. Pract. 10(2), 143–169 (2005)
Kallel, S., Tibermacine, C., Tramoni, B., Dony, C., Kacem, A.H.: Automatic translation of OCL meta-level constraints into Java meta-programs. In: Lee, R. (ed.) Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing 2015. SCI, vol. 612, pp. 213–226. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-23509-7_15
Kallel, S., et al.: Generating reusable, searchable and executable “architecture constraints as services”. J. Syst. Softw. 127, 91–108 (2017)
Pohl, K., et al.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer Science & Business Media, Heidelberg (2005). https://doi.org/10.1007/3-540-28901-1
Radke, H., Arendt, T., Becker, J.S., Habel, A., Taentzer, G.: Translating essential OCL invariants to nested graph constraints focusing on set operations. In: Parisi-Presicce, F., Westfechtel, B. (eds.) ICGT 2015. LNCS, vol. 9151, pp. 155–170. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-21145-9_10
Rutle, A., et al.: A formal approach to the specification and transformation of constraints in MDE. J. Logic Algebraic Program. 81(4), 422–457 (2012)
Tibermacine, C.: Architecture constraints. Softw. Archit. 2, 37–90 (2014)
Tibermacine, C., et al.: A family of languages for architecture constraint specification. J. Syst. Softw. 83(5), 815–831 (2010)
Vranić, V.: Multi-paradigm design with feature modeling. Comput. Sci. Inf. Syst. 2(1), 79–102 (2005)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG
About this paper
Cite this paper
Kallel, S., Tibermacine, C., Hadj Kacem, A., Dony, C. (2018). Multi-paradigm Architecture Constraint Specification and Configuration Based on Graphs and Feature Models. In: Tjoa, A., Bellatreche, L., Biffl, S., van Leeuwen, J., Wiedermann, J. (eds) SOFSEM 2018: Theory and Practice of Computer Science. SOFSEM 2018. Lecture Notes in Computer Science(), vol 10706. Edizioni della Normale, Cham. https://doi.org/10.1007/978-3-319-73117-9_13
Download citation
DOI: https://doi.org/10.1007/978-3-319-73117-9_13
Published:
Publisher Name: Edizioni della Normale, Cham
Print ISBN: 978-3-319-73116-2
Online ISBN: 978-3-319-73117-9
eBook Packages: Computer ScienceComputer Science (R0)