Qantas’s announcement today to outsource a massive $120 million worth of work to Indian company Tata Consultancy Services is the latest example of major league companies outsourcing their technology in Australia
This trend is in line with global activity which currently sees two thirds of corporate budgets being directed to outsourcing. It’s a swings and roundabouts scenario.
Cost pressures, the need to access specialized skills or to retain talent after mergers and acquisitions are forcing companies to adapt to a more distributed development environment–whether it is outsourced or in-house, offshore or just across town.
Most companies looking to outsourcing or distributed development continue to have unrealistic expectations or insufficient processes and infrastructure to adapt to this new development paradigm. Many simply adopt inefficient manual processes (e.g. more meetings, more travel) to manage the challenges of distribution, or turn away from the problem altogether, unable to see a viable, short-term solution to solve the pains of distributed development.
Imagine the challenges that this manual approach can cause, especially when it comes to the ability to manage change in the software development process. Change is a constant in development ? requirements changes, processes change or technology advancements.
Without the proper skills, planning and infrastructure, it is extremely difficult for distributed organisations to communicate and measure the impact of these changes across geographies, time zones or language barriers. This often results in poor quality, reduced time-to-market, and higher operating and support costs.
There are a number of differences between traditional IT outsourcing and the specialised mission-critical outsourcing of software development. Software is one of an organisation’s most important assets, often it’s a core competitive differentiator. It is relatively easy to outsource a help desk or call centre – a single interaction is a known entity – however, no two pieces of software code or development projects are exactly the same. This makes outsourcing the software development process much more complex, and often more challenging to outsource, than traditional IT services.
As remote software teams become an integral part of application development, organizations watch anticipated cost savings dwindle as the complexities and veiled expenses of managing distributed environments come to the surface.
The key challenge is that companies fail to anticipate the communications and training challenges they face that require the business to invest more in travel, face-to-face meetings, or management overhead. Another potential challenge in distributed development is the lack of visibility and control over software projects that span geographies and organizational boundaries. No real-time view into project status and no central control over assets, could ultimately mean lower quality, more defects and a lack of alignment with business priorities.
Some pioneering companies are now addressing this issue of change through the application of a disciplined, automated requirements management process that aligns the business needs more closely with the IT implementation. Here requirements are formally articulated, prioritised and signed-off by all involved – end-user, business and IT. This means that the project can start with expectations set correctly – no-one can turn around half-way through and say “I thought it would do this!” Even more importantly, having a disciplined process helps organisations to more easily manage the changes to requirements that invariably crop up once you get going on a project.
Requirements management tools enable changes to be communicated automatically and simultaneously to all affected parties of the application development team when a change is required. It can also communicate the proposed changes to those who have registered interest in that particular requirement.
For example someone in marketing, who may not be directly involved in the project, may have registered interest via the requirements management system in the billing functionality because they want to be sure that the customer experience includes automatic re-funding for certain billing errors. Importantly it ensures that all changes have to be signed off with the appropriate level of authority and the work order signed off. As a consequence, new costs are only incurred if they are really needed.
Mark Wilkin is the managing director of Borland Australia.
Opinion: Outsourcing - have Australian corporates done their research?
By Staff Writers on Nov 16, 2006 3:27PM