Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/519621.853406guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Bunch: A Clustering Tool for the Recovery and Maintenance of Software System Structures

Published: 30 August 1999 Publication History

Abstract

Software systems are typically modified in order to extend or change their functionality, improve their performance, port them to different platforms, and so on. For developers, it is crucial to understand the structure of a system before attempting to modify it. The structure of a system, however, may not be apparent to new developers, because the design documentation is non-existent or, worse, inconsistent with the implementation. This problem could be alleviated if developers were somehow able to produce high-level system decomposition descriptions from the low-level structures present in the source code.We have developed a clustering tool called Bunch that creates a system decomposition automatically by treating clustering as an optimization problem. This paper describes the extensions made to Bunch in response to feedback we received from users. The most important extension, in terms of the quality of results and execution efficiency, is a feature that enables the integration of designer knowledge about the system structure into an otherwise fully automatic clustering process. We use a case study to show how our new features simplified the task of extracting the subsystem structure of a medium size program, while exposing an interesting design flaw in the process.

Cited By

View all
  • (2021)Study of the Utility of Text Classification Based Software Architecture Recovery Method RELAX for MaintenanceProceedings of the 15th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1145/3475716.3484194(1-6)Online publication date: 11-Oct-2021
  • (2019)The Value of Software Architecture Recovery for MaintenanceProceedings of the 12th Innovations in Software Engineering Conference (formerly known as India Software Engineering Conference)10.1145/3299771.3299787(1-10)Online publication date: 14-Feb-2019
  • (2019)The modular and feature toggle architectures of Google ChromeEmpirical Software Engineering10.1007/s10664-018-9639-024:2(826-853)Online publication date: 1-Apr-2019
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image Guide Proceedings
ICSM '99: Proceedings of the IEEE International Conference on Software Maintenance
August 1999
ISBN:0769500161

Publisher

IEEE Computer Society

United States

Publication History

Published: 30 August 1999

Author Tags

  1. Automatic Clustering
  2. Optimization Algorithms
  3. Reverse Engineering
  4. Software Re-engineering

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 16 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Study of the Utility of Text Classification Based Software Architecture Recovery Method RELAX for MaintenanceProceedings of the 15th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)10.1145/3475716.3484194(1-6)Online publication date: 11-Oct-2021
  • (2019)The Value of Software Architecture Recovery for MaintenanceProceedings of the 12th Innovations in Software Engineering Conference (formerly known as India Software Engineering Conference)10.1145/3299771.3299787(1-10)Online publication date: 14-Feb-2019
  • (2019)The modular and feature toggle architectures of Google ChromeEmpirical Software Engineering10.1007/s10664-018-9639-024:2(826-853)Online publication date: 1-Apr-2019
  • (2018)BCDProceedings of the 2018 on Asia Conference on Computer and Communications Security10.1145/3196494.3196504(393-398)Online publication date: 29-May-2018
  • (2018)FP-ABCComputer Languages, Systems and Structures10.1016/j.cl.2017.08.00151:C(1-21)Online publication date: 1-Jan-2018
  • (2018)Fusing multi-abstraction vector space models for concern localizationEmpirical Software Engineering10.1007/s10664-017-9585-223:4(2279-2322)Online publication date: 1-Aug-2018
  • (2017)Mining implicit design templates for actionable code reuseProceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering10.5555/3155562.3155615(394-404)Online publication date: 30-Oct-2017
  • (2017)Constructing feature model by identifying variability-aware modulesProceedings of the 25th International Conference on Program Comprehension10.1109/ICPC.2017.21(263-274)Online publication date: 20-May-2017
  • (2016)Hyper-heuristic approach for multi-objective software module clusteringJournal of Systems and Software10.1016/j.jss.2016.04.007117:C(384-401)Online publication date: 1-Jul-2016
  • (2016)Column generation approaches for the software clustering problemComputational Optimization and Applications10.1007/s10589-015-9822-964:3(843-864)Online publication date: 1-Jul-2016
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media