An Agile Process is guided
by scenarios (customer portrayal of the requirements in story-board
format), acknowledges that plans are not frozen permanently and can be
changed as and when required, builds software on an iteration-basis and
delivers the final software over several “software incremental
deliveries,” and adjusts to the changes that is bound to happen during
the entire duration of the project.
Agile approaches developed in the 1990s as a reaction to document-driven approaches that were sometimes highly bureaucratic. Most agile approaches have some common principles.
Anil
Reference: 3rd Chapter MBA Software Engineering - subject
Agile approaches developed in the 1990s as a reaction to document-driven approaches that were sometimes highly bureaucratic. Most agile approaches have some common principles.
- Working software is used as yardstick for measuring the progress of software development.
- The final software need to be delivered in multiple increments, with each increment quite small.
- The planning should be so adaptive that even changes desired during the late stage of the project should also be accommodated.
- Prefer face-to-face communications as opposed to relying mostly on documentation.
- Continuous response and continuous customer commitment and enthusiasm are essential for an agile project’s success.
- Prefer simple design that evolves over time.
- The software development team is authorised to determine the software delivery dates. This is contrary to traditional methods, where typically a top-management person may decide on the delivery dates and the software development team have to then abide.
- Thus, we can generalise and say that it is practically impossible to predict in advance from a planning viewpoint all the aspects of analysis, design, construction and testing.
- You may have realised by now that we are talking of a process that can manage unpredictability! We can achieve this only by being adaptable, and that too incrementally, rather than being firm. Customer feedback is essential in the agile process as also using an operational prototype that will be iteratively developed.
Anil
Reference: 3rd Chapter MBA Software Engineering - subject