Enterprise Software

Try this icon update method to save clients time and fees

Find out how one consultant uses executables to automate upgrades for his clients' custom applications. This ingenious strategy saves the client time and money, encourages regular upgrades, and keeps the consultant's client site visits to a minimum.


Upgrading a client’s applications can be a time-consuming endeavor for consultants and a productivity drain on clients. You can schedule the downtime for nights and weekends, but if you have to manually perform the application updates on hundreds or thousands of desktops, that’s still a monumental chore.

Brian LeBrow, a self-employed system developer and consultant, has developed a way to design applications that automatically update on client machines with one click from his clients’ end users. He says that his clients appreciate the feature because it provides quick updates to their proprietary software without the fuss of manual upgrades by IT staff or expensive consultants. IT staffers generally like his "one-icon method" because it saves them time.

LeBrow designs and implements custom-built applications for various government clients, primarily social service departments in Ontario, Canada. Here's a description of his method and samples of the code he has created. He's also included some estimated cost savings his method provides.

How does the one-icon method work?
LeBrow designs his applications so that an executable program resides on and runs from the user's hard disk and uses the network only to access data. He creates a single desktop icon with the name of the system, for example, Payment Recovery, which initiates a batch file with simple commands that determine whether the user's PC requires installation of the application.

If the network copy is newer, end users will see a message that says, "Some programming changes have taken place. Please click on OK to update your copy of the application." The newer, network version is then copied to the user’s hard disk and launched.

"A separate, small program running first eliminates the problem of being unable to replace the main program while it is in use," LeBrow said. "And because each user is running their own copy of the program, I don't get the message 'file in use' or 'file access denied' when I attempt to replace the network version."

If necessary, the batch file runs Setup to install the application’s .exe files and any required Windows DLLs (Dynamic Link Libraries). If Setup isn’t required, the batch file starts up an executable, REC01.exe, for example, to retrieve the last modified date-time stamp from the main executable, in this case, REC02.exe. If the PC doesn't have the most recent version, REC01.exe copies REC02.exe from the network. Listing A provides a sample of the batch file that LeBrow's desktop icon runs.

Some of LeBrow’s clients have asked him why the batch file doesn't simply begin by running REC01.exe. The problem is that REC01.exe is a Visual FoxPro program that will not run without the required Windows DLLs, he said. The first few batch file commands determine whether the one-time install is required, and run setup.exe if required.

RECO1.exe uses Microsoft's Visual FoxPro commands to retrieve the last modified date-time stamp from a file, and to copy files. LeBrow said that similar commands or functions exist in nearly all programming languages, but he uses FoxPro as his Windows object-oriented, relational database development tool because of his background using the Xbase language Clipper. In addition, LeBrow says he saves his clients money by using FoxPro because there are no license fees involved when you develop applications with the Professional edition.

Benefits of LeBrow's one-icon method
While LeBrow admits that his method isn't "rocket science" and similar results could be accomplished using tools like Microsoft Systems Management Server, he said he's been using this method since Windows 3.1 "and it still works great." He said there are many benefits to the one-icon method:
  • ·        It relieves local IT staff from virtually any involvement, because they don't have to update each PC when programming changes are implemented.
  • ·        The number of desktop icons required for installing, upgrading, and running an application is reduced to one.
  • ·        He can make programming changes from off-site and then send the client a revised RECO2.exe program by e-mail with simple instructions on where to place the file on the network.
  • ·        The network copy of RECO2 can be replaced at any time because it is never actually run by the users.
  • ·        Users will automatically be using the most recent version each time they start up the application.

Cost savings: Hypothetical numbers
It's difficult to estimate the cost savings for LeBrow's clients in terms of the efficiency he's created with the one-icon method and the billable hours he's saved them in terms of his travel time to and from the client site. It is possible, though, to estimate the amount of money he could save his clients in terms of the time it would take an in-house IT staff to initially install LeBrow's software, and then to update each machine as the program is enhanced.

For example, assume that LeBrow was working on a customized program for a client with 500 PCs, and the client's internal IT staff made $25 per hour. If it took five minutes to install the application and required Windows DLLs on each machine, it would take 41.7 hours to roll out the application at a cost of $1,042.50 (see Figure A). In contrast, LeBrow's icon method would only make it necessary to create a Startup Menu item or Desktop Shortcut on each PC, which would cut the time spent at each machine by at least three minutes, saving the client $625.00 on the initial implementation.

Figure A


The more significant cost savings would occur when the application needed to be updated. LeBrow's method would eliminate the need for the internal IT staff to revisit each machine to manually update the application. One administrator could place the revised program in the appropriate network folder. After that, any user who launched the application would automatically receive the updated version. Assuming the client requested six modifications to the program annually, the savings for a 500-PC client would be $6,255 (see Figure B).

Figure B


Looking at these figures, it's easy to see that LeBrow's method may be a cost-effective way to manage a frequently updated application with a large user base. The above figures don't include factors like travel time between individual PCs and user sites, the time spent setting appointments for the installation or upgrades, and the miscellaneous troubleshooting that is sure to accompany such a venture. The real savings may be significantly more than the estimated amount. In addition, using the one-icon method could save the day for a consultant who, for example, needs to fix an unexpected bug quickly.

Preparing the client site for the one-icon method
To ensure a trouble-free implementation of his one-icon method, LeBrow said he always explains what the users can expect as part of the training for his applications. Moreover, he trains a minimum of two key users from the IT department to act as system administrators and provide help to any user having problems running the setup or any aspect of the application. He said he has yet to find a drawback to his one-icon solution.

"If I make the process any easier, I will just about be working myself out of a job altogether," he said.

Earn a buck when you share your cost-saving tips!
Have you developed a way to save money in your IT department? Share your tips with TechRepublic. If we publish your tip and it is substantive, we'll send you $25! If we publish a brief, quick tip that you've submitted, we'll send you a TechRepublic mug.

 

Editor's Picks