Publication Date

Summer 2023

Document Type

Thesis

Degree Name

Master of Science

Department

Computer Science

First Advisor

Soon Ok Park

Second Advisor

Freddie Kato

Third Advisor

Aslam Shahid

Abstract

This thesis focuses on the development of an automation script integrated with a Web application to extract crucial information from .NET projects. The objective was to streamline the process of retrieving database type, database name, and .NET version, build status zip files, generate comprehensive reports, and present key metrics on a dashboard.

The automation script was implemented in Python, utilizing packages such as os, subprocess, zipfile, re, json5, shutil, and xml.etree.ElementTree. The script automated the extraction of information from the zip files, eliminating the need for manual intervention. It executed the .Net build command to determine the success of the build and captured error details if any. The appsettings.json file was parsed to obtain the database type and name, while the csproj files provided the .NET version

The developed automation script was integrated with a Web application, allowing users to upload zip files and apply the script effortlessly. The application displayed a dashboard presenting statistical insights, including the counts of database types used, the distribution of .NET versions, and the overall success rate of the build process. Reports were generated, providing detailed breakdowns of the build process and error details.

The experimental setup involved using various test files, including sample files representing SQL Server and SQLite databases and files intentionally modified to include build errors. The results obtained from running the automation script on the test files demonstrated its effectiveness and efficiency in extracting information and generating accurate reports. The script showcased advantages over existing methods and tools, offering simplicity, cost-effectiveness, and flexibility.

The thesis concludes with a discussion of the strengths and limitations of the automation script, potential improvements, and recommendations for future automation efforts. Overall, the developed automation script proved valuable for extracting information from zip-filed .NET projects and demonstrated its potential for enhancing productivity and decision-making in software development processes.

Share

COinS