When it comes to distributing software upgrades, the options are many. Which one is best for you? We test five solutions to help you make the right choice.
For eons, the only two absolutes in life were death and taxes. But with the dawning of the digital age, there’s an addition—software upgrades. Thankfully, administrators have many choices when looking for tools to assist in their release-management activities. Which product is best for your needs? Well, it depends on what you want. Are you looking for a product for your entire enterprise? For your department? Do you need a high degree of customization in how software is installed? Do you need only software distribution or a complete management suite? How do you decide what works for you?
As with most tools, software-deployment products are only as good as the people and processes that use them. Start by looking at the release-management processes within your organization.
Once you understand how you release software and upgrades to your organization,
you can decide which tools will best enable that process. The skill level
of your staff also has a bearing on tool choice. Do you have programmers
on staff who can script automated installs? Do you require a tool that
allows you to create snapshots of a specific configuration and replicate
that snapshot? Do you need to know what software is installed on your
computers? The best way to choose a tool is to first write down your needs,
which will be quite evident once you assess your release-management process.
Compare these needs to the features each tool offers. Remember: You don’t
always need to use only one tool—a combination is sometimes the best option.
Take a look at what you need to do, review the products in this article
and find the best fit for your organization.
Pricing for newly released
AdminStudio 5 is $3,299.
InstallShield Software Corp.
Delivery Solution version 5.5
Pricing for the standalone
Software Delivery Solution ranges, with 100 to 499 nodes
costing $26 per node.
Pricing for Inventory and
Software Distribution ranges from $67.50 per license
for 10 users to $25.65 per license for 1,000 users.
Pricing starts at $3,500 for 100 seats (includes one
year of support and upgrades).
New Boundary Technologies
PushInstall Module pricing ranges from $15.75 per license
for 11 to 49 licenses to $12 per license for 500
to 999 licenses.
AdminStudio 3.5 Professional
InstallShield, well known for its setup package software, offers Admin-
Studio—a complete suite of tools to prepare software for distribution.
AdminStudio provides Windows Installer repackaging, legacy package conversion,
application-conflict resolution and standardized MSI generation. AdminStudio
doesn’t distribute packages, but you can publish them to network shares
and FTP servers, from which they can be run and installed.
AdminStudio provides two options for Windows Installer repackaging: Installation Monitoring or Snapshot. Installation Monitoring tracks the low-level changes made by an application’s setup program. These changes are stored in a file and used to create an MSI package, which can be used to install the application. The Snapshot method takes a snapshot of the computer before and after application installation. These snapshots are compared, and an MSI package is created to install the changes on another computer. Snapshots work well if you’re installing the software on standardized computer platforms, while Installation Monitoring can be used on non-standardized platforms. AdminStudio’s application-conflict resolution allows you to check for and correct conflicts of shared files between applications. This allows for a more reliable software environment and ensures compatibility prior to deployment, thus reducing support calls.
Also, if you have legacy software-deployment tools such as SMS, ZENworks
or WinINSTALL, the develop- ment work you’ve put into those isn’t wasted.
AdminStudio can convert these software packages to standardized MSI packages,
which can be used by most software-deployment tools.
|Figure 1. InstallShield's AdminStudion 3.5 provides
myriad options for updating and deploying packages. (Click image to
view larger version.)
AdminStudio is a powerful software-packaging tool that provides many
choices for creating deployment-ready packages; but the lack of distribution
features means that additional tools are required to deploy and install
packages. AdminStudio is an excellent complement to your software-distribution
toolset if you have older applications, in-house written applications
or other software distribution packages.
[AdminStudio 5 was being released as this article went to
Altiris Software Delivery Solution
Altiris Software Delivery Solution version 5.5 is part of the Altiris
Client Management Suite. Like all Altiris products, it can be installed
by itself or as part of a complete, integrated suite. This flexibility
is one of the product’s strengths. Altiris has taken an enterprise view
on software distribution, and the Software Delivery Solution offers a
robust architecture that allows for software distribution to any Windows-based
client in your enterprise. The tool works with the Altiris Notification
Server and the Altiris Notification Server Client to define and deploy
software packages, as well as run programs. This design works well, as
all of Altiris’ management products use the Notification Server so your
investment in infrastructure is spread across your complete management
solution. The Notification Server includes a Web-based console, which
is used to administer the Software Delivery Solution.
From the Web console, you can easily designate groups of computers to receive a software delivery job based upon hardware, software or user details. A software-deployment advertisement, which downloads and deploys software packages, can be designated as mandatory or optional. You can allow or prohibit users from running an advertisement, as well as expire programs so they can no longer be deployed after a specific date.
Altiris Software Delivery Solution has many features allowing software deployment regardless of network connection. Network bandwidth throttling helps minimize network impact, which is especially useful for remote users. CheckPoint Recovery allows you to resume a package download to a Notification Server Client computer if the download is interrupted, a blessing for remote/dial-up users.
In addition, Software Delivery Solution provides full support for locked-down Windows NT/2000/XP environments, which means software can be installed on computers even if the user logged on at installation time doesn’t have administrative rights. Altiris provides native support for Microsoft Systems Management Server packages, collections, advertisements and status reporting. Also, Altiris offers numerous reports to help you analyze and make proactive decisions about your enterprise software delivery.
Software Delivery Solution uses the package concept for distributing
software. You define packages, including the files and registry settings
required to run the software on the client computer. It allows use of
MSI files to aid in the definition of software packages, enhancing flexibility
in configuring software delivery. One warning: The documentation on packaging
software takes a little getting used to, but once understood, it’s powerful.
|Figure 2. Altiris' Software Delivery Solution
utilizes the eXpress. (Click image to view larger version.)
Altiris’ Software Delivery Solution is a robust tool for managing software delivery. It works as a standalone product, but I highly recommend looking into the complete Client Management Suite, as it adds features and functionality such as automatic grouping of software packages by inventory items (for example, updating a driver on all systems with a specific graphics card). I don’t recommend Altiris for smaller companies (fewer than 50 nodes), as the infrastructure required may be difficult to justify. However, Software Delivery Solution will work for any organization and can scale up to handle thousands of nodes. It works well in standalone mode and exceptionally well as part of a complete client-management solution.
[Software Delivery Solution version 5.6 was being released
as this article went to press. —Ed.]
2.0 Software Distribution
by Joe Crawford
As part of the Microsoft BackOffice suite, Microsoft Systems Management Server (SMS) is often the first product companies look at when considering an automated software-distribution solution. While SMS also offers inventory, remote control and application-metering features, automated software distribution allows for the greatest return on investment and remains the most common reason for implementation.
Software distribution also seems to account for a large number of the support cases I work, second only to SMS client-installation issues. I often use the analogy that SMS and similar products are like UPS or FedEx: They’re simply delivery services. If the person packaging the product for delivery makes an error, you wouldn’t blame the UPS driver for messing up your order. Yet this often happens. A great number of the software-distribution issues I see are related to either improper application packaging or incorrect delivery-option configuration in SMS.
When configuring an application for distribution, SMS offers a wide range of options—perhaps too many. It’s entirely possible to set conflicting options so your installation never runs.
However, not all SMS problems are configuration issues. Distribution-point management is still rather weak, and large packages and extremely large enterprises are an especially volatile combination. Windows XP machines, first supported in SMS 2.0 Service Pack 3, continue to reveal unexpected issues for SMS. Remote Desktop sessions, for example, can cause a software package to fail because SMS doesn’t properly detect the operating system version. Also, Windows 9x machines have been especially problematic for SMS, but these issues are fading as SMS matures and companies migrate to Windows 2000/XP.
Service Pack releases have addressed most, if not all, of the software distrubution issues. SP4 included a code change to the Advertised Programs Client Agent, and there are additional hotfixes in the post-SP4 HRP (MSKB 323206).
Also, there are problems inherent in distributing to remote machines over slow links, but SMS 2003 promises better software distribution for mobile clients.
So, while SMS 2.0 has its share of bugs and problems, it’s proven itself a viable enterprise management solution. It’s a powerful tool in the hands of a skilled administrator.
[For more information about the next release
of SMS, read Mark
Joe Crawford, MCSE, a support engineer
for HP, supports Microsoft networking technologies and
specializes in Microsoft Systems Management Server and
scripting. Reach him at joe@ smsadmin.com.
PC-Duo Enterprise 2.0
Vector Networks’ PC-Duo Enterprise is different than the other products
in this review in that it’s more than just a software-distribution tool.
PC-Duo Enterprise includes functionality such as Inventory, Software Metering
and Remote Control. The Software Distribution module is installed along
with the Inventory module, but this review will consider only the software-distribution
features. It’s important to note, however, that the two are sold together
and can’t be separated.
PC-Duo enables administrators to remotely distribute and update software packages to clients and servers. It can be configured to install software with no user interaction or it can use standard installers from most third-party software, such as MSI or InstallShield. PC-Duo uses three main components: the Package Definition Editor, the Software Distribution Wizard and Software Distribution Agent.
The Package Definition Editor allows an administrator to create distribution packages that describe where and how software packages are installed, and PC-Duo includes standard package definitions for many third-party applications. The Software Distribution Wizard guides an administrator through the steps to define how and when a software package will be distributed, as well as which clients will get the software. The Software Distribution Agent reads the Package Definition and installs the software on the client computer.
Software distribution with PC-Duo is quite straightforward. You select
a computer or computers as a target, choose the package to be installed
and schedule its execution. The standard definitions make the basic installation
of many popular software products quite easy, and the command-line strings
for silent installs are in the packages so little modification is required
before distribution. However, if you require customizations beyond what
the silent install allows, you’ll need to use another product to produce
an installer package with your required changes.
|Figure 3. Vector Networks' PC-Duo provides status
reports on distribution tasks. (Click image to view larger version.)
PC-Duo Enterprise is probably best suited for an organization that requires
a solution with more than just basic software distribution. In addition,
customization of software installations should be kept at a minimum. That
said, PC-Duo Enterprise allows you to get up and running quickly.
Prism Deploy 5.0
New Boundary’s Prism Deploy 5.0 is a classic, easy-to-use software-distribution
tool based on three main components: Client, Console and Server. The Prism
Deploy Client receives instructions from the Console and executes tasks
such as installation, removal and scripting. The Prism Deploy Server hosts
the underlying proprietary database, which stores information about Channel
Objects. Channels are used by Prism Deploy to manage objects such as Computers,
Groups and Tasks defined in the Console. The Prism Deploy Console is the
management interface used to assign tasks to computers and groups. This
simple, yet effective, architecture provides a distribution environment
that’s easy to install and set up.
The Prism Deploy Editor is a great tool for generating software-distribution packages. The Editor uses a snapshot technique to capture the changes made to a computer during installation, as well as software configuration on the target computer. Once the package is created, the Editor allows you to modify it prior to deployment. The Package Editor is easy to use and makes the creation of packages easy enough that most will require little or no modification before distribution.
The Prism Deploy Console is used to identify computers that will have tasks assigned to them. Once those computers are identified, the Prism Deploy Client is pushed out to them and installed. Computers registered in the console can be arranged into organizational or configuration groups. Organizational groups allow tasks to be assigned to computers based on categories such as department, workgroup or division. Configuration groups can be used to assign tasks to computers based on Configuration settings defined by the administrator. This flexibility allows software distribution to be managed in many ways, depending on the needs of the organization or the upgrades required. Organizational groups are generated automatically by interpreting the machines’ Active Directory name. Configuration groups can be predefined or user-defined; they’re based on criteria such as OS version, CPU maker or computer domain. The user-defined groups allow you to filter groups to deploy to only computers with a certain OS version, CPU and so on. Once the computers are grouped, the administrator assigns tasks to them. These tasks can be Prism packages, commands or script files to be executed.
Prism Deploy provides some simple reporting to show which tasks have
been gnassied to computers or groups, as well as task status. Tasks can
be executed immediately or scheduled for later execution.
The program includes a conflict checker to point out file conflicts between
|Figure 4. Prism Deploy's Console component is
the management interface for assigning tasks to computers and groups.
(Click image to view larger version.)
Overall, Prism Deploy is an effective software-deployment tool for small
to medium organizations or for a department within a large organization
looking for its own deployment tool. The Console allows management of
only one Prism Server at a time, so if you require more than one software-distribution
server, the configurations will need to be re-created at each server—or
all computers must communicate with the same server, which can cause bandwidth
problems on some WANs.
Prism Deploy is highly configurable for admins with scripting and packaging
needs, and has enough out-of-the-box power to allow the novice administrator
to hit the ground running.
2.0 Software Distribution Tips
|Here are a few quick tips to help you achieve greater success in SMS software distribution.
Clean up duplicate GUIDs—If your image machines, you
may have duplicate Globally Unique Identifiers (GUIDs)
in your environment. For help on identifying and removing
duplicates, visit www.microsoft.com/smserver/techinfo/administration/20/maintaining/newuid.asp
KISS (Keep It SILENT, Silly!)—If you allow users to
interfere with your package, they will. Use automated
scripts that run silently.
Assignments—If you don’t "assign" a package, it won’t
start automatically. Assign your packages.
Fixed schedules—When assigning a package, you have the
option of using a fixed schedule or the predefined events:
“As soon as possible,” “At logon,” and “At logoff.”
These produce inconsistent results. Use a fixed schedule
for more consistent deployments.
Administrative rights—As a rule of thumb, configure
your packages to run with administrative rights. This
helps avoid unforeseen problems with user rights, but
only on the local machine.
Software installation account—If your package ever needs
to touch the network, you’ll want to use a software-installation
account. A Domain Admin account usually works best for
this. See Microsoft Knowledge Base article 235811 for
Preferred servers—If your SMS site spans WAN links and
you have remote client access points or distribution
points, your clients can (and will) connect across multiple
WAN links to run your package. See Microsoft KB article
235873 for more information.
RunOnce Wrapper—The SMS Administration Feature Pack
includes an Elevated Rights Deployment Tool that helps
deploy packages needing local administrator rights after
a system restart (take Internet Explorer for example).
for more information.
Take it easy!—When deploying a package, start with a
small group and gradually increase the scope of the
target. The larger the initial collection of machines
you use, the greater your exposure to errors or failures.
Test, test, test!—I can’t overemphasize the need for
thorough testing. Your test lab must also accurately
reflect your production environment. If hardware is
in short supply, consider VMWare or similar tools; but
the more client configurations you can test, the more
successful your production deployment will be.
By following established best practices, such as those outlined above, many administrators can achieve distribution success rates approaching 100 percent.
Executive Software’s Sitekeeper, like many products in this review, is
part of a suite. Because the focus here is software distribution, we’ll
look at the PushInstall Module of Sitekeeper only.
Sitekeeper’s PushInstall Module allows administrators to install and uninstall applications from computers running the Sitekeeper Agent. The distribution method is quite simple: The application setup files are placed on a network share drive, and the Sitekeeper Agent starts an unattended install using administrator-defined parameters. A given application’s setup program governs the installation process. If customization or answer files can be used by the application, Sitekeeper will use them.
The management interface for Sitekeeper is easy to use. You’re provided
a list of domains, workgroups and computers. The list is structured in
the standard expand/collapse hierarchy common in Windows applications.
You can select individual or multiple computers, whole workgroups or domains,
or all registered computers from a list. Machines can be quickly added
to the list by selecting them from a browse list in the Manage Machine
section of the management interface. Once an administrator has selected
a machine, he or she can choose to either install or uninstall an application.
The task can be executed immediately or scheduled for a specific time.
Sitekeeper provides basic reports that show which computers received which
software applications and the status of the installations.
|Figure 5. Sitekeeper's Manage Machine section
makes it simple to select computers, workgroups and domains for software
distribution. (Click image to view larger version.)
Sitekeeper 2.0 lacks some of the flexibility required to do highly customized
software installations, but for an organization that simply wants to install
software without much modification, Sitekeeper is ideal. But consider
the whole suite of Sitekeeper tools, rather than just the PushInstall
Module. The integration of the other features will benefit the small-
to medium-size organization or department.
Prepped With Wise Package Studio 4.0 Professional
|The Wise Package Studio 4.0 Professional
is a tool that’s designed to allow administrators to build
customized Windows Installer files to distribute applications
to users, as well as help prevent serious errors during
deployment. Package Studio uses the snapshot method for
capturing customizations made during an installation.
What makes Package Studio different is that it uses the
“define” process, which outlines the steps for repackaging
The process-based method provides
inexperienced packagers with best practices for packaging,
testing and distributing application packages. Package
Studio provides several useful application packaging
- SetupCapture provides snapshot functionality for
capturing modifications made during application installation.
- Package Validation compares the Windows Installer
file created against Microsoft’s Application Specification
for Windows 2000.
- ConflictManager checks for conflicts between applications
packaged by Package Studio.
Package Studio also has editors for packages, Windows
Installer files and Wise Script.
Package Studio 4.0 Professional
Wise Solutions Inc.
Wise Package Studio 4.0 Professional is one of the
most well-thought-out repackagers I’ve seen. Its process-based
packaging method and easy-to-use tools will make an
excellent addition to your organization’s software-distribution
All you need to do is figure out a separate mechanism
for performing the actual deployment.
Balance Your Triangle
There’s a lot of competition in this space, and each product has its pros
and cons. Depending on your needs, the full suite products may work best,
or a straight repackaging tool may be what you need. In IT management,
we always talk about the “triangle”—people, process and technology combining
to produce a complete solution. For your software distribution solution,
take a look at your people’s skills, then look at your release-management
process. These two corners of the IT management triangle will lead you
to your choice of product. With all three corners balanced, your software-distribution
solution will work efficiently and effectively and make at least one of
life’s certainties not quite so treacherous.