Skip to main content

Feature Usage Diagram for Feature Reduction

  • Conference paper

Part of the Lecture Notes in Business Information Processing book series (LNBIP,volume 149)

Abstract

Feature creep, if not managed well, cause software bloat. This in turn makes software applications become slower. Currently, software industry urgently requires mechanisms and approaches to reduce unnecessary or low value features. In this paper, we introduce a modelling notation, so called Feature Usage Diagram, and an approach to identify and visualize the required information for decision makers when reducing features. We conducted a case study using a real web application to validate and evaluate the Feature Usage Diagram elements and notation. The results showed that the Feature Usage Diagram is easy to learn and understand. Moreover, by visualising useful information, it has potential to support developers when making decisions for feature reduction.

Keywords

  • feature creep
  • feature reduction
  • feature usage
  • feature location
  • concern graphs
  • latent lattice

This is a preview of subscription content, access via your institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • DOI: 10.1007/978-3-642-38314-4_16
  • Chapter length: 15 pages
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
eBook
USD   39.99
Price excludes VAT (USA)
  • ISBN: 978-3-642-38314-4
  • Instant PDF download
  • Readable on all devices
  • Own it forever
  • Exclusive offer for individuals only
  • Tax calculation will be finalised during checkout
Softcover Book
USD   54.99
Price excludes VAT (USA)

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Highsmith, J.A.: Agile software development ecosystems. Addison-Wesley Professional (2002)

    Google Scholar 

  2. Davis, F.D., Venkatesh, V.: Toward preprototype user acceptance testing of new information systems: implications for software project management. IEEE Transactions on Engineering Management (2004)

    Google Scholar 

  3. Senyard, A., Michlmayr, M.: How to have a successful free software project. In: Proceedings of the 11th Asia-Pacific Software Engineering Conference, pp. 84–91 (2004)

    Google Scholar 

  4. Xu, G., Mitchell, N., Arnold, M., Rountev, A., Sevitsky, G.: Software bloat analysis: Finding, removing, and preventing performance problems in modern large-scale object-oriented applications. In: Proceedings of the FSE/SDP Workshop on Future of Software Engineering Research (2010)

    Google Scholar 

  5. Ries, E.: The Lean Startup: How Today’s Entrepreneurs Use Continuous Innovation to Create Radically Successful Businesses. Journal of Product Innovation Management (2011)

    Google Scholar 

  6. Taipale, M.: Huitale – A Story of a Finnish Lean Startup. In: Abrahamsson, P., Oza, N. (eds.) LESS 2010. LNBIP, vol. 65, pp. 111–114. Springer, Heidelberg (2010)

    CrossRef  Google Scholar 

  7. Atterer, R., Wnuk, M., Schmidt, A.: Knowing the user’s every move: user activity tracking for website usability evaluation and implicit interaction. In: Proceedings of the International Conference on World WideWeb (2006)

    Google Scholar 

  8. Microsoft Spy++, http://msdn.microsoft.com/en-us/library/aa264396(v=vs.60).aspx (last visited on the November 27, 2012)

    Google Scholar 

  9. OpenSpan Desktop Analytics, http://www.openspan.com/products/desktop_analytics (last visited on the November 27, 2012)

  10. Google Analytics, http://www.google.com/analytics (last visited on the November 27, 2012)

  11. Dit, B., Revelle, M., Gethers, M., Poshyvanyk, D.: Feature Location in Source Code: A Taxonomy and Survey. Journal of Software Maintenance and Evolution: Research and Practice (2011)

    Google Scholar 

  12. Eisenbarth, T., Koschke, R., Simon, D.: Locating Features in Source Code. IEEE Computer (2003)

    Google Scholar 

  13. Ebert, C., Dumke, R.: Software Measurement. Springer (2007)

    Google Scholar 

  14. Ebert, C., Abrahamsson, P., Oza, N.: Lean Software Development. IEEE Software, 22–25 (2012)

    Google Scholar 

  15. Eisenberg, A.D., De Volder, K.: Dynamic Feature Traces: Finding Features in Unfamiliar Code. In: Proceedings of 21st IEEE International Conference on Software Maintenance, Budapest, Hungary, pp. 337–346 (2005)

    Google Scholar 

  16. Bohnet, J., Voigt, S., Dollner, J.: Locating and Understanding Features of Complex Software Systems by Synchronizing Time, Collaboration and Code-Focused Views on Execution Traces. In: Proceedings of 16th IEEE International Conference on Program Comprehension, pp. 268–271 (2008)

    Google Scholar 

  17. Edwards, D., Wilde, N., Simmons, S., Golden, E.: Instrumenting Time-Sensitive Software for Feature Location. In: Proceedings of International Conference on Program Comprehension, pp. 130–137 (2009)

    Google Scholar 

  18. Chen, K., Rajlich, V.: Case Study of Feature Location Using Dependence Graph. In: Proceedings of 8th IEEE International Workshop on Program Comprehension, pp. 241–249 (2000)

    Google Scholar 

  19. Robillard, M.P., Murphy, G.C.: Concern Graphs: Finding and describing concerns using structural program dependencies. In: Proceedings of International Conference on Software Engineering, pp. 406–416 (2002)

    Google Scholar 

  20. Trifu, M.: Using Dataflow Information for Concern Identification in Object-Oriented Software Systems. In: Proceedings of European Conference on Software Maintenance and Reengineering, pp. 193–202 (2008)

    Google Scholar 

  21. Petrenko, M., Rajlich, V., Vanciu, R.: Partial Domain Comprehension in Software Evolution and Maintenance. In: International Conference on Program Comprehension (2008)

    Google Scholar 

  22. Marcus, A., Sergeyev, A., Rajlich, V., Maletic, J.: An Information Retrieval Approach to Concept Location in Source Code. In: Proceedings of 11th IEEE Working Conference on Reverse Engineering, pp. 214-223 (2004)

    Google Scholar 

  23. Grant, S., Cordy, J.R., Skillicorn, D.B.: Automated Concept Location Using Independent Component Analysis. In: Proceedings of 15th Working Conference on Reverse Engineering, pp. 138–142 (2008)

    Google Scholar 

  24. Hill, E., Pollock, L., Vijay-Shanker, K.: Automatically Capturing Source Code Context of NL-Queries for Software Maintenance and Reuse. In: Proceedings of 31st IEEE/ACM International Conference on Software Engineering (2009)

    Google Scholar 

  25. Poshyvanyk, D., Marcus, A.: Combining formal concept analysis with information retrieval for concept location in source code. In: Program Comprehension, pp. 37–48 (2007)

    Google Scholar 

  26. Chen, A., Chou, E., Wong, J., Yao, A.Y., Zhang, Q., Zhang, S., Michail, A.: CVSSearch: searching through source code using CVS comments. In: Proceedings of IEEE International Conference on Software Maintenance, pp. 364–373 (2001)

    Google Scholar 

  27. Ratanotayanon, S., Choi, H.J., Sim, S.E.: Using Transitive changesets to Support Feature Location. In: Proceedings of 25th IEEE/ACM International Conference on Automated Software Engineering, pp. 341–344 (2010)

    Google Scholar 

  28. Benavides, D., Trinidad, P., Ruiz-Cortés, A.: Automated reasoning on feature models. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 491–503. Springer, Heidelberg (2005)

    CrossRef  Google Scholar 

  29. Czarnecki, K., Helsen, S., Eisenecker, U.: Staged configuration using feature models. In: Nord, R.L. (ed.) SPLC 2004. LNCS, vol. 3154, pp. 266–283. Springer, Heidelberg (2004)

    CrossRef  Google Scholar 

  30. Palmer, S.R., Felsing, M.: A practical guide to feature-driven development. Pearson Education (2001)

    Google Scholar 

  31. Smith, J.B., Colgate, M.: Customer value creation: a practical framework. The Journal of Marketing Theory and Practice, 7–23 (2007)

    Google Scholar 

  32. Runeson, P., Host, M.: Guidelines for conducting and reporting case study research in software engineering. In: Empirical Software Engineering, pp. 131–164 (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and Permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Marciuska, S., Gencel, C., Wang, X., Abrahamsson, P. (2013). Feature Usage Diagram for Feature Reduction. In: Baumeister, H., Weber, B. (eds) Agile Processes in Software Engineering and Extreme Programming. XP 2013. Lecture Notes in Business Information Processing, vol 149. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-38314-4_16

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-38314-4_16

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-38313-7

  • Online ISBN: 978-3-642-38314-4

  • eBook Packages: Computer ScienceComputer Science (R0)