Exploring Requirements Engineering for Machine Learning via a Product Case Study
DOI:
https://doi.org/10.32473/flairs.38.1.138918Keywords:
Requirements Engineering, Requirement Elicitation, Machine Learning, Requirement Validation, Non-Functional Requirements, Functional RequirementsAbstract
Requirements Engineering (RE) is a well-defined process in software development. Through customer requirement elicitation techniques, Non-Functional Requirements (NFRs) and the Functional Requirements (FRs) that implement them, are defined. However, these techniques are designed for describing deterministic software. Currently, Machine Learning (ML) is becoming ubiquitous, and many domains deploy it. However, ML design and development lacks the formal structure of traditional software development. As ML is developed and deployed in various applications, it would benefit from a structured design and verification process. This paper presents a case study to explore the RE process for ML development. For this case study, the authors follow the RE process for an ML-based software system from customer product description to requirement specification validation. The case study results in 23 NFRs and 151 FRs for the given product. This paper finds that although the NFRs and FRs for ML look different than those for traditional software systems, RE can be adapted for ML development and improves the system descriptions.
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2025 Lynn Vonderhaar, Timothy Elvira, Juan Couder, Omar Ochoa

This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.