It isn't enough to pass by a statement without making it bold so I'll just state it as plain and straight as I can.
Software Development, better so product development, does not require a breath-first approach. Software is about building structure out of a unstructured idea. Design is about attempting to capture that for what it's worth to a humane understanding. Management is the process of ensuring that all this knowledge is kept synchronized and a flow is followed to the end-goal.
I feel like there's something missing in that model. I feel like the idea of software is being missed in its encapsulation of systems that aren't static, they aren't pieces of artwork, it's something that reacts, it lives and connects. In some ways it's human in the ability for the people behind the curtains to react to the audience.
It's a conversation between the people creating to the people using it. The conversation is led on both ends, a means of seeing how IT is used, and feeling out ways to make it more appropriate, quicker and more humane.
This kind of conversation is really about discovery. Fast prototyping, recursive design, exploration and the ability to create a value-gap. Where the value-gap is the primary goal, and everything from then on is about discovering what can increase that gap. A model wherein the target audience is more and more discovered, split-up and tailored for.
This kind of modality is one that is about growth, a pursuit of perfection not absolute. A thought process that puts value into people and the architecture by which makes that happen.