PORTALE DELLA DIDATTICA

Ricerca CERCA
  KEYWORD

Implementation of new software metrics for the rust-code-analysis tool, developed by Mozilla

keywords SOFTWARE ENGINEERING, SOFTWARE METRICS

Reference persons LUCA ARDITO, MAURIZIO MORISIO

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
programming language.
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