Software Source Code Readability: A Mapping Study
2020 (English)Independent thesis Advanced level (degree of Master (Two Years)), 20 credits / 30 HE credits
Student thesis
Abstract [en]
Background: Building software systems is an iterative and collaborative project, requiring developers not only to write code, but to maintain, expand, fix and enhance code already written. In order to do so, reading code is a central activity, and therefore it is important that code is written in a manner that makes it readable.
Objectives: To map the state-of-the-art of software source code readability and find the definitions and methods to measure it, and provide an overview of the kinds of factors considered to impact software source code readability, and to compare this to practitioners' experiences of software source code readability.
Methods: A systematic literature review of 76 studies in 72 papers from the last 40 years, explicitly concerning software source code readability, is compared with the results of five interviews with practitioners, of which three are case studies of commits explicitly targeting readability.
Results: While individual factors' contribution towards readability is studied with some success, more general modelling studies often suffer from methodological problems, making them difficult to apply in practice or in studies of the correlation between software source code readability and other metrics.
Conclusions: Key elements of the state-of-the-art have been implemented in practice, however, readability models are not used by the practitioners in this study. Several factors mentioned by practitioners are not considered by the studies included, and further qualitative study of software development practitioners may be needed.
Place, publisher, year, edition, pages
2020.
Keywords [en]
software architecture, software source code readability, systematic literature review
National Category
Computer Systems
Identifiers
URN: urn:nbn:se:bth-20164OAI: oai:DiVA.org:bth-20164DiVA, id: diva2:1452612
External cooperation
Sony
Subject / course
PA2534 Master's Thesis (120 credits) in Software Engineering
Supervisors
Examiners
2020-07-082020-07-072020-07-08Bibliographically approved