Nothing Special   »   [go: up one dir, main page]

skip to main content
10.1145/2851613.2851764acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

ArchFeature: integrating features into product line architecture

Published: 04 April 2016 Publication History

Abstract

Product line architecture (PLA) captures the architectural commonality and variability among products of a product family. Existing PLA modeling approaches are limited in the sense that (1) it is often difficult to relate a product line feature to its implementation in the PLA, and (2) variation points in the PLA have to be manually developed and maintained. In this paper, we present a novel PLA modeling approach and a toolset called ArchFeature that addresses these two challenges. ArchFeature integrates PLA and feature specification in a single monolithic architecture model. It includes a graphical modeling environment that can (1) automatically capture, maintain, and visualize the feature-PLA relationship, (2) encapsulate variability modeling from the user, and (3) support automatic derivation of architecture instances from the PLA. ArchFeature is an Eclipse plugin integrated in ArchStudio, an Eclipse-based architecture development platform. We assessed its usability and effectiveness in a case study by using it to develop a full-featured architecture model for an open-source software system, Apache Solr.

References

[1]
Apache Software Foundation. Apache Solr. http://lucene.apache.org/solr/.
[2]
ArchFeature. http://y.web.umkc.edu/yzheng/archfeature.html
[3]
ArchStudio. http://www.isr.uci.edu/projects/archstudio/
[4]
Bosch, J. Design and Use of Software Architectures: Adopting and Evolving a Product-Line Approach. ACM Press, Addison-Wesley Professional: Reading, Massachusetts, 2000.
[5]
Cerner Corporation. http://www.cerner.com/.
[6]
Czarnecki, K. and Eisenecker, U. Generative Programming: Methods, Tools, and Applications. Addison-Wesley Professional: Reading, Massachusetts, 2000.
[7]
Czarnecki, K. and Antkiewicz, M. Mapping features to models: a template approach based on superimposed variants. In Proceedings of the 4th international conference on Generative Programming and Component Engineering. p. 422--437, Springer-Verlag: Tallinn, Estonia, 2005.
[8]
Dashofy, E. M., & Van Der Hoek, A. (2002). Representing product family architectures in an extensible architecture description language. In Software Product-Family Engineering (pp. 330--341). Springer Berlin Heidelberg.
[9]
Dashofy, E., van der Hoek, A., and Taylor, R. N. A Comprehensive Approach for the Development of Modular Software Architecture Description Languages. ACM Transactions on Software Engineering and Methodology (TOSEM). 14(2), p. 199--245, April, 2005.
[10]
DeRose, S., Maler, E., and Orchard, D. XML Linking Language (XLink) Version 1.0. World Wide Web Consortium, W3C Recommendation Report, June 27, 2001.
[11]
Dhungana, D., Grünbacher, P., & Rabiser, R. (2011). The DOPLER meta-tool for decision-oriented variability modeling: a multiple case study. Automated Software Engineering, 18(1), 77--114.
[12]
Garg, A., Critchlow, M., Chen, P., Van der Westhuizen, C., and van der Hoek, A. An Environment for Managing Evolving Product Line Architectures. In Proceedings of the IEEE International Conference on Software Maintenance (ICSM 2003). p. 358--367, Amsterdam, the Netherlands, September 22-26, 2003.
[13]
Groher, I.; Weinreich, R., Integrating Variability Management and Software Architecture, Software Architecture (WICSA) and European Conference on Software Architecture (ECSA), 2012 Joint Working IEEE/IFIP Conference on, vol., no., pp. 262, 266, 20-24 Aug. 2012
[14]
Heidenreich, F., Kopcsek, J., and Wende, C. FeatureMapper: mapping features to models. In Companion of the 30th international conference on Software engineering. p. 943--944, ACM: Leipzig, Germany, 2008.
[15]
Hendrickson, S. A. and van der Hoek, A. Modeling Product Line Architectures through Change Sets and Relationships. In Proceedings of the 29th International Conference on Software Engineering (ICSE 2007). p. 189--198, Minneapolis, MN, May 20-26, 2007.
[16]
Jarzabek, S., Bassett, P., Hongyu, Z., and Weishan, Z. XVCL: XML-based variant configuration language. In Proceedings of the Software Engineering, 2003. Proceedings. 25th International Conference on. p. 810--811, 3-10 May 2003.
[17]
Kang, K. C., Cohen, S. G., Hess, J. A., Novak, W. E., and Peterson, A. S. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Software Engineering Institute, Technical Report CMU/SEI-90-TR-21, November, 1990.
[18]
Kästner, C., Apel, S., and Kuhlemann, M. Granularity in software product lines. In Proceedings of the 30th international conference on Software engineering. p. 311--320, ACM: Leipzig, Germany, 2008.
[19]
Krueger, C. W. The BigLever Software Gears Unified Software Product Line Engineering Framework. In Proceedings of the 2008 12th International Software Product Line Conference. p. 353, IEEE Computer Society, 2008.
[20]
Ommering, R.v., Linden, F.v.d., Kramer, J., and Magee, J. The Koala Component Model for Consumer Electronics Software. IEEE Computer. 33(3), p. 78--85, March, 2000.
[21]
Parnas, D. L. Designing Software for Ease of Extension and Contraction. IEEE Transactions on Software Engineering. 5(2), p. 128--137, 1979.
[22]
Pohl, K., Böckle, G., and van der Linden, F. J. Software Product Line Engineering: Foundations, Principles and Techniques. 1 ed. 468 pgs., Springer: New York, New York, 2005.
[23]
Sinnema, M., Deelstra, S., Nijhuis, J., and Bosch, J. COVAMOF: A Framework for Modeling Variability in Software Product Families. In Proceedings of the Third International Software Product Lines Conference (SPLC 2004). p. 197--213, Springer Berlin / Heidelberg. Boston, MA, USA, August 30-September 2, 2004.
[24]
Taylor, R. N., Medvidovic, N., and Dashofy, E. M. Software Architecture: Foundations, Theory, and Practice. 736 pgs., John Wiley & Sons, 2010.
[25]
Thüm, T., Kästner, C., Benduhn, F., Meinicke, J., Saake, G., and Leich, T. FeatureIDE: An extensible framework for feature-oriented software development. Science of Computer Programming. 79(0), p. 70--85, 2014.
[26]
Zheng, Y. and Taylor R. N. A classification and rationalization of model-based software development. Software & Systems Modeling. October 2013, Volume 12, Issue 4, pp 669--678.

