Adapting to changing needs
The process of software development must adapt to meet the ever-changing needs of today's businesses, writes Simon Townsend
The needs of the average business will change by 35 per cent during the software development process. This can mean that months of work often becomes redundant. It is ludicrous that this is an accepted way of working in today’s fast-paced business environment and that the development process is neither flexible nor adaptable to the changing needs of an organisation.
Software development has traditionally taken a mass-engineering approach, much like pre-fabricated housing, which follows a specific blueprint to repeatedly build the same design. But unchartered territory requires a different process.
The same applies to software development where the traditional approach of defining the requirements, building and integrating the software and testing the system leaves no room for change. Another reason why projects using this approach can fail is because of a lack of end-user involvement. Users must be involved in system change. It is ridiculous to implement software without carefully addressing end-user needs and concerns.
Take architecture, for example: if you are building an extension on your house, do you take no part in that process? Of course not, but then again nor do you decide every single detail upfront. Instead, you use a professional, an architect, to interpret your needs. You agree on the plans and budget, and once the building begins to take shape, the details of the design evolve.
Software systems should be built in the same way, using processes that embrace change. This means having key users involved in the project at regular intervals to review work with the chance to make changes in features or their priority. Essentially, the cost and benefit of each feature is managed in the available budget, with the opportunity for feedback from the project team and user base to be taken into account at regular intervals. This will give the best value for money and you won’t end up with gold-plated taps but no roof.
But taking the plunge to use agile methodologies for new system development is not a simple step to take. It requires a significant change in the mind of the user. This change in attitude will not happen overnight, but it is imperative that the industry understand a transition needs to be made and takes the first steps towards it.
Simon Townsend is director of consulting at Valtech.