Accelerating Model-Based Design Through Continuous Integration
Jason Stallard, Cummins
Continuous integration (CI) is an agile methodology in which developers regularly submit and merge their source code changes into a central repository, which are then automatically built, tested, and released. CI plays a critical part in automating key parts of the Model-Based Design workflow, including verification, code generation, and testing. This approach enables developers to focus on developing new features, not on verifying features have been integrated correctly. Cummins and MathWorks developed a custom CI toolbox using object-oriented programming in MATLAB® and a production Jenkins® build automation server to automate Cummins’s entire Model-Based Design process including verifying AUTOSAR ARXML changes, checking compliance with industry modeling standards and guidelines, verifying requirements and coverage of model-in-the-loop and software-in-the-loop, performing design error detection using Simulink Design Verifier™, ensuring successful code generation, and proving the absence of critical run-time errors and applying industry code standard checking using Polyspace Bug Finder™ and Polyspace Code Prover™.
Published: 22 May 2023