Success follows exhaustive competitor examination and review
HERSHAM, UK, March 3 2009 / — PRQA | Programming Research has announced a successful selection of its QA·C++ product and technology following a detailed and close examination of competing commercial products by a leading aerospace industry player.
Presagis is a leading provider of COTS modelling and simulation software solutions. With core technology built on open standards, Presagis offers an unmatched range of solutions for efficiently developing tailored modelling, simulation, and embedded applications. recognized for its leading brands such as STAGE, Creator, Terra Vista, Vega Prime, and VAPS XT, Presagis gives the ability to “pre-live the future”.
The Presagis code base for the VAPS XT product is pure C++. They developed their own coding standard for their current project, containing approximately 170 in-house rules with an additional reference to most of MISRA-C++, for a total of about 390 rules. The in-house rules were inspired by internal experience plus recognized industry standards such as JSF AV C++ and High Integrity C++. The next generation of VAPS XT is firmly based in the safety critical domain (to comply with DO-178B). As such, their coding standard needs to promote defensive coding techniques in order to mitigate risky C++ language constructs.
Software Development Manager, Robert Nitti, was tasked with helping to reduce the total cost of software engineering for Presagis. After researching various options, he decided to investigate commercial state-of-the-art automated source code static analysis tools. Commenting on this approach, Mr. Nitti stated that “it became obvious early in the investigation that only a commercial solution would satisfy the requirement to improve the quality and maintainability of source code while helping to enforce coding standards and best coding practices”.
To choose a static analysis tool on which to standardize the company’s development activities, Mr. Nitti performed an extensive analysis on four leading and well known commercial source analysis tools. Programming Research’s QA·C++ product was one of the four analyzed.
Each candidate product was evaluated using a comprehensive test suite covering the statically detectable portion of the Presagis coding standard (approximately 300 out of 390 rules). The success criteria included the ability to detect each coding rule. Equally important was the precision of that detection, focussed on avoiding false positives and false negatives.
Competitive scoring involved a weighted decision matrix. Inputs to the evaluation matrix included: the test suite results, the ability to integrate with the IDE of choice (in this case, Microsoft Visual Studio), ease of configurability, and general usability. QA·C++ was the highest scoring tool in this decision matrix and was the overall winner.
According to Mr. Nitti, “The way QA·C++ presented the analysis output [by Visual Studio project-file with inline error message] is much clearer and intuitive to use compared to other Source Analysis tool output. With some of the other tools we tested, it was also difficult to sort through all the false positives compared to QA·C++. And most importantly, the detection and interpretation of a given rule by QA·C++ was also of a very high quality.”
In choosing QA·C++, Presagis was able to take advantage of features like configurable code-formatting rules (i.e. being able to reconfigure QA·C++ COTS rule names to their own internal names) thus ensuring layout consistency and uniformity, and flexible integration with Visual Studio offering multiple ways of grouping architectural components, either directly in the IDE or as QA·C++ project separate from the IDE.
Programming Research will continue to support Presagis to further integrate QA·C++ into their development process, helping them to automate and reduce code review and analysis overhead for their development team. Comments Mr. Nitti, “The easier the tool is to use, the more people will want to use it, which means better code and ultimately less long-term costs for Presagis. The ability of QA·C++ to automate a significant portion of our coding standard means more time for developers to focus on product development instead of chasing problems”.
PRQA | PROGRAMMING RESEARCH
Tel: +44 1932 888 080
Napier Partnership Limited
Suzy Kenyon, PR Agent for Programming Research
Tel: +44 1243 531 123