I started reading ??Agile Software Development with SCRUM??. I think I read a fair number of software-development-oriented books, at least compared to many of my peers, and although some of the writing in this book is _horrid_ (section 1.3.1 is the most buzzword-heavy thing I’ve read in ages, and it doesn’t need to be) and the images are badly done, the actual content is certainly intriguing.
In short (and I’m not suggesting that this is earth-shatteringly brilliant or new insight, it’s just someone actually discussing stuff of which most of us probably have an inarticulate sense) the message so far (I’m only on chapter 2) seems to be: requrements will never be complete, consistent or static, so keep your targets short-term so you can achieve them and then reorient yourself to the new priority.
Yes, commercial software development has discovered at least the “often” part of “release early and often”.
Oh, and the moment I looked at the table of contents I knew it was done in “TeX”:http://tug.org/. Free software wins again.