Iterative solutions and agile development