Agile Approach Slashes Software Development Time
Published on: 19th August 2008
Results of the EUREKA ITEA software Cluster AGILE project make it possible for European manufacturers to develop high quality embedded software in markedly shorter times and at much lower costs than possible with traditional techniques. Applying the approach to 68 pilot case studies in industries from avionics and telecommunications to consumer electronics, the project demonstrated clearly that 'agile' methodology can lead to massive improvements in embedded software engineering.
Suitable tooling was also demonstrated to simplify application of the agile approach. As a result, much more software development can be carried out cost effectively in Europe rather than being outsourced to Asia.
Use of embedded software in electronics devices is growing even faster than advances in electronics themselves. Yet human capabilities for producing software have not increased in Europe over the past decade. "The amount of software is growing very rapidly and it is increasingly difficult to find the people and resources necessary to develop it all," explains Dr Pekka Abrahamsson of project coordinator VTT Technical Research Centre in Finland. "As a result, Europe is seeing a lot of development work transferring to India and other countries. An additional problem lies in the speed of development as it is necessary to get solutions to market in optimum time and with sufficient reliability that it works properly."
AGILE therefore focused on processes and technologies needed to develop software systems faster and more reliably and to meet changing market needs. "Agile is a new paradigm for software development that emerged around eight years ago in the USA," says Dr Abrahamsson. "When we started the ITEA project in 2004, we did not know whether this new methodology could be exploited for embedded software in avionics, telecommunications, automotive and consumer electronics."
One of the principals underlying this new paradigm is that it welcomes change even late in the project. Change had always been seen as a very problematic but with the agile approach it is possible to add new features even a few days before entering the market with a product.
In addition, software-based features are often poorly used with only some 5% of features offered by a system effectively used by the consumers. "We turned this around to identify those critical features that would be used and put the emphasis on getting them to market first," adds Dr Abrahamsson. "So we are not always talking about technical issues when developing software but focusing on business-level issues and this was part of the methodology of our development."
EUREKA labelling was sought for the project because the eight-country consortium involved had a strong industrial commitment. "EUREKA projects involve a lot less bureaucracy than with the EU Framework Programme projects," points out Dr Abrahamsson. "Moreover, over three years, the world changes and with EUREKA, you can change the direction of the project, meeting better the demands of the industrial partners - this is the clear advantage of EUREKA. In addition, ITEA offers a community that meets on a yearly basis and people get to know each other; I think both industry and academia find this big networking element strengthens their capabilities."
Short turn around
Agile technology involves a methodology that stretches from the beginning to the end of the development process but is mostly focused on the actual processes and techniques and the tools used to get the systems out. "A set of values and a set of 12 principles provide the underlying rationale for why we operate in this way," says Dr Abrahamsson. "And the process is very tightly time framed with delivery in monthly or even fortnightly cycles - in previous approaches we were trying to deliver working systems in maybe three-month, six-month or even one-year cycles.
"These short cycles demand a radical change in thinking in the development of large hardware-bound systems. It requires the ability to deliver every two weeks or monthly and so requires rethinking of the whole system - how we plan and how we estimate the costs of the development. Another crucial element is technological - requiring investment but the benefits are quite clear."
Moreover, AGILE devised an approach that meets the demands of highly regulated industries such as avionics where systems developments are subjected to a wide range of standards.
Outsourcing to Europe
Some 68 pilot developments were carried out involving 1800 software engineers from 17 companies in short and long projects. "We showed we could actually achieve up to 70% reduction in lead time and costs," says Dr Abrahamsson. "If these results could be sustained in the larger area of European software development, it would be cheaper to outsource from India to Europe than the other way round!"
AGILE also succeeded in developing 12 tools that enable the use of these ideas. Three of these tools are ready for commercialisation since the end of the project; and the ATO tool from Belgian partner E2S is already being marketed. Moreover, several partners - such as Nokia - have now taken up the 'agile mode' within their companies, which means their whole production is transformed.
"We set a benchmark that we can achieve dramatic improvements in all areas in terms of time, cost and quality, which help shape the future of software development in Europe," adds Dr Abrahamsson. "We have been able to go beyond what is being done in the USA currently, putting Europe ahead. And, while development teams in India and other countries have now set up their own technologies in this area, Europe has a competitive edge that should last several years."
Establishment of an Embedded Agile Institute and scaling up of AGILE's results in the ITEA2 FLEXI project should extend the approach to business and innovation processes.