We help streamline strategies and tool chains.
Traditionally, the automotive industry works in silos with little to no interaction between the contributors until final stages. This concept requires very specific requirements and extensive testing efforts and does not prevent system integration issues early in the process.
It is possible to achieve fully functional continuous integration and validation in the automotive world. As demonstrated by the system we designed for Tesla, it allows full vehicle software hotfix releases within hours rather than weeks. Continuous integration, paired with the power of over-the-air software updates, creates a unique advantage over the competition when it comes to feature release cadence and the reaction speed to field issues.
What is continuous integration?
Continuous integration has been used in the IT industry since the early 1990s. The basic approach behind the term is that new software is integrated, built and tested as often as possible - rather than collecting all changes at the end of a development cycle. The advantage being the early detection of issues within the software code, as well as in the integration. Problems are pinpointed faster and easier since the change content is kept small between testing cycles.
How can continuous integration be applied in automotive?
In order to achieve continuous integration, a variety of tools and processes need to be in place. On the tool side it requires a common code repository with access for everyone involved in the development, integration of automated and self-executing test suites on unit, component and system level as well as a feedback loop for results and issue reporting. There are also process steps necessary such as daily code commits, code verification in a cloned production environment before commit and a specifically tailored branching strategy.
Does continuous integration automatically mean continuous deployment as well?
No. Continuous integration gives a team the power to deploy software to a customer system at almost any time, but it does not require so.
What are OTA
software updates?
OTA is an acronym for "over-the-air" and refers to software updates delivered directly via internet to a device without requiring customers to present the device at a service location. At times, the term FOTA is used which stands for "firmware over-the-air" and refers to the same technology.
What is needed to implement OTA updates?
A complete chain of solutions has to be in place, starting with a uniquely identifiable code base over a performance server ecosystem, all the way to security measures. The system can be divided into three sub-systems: build system, transfer system and target system. All three have to obey the same rule sets and communication codes, and need to be secured against malicious attacks; intended and unintended.
Why does an automotive product need OTA updates?
Today a simple mobile phone receives continuous updates and patches on a regular base; smart TVs download the latest firmware as soon as it is available - products that continuously improve are taking over the market. It's only recently the automotive world began to explore the vast opportunities of updatable products.
For now, OTA mainly focuses on infotainment systems but as we race into a future where smart products have become the standard, more and more customers will turn towards vehicles that continue to improve functionality over the time of ownership. While there is a clear advantage in initial customer acquisition, it also opens up an entirely new revenue stream of selling software upgrades and services to existing owners, both temporary and permanent.
The need for OTA updates is also supplemented by the further integration of transportation devices with each other and their environment and the security risks that come with it. If a new vulnerability is discovered within a product it must be closed immediately to prevent risk to customers and the business.