How to Review, Write, Manage, and Implement Test Requirements
Introduction The process of reviewing, writing, managing, and implementing requirements within functional safety is important in the automotive...
5 min read
Gustavo Melo : Oct 27, 2022 3:09:43 PM
The process of reviewing, writing, managing, and implementing requirements within functional safety is important in the automotive industry. Requirement implementation is especially important for testing-correction-retesting, which ensures validation. When engineers run these tests, they can determine whether these applications are operating within their intended functionality.
This is the first article in a 2-part blog series focused on the process of reviewing, writing, managing, and implementing test requirements, and the key factors of success when handling these projects with a variety of customers in the industry:
One of the key measures of success within functional safety is if these implementations work as engineers expect them to or not once testing begins. That way, these processes can lead to safer automotive mechanics and towards safer roads.
The productivity of projects involving reviewing, writing, managing, and implementing requirements can depend on different factors. As the customer, an organization’s level of experience with requirement projects will often differ from others. If they have more matured experience, the process will run smoothly. If they have less experience, the process can be more tedious. Organizational size is a characteristic that can reflect experience—one organization can be smaller in size compared to another but be much more experienced. Less experience isn’t necessarily a fault, but rather an opportunity to grow in knowledge with the engineers working on these projects.
One of the key ways to start strategizing is by reviewing and analyzing the requirements at hand. Elicitation is very important when handling these projects because it allows all of the stakeholders to identify the overall demand from the start, providing transparency of what standards, processes, and tools are needed. After this is established, the team of engineers can write the requirements. As a less experienced customer, you can work closely with them to be more involved. As a more experienced customer, you can give them the freedom to work amongst themselves, trusting that they understand the requirements completely.
In some cases, less experienced customers want to start off with the end product and then implement software. From a customer standpoint, it is advised to avoid that route just because these projects will not always be that simple. Within each step of this process, everything should link back to the requirements. If there are requirements that are not being accounted for, and gaps are overlooked, the process will take longer and most likely will need to be readjusted.
It is vital to investigate these gaps to prevent issues down the line. Again, you want to make sure that everything links back to the requirements established. Eventually, engineers need to validate and implement these requirements. Being efficient in the reviewing and writing stages will translate toward an efficient testing stage.
Requirement management is another reason that strategizing for these projects is essential because it is possible for requirements to accidentally get lost and/or deleted. No worries, though—the reason behind this occurrence is often due to human error and can be prevented. Mitigating the occurrence of this human error is important because it will affect every step in the process made after the requirements are reviewed. The choice of management tools often defines the project’s resulting success.
The purpose of using requirement management tools is to provide a more organized and systematic way to maintain the previously reviewed and written requirements. For example, imagine buying groceries for your house and you get items that belong in the fridge. Depending on the quantity of each item, along with the interior layout of your fridge, how you want to organize everything may vary. The same thinking can be applied to tools used for managing the variety of requirements; the only difference here is that there are hundreds and hundreds of grocery items to store. Engineers want everything to flow from the requirements because it will ensure an efficient result long term. Organizations that understand the need for management should provide the resources to ensure these requirements are well-protected.
There are many steps within these projects that may require different tools. Tool selection is one subject of test requirement management itself and varies quite frequently. Larger organizations may have a variety of tools that they use for multiple projects, although it costs more money to do so. From a customer perspective, you will realize that some projects won’t require intricate management tools, so tool selection can be very simple. If something more long-term in desired, that plays a part in tool selection as well. A long-term commitment to a tool can provide expertise for the engineers trained in that tool. Long-term tool use can also build consistency in requirement management. Overall, that will depend on who the customer is and what they need.
Sometimes, organizations will have particular tools they prefer for these types of projects. Though it can affect those you have trained on these tools, switching up your tool selection can happen often. Having flexibility in these situations is advised, simply because changing tool sets should not be considered a bad thing. For example, it is best for you to switch tools if they are outdated. Additionally, it is best to switch to a different tool if it actually ends up saving time and money.
For engineers particularly, switching from one tool to another should not alter how they manage requirements too drastically. Oftentimes, organizations will be specialized in a tool that the team of engineers they are working with isn’t very familiar with, but they are still able to adapt. At the same time, you may have tools that you need assistance with, and the team of engineers you hire can help you gain experience and knowledge of that tool. The overall ability to adapt to different tools depends on the specific ones being used and the project itself.
Most tools have a similar enough structure to build from, so engineers won’t necessarily need to restart the entirety of a project. Tools used for writing and importing requirements are easy to adapt to. For example, you could be using a tool that imports requirements one by one compared to a tool like Excel, which could import them much more quickly per Excel sheet. On the other hand, some tools may have limitations—instead of uploading all the requirements onto a tool at once, it may only allow engineers to import around 200.
At the end of the day, it may come down to trial and error. Each organization and their team of engineers will be different. The key is to find the requirement management tools that best reflect the project’s demands. To guarantee efficiency, tools should have certain qualities, such as compatibility, accessibility, and customization. A tool’s level of compatibility determines how easily requirements can merge with the software being tested. For example, think of a USB connector that can connect to multiple USB ports, compared to a different connector only made for one particularly shaped port.
Additionally, it is important to be able to easily access the requirements within the tools used. If you are an experienced organization and want to work more closely with the team of engineers, having easy access to requirements allows multiple eyes to account for everything and to communicate that nothing is missing. Since project needs will vary per organization, having requirement management tools that are flexible is beneficial. If you want management tools to generate advanced data, you should have a customizable tool. In other words, tools that range from simple to complex capabilities provide extra freedom to work with.
You can imagine functional safety requirements as a large collection of puzzle pieces that link together. They play a significant role within testing in the automotive industry, which overall enhances safety and efficiency on the road. Engineering teams all have diverse skills and qualities that determine the success of requirement projects. The same can be said for organizations looking to complete these projects, whether having much or little experience. There is great importance in functional safety requirement implementation because each step of achieving this process helps ensure that an organization’s systems correctly build software that they want to test. Then, the end goal is to test the safety of these applications and advance them. This achievement is one of the many aspects of driving forward the innovation of the automotive industry and its technology so that functional safety remains at the forefront of modern transportation.
Introduction The process of reviewing, writing, managing, and implementing requirements within functional safety is important in the automotive...
How to Incorporate Guidance into Process Execution Using ALM
Effective Test Cases and How Inputs Influence Decisions This is Part 2 in a series on creating high-quality test scripts. In “Writing High-Quality...