Matlab och Simulink är vad Mathworks är mest känt för, men i portföljen finns också verktyget Polyspace som hittar defekter i källkod.
Polyspace är närmare bestämt två verktyg. Bugfinder motsvarar stavningskontrollen i en ordbehandlare. Den ser exempelvis att standarder som Misra C följs, och varnar för sammanblandning av ”==” och ”=”.
Code Prover söker dynamiska fel – division med noll, pekarfel, numerisk övertrassering.
– Många tycker statisk kodanalys är dyrt, men det är inget jämfört med kostnaden för att återkalla en bil, säger Stefan David på Mathworks, som köpte franska Polyspace år 2007.
Utvecklaren slipper tråkig kodgranskning och kan fokusera på exempelvis funktionella fel eller algoritmutveckling.
Kodens fotavtryck och prestanda kan förbättras i och med att en godkäntstämpel från Polyspace kan betyda att dynamiska tester kan tas bort.
– Om man kan visa att det inte är möjligt att nå en viss dörr, så kan man spara pengar, kod och körtid på låset som inte behövs, säger Stefan Davids kollega Tapio Kramer.
Data kan dimensioneras ner från 32 till 16 bitar om Polyspace säger att det räcker. Cyberrisker, som buffertöverflöden, dåliga slumptal eller riskabel minnes access, kan också pekas ut.
Istället för att kasta gammal osystematisk kod, kan Polyspace få ta en titt och peka ut problem.
Fordon är en stor kund, liksom flyg, rymd och militär. Kod för självkörande bilar är en växande marknad, liksom medicin.
Det solcellsdriva flygplanet Solarimpulse beräknas ha sparat ett manår av utvecklingstid på att använda Polyspace, i ett team på 20 personer.
Tapio Kramer säger sig till och med ha fått återkopplingen att en utvärdering gav alltför positivt resultat.
–Han ville inte gå till chefen med siffrorna, för då skulle chefen fråga varför han inte skaffat verktyget tidigare.