Cited By

View all
  • (2023)A Comparison of Visualization Concepts and Tools for Variant-Rich System EngineeringProceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A10.1145/3579027.3608986(153-159)Online publication date: 28-Aug-2023
  • (2023)Visualizations for the evolution of Variant-Rich SystemsInformation and Software Technology10.1016/j.infsof.2022.107084154:COnline publication date: 1-Feb-2023
  • (2019)Guidelines for Architecture Design of Software Product LineComputational Science and Its Applications – ICCSA 201910.1007/978-3-030-24308-1_34(415-422)Online publication date: 29-Jun-2019
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SAC '16: Proceedings of the 31st Annual ACM Symposium on Applied Computing
April 2016
2360 pages
ISBN:9781450337397
DOI:10.1145/2851613
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 04 April 2016

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. architecture modeling
  2. product line architecture
  3. software product line

Qualifiers

  • Research-article

Conference

SAC 2016
Sponsor:
SAC 2016: Symposium on Applied Computing
April 4 - 8, 2016
Pisa, Italy

Acceptance Rates

SAC '16 Paper Acceptance Rate 252 of 1,047 submissions, 24%;
Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

Upcoming Conference

SAC '25
The 40th ACM/SIGAPP Symposium on Applied Computing
March 31 - April 4, 2025
Catania , Italy

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)9
  • Downloads (Last 6 weeks)0
Reflects downloads up to 13 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2023)A Comparison of Visualization Concepts and Tools for Variant-Rich System EngineeringProceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A10.1145/3579027.3608986(153-159)Online publication date: 28-Aug-2023
  • (2023)Visualizations for the evolution of Variant-Rich SystemsInformation and Software Technology10.1016/j.infsof.2022.107084154:COnline publication date: 1-Feb-2023
  • (2019)Guidelines for Architecture Design of Software Product LineComputational Science and Its Applications – ICCSA 201910.1007/978-3-030-24308-1_34(415-422)Online publication date: 29-Jun-2019
  • (2016)A DSL-based Approach to Product Derivation for Software Product LineActa Informatica Pragensia10.18267/j.aip.905:2(138-143)Online publication date: 31-Dec-2016

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media