Agile Methodologies
It is wise to have a plan but foolish to fall in love with it, even if it all works as intended, requirements will and do change. There is also the danger of analysis-paralysis - the getting bogged down in detailed plans that may end up being ripped up. But if there is no plan and it goes wrong no one knows where to start fixing the problem.
In Software engineering there is documentation - the plans and designs of how everything works - just in case something happens to your key personnel. And when building new systems, missing out on some crucial details in the initial design can land you with the wrong system, one needing redoing.
A Big Design up Front is a good idea. Take the time that it takes so it takes less time. However planning and the associate paperwork costs and costs should be reduced, or so we are told. A more import problems is your marvellous system may not want to change, especially after you had all the pretty diagrams framed and put on the wall. This might also suggest a big bang implementation, where following a big launch party you switch over to the shiny new system and hope it all works and people like it. What then happens if it doesn't!
There are a number of compromise approaches that allow programmers to generally get on with it but retain mechanisms for documentation, testing and quality control. With these agile methodologies, systems are built in a more iterative approach. This allows for components of the overall systems to be tested and deployed as you are going along. Then if things change or go wrong, fixing it is not such a problem.
Agile methods for software develpoment Include, Dynamic Systems Development Method (DSDM), Extreme Programing and SCRUM.
Read More
Manifesto for Agile Software Development
Open Source and 'Agile' methods gaining political support...'agile' methods of development are being favoured over 'Big bang' implementations of IT projects... 05 September 2011
Duncan Stonebridge. Back