A Survey on the Importance of Object-oriented Design Best Practices

Activity: Talk or presentationContributed talkscience-to-science

Description

To measure object-oriented design quality, metric-based approaches have been established. These have then been enhanced by identifying design smells in code. While these approaches are useful for identifying hot spots that should be refactored, they are still too vague to sufficiently guide software developers to implement improvements. This is why our work focuses on measuring the compliance of source code with object-oriented design best practices. These design best practices were systematically derived from the literature and can be mapped to design principles, which can help reveal fundamental object-oriented design issues in a software product. Despite the successful applications of this approach in industrial and open source projects, there is little accepted knowledge about the importance of various design best practices. Consequently, this paper shows the result of an online survey aimed at identifying the importance of 49 design best practices on design quality. In total, 214 people participated in the survey, resulting in an average of 138 opinions for each practice. Based on these opinions, five very important, 21 important, 12 moderately important and 11 unimportant design best practices could be derived. This information about importance helps managing design improvements in a focused way.
Period30 Aug 2017
Event titleProceedings of the Euromicro Conference on Software Engineering and Advanced Applications (SEAA) 2017, Vienna, Austria, August 30-September 1, 2017
Event typeConference
LocationAustriaShow on map

Fields of science

  • 202017 Embedded systems
  • 102006 Computer supported cooperative work (CSCW)
  • 202005 Computer architecture
  • 102027 Web engineering
  • 102 Computer Sciences
  • 202022 Information technology
  • 502032 Quality management
  • 502050 Business informatics
  • 207409 Navigation systems
  • 102020 Medical informatics
  • 102011 Formal languages
  • 102022 Software development
  • 102002 Augmented reality
  • 201305 Traffic engineering
  • 102015 Information systems

JKU Focus areas

  • Management and Innovation
  • Computation in Informatics and Mathematics