Global Sources
EE Times-Asia
Stay in touch with EE Times Asia
EE Times-Asia > Networks

Designing a MOST infotainment system

Posted: 05 Aug 2013 ?? ?Print Version ?Bookmark and Share

Keywords:automotive infotainment? TTM? time-to-market? UML? Automotive Test System?

Due to the rapid progress of consumer electronics, the car manufacturers are pressured to reduce time-to-market (TTM) when creating a new infotainment system or implementing new features in existing systems. The growing value of software in the automotive industry and the complexity of modern systems both increase the importance of the software development process.

Time-to-market for automotive infotainment features can be improved by accelerating the software development process, but this must not compromise the reliability of the software components. An automation of the process and a parallelisation of its steps are typical methodologies to speed up software development. However, this means that development tools need to support those methodologies.

The convergence between end-user devices and computing networks is another challenge coming from the consumer electronics world. Here the proportion of products that support Internet connectivity, especially when using wireless technologies, is rising sharply. User data is shared between different devices, Internet services and enterprise applications as well. The next step is to provide the customer with the opportunity to keep all the data in the cloud and let the devices be synchronised with it. The infotainment system in the vehicle will be a part of this environment, of course, with limitations according to automotive safety requirements. A tool that automates the communications between automotive devices and end-user products can simplify and speed up development.

Software development process
Let's consider the software development process. Usually, a project starts with the following steps: an analysis, creation of a specification and a prototype. Those steps are an iteration, and may be repeated. After several iterations, the artifacts such as the requirements, architecture- and design documents specifications are available. The software implementation based on these artifacts must be tested and verified. It is essential to note that several participants from different companies are usually working on such automotive projects.

In the analysis step, a Unified Modelling Language (UML) abstract system model is created, which includes specific requirements, use cases, etc. UML is the widespread modelling language used in software development. The mature UML tools may be a great help in verifying the integrity of the model, so the usage of UML reduces the time needed to create such a model. The UML model, and especially the diagrams that specify the API and dynamic behaviour, are the important parts of the specification.

One of the possible automation methods is code generation. It provides the ability to create ready-to-use program code directly from the UML model or from an exchange format. This generated code works together with a framework and implements a public visible interface of the business logic of the component. It helps to rapidly build a prototype application.

A prototype application is a skeleton with the default (dummy) implementation of the interfaces. Existing software may be integrated into this skeleton. Another possibility is to extend the skeleton with functionality that simulates the behaviour of the specified device or component.

Simulation of device behaviour
There are several advantages of having such a simulation. First, the simulation itself is the proof-of-concept of the UML model and creates the possibility of detecting mismatches between the UML model and the real system. This is one of the main challenges at the early stages of the project. Another challenge is the ability to efficiently roll out modifications to the abstract model at later stages of the project when the software implementation has already been started or even completed. The code generation localizes changes in the abstract model to the integration code between the generated code and the business logic. This means that modifications to the abstract model that break the generated code will be identified at compilation time as syntax errors, and only the integration code needs to be fixed.

Second, the simulation delivered to the project participants integrates their components within the system, because this simulation is a running sample and shows the developers how the system works.

Now, let's check the typical project activities. The developer of one device that communicates with one or several other devices can immediately use the simulation of other devices during the software development instead of waiting for a delivery from other project participants. The tester can immediately start implementing device-specific tests against the simulation.

In addition, the project group of the car manufacturer can start to create a set of acceptance and production tests directly after completing work on the simulation.

1???2?Next Page?Last Page

Article Comments - Designing a MOST infotainment system
*? You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.

Back to Top