Register now or log in to join your professional community.
Agile, in product development terms, is a description for project management methods that focus on people, communications, the product, and flexibility. The Agile development tool uses a variety of methods unique to Agile that combine to produce an efficient software development process.
Using an agile development model, you still do the same type of work as you would using a traditional waterfall model: You create requirements and designs, you develop your product, and you integrate your product with other products as necessary. You test the product, fix any problems, and deploy it for use.
However, instead of tackling all the steps for all of your product features at once, you break the project into iterations (smaller segments of the overall project), called sprints.
In the phases of a traditional waterfall development arc, you move to the next phase only when the previous one is complete. So that stages of a project resemble a waterfall:
With agile software development, you use an empirical control method — a process of making decisions based on the realities observed in the actual project.Empirical control requires
Transparency: Everyone involved on an agile project knows what’s going on and how the project is progressing.
Frequent inspection: The people most invested in the product and process regularly evaluate both the product and process.
Adaptation: Adjustments be made quickly to minimize problems; if inspection shows that you should change, then change immediately.
In the context of software development, an empirical approach can be very effective both in developing new products and in enhancing and upgrading existing projects. By using frequent and firsthand inspection of the work to date, you can make immediate adjustments as necessary.