Companies using manual means to install software rely on tasks that must be managed constantly to achieve successes. The manual processes include:
Login scripts. This process is one in which you modify the network login scripts to include commands for installing software. The method generally connects to each computer that logs in to the company network. Once the installation has been successful on the majority of computers, you remove the commands from the login scripts. Though this method can touch a large number of computers, it doesn’t ensure success. There is no ability to know whether the application installed correctly or which computers received the installation, and it doesn’t address remote computers (those computers that didn’t log in to the network during the installation’s availability). When using login scripts for software installation, you can’t target specific computers without great pains and additional pre-installation research. For example, installing a patch that was developed specifically for Windows NT computers could cause Windows 98 computers to crash, resulting in a loss of productivity for the end users and the Help desk staff.
Another big issue with the login script method is for those end-users who rarely log on to the network. And in relation to this issue, when a critical patch is made available, getting all end users into the office to log on to the network everyday can become a task in itself.
Computer visits. One of the ultimate manual methods for software distribution is when an IT staff member makes visits to the company’s computers when an installation or update is required. This method is a common practice for small companies with 25 or fewer computers. Carrying the application installation media, the technician manually installs the application or update. In a small company, this method may be a positive and cost-effective process. However, even in a small company, a centralized software distribution technology can free the IT technician to focus on more critical technology management concerns.
End-user visits. Some companies manually inventory their computers and record the data in a database or spreadsheet. When it needs to distribute software, the company reviews the list, contacts end users whose computers meet specific criteria, and schedules appointments for the end users to drop off their computers to the IT staff. This process results in downtime for the end user, which in turn results in loss of productivity and ultimately loss of company revenue. And, despite the results on the end-user, this method is still very time restrictive to the IT staff who have to keep appointments while managing the rest of the organization’s technology infrastructure.
Email. Almost every company utilizes some type of email system, and email is generally available for every user in the company. Email is also one of the most critical technologies for doing business, so companies invest a considerable amount of effort and resources to keep email flowing 24 hours a day, 7 days a week. The theory is that because email has high availability, it’s thus a logical transport for software installations. Software installations are delivered as email attachments for end users to execute from within their email.
However, while email might seem like a perfect distribution mechanism, there are several caveats. If the compressed file is small, distribution via email may indeed be a solution for distribution. On the other hand, if the majority of the user base is mobile or must dial in to receive email, this may not be a convenient option if a package is over 2MB. For the distribution to be successful, the vehicle cannot be something that pains the user to install—otherwise the user won’t install the package. Another drawback to email distribution is that there is no notification mechanism to report whether the user installed the package or whether the installation was a success or a failure. There is, at least, a notification through Return Receipt that the user received and read the email. But if you’re distributing via email to a large enterprise organization, you could expect to be swamped with Return Receipts when users receive their messages. Furthermore, distribution via email assumes that (1) the user is capable of installing the software and (2) the user is running with a high enough privilege level to allow the installation to succeed. Although the first assumption is often not the case, the second is undesirable in most cases.
Another concern with email is the fact that end users can easily ignore email messages. If the end user is too busy, it doesn’t matter how critical the installation is or how well the importance is communicated, there isn’t a method to make the installation mandatory. You also can’t determine if the end user might have already installed the software through another delivery mechanism.
Web pages. Most of the user population is very familiar with the experience on the Internet, and almost everyone knows how to download files and install them. The Internet has made software distribution easy for the user to understand—almost too easy. Many companies have experienced the woes of diagnosing computer problems related to the freedom of downloading software from the Internet. Organizations have written policies against this, and some have gone so far as to put technology in place to keep the user base from being able to download files.
An organization can use Internet technology to its advantage for package distribution by placing packages on an intranet (internal Internet) page for download and installation. And since most people are already familiar with the way the Internet works, they should have little trouble downloading and installing the distributions.
The other caveat with intranet distribution is how will you notify the user that a package is available for installation? Email communication, at least, gives an up-front communication with an attached file. More technology would have to go into place to give the intranet technology a notification system.
Network share. Most companies have a network, and placing the software installation on the network is easy to do. You first create a network share and then give the appropriate security rights to the share. You can install the package on the client computer by a notification through some communication method such as email, or you can offer it for installation through login scripts.
Distribution via the network share is a good method for LAN-locked users but is a poor distribution method for mobile or remote users. It is also a problem for remote sites that connect through a slow link or modem line to the local network. And, again, there is the problem of not automatically providing a status system.
Also, making applications available via a network share creates additional administration overhead. Any time a distribution is available, you have to create the share, assign the rights, and then revoke the rights once you’ve completely deployed the application. Do you want users to be able to install the application at any time? If so, server disk space could become an issue. Eventually, you’ll have to remove these packages should low server space become a critical concern.
Media loans. You can distribute the package by burning the package information to a CD, and you can then hand the CD to an individual to run. Using the CD as the distribution mechanism, you can also send the package to a client location where several employees are stationed, which allows all employees to insert the CD and run the installation. You can include an AutoRun feature on the CD so that the installation starts automatically when the employees place the CD into the CD drive.
However, as with the previous options, CD distribution doesn’t provide a status system for success or failure. Another issue might be that not all mobile PCs or laptops have the luxury of a CD drive. Lastly, this method suffers from the same problems with respect to user capabilities and privilege level as does email distribution.
Burning CDs for package distributions is a continuing cost. Depending on how many software distributions you conduct each year, this cost could be considerable. There is also the cost of software license violation should an offsite employee give the CD to a client to install.
Computer images. Many companies employ some type of imaging process to distribute updated standard computer images. As patches and hotfixes are made available for operating systems and applications, the company incorporates these into a new computer image that it will use to refresh each computer in the company. The imaging process requires that the end user back up any personal and company data that resides on the computer and that the operating system and applications be wiped out so that the new image can be installed. A new image replaces everything on the computer.
Companies that perform this procedure generally schedule the process yearly. While this process allows a company to get all of the computers into compliance at once, critical hotfixes and patches, such as security vulnerability patches, aren’t installed until the scheduled imaging process. The result is that the company is left open to cyber attacks, computer virus infections, and the potential loss of data valuable to the operation of the business.
In addition to creating the potential for losing data and having out-of-date computers, the imaging process requires a large amount of IT staff resources. Large companies still employing this method for refreshing desktops should see significant gains in cost savings and better protection against vulnerabilities if they reevaluate and change their current method.
As outlined by the list of manual processes for software distribution, these methods can cost the company money, time, and resources. Employing an automated mechanism allows companies to maximize technology investments. Manual processes, while able to provide solutions for unique situations, degrade the ability to manage the entire technology process.