Manifesto for Agile Software Development
“Individuals and interactions over processes and tools.
Working software over comprehensive documentation.
Customer collaboration over contract negotiation.
Responding to change over following a plan.”
A common thought is: “Work in a agile way is work without documentation and without methodology. Don’t mind about these things! Just do what have to be done and it’s ok!”. Actually, the Agile Manifesto preaches that the documentation must to be done, but containing only relevant information, and methodologies become well regarded if they follow the manifesto’s principles. Agile Manifesto try to balance the extremes in the world of software development and involve the costumer during all process.
“The Agile movement is not anti-methodology, in fact, many of us want to restore credibility to the word methodology. We want to restore a balance. We embrace modeling, but not in order to file some diagram in a dusty corporate repository. We embrace documentation, but not hundreds of pages of never-maintained and rarely-used tomes. We plan, but recognize the limits of planning in a turbulent environment. Those who would brand proponents of XP or SCRUM or any of the other Agile Methodologies as “hackers” are ignorant of both the methodologies and the original definition of the term hacker.”(http://agilemanifesto.org/iso/en/)
Documentations must to contain only what is useful. We have to think what is necessary and useful to put in a documentation, and don’t put diagrams or descriptions just because it exists on books of software development. The focus of the documentation shall be contain useful information and don’t produce more documents and artefacts than the software itself.
And about methodologies, the credibility was restored because as this manifesto embraces everything that came from the classical development with balance and focusing on interaction with costumer and being “soft”, every methodology that will come from this manifesto will satisfy costumer because it will be able to follow what is happening and the developers will respond to changes applied by it easily. Agile Manifesto transforms the software development process in a SOFT stuff, being consistent with their final product, the SOFTware.