Agile, not fragile

A new IT development process promises to revolutionise the speed and cost of developing customer-facing systems, says John Milway

Today’s customers are cost-conscious, transparency-seeking and accustomed to accessing a host of interactive online services. Utility suppliers seeking to win, please and keep such customers at an acceptable cost must live up to these demanding standards. Data and information have become crucial.

Take for example a scenario where a supplier provides smart metering plus an online customer self-service portal, where customers can view their daily energy consumption and bills. The problem here is that there are real challenges to deploying such systems on time and to budget. The issue is not with the underlying technology, it is more to do with outmoded, top-down engineering approaches that too quickly freeze requirements, break the link between the utility and the technology developer, and deliver something not quite right and too late.

Enter “agile” – a new form of IT development, already being used in other industries and perfectly suited to putting customer channels in place for utilities more easily and cheaply. Agile deployment involves ongoing collaboration between the likes of business analysts, software developers, code testers, system operators and the utility itself. This usually takes place via a project portal in which the utility’s feedback is captured and fed into the next stage, with mini-development cycles beginning every couple of weeks. In this way, improvements are added all the time and users – in this case utilities – quickly have something functional to work with.

This contrasts sharply with the inertia of monolithic applications and traditional application development techniques. There, each stage happens sequentially, following an exact specification drawn up and agreed at the outset. Beyond that point, users have almost no involvement. This is unhelpful in itself, but it also places enormous pressure on the utility to know exactly what it needs at the time it contracts the system and what it will need in the future – something increasingly impossible to predict.

Agile development methods – often via the cloud (over the internet via a fast and secure connection) – are low risk. Costs can be carefully managed because results are delivered incrementally, plus any potential problems can be caught early because the software functionality being introduced is reviewed, tested and refined following direct feedback from users every step of the way.

Experts say agile-enabled projects deliver at least five times faster than traditional coding methods and with much greater levels of user acceptance – and that the total cost of ownership may be half that of the traditional approach. The Cabinet Office has officially endorsed agile, saying it is the best hope we have of breaking away from mega-ICT project failure. And analyst firm Gartner believes all technology development will go agile within three to five years.

Going agile will not be without difficulty for utilities. It will require an enormous mindset shift, for their IT departments in particular. For programmers accustomed to solitary activities or working with relatively homogeneous groups of analysts and designers, the likes of shared learning, reflection workshops, pair programming and collaborative decision-making may be overwhelming. Project managers too would have to become more facilitators of the collaborative efforts of all involved and less planners and controllers.

To remain competitive, suppliers have to respond to customers’ desires. Through agile techniques, utilities can develop applications that meet customer needs while improving their bottom line. Four years into a recession and fragile recovery, this has to be good news.

John Milway, UK country manager, Mendix

This article first appeared in Utility Week’s print edition of 15 June 2012.

Get Utility Week’s expert news and comment – unique and indispensible – direct to your desk. Sign up for a trial subscription here: http://bit.ly/zzxQxx