BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Agile Testing for Automotive Systems

Agile Testing for Automotive Systems

This item in japanese

Bookmarks

Agile testing can be used when developing software for automotive systems. To adopt agile techniques in automotive the automotive SPICE V-model needs to be adopted to agile. One result from combining agile and SPICE is that “intensive automated testing and client demonstrations helps to produce better products, rising clients satisfaction” says Xavier Martin.

Xavier gave a presentation about a car telematics project at the QA&Test 2014 conference in Bilbao, Spain. This project performed agile automated software testing within an automotive V-Model process.

Car manufacturers are adding 3G/4G communication capabilities which provides opportunities for new services like stolen vehicle tracking, car sharing, emergency calls and dealer services. In the car telematics project an in Vehicle Telematics Unit (iVTU) module was developed, which is an electronic unit for 2G/3G/LTE connectivity to vehicles. The project had to deal with a large variability in hardware – software combinations as the module is used in many different car brands around the world. The project was also challenged by continuous requirements changes and specification blurriness

The automotive SPICE model is a standard which focuses on the process for developing software. It is an extension of the waterfall model, which uses big design up front. The benefits and drawbacks from the SPICE V-model approach according to Xavier are:

Benefits:

  • The facto industry standards
  • Defines a clear process life-cycle
  • V-Model emphasis on testing, and particularly the importance of early test planning

Drawbacks:

  • The V-Model reflects a project management view of software development and fits the needs of project managers, accountants and lawyers rather than software developers or users.
  • Inflexible and slow to respond to change.
  • Process Overload
  • Low Customer Implication

Xavier also listed the benefits and drawbacks that they expected to get from using an agile approach:

Benefits:

  • Flexibility to adapt to customer requirements changing during project life cycle
    • New features to be implemented
    • Redefinition of functions
  • Fast time to market

Drawbacks:

  • Customer resistance
  • Light process vs Automotive classical approach
  • Not big design up front

The car telematics project decided to incorporate an agile way of working in system test. The test group became an agile team, using Kanban with pseudo sprints to deliver to customers. Clients were participating in demos where they gave feedback to the team. They kept the automotive SPICE processes for satisfying safety requirements and auto-documented testing.

The project team followed an agile process with daily meetings, demo’s with the customers and retrospectives. Test automation was a must due to the many different releases and to deal with the variability in hardware – software combinations.

Although the complexity increased during the project, the validation effort per release actually went down. The number of defects found by the validation team went up, where the defects found by the client initially stabilized and went down slightly.

Agile helped to deal with complexity of the project and to produce better products with the use of intensive automated testing and client demonstrations said Xavier. According to him “agile methods like SCRUM usually do not support some essentials, which are required in the automotive context”. He suggests to combine agile and Automotive SPICE by using “a custom version [of agile] integrated in current project life-cycles”.

Rate this Article

Adoption
Style

BT