Driving Software Quality: Formula One Team
B·A·R Honda Utilise Compuware Technology to Guarantee Quality Applications

Software quality is paramount in any business, but too often in today's pressurised business environment developers are faced with the dilemma of delivering applications either quickly or with high quality. However, for the B·A·R Honda Formula One team, compromise is not an option: the very nature of Formula One means that the highest quality applications have to be developed and delivered to the business in the shortest timescales. It is for this reason that, as the amount of applications being developed by the team continued to rise, B·A·R Honda worked with Compuware to find a development solution that could fit its unique business model.

B·A·R Honda has implemented Compuware DevPartner Studio, a suite of tools for application development teams seeking to accelerate the construction of reliable, high-performance applications, into its development processes. DevPartner Studio has enabled B·A·R Honda to enjoy the best of both worlds by providing its software developers with analysis capabilities and expert advice needed to help build the most reliable, highest performing applications quickly.

A Premier Race Team

B·A·R Honda specialises in Formula One racing and first began competing in 1999. Success has grown year on year and the team came 2nd in the FIA Formula One Constructors' Championship in 2004. In January 2005, Honda Motor Co. Ltd. acquired a 45 per cent stake in B·A·R Honda alongside the major shareholder and team founder, British American Tobacco.

High Speed Environment

Few other industries can match Formula One for complexity of the design and manufacturing process. Technology plays a pivotal role and B·A·R Honda relies on industrial-strength servers and networks in every step of the design and build process. The specifications that are set each year by the European-based Federation Internationale d'Automobiles (FIA) and Formula One Management (FOM) are general, allowing teams to create unique cars from scratch every season.

Over the course of a season, which lasts for 19 Grand Prix weekends, the volumes of data automatically collected from the B·A·R Honda cars are transmitted and sent back to team headquarters for recording and analysis. Engineers use the data to constantly optimise car design, in addition to engine, power train and suspension performance. During the season, the B·A·R Honda software engineers typically have only three days to develop software that addresses any problems arisen during races.

At the season's end, B·A·R Honda designers have just a few months of development to introduce major new systems and conduct eight to nine weeks of intensive testing. The new cars typically retain just 20 per cent of the components from the previous year's designs.

"In the Formula One environment, reliability is everything and if a car hasn't been fully tested then we won't race it because we cannot guarantee optimal performance," said Max Walshe, Chief Software Architect at B·A·R Honda. "That is why it is essential to develop high quality software first time around - always within incredibly short timescales - and software testing is a critical part of this process. The four watchwords in our development team are reliability, quality, innovation and speed."

The implications of software failure are immediate and financially severe, therefore it is vital that engineers are able to constantly gather data from the cars on the track in order to see and react to indicators of problems - e.g. an increase in engine heat - as they arise. Software engineers do not only resolve errors. They are regularly called upon by the team to deliver innovative software, such as programmes that monitor the positions of other competitors during races, to maintain competitive advantage. To fulfil these demands requires a combination of skill, experience and advanced technology.

Working with and selecting an external supplier

It is hardly surprising then that after six years, B·A·R Honda had amassed incredible volumes of code, which was continuing to increase season on season. "It is a fact of life that software has bugs, but with a limited team and ever growing demands for software development we decided that, as part of good programming practice, we should look to incorporate development tools from an external supplier into our processes," said Walshe.

B·A·R Honda began to look at the available options on the marketplace. The team found that several companies offering programming tools also had long and complex licensing processes that would be unworkable with the immediacy and constantly changing nature of Formula One. Following its evaluation of suitable products, B·A·R Honda chose to use Compuware DevPartner Studio Professional Edition - a comprehensive product set that accelerates Windows-based, multi-language productivity tasks. Used in building .NET, web-enabled, e-commerce and distributed applications, it helps developers quickly detect, diagnose and resolve software errors, maximise code performance and ensure optimum code coverage and testing. Consequently, it saves time and money and enables projects to meet demanding schedules with limited resources.

Driving home the benefits

B·A·R Honda found Compuware DevPartner Studio to be the only product on the market that could analyse multi-threaded applications. "We have certain key applications of this nature, and it is notoriously difficult to re-create problems exactly in order to fix them. With DevPartner Studio this isn't a problem as it identifies thread deadlocks and allows us to analyse potential problems before they happen," said Walshe. "In fact, we have come to realise the value this functionality to such an extent that it would now be a pre-requisite for any future programming tools."

Through its browser-based interface, DevPartner Studio delivers powerful analysis and profiling techniques to help B·A·R Honda understand how its Java code will perform before it is deployed. Performance data is easily viewed through the browser, and B·A·R Honda can perform debugging tasks quicker than ever before. It supports B·A·R Honda in delivering high quality applications that run reliably across multiple computers in its distributed environment.

"DevPartner Studio was a larger suite of productivity tools than we originally envisaged going for, but we found that several elements could deliver extra value to us," said Walshe. "For example, DevPartner Profiler has been really useful in pinpointing performance bottlenecks and verifying which code changes have improved performance. Coverage Analysis has also proven valuable in error detection."

Walshe continued: "DevPartner Studio has enabled us to do three very important things: to pinpoint and fix potential issues, to save time and improve reliability. I cannot stress how important that is in the pressurised environment of racing. Formula One has the same pressures as any business - we need to ensure that our vital software systems are performing optimally and supporting our dynamic business needs at any given moment in order to gain and maintain competitive advantage. The difference is the pace: if software failure means we are unable to race our cars, our business instantly grinds to a halt. If our product isn't performing at its best then it becomes clear to the customer - including our huge fan base across the globe - within seconds on the race track."

"That is why the B·A·R Honda software engineers have a 'get it right first time' mentality, because we really are at the sharp end of software failure. We have found that DevPartner Studio has quickly become a vital component of our software processes because it has enabled us to broaden the scope of risk analysis and defect identification as well as other issues. It has certainly been able to hold its own in an incredibly fast paced and demanding environment," concluded Walshe.