Today's software developers need to design infrastructures that will support a challenging, volatile future, says Dave Robertson, director of European operations at Perforce Software…
Life is never easy for hard-working game developers – many of whom face same challenges. Namely, as games have become increasingly complex, the sophistication needed to manage assets has increased dramatically.
Take source code for example. The amount of code testing and modification necessary for the average game has increased dramatically as the codebase has ballooned, and managing that complex process can present teams with a significant problem. Add the management of the other digital assets in a game, such as video, audio and 3D graphics files, and games companies that don't get this under control risk devoting a significant portion of their resource to administrative issues.
An effective management system is therefore vital to a games developer trying to bring all of these assets together in a cohesive way. The challenge has become harder since the industry realised titles could be developed more effectively using specialist houses to concentrate on particular areas.
Deploying such tools isn't simply a way to make life easier for employees. It could help to solve one of the biggest business challenges facing development houses in the next few years: sustaining growth. According to last summer's Global Entertainment and Media Outlook report from PriceWaterhouseCoopers, the industry will enjoy a global average compound annual growth rate of 9.1 per cent in revenue terms between 2007 and 2011. That growth curve is far from linear. Instead, it will slow considerably throughout that period. Global growth of 18.5 per cent last year will plummet to 10.6 per cent this year, and will hit just 6.7 per cent in 2009. Developers must find other ways to maintain the level of success that the industry wants, and the obvious answer is to increase profits by driving efficiency.
Other environmental factors peculiar to the games industry bring their own challenges. For example, the symbiosis between games development and the film industry imposes particular constraints that can harden timelines.
In the early days of development, games stood alone in the market, and setbacks in development schedules had a limited effect. A game that was late by a month might have meant lost revenue for a publisher, but the effects stopped there. Now, high-revenue games are likely to be developed as tie-ins for movies. If a summer blockbuster hits the box office and the corresponding computer game isn't ready, the business implications could be significant. Proficiency in managing digital assets and the associated workflow around them can help games developers and their partners to hit their deadlines.
Short-term deadlines aren't the only challenges to consider during games development. The proliferation of new platforms creates longer-term challenges that require developers to build as much flexibility as possible into their systems.
Mobile platforms are a good example. They have given new life to game titles that previously languished in the catalogue. Who would have thought in the mid-eighties that people would one day be playing Commodore 64 games on a mobile phone? Similarly, it is hard for today's games developers to imagine where their digital assets may end up, and for what platforms they may need to be repurposed.
When Nokia moved to acquire Norwegian open source software toolkit company Trolltech in late January, the industry immediately understood the potential for the deployment of the Linux platform on mobile consumer devices. To what extent will games developers be ready for such developments in the future? In such situations, there is a direct correlation between agility in software configuration management, and time to market. Proficiency at managing and manipulating intellectual property will have a direct effect on revenues.
Some studios have already understood this need, and looked for areas in which the greatest improvements can be made. Matching not just the source code, but other digital assets vital to the production of a video game has been one of the toughest challenges for video game developers in the past, and all signs indicate that this is only going to get more difficult in the future as games become more sophisticated.
The increasingly distributed nature of games development that studios are encountering means developers no longer have total control over the platforms used to create blockbuster titles. Schisms may emerge as different teams use preferred tools to modify or create assets.
The greatest problem in distributed development environments arises when developers try to manage the workflow between these far-flung remote members of the game's development team. Digital assets such as wireframe animations, sound files and code segments must be checked in and out and properly version controlled, so that everyone in the team understands the changes that have been made, who is responsible for the asset, and how it fits together with other assets in the system.
MORE THAN A ONE TRICK PONY
This means that not only must a truly flexible software configuration management system manage more than just lines of code, but it must be able to support links to other products used in the development lifecycle. This may not necessarily mean that interfaces are bundled with the software out of the box -- the number of platforms used by different production houses may be too diverse to be covered by a single product. Rather, the SCM system should have the flexibility to interface to any tool for which the software development team can write its own plug-in. That requires an extensible system with a rich set of APIs, so that development teams can configure it to suit their own needs.
For the industry in general, that future is likely to see talent being sourced increasingly from regions such as Romania and Russia, where talent is high, and human resource costs are relatively low. In that context, the need for tight integration of distributed, heterogeneous development systems will only grow.
Developers may be more innovative than ever when it comes to crafting algorithms, but coding is no longer enough. Getting the right technical infrastructure in place now to prepare for a volatile business environment tomorrow could be the smartest technical move that they'll ever make.
Dave Robertson is director of European operations at Perforce Software