Company DetailsIndustry: Aerospace Exploration and Research Company size: 50 employees (10 engineers and supporting technical staff) Project Scope: DevOps transformation, test automation, DevOps training Services provided: CI/CD, GitLab Solutions Implementation, GitLab Training Area: Digital and Enterprise Solutions |
Lacking a modern proactive testing process for the low-level firmware and embedded systems in its moon rover, a team of university engineers turned to Cprime Elabor8 to implement a CI/CD testing pipeline that reduces trial-and-error development by 75%.
The situation
When a prestigious European technical university set out to build a moon robot, one of its goals was to highlight the potential of its new generation of engineers. Using a fresh student perspective, the institution sought to create a semi-autonomous rover that could move freely about the moon’s surface while collecting important information about radiation levels.
Unlike previous remote moon exploration vehicles, however, the university’s initiative focused on creating a smaller, more lightweight system. The new rover would have a form factor that scientists could easily convey into space and deploy as a swarm to gather data across a vast surface area. The rover’s affordability, autonomy, and improved mobility would allow exploration teams to undertake missions across terrain impractical for larger, heavier, and more expensive self-driving vehicles.
The challenge
Breaking new ground — Creating a modern CI/CD Testing Platform for the aerospace industry
Software development is often a process of trial and error, and developing hardware, software, and firmware systems for off-planet exploration exponentially increases the potential risk of something going wrong. Due to the narrow margins for error in space, the rover project team of 50 student engineers and support staff wanted a modern, proactive testing and development process to increase their chances of developing a robust, reliable lunar vehicle.
“Having your code break on the moon is obviously a massive problem. It’s not something that you can fix by hitting a button and rebooting the system,” says Kevin Ryan, Agile and DevOps Coach for Cprime EMEA. “The problem was that embedded system workflows, especially in the aerospace and space industries, are decades behind the processes used to develop modern cloud-based industrial infrastructures. Not that the students lacked skills—there was a lack of precedent in the entire industry. Cprime’s Elabor8 role was to help them establish that precedent and significantly reduce marginal risks.”
Aligning processes with modern cloud methodologies
To improve their quality control protocols, the university team needed to align their processes with contemporary cloud methodologies and software development best practices. That meant implementing the tooling and ways of working for a CI/CD (continuous integration, continuous deployment) pipeline. The testing pipeline would allow them to rapidly iterate upon their code and design while maintaining quality and continuity across the project.
“As a team, they focused on writing complex, embedded machine learning and AI code. Coming directly from academia, they weren’t up to speed on code development automation infrastructures,” says Ryan. “Industrialised development just wasn’t a part of their scope.”
The solution
Partnering with Cprime Elabor8 to evaluate tools and create new development opportunities
Based on a recommendation from one of their commercial partners, the university team turned to Cprime Elabor8. The initial brief was simple, but left room for expansion.
“They had chosen GitLab—a complete DevOps platform—but they wanted Cprime to show them what using it should look like,” says Ryan. “They needed to understand the fundamental building blocks. We began by implementing the development environment and went from there as they learned the tool’s potential applications and use cases.”
The Cprime Elabor8 trainers experienced a learning curve nearly as steep as the student engineers themselves. The project was more than a simple tooling upgrade or transformation. The Cprime Elabor8 team needed to dive deep to define the project’s practical requirements and apply their newfound knowledge to a viable solution.
“Due to the unfamiliar environment, it has been a little like a research project—an incremental process to figure out how their DevOps journey should work,” says Ryan. “There was no Googling for a quick solution. As trainers, we needed to understand what they do before we could even hope to make reasonable and intelligent proposals to move them forward.”
A single repository of distinct projects with clear relationships
After clarifying the engineering team’s requirements, Cprime Elabor8 began putting together the components for a successful CI/CD pipeline. The team adapted training materials and explored key principles—from classes like GitLab with Git Basics and GitLab for CI/CD Pipelines—with the engineers to help them create an elite DevOps toolchain to solve their testing issues.
“We began by advocating for a mono repo rather than a poly repo approach to mitigate complexity and aid communication. Then we developed systems for quality assurance, build, and testing automation. We also automated dependency management and documentation generation,” says Ryan. “Once they were comfortable with the basic processes, we moved into more hardcore QA tools like Google Test, the C++ testing and mocking framework. Now, they are doing some groundbreaking stuff and actually deploying machine-level firmware to their space robot.”
“Together we have put together a toolchain that ensures they check, double check, and triple check every one and zero in their code base. It has pushed the project forward and allowed them to increase their benchmarks while simplifying each subsequent success.” — Kevin Ryan, Agile and DevOps Coach for Cprime EMEA
The right tools for success
To reduce context switching and promote a more familiar, consistent development and testing environment, Cprime Elabor8 also introduced the GitLab Workflow extension for Visual Studio (VS).
“Using modern technologies like Docker and VS development containers has made a huge difference,” says Ryan. “Because each machine you compile code on can yield a different result, just having an identical environment for everyone with all the dependencies, tooling, and build infrastructure in place has improved auditability and repeatability.”
The results
Increased Quality and Reduced Margins for Error
After 18 months of working with Cprime Elabor8, the university teams have a unique CI/CD pipeline suitable for the aerospace industry and low-level firmware and embedded systems development. It is a development and testing framework that rivals any cutting-edge development and testing automation infrastructure for the cloud.
By guiding them toward a uniform development ecosystem with repeatable processes, Cprime Elabor8 helped the engineering team eliminate nearly 75% of the trial and error caused by compiling and testing code on inconsistent systems.
“That translates directly into higher quality firmware and software, and a reduced margin for error,” says Ryan. “We have put together a toolchain that ensures they check, double check, and triple check every one and zero in their code base. It has pushed the project forward and allowed them to increase their benchmarks while simplifying each subsequent success.”
Ready to achieve similar results? Discover how our Test Automation Advisory & Implementation Services can empower your organisation to deliver high-quality software faster.
First published in: