Seven Proven Ways to Overcome Automotive Software Complexity and Development Challenges

According to McKinsey, only 40% of R&D executives who view software as a major game-changer on the global automotive scene feel they're future-ready to meet the demand for innovation.

As the landscape changes dramatically, automotive industry actors lacking sufficient software capabilities will face significant risks, including features delivery delays, budget overruns, overheads resulting from bugs and errors, etc. They'll be lagging behind tech-savvy competitors and new and swift market entrants that will bring much more innovative solutions to the automotive market much faster and at a lower cost.

Automotive software issues can lead to massive recalls or make customers vulnerable to security breaches due to an increasing number of hacker attacks. With so much at stake, automotive players must completely rethink their approach to software development, including the underlying operating model, including the underlying operating model, architectures, talent hiring, and more.

This article presents some insights and seven proven ways to effectively address the most significant automotive software development challenges. They're based on our close collaboration and strategic technology partnerships with automakers, suppliers, and other ecosystem participants.

Contents

Automotive software trends and challenges

The global automotive software market was valued at $10.7 billion in 2020 and is expected to reach $29.3 billion by 2026, with a CAGR of 5.11% between 2021 and 2026.

The use of open-source platforms and improved product offerings focused on the user experience (UX) have fueled the entire automotive software market evolution. Tier 1 providers and original equipment manufacturers (OEMs) are increasingly focusing on the advanced driver assistance systems (ADAS) including instrument cluster and digital cockpit solutions ( in-car infotainment systems and middleware products). At the same time, car manufacturers are competing primarily over the software or operating system that power those solutions.

In addition, manufacturers focus on improving the intelligence of these in-vehicle systems and deploying software that will set their products apart from the competition.

Several trends emphasize the growing importance of automotive software. The first is related to the rapid expansion of the software and electrical / electronics market, which will grow at a CAGR of 12% from 2020 to 2030, more than three times the expected growth in total vehicle sales. The areas of most significant growth include connected car/electric vehicle (EV) software features (11% CAGR) and integration testing (12%).

Yet, the complexity of automotive software is growing at a similar rate. McKinsey research shows that software complexity has quadrupled over the past ten years, while software productivity has increased by only 1.5 times. And this is a huge challenge for the entire market.

This widening gap could jeopardize the future success of players in the automotive industry. Increased efforts to develop and maintain software throughout the software development lifecycle (SDLC) can reduce their ability to innovate and respond to competitors.

Companies must minimize complexity by reducing the effort required to develop and maintain software to succeed in this rapidly changing environment. This strategy will include limiting the number of features and capabilities available for different platforms and lifecycle stages.

At the same time, automotive companies must increase the reuse of components. To improve productivity, organizations should try to improve efficiency by matching the speed of software development with technology companies. As the overall level of software innovation does not diminish, carmakers, OEMs, and Tier 1 providers must also increase their software development and maintenance to provide the value propositions required to succeed in the marketplace.

Requirements for a new automotive software operating model

Reducing complexity and increasing efficiency will require a new software operating model that focuses on the three critical areas – What, Where, and How:

  1. Automotive architecture, design, and requirements (what software is developed),
  2. Development distribution across different locations, software engineering talent, and technology partnerships (where software is developed), and
  3. Flexible scalability, development and testing process re-factoring, software performance management and tool infrastructure (how software is developed).

 

Under the new operating model, automotive companies should translate their software aspirations and business capabilities into practical, scalable architectures, smart product management, automation, and features requirements at the product, function, and module level.

Through this process, companies better understand the types of software that can create value for them. 

Seven ways to address automotive software complexity and productivity conundrum

Reduce architecture complexity

To address these challenges, companies must dramatically increase standardization and modularity, distributed across platforms, to keep software complexity manageable. OEMs also need to focus on decoupling software from hardware and adopting service-oriented design.

Decoupled architecture

Automotive companies can introduce a powerful middleware layer that abstracts hardware capabilities and makes them available to software functions and services through the standardized APIs used at the higher layers. This software architecture can provide platform consistency and reduce design complexity, eliminating the need to re-develop the same software multiple times.

automotive architecure that supports decoupling of hardware and software

Source: McKinsey & Co

 

Service-Oriented Architecture

The architecture must conform to the definition of services, which in turn must codify the needs of the business or users. Service-oriented architectural design allows companies to standardize critical elements and interfaces between departments and business units.

