Hey what do you think of IEEE publishing a standard called IEEE 1016–1998 "Recommendendations for Software Design - I think it's a good idea to follow that guideline and keep a "design document" that we do not change daily and change the code daily instead. If you search for IEEE 1016–1998 you can review what it's about. What do you think? Best wishes Niklas
Well, I don't have an IEEE subscription and I don't feel like shelling out $129 (or whatever it was) for access to the document. However, if it pertains to what I think it does:
Ideas change in a developer/producer's mind so often that if you're developing applications with complexity even slightly above "hello, world", then a design document can be absolutely priceless.
Writing a design doc allows (well, forces) you to think everything through. There are so many times that I wish that I had used these earlier in my career, as many times (as I'm sure many can attest to), I've had an "oh sh*!" moment, where I ran into an issue (either functional or logic) that rendered a bunch of work that I had done virtually useless.
Also, a design document will keep everyone (even if it's only you developing) on course. Having the document is almost a contract saying "this work needs to get done before anyone else". I've had to catch myself so many times when going off on a tangent with some "cool tech" that I'd never get anything released had I not used the design document as a baseline for requirements.
Having a well developed design document definitely helps mitigate these kinds of issues. Having said that, you'll always run into unforeseen issues, that can't be helped.
The only issue that I've seen around design documents is when they're no longer valid. Sometimes requirements do change as systems are developed. I would argue that it's a necessity to go back and update the document to ensure that it's in line with whatever is released, but that's up to whoever is implementing the changes.
Now, if I'm off base with the intent of the IEEE doc, then ignore my entire rant :)