During my PhD, I tackled a common but often overlooked challenge in software development: keeping requirements and acceptance tests aligned as the system evolves. And yes—requirements always evolve!
When requirements change, their associated acceptance tests should change too. But in reality, misalignment happens all the time. Why? Because updates are often poorly communicated, test cases are manually maintained, and stakeholders get left in the dark. This leads to bugs being reported for features that were intended—just not clearly communicated.
To address this, I developed GuideGen, a method and a tool that:
a. Automatically guides testers on how to adapt acceptance tests when requirements change.
b. Notifies stakeholders in real time (via email) when changes happen.
c. Raises warnings when mismatches between requirements and tests are detected.
The goal? To maintain quality and clarity in fast-moving projects—and to make sure everyone stays on the same page.
The goal of the approach is to identify all relevant changes in requirements that require the associated acceptance tests to be adapted and to generate guidance in natural language on how to adapt the acceptance tests based on these changes.
An overview of the approach:
As soon as a requirements engineer applies changes to a requirement and saves them, my approach:
GuideGen is a web application, written in Java using Servlet and JSP technology. It is deployed on Apache Tomcat. On the one hand, GuideGen supports requirements engineers in maintaining the requirements of a system and in communicating all changes of requirements to testers, developers and other interested parties on-time and with almost no effort. On the other hand, GuideGen supports testers, who maintain acceptance test documents, by providing them with guidance on how to modify impacted tests so that they stay aligned with the modified requirements. In addition, by flagging all non-aligned acceptance tests, any stakeholder can easily see which acceptance tests are currently mis-aligned with their corresponding requirement - be it that tests do not exist yet or that they have not been updated after changes in the requirements.
View my five minute demo video below, prepared for the ICSE 2018 demonstrations track. For the corresponding tool demo paper, see the publications list below.