Companies must also apply a standardized design for individual pieces of hardware and software to scale their resources and connect to other supported devices and features without impacting performance. Service-oriented architecture is especially important for OEMs. Achieving fast connectivity from the vehicle to the cloud will increase the long-term value of their models, as will the ability to upgrade them quickly.

Apply user-centric design

Automotive OEMs looking to become UX leaders should learn how to leverage their data. With an increase in the number of sensors for cars, car manufacturers now have access to a wealth of information about how customers use their vehicles. OEMs can analyze this data to determine the most important features to customers and those not listed or used. This understanding will help define the specification and prioritization of future model requirements.

Finally, new delivery models will have a positive impact on development efficiency. Because OEMs frequently change, adapt, and modify software, they don’t need to specify extremely detailed requirements at the start of a project. With less time spent defining requirements, time to market can also be shortened.

Are you looking for a technology partner for custom automotive software development?

Implement software requirements management and provide end-to-end traceability 

It’s essential to link requirements to strategy and customer value. Successful software development requires continuous feedback-based revision of automotive software requirements. While companies should initially derive software requirements from their business goals, they should make adjustments periodically based on customer feedback and development progress.

By carefully tracking requirements throughout the value chain, automotive companies can avoid unnecessary effort and accelerate development. But they can only do this if their development processes and tools provide strict traceability of requirements from definition to adoption. This clarity will help companies maintain a detailed understanding of:

  • requirements (customer perspective), 
  • required features (developer perspective), and
  • deliverables (tester perspective).

 

There’re four steps to enable end-to-end traceability:

  • Define requirements from the function to the component,
  • Implement backlog management, which helps teams manage the coverage of requirements in software development sprints (closely related to the next step),
  • Track code changes, including updates to backlog items,
  • Verify requirements by executing test cases and checking the status of pass-fail test cases.

 

By linking requirements with tools, companies can efficiently make changes at every project stage and thus fulfill regulatory requirements for end-to-end traceability (such as ASPICE, CAN or UNECE3). This approach quickly makes it transparent which changes are affecting work products. When following an Agile process, such changes in requirements are handled efficiently. And companies must support them through processes and tools. In a traditional waterfall software development process, such changes are hardly ever anticipated.

Access and attract top software engineering talent for automotive software projects

While automotive organizations must excel on many levels to win the software game, attracting and retaining the best talent is probably the most important and challenging aspect.

Most OEMs have outsourced their software development activities to a large extent and often rely on strategic partnerships. Given the ACES (Autonomous, Connected, Electric and Shared vehicles) trends that significantly increase the importance of software, and despite the potential increase in software performance, the demand for software engineers is likely to grow three to four times by 2030.

As the automotive sector is in direct competition with technology companies and other industries for talented software developers, it needs to take decisive steps to recruit seasoned and mature developers. Otherwise, the ever-widening talent gap will continue to plague the industry.

Automotive recruitment and retention programs should aim to achieve heterogeneity, as our experience shows that diverse teams with different backgrounds outperform homogeneous teams in development productivity. Several activities can help bridge the talent gaps.

One of them is expanding access to software talent on a global scale. 

A comprehensive placement strategy can help companies scale their software development activities, create appropriate capabilities, and increase capacity while keeping costs in check. It will also help them compete for the best talent. Several innovative companies have built innovative automotive engineering centers in digital talent-rich hotspots.

Others leverage external R&D centers that can offer teams of developers with deep automotive software domain knowledge, up-to-date skills in IoT and embedded development, as well as emerging tech like AI/ML, deep learning, computer vision, or Mixed Reality (XR).

However, most traditional players have largely retained their historical footprints and hardware development centers, complicating their efforts to attract and retain software talent. If these companies establish a global presence with multiple subsidiaries in critical areas, they will access talent from nearby universities, educational institutions, and professional developer communities. To strengthen their bonds, they could develop scholarship programs in partnership with universities, which would give them access to recent graduates and other professionals with specialized skills.

Automotive players are currently lagging in all of these categories when compared to tech companies. They must develop clear and targeted employer value propositions on all priority retention factors to bridge this gap. They cannot simply focus on traditional benefits such as job security and access to a company car. 

Alternatively, they can use their custom software development providers as recruitment partners.

