The industry of software development is changing at a pace never seen before.
Many mistakes of the past has been recognized and the urgency to find new better ways are growing almost everywhere. New methodologies are emerging and finally the idea that developing software is not an activity like anything else begins to be accepted.
W. Edward Deming once said that ''95% of variations in workers' performance is governed by the system''.
It means that no matter how skilled your developers are, if the system they are working in is flawed, such will be their performances.
Skills, experience, vision, creative thinking are just some of the elements that make the difference in technical resources. A methodology that focus on those qualities and help them bloom generates a positive feedback loop which can deliver applications of superior quality, incredibly fast and be sustainable in the long term.
Good software is not just something that works, but something that works fast and well for long time, make the users happy and ideally has no need of maintenance. It makes tasks easier because specifically analyzed to solve well understood problems. It triggers positive feelings in the end user by putting a special effort on usability and user interfaces. It's easy to expand or upgrade if the requirements change.
Unfortunately, in most cases, good wishes have to face all sort of impediments.
Focusing on the process is what allows for problems to be identified and resolved at early stages, so in the long run more time and effort can be put on quality.
Having the time for exploring all the options before making technical choices is key for maximizing the value balancing simplicity and meaningful model abstraction.
It takes time, common sense and a clear mind on top of technical knowledge earned by experience. But it makes the difference.