systems thinking

Software (& product) development is never a simple endeavor. Save perhaps for projects that run a couple of days and involve only a handful of people. The vast majority of projects can easily be considered complex. By 'complex' I mean: too many variables and potential (emergent) interactions to reliably predict the (near) future. Yet, we seem to suffer from a powerful cognitive bias that makes us discount complexity with statements like 'it can't be that hard', 'we've done this before' and 'we already know pretty well what to make'. I often run into people that feel that their 'project isn't…