It pays to be ‘open’ in software development

Software projects often run late and over budget, but there are ways for developers to reduce these challenges.


As IT becomes ever more pervasive within the business world, the importance of having reliable, focused software delivered on time and within budget is paramount for any organisation. More and more business transactions rely on the integrity of the IT infrastructure and software in place, and software is now recognised as being an area where businesses can actually gain competitive advantage over their rivals.

However, at present, the software industry often fails to fulfil its potential as being a key driver for growth within businesses. Software projects invariably run late and over budget, and often fail to bring about real business value at the time that they are delivered.This is mainly due to their inflexible reaction to changing business requirements during the project lifecycle.

The 2004 CHAOS report by the authoritative Standish Group, cited numbers from the National Institute of Standards, which found total project waste in the US running at $55bn (£26.5bn), comprising $38bn in lost dollar value and $17bn in cost overruns. The same report also found that 90% of software projects are completed late, 54% exceed budget, and 66% are considered to be failures. 30% are actually cancelled before completion. If one thinks of software delivery as a manufacturing process, then it is difficult to think of another sector where such a success rate would be tolerated.

The closed, monolithic approach has failed

After years of investing in software, organisations now find themselves with a complex IT infrastructure, made up of an array of tools and platforms. Similarly, development processes are often not mature, so they are not repeatable and consistently dependable.

In order to address these problems, which have hindered the success of software delivery, the industry has moved towards Application Lifecycle Management (ALM). ALM has seen the focus of software delivery shift towards ensuring that the delivery process becomes a managed, predictable business process, rather than an isolated function within the business with little communication or managed interaction with other business units. ALM looks to increase consistency within software delivery by defining processes, generating important metrics and aligning software project delivery with the wider business objectives.

However, whilst the concept of ALM is in itself logical, and the software industry has been quick to see ALM as its saviour, it fails to take into account one very significant issue that is currently holding it back. Currently what prevents ALM solutions from having the positive impact that they otherwise might have, is the fact that many providers are offering users closed, vendor-specific ALM solutions. These monolithic solutions restrict choice in the underlying processes, tools and platforms that most organisations now have and therefore reduce the ability to realise the promised value.

For instance, an organisation that uses Java and .Net platforms, along with both Waterfall and Agile processes will find it very difficult to use a solution that forces a 1 Standish Group 2004 particular process or imposes specific tools and workflow. Another business might be using Eclipse, Visual Studio, .Net, Cruise Control and Ivy. Again, it is therefore unable to effectively implement a closed, vendor specific ALM solution.

The need for an ‘open’ approach

If the software industry is to turn things around and improve its performance to deliver reliable and efficient software solutions, it must begin by doing one very simple thing. That is to put the customer first. Rather than offering IT shops closed, restrictive solutions, vendors need to take a customer-centric approach that actually takes into account the realities of software development today. Businesses do not have single-vendor infrastructures in place; they have a heterogeneous environment of software tools and platforms. Therefore, to offer them a single-vendor based solution is of very limited value.

‘Open’ ALM, where users are free to remain independent of a vendor’s agenda, offers the IT shop the means to improve its performance and bring about meaningful benefits and change to an organisation. Customers should have the ability to use any process, tool, or platform that fits its particular needs, rather than having to compromise to fit the given vendor. Furthermore, customers should be able to manage their application lifecycle like any other critical business process, making it measurable, predictable and improvable. Again, this can only come about by having a truly ‘open’ ALM solution in place.

An Open ALM solution supports customers’ specific tools and processes and is able to integrate between each to provide visibility and traceability throughout the entire project. For instance, using Open ALM an organisation can deploy applications using a range of processes supporting Agile and Waterfall methodologies. Added to this, it can integrate the supporting tools and platforms to ensure that users have the ability to track and measure performance of a given project and therefore to implement change in line with evolving requirements from the business.

Indeed, one of the major problems facing software delivery has consistently been the lack of traceability and measurability within projects. An Open ALM solution offers the opportunity to integrate commercial third party and open source tools and provide automated data collection and measurement. This provides the essential visibility that allows software delivery to become a much more traceable, accountable business process. This in turn means that the software delivery process can be more easily integrated with other business functions removing some of the traditional silos of communication. IT shops will now have the ability to work hand in hand with the business to generate tangible and measured value.

Open ALM is the Answer

As organisations become ever more dependent on software solutions to support their business objectives, it is time for the software industry to demonstrate maturity and dependability. Open ALM is a strategy that will allow organisations to take advantage of a new, more open approach to software delivery, which allows them to use the processes, tools and platforms that will promote this much needed maturity.

Open ALM facilitates the visibility and measurability required in order for software delivery to improve its performance and reverse the trend of failure that currently scars its reputation. As the move towards Open ALM gathers pace, there is every opportunity for the enterprise to deliver on time and on budget with measurable business benefit.

"Recommended For You"

Application lifecycle management is about to burst at the seams Borland to blend BI with ALM