Um desenvolvedor de software atua com um usuário ouvindo suas idéias e pedidos e criando, imediatamente, um esboço do produto desejado por esse usuário. O usuário, então, utiliza esse esboço e fornece novas informações ao desenvolvedor para que este possa atualizar, adaptar e implementar, nesse mesmo produto e em tempo de projeto e desenvolvimento, os dados obtidos.
A situação descrita constitui uma prototipação, modelo de ciclo de vida do software que deve
✂️ a) ordenar, de forma sequencial, as etapas a serem realizadas e obter uma visão geral do projeto para definir com precisão os requisitos iniciais do sistema a ser desenvolvido. ✂️ b) dividir o processo de desenvolvimento do software em macroatividades que devem ser executadas de maneira sequencial, especificando, de forma detalhada, a documentação que será gerada nesse processo. ✂️ c) dividir o processo de desenvolvimento do software em fases, apresentar uma visão de custo de desenvolvimento para cada fase do projeto e, por conseguinte, o custo total desse projeto. ✂️ d) destacar, de forma especial, as diversas fontes de demanda por software, os pontos de decisão durante o processo de desenvolvimento e incorporar características do produto real. ✂️ e) ocupar-se, principalmente, em tratar exceções, responder corretamente às entradas inválidas e interromper o processamento, em caso de erro não recuperável, de forma controlada.