Develop a clear make-or-buy strategy and build a partnership ecosystem

When a company develops software in-house, it must assess the impact on internal engineering capabilities, determine if current employees have the required skills and qualifications, and examine organizational structures and processes. If a company lacks the capabilities or capacity it needs, it should explore acquisitions or joint ventures that would allow it to retain ownership of critical control points.

If a company makes a decision to buy custom-built software, it must define a detailed sourcing model through a comprehensive assessment that includes selecting and contracting development partners. When considering a strategy for partial procurement of a complex software system, companies should contract with a maximum of two to three suppliers.

Finally, automakers should develop strategic partnerships and identify the ecosystem participants, as these connections allow them to learn from each other, accelerate development and keep costs low. Co-development also reduces the risks associated with late-to-market product delivery.

In the past, OEMs tended to produce differentiating functions in-house while outsourcing non-critical software development to other vendors or contractors as part of a strong make-or-buy strategy. 

However, it’s no longer the case these days. Since highly-qualified software engineering talent often resides on the custom solutions provider’s side, OEMs and carmakers have lately started relying heavily on their outsourcing partner’s expertise and capabilities to capitalize on the innovative technologies as soon as possible.

Among other benefits, this approach helps significantly reduce the demand for software specialists.

Implement Agile-at-scale or V-model

According to McKinsey, when applied at scale in both hardware and software, agile approaches enable companies to increase productivity and respond quickly to changes in today’s rapidly changing environment. Through agile transformation across industries, companies have achieved 30% improvements in productivity and adoption rates while reducing residual defects at the time of release by more than 70%.

By reducing project risks related to budget, timeline, and quality, Agile plays a critical role in solving complex problems.

Industry standards such as ASPICE now mandate traceability for all requirements and the ability to audit the processes and tools used. Requirements traceability is consistent with Agile practices and can be achieved efficiently with an automated toolbox.

However, the need to audit tools and processes can limit the continuous improvement inherent in Agile practices. While pure Agile teams can improve their processes and approaches independently, automotive teams must maintain compliance with documented standards and protocols, especially regarding cybersecurity and data protection.

As OEMs move towards Agile processes, they must also:

  • Integrate development vendors into their Agile processes to ensure efficient implementation,
  • Adapt procurement processes as they move from well-defined and pre-agreed contracts based on specifications to sprint-based development partnerships.

 

Another effective model that can be applied to automotive software development is the V-Model. It is a software development model in which testing is done after the development process is fully or almost complete. In the V-Model, the development and testing processes are completely separate.

V model for automotive software development
V-model in Automotive

Deploy test automation and continuous integration and delivery (CI/CD) to ensure early error detection

Automotive companies must use two interrelated software development best practices. 

First, they have to integrate the code into the shared repository several times a day and check it out with an automated build. By integrating code early, developers can “fail quickly” and easily isolate bugs using continuous integration (CI) techniques, tools, and the use of automation. Instead, custom software vendors can independently realize these benefits at the system level.

At the level of OEMs, it is necessary to overcome the IP limitation and either encode or achieve a white-box approach of sharing the code with the supplier.

Second, they should implement test-driven development and automation, a process in which tests are defined before coding begins and then automatically run after the code is integrated. Designers and software developers – not a separate testing department – refine and repeat tests during development with customers. This approach forces developers to think about how to use the system and implement it before writing a single line of code. Over time, a comprehensive, automated test suite will create sustainable, high-quality sprints.

To achieve the ultimate automation of automotive software testing, companies should consider using enterprise robots. This will help remove some testing burden from developers, save costs, streamline processes, and more. Some of the leading OEMs and Tier 1 companies successfully use our robot MATT for their testing automation. Check out more about the robot, its touchscreen, device testing capabilities, and use cases on the MATT website.

Final thoughts

Overcoming the complexity of software and the performance challenges faced by the automotive industry requires a comprehensive transformation of automotive software R&D.

CTOs and CEOs should take this challenge as a top priority on their agendas and tackle it today to stay competitive and successful in the current industry environment and prepare for the long journey in the future.

We at rinf.tech are always ready to help automotive companies jump fast on the newest technologies bandwagon, take advantage of our robust R&D for IoT and Embedded, and become tech-savvy through hyperautomation and innovative digital cockpit and electric vehicle solutions.

Looking for a technology partner?

Let’s talk.