Role of AI in requirements engineering

Simple non-intrusive offer, pillar, blog, or a guide
Learn More

The current state of AI, despite the relevant infancy of the tools, showcases promising potential. While human assistance is still needed, the convergence of chat UI and large language models allows users to ask for what they want in a natural language, and the technology is growing intelligent enough to respond or even take action.

 

"By 2026, more than 80% of enterprises will have used generative AI APIs and models and/or deployed GenAI-enabled applications in production environments, up from less than 5% in 2023."

Gartner

 

According to Bain, Management and IT are two of the premier areas for AI optimization.

Xray-labor-time-AI-automation

 

Across the functions, AI is expected to improve efficiency and increase business productivity by helping automate tedious or repetitive tasks, such as summarizing large documents or collecting data from multiple systems.

In the previous articles, we covered the general overview of AI, benefits of AI in exploratory testing and the role of AI in automated testing. In this one, we want to focus more on the business side of product development, specifically on requirements engineering. 

 

AI in requirements engineering

To be on the same page, we refer to all the activities related to requirements as Requirements Engineering (RE). Poor RE is one of the most influential factors when we talk about project failures. It leads to wasted time, traceability and quality issues, excessive costs, and hard-to-predict risks.

Typically, RE tasks involve a lot of manual labor and tend to be error-prone, however, advances in the field of AI offer an alternative, more streamlined approach. Natural language processing (NLP) algorithms in particular are now able to process and interpret existing textual data. 

As recent research on AI applications highlights, to maximize the usefulness of AI methods in RE processes, it is necessary to systematically identify the most suitable activities. There is no universal RE process model - an example of a commonly mentioned one is ISO 29148, but companies often take highly customized approaches. 

Still, there are the following phases which are mentioned pretty consistently, and we will discuss the AI applications to each (keeping in mind this classification of AI capabilities ). For the avoidance of doubt, you do not need to implement AI in that order, you can start at any phase depending on your project circumstances.

Xray-requirements-processs-AI

 

Note: for the specific prompting to achieve the RE objectives below, we encourage you to experiment yourself based on our exploratory testing prompts collection as well as popular prompting guides, e.g. OpenAI, Google, PromptingGuide.

 

Requirements Elicitation 

This phase describes the process of gathering all of the sources that could contain relevant information for the product under development. Examples include stakeholder interviews, market research, analysis of international and local regulations or internal demands.

There are several areas where AI can assist. First, gathering feedback and ideas can be improved by AI-infused conversational systems which ask relevant questions and prompt stakeholders for additional details. AI tools can also contribute to generating surveys or lists of interview questions in a faster and more thorough manner.

Second, AI can be a collaborative brainstorming partner to spark more creative insights and unlock next-level market intelligence. It can go through large complex texts (like international compliance standards) or perform different types of market analysis (consumer trends, competitor simulations, etc.) and simplify data mining across various sources without the need for dedicated analysts to write complex SQL queries.

AI can then summarize the key points in a neatly-formatted report. If this is not the first iteration of the product, AI can also suggest additional ideas from the historic analysis of usage and incidents.

Lastly, the AI tools can accelerate and empower the “culmination” of requirements elicitation - if an image is worth a thousand words, a rough prototype, built quickly and without tapping into other teams’ bandwidth, is probably worth a million.

 

One of the biggest benefits of no code/low code AI platforms is that non-technical users can create simplified prototypes using visual interfaces and pre-built components even before the requirements are formally documented. E.g. Generative AI can be integrated with CAD and other design software. Especially as visual AI rapidly evolves, business analysts and interaction designers will need to pick up the skills to guide it instead of individually laying out pages and business process flows themselves.

Some of the industry examples beyond ChatGPT:

 

  • IBM’s Watson Assistant or Google’s Dialogflow can handle user conversations and generate natural language descriptions of their preferences. 

  • WireGen from Figma can be used to design wireframes and high-fidelity mockups consistent with your company's style guide. 

  • Freehand AI from InVision can take e.g. all the idea notes from a brainstorming workshop and cluster them by sentiment.

 

Requirements Documentation

This phase describes the process of transforming the information gathered during Elicitation into formal artifacts suitable for the product development process. Oftentimes, those artifacts take the form of semi-structured text, but they can also incorporate visual representations (e.g. flowcharts, use-case models, mind maps), custom attributes, etc. Well-written requirements are critical as they can help e.g. increasingly complicated automotive software systems stay compliant with standards like ASPICE and ISO 26262.

The primary application of AI here is fairly straightforward - generating requirement documents from natural language descriptions. This can be especially helpful for capturing higher-level specifications from stakeholders who are not technical or more easily converting visual information into structured text. 

