FAQ 6.07 How do developers determine if a proposed change will break existing code?

The specification.

Unfortunately there is often an enormous ripple effect when nonsubstitutable (that is, non-backward compatible) changes are made to a software application's interfaces. In some cases organizations can spend more time adjusting their old code than writing new code. This is especially true for organizations that are building large, complicated systems or applications.

Developers should therefore be somewhat cautious of the difference between a substitutable change and a change that will break existing user code.

With proper specification, anyone (including maintenance programmers) can easily determine whether a proposed change to an interface will break existing code that uses the interface. Ill-specified systems typically suffer from "change phobia": if anyone even contemplates changing anything, everyone starts sending out their rèsumès for fear that the system will collapse. Unfortunately, changes often do make the world fall apart in ill-specified systems. It's called maintenance cost and it eats software organizations alive.



C++ FAQs
C Programming FAQs: Frequently Asked Questions
ISBN: 0201845199
EAN: 2147483647
Year: 2005
Pages: 566
Authors: Steve Summit

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net