Would you build a car and hope that it works. Would you allow the makers of the Owes, engine, and the windows to do their own thing and hope that everything will work when it is all assembled. You wouldn't try to build a car using the wheels and seats of the old model assuming that they will fit together, neither would you send out a new car to a customer if you didn't know that it works, and that all the manufacturing flaws were corrected.
Imagine, if you released that same car with tyres which should have failed the quality assurance test, but didn't, because the specification had not been updated Consider the cost implications for all those cars to be repaired or recalled
Software development projects still include basic mistakes because the industry blatantly ignores the importance of configuration management. How many other businesses can you name where people can overwrite each other's work, send out the wrong version of a product to clients, or fix problems that later get re-introduced?
IT is sufficiently established as an industry now for ad-hoc standards of working practice to be unacceptable. It's time we were able to add stamps of quality and approval on software--whether it's for internal development or for external customers--and we can't get that in place without some fundamental changes to IT management practices.
Why is the use of SCM constantly growing?
Today's world of managing and developing software applications within large-scale, multi-platform distributed systems is incomparable to anything that existed in the past. The increasing complexity of the development life cycle of products, multi platforms and the need for rapid deployment, have resulted in the development of a new class of software designed specifically to exploit the available technology and keep track of the myriad of software assets at the component level.
Flexibility and ease of change with complete traceability and maintainability during the whole life cycle of each module or component of software are crucial factors in the battle for time to market and development efficiency. The first factor might imply the use of state-of- the-art technology, creativity and expertise (among other things), the second calls for a sophisticated infrastructure of the development process--namely a suitable Software Configuration Management system.
* Developer: "I can't change this file--it is shared by so many modules ..."
* Team leader: "if only I had the...