Model-based Requirements Analysis and Validation

Project Description

Adequate requirements validation could prevent errors from propagating into later development phase, and eventually improve the quality of software systems. However, often validating textual requirements is difficult and error-prone. In this project, we propose an approach to feedback-based requirements analysis/validation, which facilitates a means for requirements engineers to interact with a requirements model and analyze/validate its behavior through a set of queries. Our approach is based on the notion of having a question/answer session with a requirements model in order to determine whether the model's behavior satisfies the given requirements. In this approach, given a model built by engineers, the model is queried with scenario questions that are derived from requirements. The answer to a given question is immediately generated by traversing a behavioral model using a scenario question. This immediate feedback mechanism allows engineers to address potential problems with a requirements model and to formulate unconsidered scenario questions dynamically in response to feedback. Getting an answer to a given requirement helps determine whether that requirement is satisfied or not. To support our approach, we implemented a Scenario Question Query Engine (SQ2E), which uses scenario questions to query a model, and investigated feasibility of our approach through a preliminary case study using a real-world application. We plan to perform more case studies using various types of applications.
  • PI: Hyunsook Do
  • Collaborator: Daniel Aceituna, Kaushik Madala, Bastian Tenbergen, and Eduardo Blanco