IT cannot deliver value in business applications without the board understanding the need for development within a more standardised framework
A failed application development project not only has cost implications that could affect the company's finance, but its effect on business strategy could leave embarrassing questions from shareholders for the board to answer.
Application development work spans integration projects, deployment of new technologies, productivity applications for internal employees or customer-facing access applications. The scope of application development has changed from large application development projects to more fragmented ones. The new danger is that smaller projects, which generally mean faster deployment, work in isolation of the bigger picture.
There can be a significant difference between articulated business strategy and vision and the execution in the supporting software build process. The gap between strategy (theory) and software delivery (practice) is often poorly mapped and, in too many cases, dealt with insufficiently. It is one of the main reasons why software development projects, and the IT departments responsible for their delivery, often fail to meet the needs of the business.
So if sloppy implementation of IT is the problem, why does this come about? The answer almost certainly lies with senior management's unwillingness to understand the development processes behind their IT.
There is little evidence to suggest that senior level management applies much discipline to managing changes. They are, for the most part, not interested in getting bogged down with technical issues. So despite the fact that chief executives know that change poses a risk - and changes to IT systems pose even greater risks - there is a tendency to avoid the issue rather than face it.
Changes to business processes often trigger changes to IT systems. So when a new business process is raised, or a significant modification is required, the CEO needs to ascertain from the chief information officer whether this change will have an impact on the company's IT systems.
If there is an IT impact there is a business requirement to have the appropriate tools and processes, together with sufficiently skilled people, to implement the changes.
Companies often fail to approach software development with the same type of discipline generally applied to engineering and manufacturing projects - the same principles that govern any successful business unit.
Too often, core principles such as well-defined processes, standards, discipline, design, patterns and the use of well-established frameworks are lacking in software development practices. This is partially the fault of IT departments, which are often seduced by new technologies and strategies rather than being guided by a long-term plan.
Innovating from tried-and-tested implementations is another maxim that underpins more mature disciplines such as civil engineering. However, constant reinvention plagues many software development approaches, resulting in delay, lack of consistency and poor quality.
Where too much choice has increasingly been a problem rather than an advantage, software suppliers could justifiably stand accused of reacting to the market rather than shaping it. This, however, is starting to change.
Software firms are now taking more of a lead in driving discipline into the software development and delivery process. They have recognised the push for greater accountability at all levels of the organisation.
The focus from the likes of IBM, Microsoft, Borland and Compuware has been on making the development process more robust, predictable and capable of delivering quality. All have launched initiatives and products that go right to the core of addressing the problems within the software development process.
For example, standards bodies such as the Object Management Group have been driving processes and formal frameworks for developing applications that, while targeting the supplier community, better serve the end-user. Innovation still exists but within a more standardised framework. So developing and delivering maintainable applications, which integrate well and capitalise past technology and application investments, is certainly within the reach of all organisations.
Businesses will never realise the value of IT while those on the board, in particular the CEO and the chief financial officer - who are ultimately responsible for directing the business strategically and financially - abdicate the responsibility of enforcing standards within the software development process.
Although having the correct technology in place is important, process and methodology, which are often overlooked, are equally important. The development process is as much about project management and execution, business cultural acceptance, politics and effective communication as it is about coding. The success of a software development project requires buy-in from all parts of the organisation, staff, business units and senior management.
If your business is planning to rely on software applications to deliver valuable and vital business goals, then the software development process needs to be on the board's agenda. After all, like any other process that affects the success of the business, it deserves their attention.
Key drivers for development success
- Better tool support that focuses on process, communication and roles. IBM and Microsoft have driven this direction, but are being closely followed by other tools suppliers such as Borland and Compuware
- Maturity in the integrated development environment with wide industry support rallying around two leading environments: Eclipse and Visual Studio
- Supplier-wide initiatives focusing on optimising the development process with improved quality and corporate control: for example, Borland's application lifecycle management strategy and Compuware and Mercury Interactive's software testing and corporate governance stance
- Growing recognition within the supplier community of the overlapping relationship between software development, integration and business process management
- The drive and support by suppliers for better approaches to the development and deployment of services-based applications
- Greater support for automation, project execution, resource management, design and more disciplined approaches that are based on widely adopted standards, patterns and frameworks.
Bola Rotibi heads the application development research stream of Ovum's Software Architectures Advisory service