Subscribe by Email

Monday, April 30, 2012

What are basic practices of iterative development?

So many software development processes have come up with the specifications and benefits of their own. The iterative development is one such development strategy which has been identified as an agile software development process. 

The basic practices of the iterative development have been discussed here. But, before moving on to the approaches will have brief discussion regarding the iterative development.The iterative part forms the first half of the heart of the cyclic software development process with the other half being formed by the incremental development. 

The iterative development strategy was the resultant of the response to the weaknesses spotted in the water fall model of the software development and testing. Like any other cyclic software development process, the iterative development process also has its starting with an initial planning and ends up with deployment and it has so many cyclic interactions happening in between the ned points. 

The iterative development process forms an important and non neglect-able part of the following processes;
  1. Rational unified process or RUP
  2. Extreme programming or XP and
  3. Various other agile software development methods
The idea of a simple business process improvement has been implemented in the iterative development which has its flow like as shown below:

Plan à DO à Check à Act

What is meant by Iterative Development?

- Iterative development is itself an agile software development strategy which has its basic idea revolving around the use of the iterations in smaller intervals of time called the incremental.
- This agile software development strategy helps the testers and the developers to exercise their past experience of the learning in to the current testing scenario.
- With every new iteration, the design of the software system or application is modified and is incorporated with some new functionalities or features. 
- The procedure for the iterative development process consists of the following steps:
  1. The Initialization step
  2. The iteration step and
  3. Project control list
- The first step i.e., in the initialization step involves the building up of the foundation or the base version of the proposed software system or application.
- Actually, a base version is created so that the user can react with the software product and also to have a key sample of the problems of the software system or application and also possible solutions that are easy to understand and implement.
- The control list contains all the tasks that have to be performed in order to complete the software development process. 
- As the analyzation phase progresses, the project control is also revised timely and frequently as and when any change in the requirements is wanted.
- With every iteration, a task from the project control list is accomplished or redesigned. 
- The below mentioned are some of the goals of the iterative development process:
  1. Simplicity
  2. Straight forward
  3. Modular
  4. Redesigning supportive at that particular stage etc.
- Every iteration is analysed on the basis of the below mentioned factors:
  1. Structure of the iteration
  2. Modularity
  3. Usability
  4. Reliability
  5. Achievement of goals and
  6. Efficiency
Based on the results of the above factors, the project control list is modified accordingly.

Phases of Iterative Development

 The whole iterative development consists of the following 4 phases:
  1. Inception phase: It involves identification of the project scope, risks and both the functional as well the non functional requirements.
  2. Elaboration phase: It involves the delivery of a working architecture fulfilling all the requirements and mitigation of the top risks.
  3. Construction phase: It involves implementing the production ready code in to the architecture.
  4. Transition phase: It involves delivery of the project in to the production environment.

No comments:

Facebook activity