CSC/ECE 517 Fall 2010/ch6 6c PK

From Expertiza_Wiki
Revision as of 20:08, 14 November 2010 by Csc517wikihandle (talk | contribs)
Jump to navigation Jump to search

Estimation in Agile projects

Introduction to Agile software development

Software development process or life cycle is a commonly used term in today's rapidly developing software industries. There are different models are available which are used to enforce the structural development of software products. Agile software development methodology is one of the commonly followed practices in project management which takes iterative approach for software development in contrast to plan-based or traditional methods. It mainly focuses on the adapting to requirement changes and delivering in high quality product in iterative work-process. In traditional models such as waterfall model, the project requirements are collected at the beginning of the projects and later implemented. The main problem with this approach is if the customer requirements changes in the middle of development. This may cause lot of rework and impact the planning and deliverable. The adaptive approach of agile development helps to minimize the conflict between requirement and end product. Changing requirements can be easily accommodated in development life cycle as each iteration involves estimation,planning,development and testing. In other words, Agile software development follows an iterative approach where each iteration is mini waterfall.

In this chapter, we will explain the purpose of estimates in agile software development first, later we will discuss estimation techniques and re-estimation and how these are different in other software development processes.

Estimation in Agile Model

Purpose

Estimation techniques

Re-estimation

Estimation in Waterfall Model

Estimation in Spiral Model

Estimation in Iterative and Incremental Model

References

  • Software Development process [1]