É embasado na idéia de desenvolvimento de uma implementação inicial, expondo o resultado aos comentários do usuário e refinando esse resultado por meio de diversas versões, até que seja desenvolvido um sistema adequado. No âmbito do processo de software, trata-se de