Implementation of new software metrics for the rust-code-analysis tool, developed by Mozilla
External reference persons VALSESIA MICHELE
Research Groups DAUIN - GR-16 - SOFTWARE ENGINEERING GROUP - SOFTENG
Thesis type EXPERIMENTAL
Description rust-code-analysis is a Rust library that allows the extraction of eleven
maintainability metrics for ten different languages, including Rust. Through the Abstract Syntax Tree (AST) of a source file, rust-code-analysis allows the inspection of the code structure by analyzing source code metrics at different granularity levels and finding code syntax errors before compiling time.
The tool also offers a command-line interface that allows exporting the results in different formats. The possibility of analyzing source codes written in different programming languages enables systematic and straightforward comparisons between the metrics produced from different empirical and large-scale analysis sources.
This thesis aims to extend the tool mentioned above by adding new software metrics and studying each metric value's meaning. This analysis should determine if the value of each computed metric makes sense for a codebase with
a specific set of properties: number of lines, number of files, the programming language used in it, characteristics of the considered
The thesis should be able to answer these Research Questions:
- Is the value n of a metric x a good value for a codebase with k lines of code?
- What do metric X values show on the Y codebase?
- When a codebase can be considered maintainable? What are the most valuable software metrics? What are the thresholds of each metric value?
This thesis is in collaboration with Mozilla.
Required skills Java
Rust (o disponibilitÓ ad impararlo)
Deadline 05/02/2022 PROPONI LA TUA CANDIDATURA