Sunday, February 8, 2009

Prototyping (throw-away prototyping)

NOTE: this is similar to the idea of incremental development.. BUT: incremental development delivers a working system to the users, requirements should have been well understood beforehand, and throw-away prototyping we use to explore the requirements, the user just validates it; moreover the lifetime of an increment release may be much longer than the one of our prototype;

Throw-away prototype
-> not delivered to the user, not maintained
-> try out design, options, possible solutions
-> can be used before proper incremental development.. but does not have to
-> system stakeholders can experiment with it on early stages

There're three situations when we may want to use prototyping:
  • in requirements engineering process
  • in system design process
  • in testing process (back-to-back testing: ~we check if the prototype behaves in the same way as the application)