El primer paso para vencer cualquier batalla es conocer a si mismo. El proceso de descubrimiento aprovecha la entrega de software de mejor calidad antes y con menos gastos.
Uno de los grandes desafíos para dar este paso es la complejidad en el desarrollo de soluciones de software. Las barreras son comunes, lo que hace que la comunicación sea prácticamente imposible entre los desarrolladores, como las fábricas de software, y sus usuarios y clientes.