Ribeinfo has adapted the Agile methodology to suit the demands of customers with reduced cycle time. Iterations typically last from 2 days to 3 weeks. Each iteration involves working through the full software development cycle including Requirements, Design, Implementation and Testing. This helps minimize overall risk, and lets the project adapt to changes quickly. Daily communication with the customers by means of email, telephone, and webcam helps in bridging the gaps. This is in addition to written documentation as required.
daily stand-up meeting within the development teams and informal face-to-face communication amongst the team members helps in keeping all the development stakeholders aware of the status and issues, if any.
Now, as for minimal risk Agile, it is a low over-head method that emphasizes values and principles rather than processes. Working in cycles i.e. a week, a month, etc., project priorities are re-evaluated and at the end of each cycle. Four principles that constitute Agile methods are:
- The reigning supreme of individuals and interactions over processes and tools.
- As does, working software over comprehensive documentation.
- Likewise, customer collaboration over contract negotiation.
- And again, responding to change over plan follow-throughs.
To synopsize the difference between the two, one can say the classic waterfall method stands for predictability, while Agile methodology spells adaptability. Agile methods are good at reducing overheads, such as, rationale, justification, documentation and meetings, keeping them as low as is possible. And, that is why Agile methods benefit small teams with constantly changing requirements, rather more than larger projects.
Agile, based on empirical rather than defined methods (Waterfall) is all about light maneuverability and sufficiency for facilitating future development. By defined methods what one means is that one plans first and then enforces these plans. However, Agile methods involve planning what one wants and then adapting these plans to the results. Extreme Programming (XP) is an excellent example of Agile methodology i.e.:
- Communication between customers and other team members;
- Simple, clean designs;
- Feedback given on Day 1 of software testing;
- Early delivery and implementation of suggested changes.
Agile methodology means cutting down the big picture into puzzle size bits, fitting them together when the time is right e.g. design, coding and testing bits. So, while there are reasons to support both the waterfall and agile methods, however, a closer look clarifies why many software and web design firms make the more appropriate choice of employing Agile methodology.