"Computer software development projects still often run late and
over budget, and the people who commission them are still often
surprised and disappointed by what they get at the end of the
development process. Software development has been around for over
60 years now, and it should be a mature, reliable process, but some
big gaps remain. I've been designing and writing software for over
40 years, and I have scars to prove that I blew it often enough
myself. I have been trying for a long time to find a way to make
the development process more visible and easy to understand for the
people who will eventually use what we build, so they get advanced
warning when we're going wrong, and can help us to sort out our
mistakes before they get cast in code, because that's even worse
than being cast in concrete..."