Carrie,
You are absolutely correct that a course design specification is an excellent tool for communicating the needs of the designer to the developer. This process, however, is often time-consuming so quicker methods are employed in order to get a course up and running. What ends up being created is actually a prototype of of the course rather than the course itself. Through iterations (versions), the course eventually becomes what the designer (instructor) had in mind.
Course development is a dynamic environment where cost vs. benefit, student needs vs. institutional needs, etc. must be considered. And, besides, isn't "versions" how… >>>