Conditional Branching Assistant for C#
Název práce v češtině: | Asistent pro podmíněné větvení v C# |
---|---|
Název v anglickém jazyce: | Conditional Branching Assistant for C# |
Klíčová slova: | Větvení|Statická analýza|Refactoring|C#|Microsoft Visual Studio 2022|Začínající programátoři |
Klíčová slova anglicky: | Branching|Static analysis|Refactoring|C#|Microsoft Visual Studio 2022|Beginner programmers |
Akademický rok vypsání: | 2021/2022 |
Typ práce: | bakalářská práce |
Jazyk práce: | angličtina |
Ústav: | Katedra softwarového inženýrství (32-KSI) |
Vedoucí / školitel: | Mgr. Ing. Robert Husák |
Řešitel: | Bc. Martin Hubata - zadáno a potvrzeno stud. odd. |
Datum přihlášení: | 24.09.2022 |
Datum zadání: | 29.09.2022 |
Datum potvrzení stud. oddělením: | 06.10.2022 |
Datum a čas obhajoby: | 05.09.2024 09:00 |
Datum odevzdání elektronické podoby: | 18.07.2024 |
Datum odevzdání tištěné podoby: | 18.07.2024 |
Datum proběhlé obhajoby: | 05.09.2024 |
Oponenti: | Mgr. Pavel Ježek, Ph.D. |
Zásady pro vypracování |
The goal of the thesis is to create a tool that will help developers understand [1] and modify code with complicated branching constructs (e.g. if, else, or switch). The tool will enhance the understandability of the code by providing an interactive graphical user interface (GUI). The GUI will allow the developer to inspect and refactor a selected block of branched code. If the tool detects a problem in the block being inspected (e.g. an unreachable path), it will be reported to the developer. An important task is to make the tool precise enough to provide useful information but efficient enough so that it can analyse the code in a reasonable time.
The tool will be implemented as an extension to Microsoft Visual Studio [2] with C# as its target language. For C# code analysis, it is recommended to use Microsoft Compiler Platform, known as Microsoft Roslyn [3]. |
Seznam odborné literatury |
[1] Xia, X., Bao, L., Lo, D., Xing, Z., Hassan, A. E., and Li, S. (2018). Measuring program comprehension: A large-scale field study with professionals. IEEE Transactions on Software Engineering, 44(10):951–976
[2] https://docs.microsoft.com/en-us/visualstudio/extensibility [3] https://docs.microsoft.com/en-us/dotnet/csharp/roslyn-sdk |