Legacy systems with little or no documentation are common, even within the domain of safety critical software. In order to update these systems, a thorough understanding of the software is required before any changes can be undertaken.
By fully evaluating these systems we can determine the best route to improve the quality of the software and to produce the documentation required for certification. This includes the creation of formal designs, adding requirements traces to existing software, and generation of regression tests.
Once the software has been analysed, it is then possible to continue the development of the system knowing the effects of future changes will be understood and predictable.