Abstract
In Software Product Lines variability refers to the definition and utilization of differences between several products. Feature Diagrams (FD) are a well-known approach to express variability, and can be used to automate the derivation process. Nevertheless, this may be highly complex due to possible interactions between selected features and the artifacts realizing them. Deriving concrete products typically involves the composition of such inter-dependent software artifacts. This paper presents a feature-based composition approach to automatically derive a product architecture from a given feature configuration. The proposed approach relies on the combination of Model-Driven Engineering (MDE) and Aspect-Oriented Modeling (AOM) techniques. We introduce a metamodel to reify each feature as a high-level aspect model. Product derivation is achieved by weaving the set of aspect models corresponding to a particular feature configuration. The weaving strategy is derived from an in-depth cross-analysis of both the feature interactions and the aspect model dependencies.
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
Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (foda) feasibility study. Technical report, Carnegie-Mellon University Software Engineering Institute (November 1990)
Szyperski, C.: Component Software: Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley Professional, Reading (2002)
Jézéquel, J.M.: Model driven design and aspect weaving. Software and System Modeling 7(2), 209–218 (2008)
Open SOA: Service component architecture specifications (November 2007), http://www.osoa.org/display/Main/Service+Component+Architecture+Home
Schobbens, P.Y., Heymans, P., Trigaux, J.C.: Feature diagrams: A survey and a formal semantics. In: 14th Int. Requirements Engineering Conference (RE 2006), pp. 136–145 (2006)
Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Heidelberg (2005)
The Eclipse Foundation: Eclipse Modeling Framework Project, EMF (2010), http://www.eclipse.org/modeling/emf/
Plump, D.: Hypergraph rewriting: critical pairs and undecidability of confluence, pp. 201–213 (1993)
Parra, C., Blanc, X., Duchien, L.: Context Awareness for Dynamic Service-Oriented Product Lines. In: Proceedings of the 13th International Software Product Line Conference (SPLC 2009), pp. 131–140 (2009)
der Storm, T.V.: Generic feature-based software composition. In: Lumpe, M., Vanderperren, W. (eds.) SC 2007. LNCS, vol. 4829, pp. 66–80. Springer, Heidelberg (2007)
Bryant, R.E.: Symbolic Boolean manipulation with ordered binary-decision diagrams. ACM Computing Surveys 24(3), 293–318 (1992)
Voelter, M., Groher, I.: Product line implementation using aspect-oriented and model-driven software development. In: 11th Int. Software Product Line Conference (SPLC 2007), pp. 233–242. IEEE CS, Los Alamitos (2007)
Kuhlemann, M., Batory, D., Kästner, C.: Safe composition of non-monotonic features. In: 8th Int. Conference on Generative Programming and Component Engineering (GPCE 2009), pp. 177–186. ACM, New York (2009)
Lee, K., Botterweck, G., Thiel, S.: Aspectual separation of feature dependencies for flexible feature composition. In: 33rd Annual IEEE Int. Computer Software and Applications Conference, pp. 45–52. IEEE CS, Los Alamitos (2009)
Lee, K., Kang, K.C.: Feature dependency analysis for product line component design. In: Bosch, J., Krueger, C. (eds.) ICOIN 2004 and ICSR 2004. LNCS, vol. 3107, pp. 69–85. Springer, Heidelberg (2004)
Czarnecki, K., Pietroszek, K.: Verifying feature-based model templates against well-formedness ocl constraints. In: 5th Int. Conference on Generative Programming and Component Engineering (GPCE 2006), pp. 211–220. ACM, New York (2006)
Griss, M.L.: Implementing product-line features by composing aspects. In: 1st Conference on Software Product lines: experience and research directions (SPLC 2000), pp. 271–288. Kluwer Academic Publishers, Dordrecht (2000)
Lee, K., Kang, K.C., Kim, M., Park, S.: Combining feature-oriented analysis and aspect-oriented programming for product line asset development. In: 10th Int. Software Product Line Conference (SPLC 2006), pp. 103–112. IEEE CS, Los Alamitos (2006)
Apel, S., Leich, T., Saake, G.: Aspectual feature modules. IEEE Transactions on Software Engineering (TSE) 34(2), 162–180 (2008)
Zhang, J., Cottenier, T., van den Berg, A., Gray, J.: Aspect composition in the motorola aspect-oriented modelling weaver. Journal of Object Technology 6, 89–108 (2007) (Special issue on Aspect-Oriented Modelling)
Morin, B., Perrouin, G., Lahire, P., Barais, O., Vanwormhoudt, G., Jézéquel, J.M.: Weaving variability into domain metamodels. In: Schürr, A., Selic, B. (eds.) MODELS 2009. LNCS, vol. 5795, pp. 690–705. Springer, Heidelberg (2009)
Seinturier, L., Merle, P., Fournier, D., Dolet, N., Schiavoni, V., Stefani, J.-B.: Reconfigurable sca applications with the frascati platform. In: 6th IEEE International Conference on Service Computing (SCC 2009), September 2009, pp. 268–275 (2009)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2010 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Parra, C., Cleve, A., Blanc, X., Duchien, L. (2010). Feature-Based Composition of Software Architectures. In: Babar, M.A., Gorton, I. (eds) Software Architecture. ECSA 2010. Lecture Notes in Computer Science, vol 6285. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-15114-9_18
Download citation
DOI: https://doi.org/10.1007/978-3-642-15114-9_18
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-15113-2
Online ISBN: 978-3-642-15114-9
eBook Packages: Computer ScienceComputer Science (R0)