PerSpecML - Machine Learning
PerSpecML is a state of the art approach created to support the specification of Machine Learning (ML)-enabled software systems. The template facilitates applying PerSpecML in practice.
The PerSpecML approach is based on the analysis of 51 concerns grouped into five perspectives: ML objectives, user experience, infrastructure, model, and data. Together, these perspectives serve to mediate communication between business owners, domain experts, designers, software/ML engineers, and data scientists.
Main benefits of applying PerSpecML include:
1 - It supports the requirements specification and validation of ML-enabled systems.
2 - It provides an overview of the workflow involved in building ML-enabled systems, allowing you to quantify, at first, the efforts of the system's technical solution.
3 - It helps in the communication of the teams involved in ML projects by pointing out the tasks and suggesting the different stakeholders involved.
The PerSpecML approach was created during Hugo Villamizar's PhD at the Department of Informatics of PUC-Rio, supervised by Prof. Marcos Kalinowski with the support of Prof. Helio Lopes. The technique was first applied in machine learning projects of the ExACTa initiative and evolved over a series of scientific studies. Today it is being used by several companies. Below is a list of some related scientific studies.
Villamizar, H., Kalinowski, M., Lopes, H., Identifying concerns when specifying machine learning-enabled systems: A perspective-based approach. Journal of Systems and Software, vol.213, July 2024.
Villamizar, H., Kalinowski, M., Lopes, H., Towards Perspective-based Specification of Machine Learning-Enabled Systems. Euromicro Conference on Software Engineering and Advanced Applications (SEAA), 2022.
Villamizar, H., Kalinowski, M., Lopes, H., A Catalogue of Concerns for Specifying Machine Learning-Enabled Systems. Workshop on Requirements Engineering (WER), 2022.
Villamizar, H., Escovedo, T., Kalinowski, M., Requirements Engineering for Machine Learning: A Systematic Mapping Study. In 47th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), 2021