Another example could be passing the transcript of the e.g. Teams call from the design brainstorming session to the AI tool in order to quickly create the structured documentation. One of the suitable tools is Bard that can generate natural language descriptions of requirements based on a set of input specifications.

Thinking ahead to other product development stages, we may consider asking AI to write requirements themselves in a prompt-like form, so that it is easier to design tests from them later via AI as well.

One of the criteria to look for when you are choosing the AI tool/model for this RE phase - being pre-trained on the INCOSE Guidelines for Writing Requirements, which helps detect and prevent a number of quality issues. 

If you are looking to add mockups or other visuals to your requirements, you can consider models like DALL-E or Midjourney. 

 

Beyond that, use cases include:

 

  • Extraction - finding domain-typical terms in requirements, e.g. to create glossaries.

  • Classification - categorizing requirements according to predefined types, e.g. functional and non-functional.

  • Modeling - representing requirements as models in various forms. 
    • ChatGPT can tackle creating such visual process artifacts as flow or swimlane diagrams and data schemas.
  • Conversion to other languages (including both use cases such as e.g. English -> Chinese and business domain languages Non-Gherkin -> Gherkin).

 

Requirements Analysis

The goal of this phase is to confirm that company-specific artifact formalization rules have been met. Stakeholders also need to make sure the content of each artifact has as few inconsistencies, ambiguities, or dependencies as possible. Clear and comprehensive business requirements are the backbone of successful project delivery, ensuring that all parties have a shared understanding of the desired outcomes.

Similar to the previous phases, through interactive dialogues, the AI models can provide recommendations to clarify ambiguities, uncover implicit needs, and identify inconsistencies, conflicts, or missing information against predefined criteria. 

For example, business analysts can describe the process to ChatGPT or Siemens’ Teamcenter, and it can try to highlight areas that require attention, e.g. due to expected bottlenecks or inefficiencies. Or AI can continuously scan the latest versions of compliance standards against existing requirements to prevent breaches of relevant standards and laws in an industry.

For content or structure issues, training on INCOSE Guidelines for Writing Requirements can again come in handy. Also, AI tools like Copilot4DevOps can rate the quality of requirements data against the 6C’s (i.e., clarity, completeness, conciseness, consistency, correctness, and context) on a scale of 0% to 100%.

Beyond the detection of issues, AI can also assist with tracing correlations between requirements or their relation to sources.

 

Requirements Verification and Refinement

This phase revolves around the examination of product development deliverables (such as software code or field simulations). The goals are to ensure the fulfillment of all specified requirements and to stimulate the RE improvements for the future product cycles. It is all about iteration and accelerated feedback loops.

Since we talked about the testing aspect of Verification in the previous articles, we will focus on other areas here. 

AI tools enable more rapid building and deployment of functional proofs of concept (or minimum viable products), not just design prototypes. That allows users to quickly test multiple variations, analyze their performance, and identify elements to improve in the next requirement cycle.

Furthermore, AI-powered algorithms can be implemented in production to monitor, detect, and categorize errors since manual root cause analysis can significantly increase the workload (e.g. continuous profiling with ML-powered Amazon CodeGuru Profiler). 

When it comes to Refinement, AI models offer the advantage of continuous learning and improvement. As stakeholders interact with the AI systems and provide feedback, the models can learn and enhance their understanding of the specific requirements over time. This iterative process ensures that the captured requirements are continuously updated and aligned with changing business needs while any issues are resolved as early as possible.

This can include tasks such as recording & tracking the changes, managing dependencies between requirements, and generating reports, which leads to better evidence-informed decisions about the next iterations across the product development lifecycle. And allows business analysts to spend more time looking for deeper and more interesting insights.

 

AI's transformation in requirements engineering

AI offers tangible benefits across industries and business functions, facilitating more rapid ideation and faster time to market for new products. Because it does not require highly technical skills and is growing availability-wise, AI will level the playing field in terms of access to information and skills, making a case to be one of the most transformational recent trends. 

Less than a year after many of the GenAI tools debuted, one-third of McKinsey’s survey  respondents say their organizations are using gen AI regularly, in at least one business function; 40% of respondents say their organizations will increase investment in AI.

The expected benefits of AI in requirements engineering are:

  • Enhanced efficiency
  • Improved clarity
  • Easier collaboration
  • More reliable risk mitigation

 

To maximize the implementation success chances, companies need to incorporate a change management approach that prioritizes employee training and well-being so they are able to use AI tools safely and confidently, while automating routine tasks. Keeping in mind security considerations, you should also determine which AI deployment options work best - private (offline) vs enterprise cloud vs public. Lastly, McKinsey research shows that using multiple tools can be more advantageous than just one.

Comments (0)