To find a
fault is easy; to do better may be difficult. -- (Arthur) Clive (Howard) Bell (1881-1964) An art critic and member of the influential Bloomsbury Group, Clive Bell married Virginia Woolf's elder sister, Vanessa (herself an important British
artist of the 20th Century). Perhaps marrying an artist (whilst himself being a critic) gave Clive the insight required to point out the rather obvious fact outlined above.
The difficulty with Development Methods
When one places even a small number of intelligent
minds together, with the purpose of designing the 'best way' to do something, one is likely to end up with as many 'best ways' as there are people in the room (and possibly many
more)!
However (at the risk of over-simplifying) there are two essential varieties of IT development methodologies: the first springs from the desire to achieve a 'correct' system that meets the original user requirements; the second aims for a 'good enough' solution (recognising the 80:20 rule and the likelihood that in fact requirements change over time).
The 'Correct' System
The desire to deliver 'correct' systems gave birth
to software engineering (much in the same way as the desire to build bridges that did not collapse after a few months gave birth to civil engineering).
The so-called
'waterfall' methodology (of planning, analysis, design, construction & implementation) is essentially a serial method, where the completion of one stage is followed by another. It is also non-iterative,
in that each stage produces a 'correct' result that does not then require re-working at a later stage.
The 'Good Enough" System
The power of waterfall methods is that they deliver reliable systems. However, in an increasingly competitive and fast moving business environment, relevance and timeliness have grown more and more important to developers.
So-called 'rapid application development' methods are based on the premise that it is better to be quickly there with a system that meets 80% of the business need so that
the system delivers relevant business benefits sooner and does not become quickly overtaken by events & out-dated.
Rapid methods are essentially iterative (in that the outputs of the various stages are often re-visited during later stages). They are also mainly parallel methods, in that different stages may well be worked on at the same time.
In the waterfall method, documentation 'stands alone' at each stage, whereas in in rapid methods, documentation tends to be re-used and 'evolve' during the project.
Well, you might conclude from my earlier paragraphs that rapid
application development methods (RAD) are beter than the more 'traditional' types. Well, I am afraid it's more complicated than that!
For the infrastructure parts of the project (which
I have referred to previously as 'the road' in my vision chapter), the most important thing is to get things correct, as this platform will
be the bedrock on which you will build your portal and (like a bridge) will need to stand the test of time.
For the content and applications, however (the 'cars' and 'lorries' in my
analogy), I think it is more important to develop solutions that are timely and relevant to businesses operating in a fast-moving and competitive environment.
Doing Better
Just as Clive Bell (might have) said, it is easy to find fault
in any given method. To do better should be your prime concern and (as I have suggested) a mixed approach is best for your Intranet Portal project, with waterfall used to establish the
platform, then RAD used to populate the portal with content and applications.
For what it is worth, I recommend that you use for Waterfall any methodology based on the Evolutionary
Model first proposed by Tom Gilb (the SUMMIT method used by IBM, for example).
For RAD, I recommend the use of DSDM method but can I leave you with words of warning? Please ensure you create teams of
business and IT people working closely together (or any RAD method will fail!)
The (IBM) SUMMIT Methodology
SUMMIT has it's origins in the Cleanroom method of the early 80s (used to build the software for the space shuttle). Variations of the Evolutionary (Waterfall) model are also used by HP & Microsoft.
DSDM Consortium
DSDM is a RAD designed specifically to aid the delivery of business solutions to tight timescales and fixed budgets.
DSDM Guide
The guide to Business Focused Development from the DSDM Consortium, available at Amazon.
Rational Software Development
Look at the home of 'Rational Rose' and access the UML Resource Centre. UML complements either Waterfall or RAD.