Master'sOpen Access

The impact of static analysis tools on software quality, productivity and cost

2019
0 views
0 downloads
Advisor: Dr. Öğr. Üyesi Yasemin Karagül

Abstract (EN)

With the spread of technology, impact and importance of software in our daily life are increasing considerably. Considering importance of software in our daily life, code quality, bug-free development and conformance for coding standards are becoming indispensable. The purpose of this work is to list the advantages for both development team and software quality by demonstrating the importance of static code analysis for the software life cycle to obtain software that is reliable, low maintenance, low-cost, standards-compliant and bug-free (with early error detection and prevention). In order to develop a standards-compliant software, it's source code must be written in accordance with the standards ruleset and analyzed carefully for conformity in the development phase of software development life cycle (SDLC). The analysis can be performed dynamically or statically. Static analysis is performed on program source code without actually executing program but dynamic analysis is performed while executing program source code. The static analysis made with automatic analysis tools produces reports about software quality. Static code analysis is often used to find potential errors, detect possible weaknesses in the program code that may lead to weak points, maintain code quality, or check compliance with coding standards. In this thesis, the Java source codes of 29 different projects developed by 5 different development teams of a telecommunication company have been evaluated by SonarQube and the outputs of this evaluation are discussed. Analysis tool automatically starts the analysis process on the project codes that is retrieved from the version tracking system (SVN) and finds the possible weak points, bugs and noncompliant issues in code sections. By correcting the findings and adding the automatic code analysis step to the development process, early error detection and preservation of the quality of the software are ensured. Detecting and correcting errors, increasing productivity, reducing maintenance cost by 21% and generating clean code before execution in the production environment are the lucrative outputs of this work. As a result of the study, the improvement reports triggered by the analysis reports not only provide the quality of the code but also increase the capabilities of the development team.

Author

Dr. Mehmet Yıldız

How to Cite

Mehmet Yıldız (Master Thesis). The impact of static analysis tools on software quality, productivity and cost, 2019, Doğuş University.

Keywords

License

Tüm Hakları Saklıdır

This work is shared under the specified license terms.

More theses from Doğuş University