DESIGN OF ONTOLOGY-BASED GENERATIVE COMPONENTS USING ENRICHED FEATURE DIAGRAMS AND METAPROGRAMMING

A product line (PL) approach is emerging as the most promising design paradigm for embedded software design domain, where a great variability of requirements and products exists. The implementation of the PL approach requires thorough domain analysis and domain modelling. We propose to represent embedded software components using Enriched Feature Diagrams (EFDs). EFDs are an extension of traditional Feature Diagrams (FDs) for explicit representation of domain variability enriched with contextualization and domain ontology. We suggest to transform feature models described using EFDs into generative component specifications encoded using the metaprogramming techniques. A case study from the embedded software specialization domain is presented.

[1]  J. Flinn,et al.  Energy-aware adaptation for mobile applications , 1999, SOSP.

[2]  Andrzej Pieczynski,et al.  Employing fuzzy logic in feature diagrams to model variability in software product-lines , 2003, 10th IEEE International Conference and Workshop on the Engineering of Computer-Based Systems, 2003. Proceedings..

[3]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[4]  Luca Benini,et al.  System-level power optimization: techniques and tools , 1999, ISLPED '99.

[5]  Stan Jarzabek,et al.  Frame-based method for customizing generic software architectures , 1999, SSR '99.

[6]  Doo-Kwon Baik,et al.  An Approach to Analyzing Commonality and Variability of Features using Ontology in a Software Product Line Engineering , 2007, 5th ACIS International Conference on Software Engineering Research, Management & Applications (SERA 2007).

[7]  Mahmut T. Kandemir,et al.  Influence of compiler optimizations on system power , 2001, IEEE Trans. Very Large Scale Integr. Syst..

[8]  Raimund Kirner,et al.  Comparing WCET and Resource Demands of Trigonometric Functions Implemented as Iterative Calculations vs. Table-Lookup , 2006, WCET.

[9]  Vytautas Štuikys,et al.  Exploration of Learning Object Ontologies Using Feature Diagrams , 2008 .

[10]  Paul Clements,et al.  Software product lines - practices and patterns , 2001, SEI series in software engineering.

[11]  Peter Y. H. Wong,et al.  An Investigation in Energy Consumption Analyses and Application−Level Prediction Techniques , 2006 .

[12]  Liviu Iftode,et al.  Context-aware Battery Management for Mobile Phones , 2008, 2008 Sixth Annual IEEE International Conference on Pervasive Computing and Communications (PerCom).

[13]  Krzysztof Czarnecki,et al.  Generative programming - methods, tools and applications , 2000 .

[14]  Mahmut T. Kandemir,et al.  Influence of compiler optimizations on system power , 2000, Proceedings 37th Design Automation Conference.

[15]  Robin Mason,et al.  Online education using learning objects , 2004, Br. J. Educ. Technol..

[16]  L. Nyland FAST TRIGONOMETRIC FUNCTIONS USING INTEL ’ S SSE 2 INSTRUCTIONS , 2003 .

[17]  Chandra Krintz,et al.  Application-level prediction of battery dissipation , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[18]  Brian Bailey,et al.  Taxonomies for the Development and Verification of Digital Systems , 2010 .

[19]  Tim Sheard,et al.  Accomplishments and Research Challenges in Meta-programming , 2001, SAIG.

[20]  Patrick Donohoe,et al.  Feature-Oriented Project Line Engineering , 2002, IEEE Softw..

[21]  Danilo Beuche,et al.  Finegrained Application Specific Customization of Embedded Software , 2002, DIPES.

[22]  Luca Benini,et al.  Source code transformation based on software cost analysis , 2001, International Symposium on System Synthesis (IEEE Cat. No.01EX526).

[23]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[24]  Giovanni De Micheli,et al.  Low power embedded software optimization using symbolic algebra , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

[25]  Peter Sestoft,et al.  Partial evaluation and automatic program generation , 1993, Prentice Hall international series in computer science.

[26]  Daniel Hoffman,et al.  Commonality and Variability in Software Engineering , 1998, IEEE Softw..

[27]  Mary Jane Irwin,et al.  Techniques for low energy software , 1997, Proceedings of 1997 International Symposium on Low Power Electronics and Design.

[28]  Pierre-Yves Schobbens,et al.  Feature Diagrams: A Survey and a Formal Semantics , 2006, 14th IEEE International Requirements Engineering Conference (RE'06).

[29]  Robertas Damasevicius,et al.  Domain Ontology-Based Generative Component Design Using Feature Diagrams and Meta-programming Techniques , 2008, ECSA.

[30]  Assim Sagahyroon Power Consumption in Handheld Computers , 2006, APCCAS 2006 - 2006 IEEE Asia Pacific Conference on Circuits and Systems.

[31]  Krzysztof Czarnecki,et al.  Feature models are views on ontologies , 2006, 10th International Software Product Line Conference (SPLC'06).

[32]  Giancarlo Guizzardi,et al.  On Ontology, ontologies, Conceptualizations, Modeling Languages, and (Meta)Models , 2007, DB&IS.

[33]  Vytautas Štuikys,et al.  Metaprogramming techniques for designing embedded components for ambient intelligence , 2003 .

[34]  Don S. Batory,et al.  Feature Models, Grammars, and Propositional Formulas , 2005, SPLC.

[35]  Radu Marculescu,et al.  Ambient intelligence visions and achievements: linking abstract ideas to real-world concepts , 2003, 2003 Design, Automation and Test in Europe Conference and Exhibition.

[36]  Luca Benini,et al.  Source code optimization and profiling of energy consumption in embedded systems , 2000, ISSS '00.

[37]  Jaejoon Lee,et al.  FORM: A feature-;oriented reuse method with domain-;specific reference architectures , 1998, Ann. Softw. Eng..

[38]  David M. Weiss,et al.  Software Product-Line Engineering: A Family-Based Software Development Process , 1999 .

[39]  Erik Ruf,et al.  Data specialization , 1996, PLDI '96.