Return to search

Exploring performance issues and patterns in C# by analyzing open-source projects

Performance in software describes the efficiency with which a system or a component fulfills its intended tasks, considering factors such as execution speed, resource consumption, and accuracy. It is a quality that can determine whether a software system is a success or a failure and can bring both financial profits and losses to companies. Developers, however, do not fully utilize existing best practices to maximize performance or try to increase it by reducing other quality attributes. The performance issues they face are often more complex and require more effort to be solved than functional bugs. To provide more insight into the subject of such issues, a study is conducted on 54 real-life performance issues found in 7 C# projects, which are analyzed for root causes, affected quality (response time or memory allocation), and applied solutions. Issues are classified based on their root cause, and the taxonomy consisting of 12 categories used in the process is derived from different performance issue classifications proposed by related research through a literature review. Additionally, through another literature review, 11 patterns that can improve software performance are identified and described. Out of those 11 patterns, 4 are found to be commonly applied when solving performance issues in C#. The aim of this study is to provide insights into what kind of performance issues appear and how they are solved in the C# language.

Identiferoai:union.ndltd.org:UPSALLA1/oai:DiVA.org:lnu-130387
Date January 2024
CreatorsPawlukiewicz, Anna, Nedkov, Nedko
PublisherLinnéuniversitetet, Institutionen för datavetenskap och medieteknik (DM)
Source SetsDiVA Archive at Upsalla University
LanguageEnglish
Detected LanguageEnglish
TypeStudent thesis, info:eu-repo/semantics/bachelorThesis, text
Formatapplication/pdf
Rightsinfo:eu-repo/semantics/openAccess

Page generated in 0.0017 seconds