The Commonwealth Bank's rebuilding of its front-end customer management system was a complex technical undertaking, but one of the most important aspects of its successful deployment was paying close attention to interface design, according to its developers.
CommSee, which allows integrated access to customer information and common tasks for branch workers, has been the major IT project undertaken by the Australian banking giant in recent years. Development on the project began in March 2004, and the system is now used by more than 30,000 users across 1,700 sites.
The original design brief wasn't quite so extensive. CommSee grew out of a plan to provide integrated customer information for its premium financial services division, Stuart Johnson, general manager for integration and service oriented architecture for CBA, explained during a recent presentation at Microsoft's Australian Tech.Ed conference. "There were no appropriate applications for that part of the business," he said.
The project, code-named Republic, ran successfully, and the bank's management decided to extend the same single-view approach, centred on customer information rather than bank product channels, across the entire organisation. "Our focus changed from being a batch-driven relationship system to a system that we now have rolled out to a huge number of users," Johnson said.
Active development work began in March 2004, with a trial rollout in Tasmania later that year. The national rollout began in April 2005, and continued through until the end of that year. "It was a fairly big logistics exercise," with many in-branch desktops needing replacement, Johnson said.
Early on, the bank made the decision to fully commit to a Web services architecture. One consequence of that has been a commitment to regular quarterly updates to CommSee, and a gradual expansion of functionality. "We've gone away from the traditional 'design the whole thing and then get the whole thing in' approach; we did it in bite-size pieces," Johnson said. "We've managed to decommission quite a few of the front-end applications, and we've leveraged the bank's investment in the existing mainframes."
As of July, CommSee can handle up to 485 transactions per second, and encompasses more than 10 million lines of code and 1.5 terabytes of information, spread across 30 back-end statements.
While planning to manage that infrastructure was an important consideration, lead architect for systems development and distributed applications Edward Gallimore said that designing an interface that was comprehensible to users and which could handle frequent application updates was also a major undertaking.
"Traditionally, we tend to invest a lot of effort on making our external sites look good, but not so much effort on our internal sites," Gallimore said. "But ultimately, we still have to sell our product to internal users. It's important to keep it simple."
CommSee uses two main interface elements: a 'chevron path' which shows exactly where in the application the worker is located (similar to the breadcrumbs used on complex sites such as Yahoo!), and a series of 'winparts' within the workspace area, each of which is coded independently and runs asynchronously. If one part crashes, other elements of the application will be unaffected.
That approach also changed the way in which the project's 300-odd developers are assigned to tasks. Rather than splitting development between various functional specialists, staff are assigned to build an entire part. "A developer is responsible for an entire vertical slice of functionality. They build everything from the GUI right down to the database," Gallimore said. Documented design principles ensure consistency. ""On a project this big, you have to have documentation. It has to be like a product."
That also makes training new staff easier. "We actively discourage people from building architectures," Gallimore said. "We encourage the developers to keep it simple and follow very simple rules. Code by and large is very simple and it should be able to be picked up by any developer."
While some of the interface elements resemble Internet applications, the CBA decided early on to use a full-blown client interface rather than an HTML-based system. "Five years ago, everyone was going for web applications for ease of deployment," Johnson said. "It certainly wasn't for the look and feel. That's why we made the decision to move to a Windows client. We solved the deployment issue very early on," by using Microsoft's Systems Management Server to handle rollout.
As reported by ZDNet Australia earlier this year, CBA was also exploring the use of GPRS to allow mobile access to CommSee for workers based outside the branch network.