Home > Research > Publications & Outputs > Identifying Design Problems in the Source Code

Electronic data

  • ICSE2018-CAMERA-READY

    Rights statement: © ACM, 2018. This is the author's version of the work. It is posted here for your personal use. Not for redistribution. The definitive Version of Record was published in ICSE '18 Proceedings of the 40th International Conference on Software Engineering http://dx.doi.org/10.1145/3180155.3180239

    Accepted author manuscript, 740 KB, PDF document

    Available under license: CC BY-NC: Creative Commons Attribution-NonCommercial 4.0 International License

Links

Text available via DOI:

View graph of relations

Identifying Design Problems in the Source Code: A Grounded Theory

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Published
  • Leonardo Sousa
  • Roberto Oliveira
  • Alessandro Garcia
  • Jaejoon Lee
  • Tanya Conte
  • Rafael de Mello
  • Adriana Lopes
  • Carlos Lucena
Close
Publication date29/05/2018
Host publicationICSE '18 Proceedings of the 40th International Conference on Software Engineering
Place of PublicationNew York
PublisherACM
Pages921-931
Number of pages11
ISBN (print)9781450356381
<mark>Original language</mark>English
EventICSE 40th International Conference on Software Engineering - Chalmers University of Technology, Gothenburg, Sweden
Duration: 27/05/20183/06/2018
Conference number: 40th
https://www.icse2018.org/

Conference

ConferenceICSE 40th International Conference on Software Engineering
Country/TerritorySweden
CityGothenburg
Period27/05/183/06/18
Internet address

Conference

ConferenceICSE 40th International Conference on Software Engineering
Country/TerritorySweden
CityGothenburg
Period27/05/183/06/18
Internet address

Abstract

The prevalence of design problems may cause re-engineering or even discontinuation of the system. Due to missing, informal or outdated design documentation, developers often have to rely on the source code to identify design problems. Therefore, developers have to analyze different symptoms that manifest in several code elements, which may quickly turn into a complex task. Although researchers have been investigating techniques to help developers in identifying design problems, there is little knowledge on how developers actually proceed to identify design problems.
In order to tackle this problem, we conducted a multi-trial industrial experiment with professionals from 5 software companies to build a grounded theory. The resulting theory offers explanations
on how developers identify design problems in practice. For instance, it reveals the characteristics of symptoms that developers consider helpful. Moreover, developers often combine different
types of symptoms to identify a single design problem. This knowledge serves as a basis to further understand the phenomena and advance towards more effective identification techniques.

Bibliographic note

© ACM, 2018. This is the author's version of the work. It is posted here for your personal use. Not for redistribution. The definitive Version of Record was published in ICSE '18 Proceedings of the 40th International Conference on Software Engineering http://dx.doi.org/10.1145/3180155.3180239