skip to main content
research-article

An analysis of object oriented variability implementation mechanisms

Published:24 January 2011Publication History
Skip Abstract Section

Abstract

Software variability is the capacity of software to satisfy variant requirements. Component based software engineering and reuseintense software development, such as software product line engineering, demand software components with high variability. Increased variability influences a component's utility as it can be reused in multiple applications. In this paper a review and analysis of variability implementation mechanisms is presented. It builds on earlier work on software variability by providing an analysis and a synthesis. The purpose of this work is to classify the available variability mechanisms in terms of type, scope, and the artefact to be targeted. Examples to illustrate the points under discussion are given in the form of Java code.

References

  1. Bosch, J. 2000. Design and use of software architectures: adopting and evolving a product-line approach. ACM Press/Addison-Wesley Publishing Co. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Czarnecki, K. and Eisenecker, U. 2000. Generative Programming: Methods, Tools, and Applications. Addison-Wesley Professional. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Deelstra, S., Sinnema, M. and Bosch, J. 2009. Variability assessment in software product families. Information and Software Technology 51, 195--218. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Fazal-E-Amin, Mahmood, A.K. and Oxley, A. 2010. A Review on Aspect Oriented Implementation of Software Product Lines Components. Information Technology Journal 9, 1262--1269.Google ScholarGoogle ScholarCross RefCross Ref
  5. Firesmith, D. 2003. Common Concepts Underlying Safety, Security, and Survivability Engineering Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, USA.Google ScholarGoogle Scholar
  6. Gacek, C. and Anastasopoules, M. 2001. Implementing product line variabilities. SIGSOFT Softw. Eng. Notes 26, 109--117. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Her, J.S., Kim, J.H., Oh, S.H., Rhew, S.Y. and Kim, S.D. 2007. A framework for evaluating reusability of core asset in product line engineering. Information and Software Technology 49, 740--760. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. IEEE 1990. IEEE Standard Glossary of Software Engineering Terminology, NY, USA.Google ScholarGoogle Scholar
  9. Kang, K., Cohen, S., Hess, J., Novak, W. and Peterson, A.S. 1990. Feature-Oriented Domain Analysis (FODA) Feasibility Study. In Technical Report CMU/SEI-90-TR-21 Software Engineering Institute, Carnegie Mellon University.Google ScholarGoogle Scholar
  10. Kettemann, S., Muthig, D. and Anastasopoulos, M. 2003. Product line implementation technologies. Component technology view Fraunhofer IESE.Google ScholarGoogle Scholar
  11. Kim, S.D., Her, J.S. and Chang, S.H. 2005. A theoretical foundation of variability in component-based development. Information and Software Technology 47, 663--673. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Krueger, C.W. 1992. Software reuse. ACM Comput. Surv. 24, 131--183. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Mohagheghi, P. and Conradi, R. 2007. Quality, productivity and economic benefits of software reuse: a review of industrial studies. Empirical Softw. Engg. 12, 471--516. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Pohl, C., Rummler, A., Gasiunas, V., Loughran, N., Arboleda, H., Fernandes, F.D.A., Noyé, J., Núñez, A., Passama, R., Royer, J.-C. and Südholt, M. 2007. Survey of existing implementation techniques with respect to their support for the practices currently in use at industrial partners. In AMPLE Project deliverableD3.1.Google ScholarGoogle Scholar
  15. Sharp, D.C. 2000. Containing and facilitating change via object oriented tailoring techniques. In First Software Product Line Conference, Denver, Colorado.Google ScholarGoogle Scholar

Index Terms

  1. An analysis of object oriented variability implementation mechanisms

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          • Published in

            cover image ACM SIGSOFT Software Engineering Notes
            ACM SIGSOFT Software Engineering Notes  Volume 36, Issue 1
            January 2011
            210 pages
            ISSN:0163-5948
            DOI:10.1145/1921532
            Issue’s Table of Contents

            Copyright © 2011 Authors

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 24 January 2011

            Check for updates

            Qualifiers

            • research-article

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader