The goal of requirements analysis is to ensure that the requirements are complete and consistent and that Pi Innovo fully understands the customer's needs and expectations. This phase of development includes:
• Compliance to all relevant standards and regulations
• Testability of each requirement
• System resource usage, sampling rates, and response times required
• Diagnostics and fault management requirements
• Hardware / software interfaces, including circuits, ASIC's, communications protocols, 3rd party development tools
• Identify safety requirements and ensure that they are managed at the proper ASIL for ISO 26262 projects
To fully understand the requirements, Pi Innovo engineers start by reviewing datasheets and researching specifications in addition to consultation with experts. To evaluate solutions, the engineering team may run simulations, develop software mock-ups/prototypes, or experiment with development boards. Pi Innovo leverages past projects to look for similar appropriate requirements.
After analysis is complete, the requirements are refined and used as the basis for software architecture and low-level requirements development.
During the Requirements Analysis phase of a project, opportunities to leverage Pi’s experience and growing codebase are identified. This can provide significant cost savings while reducing development times.
Recently, Pi Innovo completed a project developed almost entirely from existing software components. Development started with an existing M670 module for the basis. A UART communications feature from a M550 module and a secondary microcontroller for BLDC motor control was added from another project. In this example, no new software features had to be written. This resulted in reduced project development cost and time, and provided the customer with added peace-of-mind due to the use of proven code.