Abstract
When modeling families of ambient systems, we experience a number of special challenges due to unpredictable variability in the environments of the systems. One solution to deal with these challenges is to adapt aspect-oriented technology to product family modeling. In this paper, we propose a new language AO-PFA, which adapts the aspect-oriented paradigm to product families. This paradigm enhances the adaptability and evolvability of product families. The proposed language is an extension of the specification language product family algebra (PFA). We discuss the constructs of the proposed language as well as its usage to specify aspects.








Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.Notes
FODA (Kang et al. 1990) is one of the feature-modeling techniques that are widely used to specify the reusable core assets of a product family and to describe how individual products can be configured from these core assets.
References
Acher M, Collet P, Lahire P, France R (2010) Composing feature models. In: van den Brand M, Gaševic D, Gray J (eds) Software language engineering. Lecture notes in computer science, vol 5969. Springer, Berlin, pp 62–81
Alférez M, Santos J, Moreira A, Garcia A, Kulesza U, Araújo J, Amaral V (2009) Multi-view composition language for software product line requirements. In: Proceedings of the 2nd international conference on software language engineering, pp 103–122
Alturki F, Khedri R (2010) A tool for formal feature modeling based on bdds and product families algebra. In: 13th Workshop on requirement engineering, pp 109–120
Andersen HR (1997) An introduction to binary decision diagrams. In: Lecture notes for 49285 Advanced Algorithm E97
Apel S, Leich T, Saake G (2006) Aspectual mixin layers: aspects and features in concert. In: Proceedings of the international conference on software engineering, pp 122–131
Apel S, Lengauer C, Möller B, Kästner C (2010) An algebraic foundation for automatic feature-based program synthesis. Sci Comput Program 75(2010):1022–1047
Benavides D, Segura S, Trinidad P, Ruiz-Cortes A (2006) A first step towards a framework for the automated analysis of feature models. In: Proceedigns of the Workshop held in conjunction with the 10th Software product line conference
Bošković M, Mussbacher G, Bagheri E, Amyot D, an Marek Hatala DG (2010) Aspect-oriented feature models. In: Models in software engineering-workshops and symposia at MODELS 2010
Chitchyan R, Rashid A, Sawyer P, Garcia A, Alarcon MP, Bakker J, Tekinerdogan B, Clarke S, Jackson A (2005) Survey of analysis and design approaches. Survey, AOSD-Europe
Clavel M, Durán F, Eker S, Lincoln P, Martí-Oliet N, Meseguer J, Talcott C (2011) Maude Manual (Version 2.6). SRI International, Menlo Park, CA 94025, USA
Czarnecki K (1998) Generative programming, principles and techniques of software engineering based on automated configuration and fragment-based component models. PhD thesis, Technical University of Ilmenau
Eriksson M, Börstler J, Borg K (2005) The PLUSS approach-domain modeling with features, use cases and use realization. In: Proceedings of 9th international conference on software product lines, pp 33–44
Frei R, Di Marzo Serugendo G, Şerbănuţă TF (2010) Ambient intelligence in self-organising assembly systems using the chemical reaction model. J Ambient Intell Humaniz Comput 1(3):163–184
Frei R, Şerbănuţă TF, Di Marzo Serugendo G (2012) Self-organising assembly systems formally specified in Maude. J Ambient Intell Humaniz Comput pp 1–20
Fuentes L, Gámez N (2010) Configuration process of a software product line for AmI middleware. J Univers Comput Sci 16(12):1592–1611
Gámez N, Fuentes L (2012) Architectural evolution of FamiWare using cardinality-based feature models. Information and Software Technology
Griss ML (2000) Implementing product-line features by composing component aspects. In: Proceedings of first international software product lines conference, pp 271–288
Griss ML, Favaro J, d’Alessandro M (1998) Integrating features modeling with the RSEB. In: Proceedings of the 5th international conference on software reuse, pp 76–85
Groher I, Voelter M (2007) Xweave: models and aspects in concert. In: Proceedings of the 10th Workshop on aspect-oriented modelling, pp 35–40
Habib S, Marimuthu P (2011) Self-organization in ambient networks through molecular assembly. J Ambient Intell Humaniz Comput 2(3):165–173
Höfner P, Khedri R, Möller B (2006) Feature algebra. In: Misra J, Nipknow T, Sekerinski E (eds) Formal methods. Lecture notes in compute science, vol 4085. Springer, Berlin, pp 300–315
Höfner P, Khedri R, Möller B (2008) Algebraic view reconciliation. In: Proceedings of 6th IEEE international conference on software engineering and formal methods, pp 85–94
Höfner P, Khedri R, Möller B (2009) An algebra of product families. Softw Syst Model 10(2):161–182
Höfner P, Khedri R, Möller B (2011) Supplementing product families with behaviour. Int J Softw Inf 5(1-2Part2):245–266
Kang K, Cohen S, Hess J, Novak W, Peterson A (1990) Feature oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, Carnegie Mellon University
Kuhlemann M, Batory D, Kästner C (2009) Safe composition of non-monotonic features. In: 8th international conference on generative programming and component engineering
Kuusela J, Tuominen H (2009) Aspect-oriented approach to operating system development empirical study. J Commun Comput 6(8):233–238
Lind-Nielsen J (2010) Buddy BDD Library. Accessed on March 28, 2013. http://sourceforge.net/projects/buddy/
Loughran N, Rashid A (2004) Framed aspect: support variability and configurability for AOP. In: Proceedings of international conference on software reuse, pp 127–140
Mezini M, Ostermann K (2004) Variability management with feature-oriented programming and aspects. In: Proceedings of the 12th ACM international symposium on Foundations of Software Engineering, pp 127–136
Nygard KE, Xu D, Pikalek J, Lundell M (2010) Multi-agent designs for ambient systems. In: 1st international ICST conference on ambient media and systems, pp 10:1–10:6
Parnas DL (1976) On the design and development of program families. IEEE Trans Softw Eng 2(1):1–9
Riebisch M, Böllert K, Streitferdt D, Philippow I (2002) Extending feature diagrams with UML multiplicities. In: 6th world conference on the integrated design & process technology (IDPT 2002), Pasadena, USA
Solhaug B, Seehusen F (2013) Model-driven risk analysis of evolving critical infrastructures. J Ambient Intell Humaniz Comput pp 1–18
Thüm T, Batory D, Kästner C (2009) Reasoning about edits to feature models. In: Proceedings of international conference on software engineering
Zhang Q, Khedri R (2013) Proofs of the convergence of the rewriting system for the weaving of aspects in the AO-PFA language. Technical Report CAS-13-01-RK, McMaster University, Hamilton, Ontario, Canada. http://www.cas.mcmaster.ca/cas/0template1.php?601
Zhang Q, Khedri R, Jaskolka J (2011) An aspect-oriented language based on product family algebra: aspects specification and verification. Technical Report CAS-11-08-RK, McMaster University, Hamilton, Ontario, Canada. http://www.cas.mcmaster.ca/cas/0template1.php?601
Zhang Q, Khedri R, Jaskolka J (2012a) An aspect-oriented language for product family specification. In: Ambient systems, networks and technologies, 3rd international conference, ANT2012
Zhang Q, Khedri R, Jaskolka J (2012b) Verification of aspectual composition in feature-modeling. In: Software engineering and formal methods, 10th international conference, SEFM2012
Acknowledgments
This research is supported by the Natural Sciences and Engineering Research Council of Canada (NSERC), Grant Number RGPIN227806-09. We thank the numerous reviewers for their comments that helped us improve the quality of this paper.
Author information
Authors and Affiliations
Corresponding author
Additional information
This article is a revised and enlarged version of (Zhang et al. 2012a).
Rights and permissions
About this article
Cite this article
Zhang, Q., Khedri, R. & Jaskolka, J. An aspect-oriented language for feature-modeling. J Ambient Intell Human Comput 5, 343–356 (2014). https://doi.org/10.1007/s12652-013-0201-z
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s12652-013-0201-z