TY - GEN
T1 - Leveraging natural-language requirements for deriving better acceptance criteria from models
AU - Veizaga, Alvaro
AU - Alferez, Mauricio
AU - Torre, Damiano
AU - Sabetzadeh, Mehrdad
AU - Briand, Lionel
AU - Pitskhelauri, Elene
N1 - Publisher Copyright:
© 2020 ACM.
PY - 2020/10/16
Y1 - 2020/10/16
N2 - In many software and systems development projects, analysts specify requirements using a combination of modeling and natural language (NL). In such situations, systematic acceptance testing poses a challenge because defining the acceptance criteria (AC) to be met by the system under test has to account not only for the information in the (requirements) model but also that in the NL requirements. In other words, neither models nor NL requirements per se provide a complete picture of the information content relevant to AC. Our work in this paper is prompted by the observation that a reconciliation of the information content in NL requirements and models is necessary for obtaining precise AC. We perform such reconciliation by devising an approach that automatically extracts AC-related information from NL requirements and helps modelers enrich their model with the extracted information. An existing AC derivation technique is then applied to the model that has now been enriched by the information extracted from NL requirements. Using a real case study from the financial domain, we evaluate the usefulness of the AC-related model enrichments recommended by our approach. Our evaluation results are very promising: Over our case study system, a group of five domain experts found 89% of the recommended enrichments relevant to AC and yet absent from the original model (precision of 89%). Furthermore, the experts could not pinpoint any additional information in the NL requirements which was relevant to AC but which had not already been brought to their attention by our approach (recall of 100%).
AB - In many software and systems development projects, analysts specify requirements using a combination of modeling and natural language (NL). In such situations, systematic acceptance testing poses a challenge because defining the acceptance criteria (AC) to be met by the system under test has to account not only for the information in the (requirements) model but also that in the NL requirements. In other words, neither models nor NL requirements per se provide a complete picture of the information content relevant to AC. Our work in this paper is prompted by the observation that a reconciliation of the information content in NL requirements and models is necessary for obtaining precise AC. We perform such reconciliation by devising an approach that automatically extracts AC-related information from NL requirements and helps modelers enrich their model with the extracted information. An existing AC derivation technique is then applied to the model that has now been enriched by the information extracted from NL requirements. Using a real case study from the financial domain, we evaluate the usefulness of the AC-related model enrichments recommended by our approach. Our evaluation results are very promising: Over our case study system, a group of five domain experts found 89% of the recommended enrichments relevant to AC and yet absent from the original model (precision of 89%). Furthermore, the experts could not pinpoint any additional information in the NL requirements which was relevant to AC but which had not already been brought to their attention by our approach (recall of 100%).
KW - acceptance criteria
KW - acceptance testing
KW - controlled natural language
KW - gherkin
KW - requirements validation and verification
KW - UML
UR - http://www.scopus.com/inward/record.url?scp=85096997147&partnerID=8YFLogxK
U2 - 10.1145/3365438.3410953
DO - 10.1145/3365438.3410953
M3 - Conference contribution
AN - SCOPUS:85096997147
T3 - Proceedings - 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2020
SP - 218
EP - 228
BT - Proceedings - 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2020
PB - Association for Computing Machinery, Inc
T2 - 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, MODELS 2020
Y2 - 18 October 2020 through 23 October 2020
ER -