Static Code Analysis Acceleration

Written by: Electric Bee

The applicability of the CloudBees Accelerator platform extends well beyond the software build acceleration use case. I often hear of users that are leveraging the powerful workload distribution, real-time job scheduling and safe parallelism capabilities of the product to accelerate and manage many other compute intensive development and engineering processes such as unit or functional testing, modelling, simulations, static code analysis.
Let's focus the rest of this post on the value that CloudBees Accelerator can bring to the static code analysis use case. Static code analysis is a major part of what some vendors in this space such as Parasoft and Coverity are positioning as the Development Testing process. Other vendors such as Klocwork and HP Fortify are positioning their static code analysis as part of their Security Testing offerings. ProgrammingResearch and others are categorizing their static code analysis solutions as a compliance play, helping developers ensure and adhere to e.g. the MISRA , JSF AV C++ and DO-178B standards.
Regardless of why and which vendor or tool you're using, running your static code analysis comes with a cost and is typically a very slow time-consuming process – an order of magnitude longer than the regular software build time. If you are suffering from this problem with too slow and too long static code analysis runs, CloudBees Accelerator can offer relief for you and dramatically reduce the runtime with next to no or very little integration work!

In the above table, you can see Before/After-data when CloudBees Accelerator was run together with Parasoft's C++Test for three different fairly large and complex open source projects. For all three projects, C++Test was configured to run the MISRA C 2004 compliance ruleset - when distributed and parallelized across an CloudBees Accelerator 32-agent cloud, we saw a 4.8-5.7x acceleration factor. Studying these results in some more detail using ElectricInsight by looking at the graph below and other visualizations, it's also easy to spot that these results were realized with lots of idle-time on the CloudBees Accelerator agents – definitely giving us food for some thoughts. With some additional optimization in how the various jobs were scheduled and ordered either from within CloudBees Accelerator itself or from this particular tool, the acceleration-factor would have been much higher! Stay tuned for more details on what particular enhancements around job scheduling/ordering we're currently implementing in the CloudBees Accelerator-product!

You may wonder about the technical details on how this integration actually was done between CloudBees Accelerator and C++Test? Using the electrify utility within CloudBees Accelerator, integration was simple. These details and more was jointly presented by Parasoft and CloudBees at the recent CloudBees Summit as well as at a webinar titled “Getting More Out Of Your Development Testing ” a few weeks back – embedded link to replay the webinar below:
A BrightTALK Channel

Stay up to date

We'll never share your email address and you can opt out at any time, we promise.