Introduction
The transformation to software-defined vehicles (SDVs) will enable automakers to add new features throughout a vehicle’s life. To support frequent updates, teams are adopting new approaches, including central/zonal E/E architectures with high-performance computers (HPCs), embedded software with service-oriented architecture, automation with continuous integration and continuous delivery, and virtual validation using simulation.
The transition to SDV is not straightforward. This white paper shares insights and best practices derived from MathWorks engagements with automotive companies around the world. It covers the ways Model-Based Design enables the development of software-defined vehicles:
- Reusing Software Across Platforms: Model-Based Design eases software reuse across HPCs, zonal controllers, and electronic control units (ECUs).
- Reducing Development Time Through Automation: The use of models, along with automated and continuous verification, consistency checking, and traceability analysis, helps reduce development time while meeting safety and quality requirements.
- Enabling Shift-Left Integration: The integration of physical system models and virtualized software stacks enables shift-left software integration testing, accelerating defect detection and improving test coverage.
- Empowering Domain Experts: Model-Based Design enables domain experts to adopt modern software development practices and create high-quality software.
Software Features and Customer Value
Brand-distinctive features and customer value will be delivered through the software. Customers expect both safety and a continuous digital life where the vehicle is a platform for digital interactions and experiences beyond just driving. These expectations drive vehicle technology advances like electrification and autonomy.
Delivering Software Quickly with Confidence
Delivering automotive-grade software quickly and reliably is challenging due to many reasons, including:
- Increased software complexity and resulting validation challenges
- Requirements for functional safety
- Vehicle system and software teams with different mindsets
This paper addresses technology for SDV development as well as how the involved teams collaborate.
Examining the Elements of Software-Defined Vehicles
MathWorks works with automotive companies in every region of the world, observing patterns of both functionality and dysfunctionality.
Delivering software-defined vehicles requires competencies in vehicle development and software creation as well as close collaboration between vehicle and software development teams. However, these teams often work separately because they follow different processes and historically use different tools.
The vehicle is a multidomain system where reliability, functional safety, and the integration of many physical components are critical.
The competencies for building software-defined products include a combination of modern agile software development practices with fast development, frequent releases, and a high degree of automation in how the software is created. Software-defined products also require data-driven functionality, with data coming from the fleet via the cloud.
Bringing those competencies together is when a lot of the risk and complexity happens—when teams, tools, processes, mindsets, and biases collide.
The foundational part of the SDV development process is the vehicle. Two decades ago, automotive systems development engineers had a siloed approach, with work done by different groups. They used documents as a means of interchange. This changed with Model-Based Design.
Applying Model-Based Design
Model-Based Design aligns development activities around models instead of documents. The model serves as a set of executable requirements that drive verification, validation, and test activities. This approach lets you find and fix issues with requirements, architecture, and algorithms early. Then you can automatically generate embedded code, such as C or C++ code, from the algorithm models to run on a microcontroller.
With Model-Based Design, teams are also able to address the perceived rigidity of the V-cycle. Strict adherence to the V-cycle will result in a sequential series of steps, needing firm system requirements before the decomposition of the system can happen and needing all the components in place before integration testing can take place, which significantly reduces agility and efficiency.
In Model-Based Design with Simulink®, you model and simulate the full system, including models of physical components like battery and steering, as well as the full vehicle architecture, while also representing various software algorithms running in the vehicle. With such a system model, you start virtual development of a new software feature and carry out virtual integration testing from the beginning, testing the new feature as it interfaces with other software features, all running in a virtual vehicle.
In addition, with Simulink, the steps can be more compacted than the V conveys, and the execution of the steps can be automated in a manner that is consistent with modern software development practices.
Lastly, with software-defined vehicles, the vehicle E/E architecture is changing, as are the related development processes. The workflows implementing Model-Based Design have evolved accordingly.
Enabling Shift Left with Simulation and Virtualization
Part of the workflow change is the virtualization of the chips, the basic software, and middleware, which enables early software integration (shift-left integration). For example, Simulink can shift left the integration and testing by incorporating the virtual representation of an Infineon® AURIX™ processor using technologies from Synopsys. You can iterate quickly in the simulation environment and then use Infineon libraries to automatically generate code that’s optimized for the processor. Simulink also works with virtualization technologies from other companies, such as Qualcomm.
Supporting Service-Oriented Architecture
SOA is an important part of building modular software that can be individually updated. Today, Model-Based Design and Simulink let you create both signal-based and service-oriented applications for newer E/E architectures involving HPCs and zonal controllers. You can model SOAs (including AUTOSAR Adaptive applications), simulate them, and generate C++ code before deploying them as modular services.
Zeekr, an EV manufacturer in China, successfully used Model-Based Design for developing SOA software, which enabled the development team to iterate and release their software rapidly.
Learn more
Integrating with Open Source and Third-Party Platforms
A production development environment must integrate many tools and platforms. This is well-supported by Model-Based Design, as Simulink interfaces with many other tools, including open-source tools and code.
Simulating Complex Scenarios
Creating on-road and off-road scenarios for simulation helps you fine-tune system requirements and test against realistic scenarios.
Create roadway or construction scenarios for simulation and testing.
Increasing Speed and Quality
Let’s look at the software side next. Modern software development practices emphasize agility.
The workflows implementing Model-Based Design have evolved in order to make the overall process agile by aligning vehicle system and software development teams with shared tools and goals. Virtualization of the full system, components, virtual processors, and scenarios provides realistic test environments.
Engineering tools increasingly need to be integrated with the IT infrastructure. Close collaboration between engineering and IT has not been common in the automotive industry. MathWorks engages with organizations to bring these groups together and help automate model-based and systems engineering approaches using the DevOps tools that the software teams and the platform teams use. The goal is to align how processes are done and how pipelines are run, as well as enable transparency through dashboards and performance benchmarks.
Whether your software is automatically generated, handcrafted, or a mixture of both, the virtualization of the vehicle system, components, processor, software stacks, and scenarios provides a realistic test environment, which can be connected to and automated using continuous integration (CI) pipelines.
As an example, engineers at Geely believe continuous integration and continuous testing (CICT) form a key aspect of moving from fast software development to developing quality software fast. They see the integration between engineering tools such as Simulink, Simulink Test™, and Polyspace® and CICT platforms as a way to accelerate the flow of value and ensure continuous, high-quality, fast, stable, controllable software delivery at a lower cost. They reported a 90% success rate with their first-time software integration tests as a result.
Continental has been doing this for a while, integrating model-based approaches with its software factories, including integrations with GitHub®, Jenkins®, and Artifactory. It doubled the speed of its CI/CD system and cut maintenance effort in half.
These two examples underscore the importance of bringing together the systems and modern software practices.
Designing AI into Your System
A key type of data-driven functionality is AI. This includes AI algorithms for embedded systems, often called embedded AI. MATLAB® and Simulink provide a library of reference examples that show how to incorporate an AI-enabled software feature into a system, then generate code for the inference model. The examples can help you get started on designing, simulating, testing, verifying, and deploying AI algorithms that enhance the performance and functionality of complex embedded systems. One example of embedded AI is a virtual sensor.

The AI might be created in an open-source framework like PyTorch®. MATLAB interoperates with those environments, as well as with Python® and TensorFlow™, with co-execution, model converters, and a MATLAB Deep Learning Model Hub. Simulink blocks can bring in those inference models so you can simulate and see how the AI is going to operate in the system context with the scenarios.
Scaling to the Cloud
The cloud provides a platform for scaling simulations and software development for prototyping, developing, and distributing features and updates to vehicles. Simulink-cloud integration lets you scale your simulation and development workflows to cloud platforms such as Amazon Web Services (AWS®) and Microsoft® Azure®.
Conclusion
The journey to software-defined vehicles involves integrating software and system mindsets, tools, and processes. MathWorks is here to help with tools that support AI, cloud technology, and modern software practices.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)