Skip to main content

Reverse Engineering Architectural Feature Models

  • Conference paper
Software Architecture (ECSA 2011)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 6903))

Included in the following conference series:

Abstract

Reverse engineering the variability of an existing system is a challenging activity. The architect knowledge is essential to identify variation points and explicit constraints between features, for instance in feature models (FMs), but the manual creation of FMs is both time-consuming and error-prone. On a large scale, it is very difficult for an architect to guarantee that the resulting FM is consistent with the architecture it is associated with. In this paper, we present a comprehensive, tool supported process for reverse engineering architectural FMs. We develop automated techniques to extract and combine different variability descriptions of an architecture. Then, alignment and reasoning techniques are applied to integrate the architect knowledge and reinforce the extracted FM. We illustrate the process when applied to a representative software system and we report on our experience in this context.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Acher, M., Collet, P., Lahire, P., France, R.: Comparing Approaches to Implement Feature Model Composition. In: Kühne, T., Selic, B., Gervais, M.-P., Terrier, F. (eds.) ECMFA 2010. LNCS, vol. 6138, pp. 3–19. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  2. Acher, M., Collet, P., Lahire, P., France, R.: A Domain-Specific Language for Managing Feature Models. In: SAC 2011, pp. 1333–1340. PL Track, ACM (2011)

    Google Scholar 

  3. Alves, V., Schwanninger, C., Barbosa, L., Rashid, A., Sawyer, P., Rayson, P., Pohl, C., Rummler, A.: An exploratory study of information retrieval techniques in domain analysis. In: SPLC 2008, pp. 67–76. IEEE, Los Alamitos (2008)

    Google Scholar 

  4. Apel, S., Kästner, C.: An overview of feature-oriented software development. Journal of Object Technology (JOT) 8(5), 49–84 (2009)

    Article  Google Scholar 

  5. Bachmann, F., Bass, L.: Managing variability in software architectures. SIGSOFT Softw. Eng. Notes 26, 126–132 (2001)

    Article  Google Scholar 

  6. Benavides, D., Segura, S., Ruiz-Cortes, A.: Automated Analysis of Feature Models 20 years Later: a Literature Review. Information Systems (2010)

    Google Scholar 

  7. Brace, K.S., Rudell, R.L., Bryant, R.E.: Efficient implementation of a bdd package. In: DAC 1990, pp. 40–45. ACM, New York (1990)

    Google Scholar 

  8. Clements, P., Northrop, L.M.: Software Product Lines: Practices and Patterns. Addison-Wesley Professional, Reading (2001)

    Google Scholar 

  9. Czarnecki, K., Pietroszek, K.: Verifying feature-based model templates against well-formedness ocl constraints. In: GPCE 2006, pp. 211–220. ACM, New York (2006)

    Google Scholar 

  10. Czarnecki, K., Wasowski, A.: Feature diagrams and logics: There and back again. In: SPLC 2007, pp. 23–34 (2007)

    Google Scholar 

  11. FAMILIAR, http://nyx.unice.fr/projects/familiar/

  12. FraSCAti, http://frascati.ow2.org

  13. John, I.: Capturing product line information from legacy user documentation. In: Software Product Lines, pp. 127–159. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  14. Lopez-Herrejon, R.E., Egyed, A.: Detecting inconsistencies in multi-view models with variability. In: Kühne, T., Selic, B., Gervais, M.-P., Terrier, F. (eds.) ECMFA 2010. LNCS, vol. 6138, pp. 217–232. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  15. Lopez-Herrejon, R.E., Egyed, A.: On the need of safe software product line architectures. In: Babar, M.A., Gorton, I. (eds.) ECSA 2010. LNCS, vol. 6285, pp. 493–496. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  16. Metzger, A., Pohl, K., Heymans, P., Schobbens, P.-Y., Saval, G.: Disambiguating the documentation of variability in software product lines: A separation of concerns, formalization and automated analysis. In: RE 2007, pp. 243–253 (2007)

    Google Scholar 

  17. Parra, C.A., Cleve, A., Blanc, X., Duchien, L.: Feature-based composition of software architectures. In: Babar, M.A., Gorton, I. (eds.) ECSA 2010. LNCS, vol. 6285, pp. 230–245. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  18. Schobbens, P.-Y., Heymans, P., Trigaux, J.-C., Bontemps, Y.: Generic semantics of feature diagrams. Comput. Netw. 51(2), 456–479 (2007)

    Article  MATH  Google Scholar 

  19. Seinturier, L., Merle, P., Fournier, D., Dolet, N., Schiavoni, V., Stefani, J.-B.: Reconfigurable SCA Applications with the FraSCAti Platform. In: SCC 2009, pp. 268–275. IEEE, Los Alamitos (2009)

    Google Scholar 

  20. She, S., Lotufo, R., Berger, T., Wasowski, A., Czarnecki, K.: Reverse engineering feature models. In: ICSE 2011, pp. 461–470. ACM, New York (2011)

    Google Scholar 

  21. SCA standard, http://www.osoa.org/

  22. Svahnberg, M., van Gurp, J., Bosch, J.: A taxonomy of variability realization techniques: Research articles. Softw. Pract. Exper. 35(8), 705–754 (2005)

    Article  Google Scholar 

  23. Thüm, T., Batory, D., Kästner, C.: Reasoning about edits to feature models. In: ICSE 2009, pp. 254–264. IEEE, Los Alamitos (2009)

    Google Scholar 

  24. Companion webpage, https://nyx.unice.fr/projects/familiar/wiki/ArchFm

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Acher, M., Cleve, A., Collet, P., Merle, P., Duchien, L., Lahire, P. (2011). Reverse Engineering Architectural Feature Models. In: Crnkovic, I., Gruhn, V., Book, M. (eds) Software Architecture. ECSA 2011. Lecture Notes in Computer Science, vol 6903. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-23798-0_25

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-23798-0_25

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-23797-3

  • Online ISBN: 978-3-642-23798-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics