Iterative Incremental development
-
Upload
oliver-schreck -
Category
Documents
-
view
1.455 -
download
1
description
Transcript of Iterative Incremental development
Iterative vs Incremental Oliver Schreck, 2012
Oliver Schreck, Copyright 2012 2
Rough overview of picture
Oliver Schreck, Copyright 2012 3
Iterative DevelopmentDevelop, then evaluate, then change, …
Never expected it to be right.
Iterate to find the right solution.
Given some good candidate solution, we might then iterate to improve a candidate solution.
Oliver Schreck, Copyright 2012 4
Iterative DevelopmentWikipedia:
Iteration means the act of repeating a process usually with the aim of approaching a desired goal or target or result. Each repetition of the process is also called an “iteration”, and the results of one iteration are used as the starting point for the next iteration.
The whole product is iterated all the time. (This of course is in the purest iterative, non-incremental case)
Oliver Schreck, Copyright 2012 5
1st Iteration
Oliver Schreck, Copyright 2012 6
2nd Iteration
Oliver Schreck, Copyright 2012 7
3rd Iteration
Oliver Schreck, Copyright 2012 8
4th Iteration
Oliver Schreck, Copyright 2012 9
Incremental developmentIncrementally add software a time
Build up functionality gradually
Release incrementally so that we actually get that business value we're chasing.
We don't really get return on investment till people begin to use the software we've built.
Oliver Schreck, Copyright 2012 10
Incremental developmentWikipedia:
Incrementalism is a method of working by adding to a project using many small, incremental changes instead of a few (extensively planned) large jumps.
It means you develop one part of the system and when it’s ready you develop the next part
Oliver Schreck, Copyright 2012 11
1st Increment
Oliver Schreck, Copyright 2012 12
2nd Increment
Oliver Schreck, Copyright 2012 13
3rd Increment
Oliver Schreck, Copyright 2012 14
4th Increment
Oliver Schreck, Copyright 2012 15
Putting both togetherIncremental development goes through all the phases
of development (analysis, testing, development, design, integration, production) it is a perfect tool to expose all problems in the process.Incrementalism improves the process and adds new topics.
Iterative process means rework on the existing product.Iterativity improves the product
Both can be used without each other but they can be used together as well.
Oliver Schreck, Copyright 2012 16
1st Increment and 1st Iteration
Oliver Schreck, Copyright 2012 17
1st Increment and 4th Iteration
Oliver Schreck, Copyright 2012 18
2nd Increment and Xth Iteration
Oliver Schreck, Copyright 2012 19
3rd Increment
Oliver Schreck, Copyright 2012 20
4th Increment
Oliver Schreck, Copyright 2012 21
The different flavorsWaterfall is non-
iterative, non-incremental process
Staged delivery is incremental but not iterative
Spiral model is highly iterative but not at all incremental
Agile process has many different flavors, amount of iterative and incremental can vary
Oliver Schreck, Copyright 2012 22
Document levelRequirement
Specification (Customer req.)
System Specification (System req.)
Feature Specification (Feature req.)
Design Specification (Design req.)
What to do rough?
How to do rough?
What to do in detail?
How to do in detail?
Oliver Schreck, Copyright 2012 23
Requirement Specification – What to do rough?
ViewerFilmin
gServic
e
Customer ViewCR CR CR
Oliver Schreck, Copyright 2012 24
System Specification – How to do rough?
ViewerFilmin
gServic
e
Services
Back End
Front End
System Architecture View
CR CR CR
System req.
System req.
System req.
Oliver Schreck, Copyright 2012 25
Viewer
Feature Specification – What to do in detail?
Filming
Service
Services
Back End
Front End
Zoom
Load
Imag
es
Customer ViewCR CR CR
System req.
System req.
System req.
Featu
re re
q.
Featu
re re
q.
Oliver Schreck, Copyright 2012 26
Viewer
Design Specification – How to do in detail?
Services
Back End
Front End
Zoom
Load
Imag
es
DesignArchitecture View
System req.
Design req.
System req.
Customer req.
Featu
re re
q.
Featu
re re
q.
System req.
Design req.
Design req.
Design req.
Design req.
Design req.
Oliver Schreck, Copyright 2012 27
Viewer
After Multiple Iterations
Services
Back End
Front End
Customer req.
System req.
System req.
System req.
Design req.
Design req.
Design req.
Design req.
Oliver Schreck, Copyright 2012 28
Questions?
If (unclear == true) then askme();