Download
this construction software article
|
 |
| |
 |
See why contractors use FOUNDATION as their construction accounting software!
(click here) |
|
 |
|
| |
 |
| |
|
Do You Know Where YOUR Software Update Is?
Understanding the process your
vendors go through to give you the
latest & greatest
BY FRED ODE
Aristotle once said, “Patience is
bitter, but its fruit is sweet.” And it
was another ancient philosopher,
Cato the Elder, who said, “Patience is the
greatest of all virtues.” Sure, you say, but
Aristotle and Cato never had to wait for a
software update!
Why does it take weeks–or sometimes
months–for vendors to produce updates
that are meant to provide product enhancements
or fixes to problems? In computer
programming, the best solutions are those
that come from thorough planning, research
and development, testing…and then retesting…
and finally more testing.
The long-awaited update kit for
Microsoft’s Window XP software, released in
August, is the “mega-example” of software
update delays. I can safely say that most
software product updates come nowhere
close in size or complexity to the release for
Windows XP.
Upgrade vs. update
Before discussing updates any further, it’s
important to clear up the distinction between
an “update” and an “upgrade.” Although
these terms are often used interchangeably,
there is quite a difference…and the difference
usually involves cost. A product update is a
revision that can usually be downloaded free
of charge or comes free to software clients
through a maintenance agreement plan. A
product upgrade is usually sold as a full,
stand-alone product. (For example, Windows
XP is the product upgrade to Windows 2000;
Service Pack 2 is XP’s product update.)
Software updates that are scheduled on
a regular (or not so regular) basis are likely to
include the following things: required
changes, software fixes and product enhancements.
However, if the goal is to create
a better product, the process will involve at
least five phases of development:
Defining the change,fix or enhancement. Before programmers can get to work
tweaking software and making improvements,
a great deal of thought and consideration
is needed beforehand. First of all, is the
change really needed? Will it be good for the
majority of software users? How will this
change affect the users that do not wish to
use this feature? Will it affect speed? Are
there any tools that we can use to improve
performance?
Researching the solutions. In general, the
more flexible a software product is, the
longer it takes to implement changes. And
that’s because change has a “ripple effect”
on integrated modules or related applications
and therefore one change may lead to
many. Programmers need to research and
anticipate what possible problems may be
caused by their own fixes, as well as external
environmental changes. For example, software
programs operating in the Windows
environment may be affected by the Microsoft
Window XP update discussed
earlier. In addition, authority-mandated
changes, such as an IRS tax form update,
may require difficult and unanticipated programming
changes. Often, software companies
must work with governmental agencies
to come up with acceptable solutions.
Programming. If you’ve ever worked on a
committee, you know how teamwork can
be both a blessing (creative input) and a
curse (slow as molasses). Nonetheless,
good programming requires the most interactive
kind of teamwork possible. Once the
solution has been defined, the specs for
change are written and often rewritten, to
the satisfaction of all involved.
Testing,testing and more testing. Everyone
is now in agreement that the programming
update is flawless… but is it? Thorough
testing is imperative to compare before/after
data changes. Further testing is required to
make sure that the “fix” didn’t create more
problems than it solved. Every software user
scenario needs to be examined to guarantee
that programming changes are working
exactly as expected. Depending on the
nature of the change, for example, updates
may need to be tested on multiple operating
systems, using different printers, and so on.
Documenting the update. After weeks or
months of painstaking work, the update is
finally complete and contains valuable enhancements
for the software user. Now the
challenge lies in documenting these
changes in a language that the end-user
can actually understand! Good documentation
is essential, but often it can be the cause
of delay because at this point additional
problems or sources of confusion may be
uncovered. In some cases, the cycle may
need to start over.
Having learned (more than you ever
wanted to know) about the processes and
procedures that many software companies
go through to produce updates, you will
probably be much more understanding
while waiting for your next software update
to arrive. If not, try to remember those ancient
words of wisdom: “Patience is the
greatest of all virtues."
Fred Ode is the founder and
chairman/CEO of Foundation Software,
Inc. For more, visit www.foundationsoft.com or call 800-246-0800.
|