Geography Reference
In-Depth Information
2.7
Managing Software Change
One of the biggest challenges you will face when using OSGIS soft-
ware is managing change. All systems have an inherent element of
risk with regard to change. Computer systems are particularly sen-
sitive to change, meaning if you upgrade one component, you better
make sure it doesn't have a negative impact (read: complete meltdown)
on the other components. Let's look at an example.
Harrison hears about some really cool features that were just added to
SuperMapper. After all, Harrison subscribes to the project's email list
and participates on IRC so he can be “in the know.” Unfortunately, the
new SuperMapper features are in the development version. Undaunted,
Harrison proceeds to check out the source code and build the latest,
greatest version. And it works great. All the new features are there,
and Harrison is one happy mapper—until he goes to run his faithful
old workhorse application, MundaneMapper. Turns out that his hack-
ing activities have introduced some library incompatibilities, and now
MundaneMapper refuses to start. Harrison has become a victim of BES.
Harrison will glumly tell you that if you want to maintain a stable sys-
tem, the first thing to avoid is Bleeding-Edge Syndrome (BES). This
differs from being an “early adopter.” Here is how to tell if you have
BES:
• You always download and install the latest beta.
• You find yourself doing CVS and SVN checkouts and building from
scratch.
Concurrent Versions
System (CVS) and
Subversion (SVN) are
version control systems
used when developing
software.
• You subscribe to the CVS/SVN commit mailing lists for several
projects and rebuild your toolkit each time a new message comes
in.
• You often find yourself with an inoperable system.
Having BES is not so bad if you are a hobbyist or just experimenting
and understand the risks. It's not so good if you are trying to do real
work and can't afford to break things on a regular basis.
Guidelines for Managing Change
Managing change really refers to keeping your software current, re-
sponding to security issues, and keeping things stable so your toolkit
can serve you, not the opposite.
 
 
 
Search WWH ::




Custom Search