Software Design


Traditionally there has been lots of focus on hardware reliability and availability. In fact, software has similar or increased chances of failure as well. Therefore, we have developed methods in which we can help our customers to improve their software reliability and quality.

 

Software Reliability Prediction

We work with our customers to allocate and predict software reliability for their product based our reliability modeling techniques. We perform this task based on either customer design inputs or past software field performance. Also, we help customers to define a target range for their software releases.

Software Readiness Analysis

Customers are always interested to know when to release their software to the customers. We have helped a number of customers to determine when the software is ready for release based on remaining number of software bug in the code. Utilizing minimum test information, we are able to quickly determine the readiness of the software and provide recommendation on software reliability techniques to minimize the risks.

Software Failure Modes & Effects Analysis

In addition to hardware FMEA, we work with our customers to develop tailored software FMEA template that best match to their requirements. Utilizing a range of pre-defined software failure modes, customers can evaluate the design and update the code as required.

Software Fault Insertion
Based on our experience, this has been a key activity that has helped design teams to harden their code. The goal of this task is to determine if software has a silent data corruption, hangs or crashes. This testing is based on runtime operation of the code. Currently we have a wide range of software failure modes that we can insert in the software.