Requirements Change Automation: Why it Matters
The Need for Requirements Change Automation
Identifying the requirements needed for a software product or piece of code is never easy. Business analysts, testers and developers must interpret and understand the customer’s needs and expectations and must then phrase them inside a clear sequence of instructions, inserting them into the design and test cycles. They then face the added challenge of ensuring that those requirements remain comprehensible to everyone involved. And once that is established, a further challenge awaits: “how to do requirements change automation” or the ability to effectively handle changes to those requirements as they arrive, either from the customer or more likely from internal discoveries, happening frequently.
The Value It Brings to the Business
Requirements change automation makes testing more cost-efficient by allowing test cases to be updated automatically as those requirements change. For testing teams that are using more modern approaches like continuous testing and continuous delivery, this offers a much more effective solution over traditional testing approaches.
Think, for example, about the way traditional testers are supposed to make changes to the actual test cases when changes in requirements occur. The conventional way – some say this is still the easier way – is to ignore existing tests in the suite and then recreate them all by hand. But this is highly inefficient and potentially costly. For example, if a given change only affects 8% of test cases, it means testers are effectively wasting the other 92% of the test cases, which are now being discarded and re-created just as they were. This is unnecessary, and on an enterprise-class project involving a large number of tests, the cost of re-creating these tests can be huge.
Requirements change automation proves its value to any business since with the following key capabilities:
- First, it analyzes the impact of a change, providing automatic detection of test cases that are affected by changes in requirements.
- Second, it helps in healing of the test suite. This means that test cases that were detected to have been impacted by a change can be fixed automatically, so they adapt to the new requirements.
- Even better, when new tests are generated, they will be confined to paths that haven’t already been covered by existing tests.
And for anyone who is part of a requirements design team, this is of great benefit, since analyzing the impact of changes to the automated scripts — in addition to the manual test cases — would represent considerable additional effort that would not fit into any current sprint.
Boosting the Effectiveness of the Agile Environment
Requirements change automation boosts the effectiveness of the agile environment, since ‘healing’ or regeneration of any impacted automated scripts will be easier and faster, without the need for heavy manually inspection and updating.
This is something that CA Agile Requirements Designer helps deliver. ARD uses a visual requirements modeling approach using flowcharts to draw up test cases, analyze changes in requirements and communicate them in a highly dynamic manner, avoiding the need to convert them to text and paragraphs.
When a change is made to the requirements, CA Agile Requirements Designer automatically detects test cases which are affected by the changes and can then ‘repair’ them, so they conform to the new requirements. Even better, when new tests are generated, they will be limited to paths which have not already been covered by existing tests.
Together, these types of developments – requirements change automation in general, and ARD in particular – answer the call for a continuously evolving level of efficiency within the software development world. As software companies continue to move away from waterfall into the dynamic, high-output world of continuous testing, in response to market demand, they will remain able to keep pace with changes throughout the entire lifecycle.
CA offers comprehensive solutions that automates the most difficult testing activities – from requirements engineering through test design automation and optimization. Start your Free Trial of CA Agile Requirements Designer today and fast track your Testing at the speed of agile.