Software deployment

Software Distribution ( engl. deployment ) are called processes to install software on users' computers or servers in enterprises.

Many users do not have the necessary skills or permissions to install software applications themselves. Therefore, it is common in organizations that qualified personnel perform this task for the user. The scale of activity in larger organizations leads for reasons of economy to automation.

The software distribution is a critical process, as carried with it the operating system fixes, as well as the installation of safety-related applications such as virus scanners, browser and email program. Furthermore, pull error in the software distribution failures of a large number of workstations by itself.

  • 7.1 alternatives

The aim of the software distribution

The aim of a software distribution is the initial auto installation, configuration and maintenance of a large number of computers with little effort. Furthermore, a low-interference and safe operation must be achieved. Often one also aims at that the PCs are as consistent as possible with software. As a side effect you often get information about the number of installations licensed software products.

Roles of the software distribution

  • Receives from the Administrator information about the status and configuration of the system,
  • Receives from the software manufacturer information on product support and forwards (depending on the existing contract for software maintenance or service level agreement ) serious disturbances after qualifying for the solution to the manufacturers,
  • Receives from the product managers information about the configuration of the deployed software products and release planning,
  • Receives from the package information on the technical features of the packages,
  • Receives from the network and server operators about disturbances.

Especially for smaller companies and organizations more roles can be filled by one person.

Components of the software distribution

Installation phases

Installing the operating system

Before applications can be installed, first, the operating system must be installed. For this, either a CD / DVD or use a protocol for network booting of computers ( BOOTP, PXE). In the first case, the computer will boot from the CD / DVD of all the necessary files are stored. The program to install the operating system (also on disk ) is automatically started. This can often be preconfigured so that no input by the user are no longer required, see Unattended Installation

In the network installation the necessary programs the computer's BIOS loads first from the network (usually via the TFTP protocol ), and then executes it. In general, this program then loads the operating system installation program from a server computer on the network.

Procedure to install the operating system

When installing the operating system, two different methods are used:

  • Installer with special configuration
  • Imaging method

In the first case, the program is called, the user used to install the operating system. All necessary inputs receives the program but not by the user but from a configuration file (unattended, so unattended installation ). The operating system installation program then performs similar to manual installation of the operating system all the necessary steps, such as the recognition of the existing hardware. In the second case, the operating system is installed once on a computer, then it is a memory map (english image) created. This is then stored on the CD / DVD or the network, and then simply copied sector by sector on the hard disk.

The first method has the advantage that it is largely independent of the hardware used. Necessary additional drivers can be provided to the operating system installer in a folder. Disadvantages are the high duration of the execution, and that all applications must be installed separately. The second method is extremely fast and allows for the integration of additional standard applications in the actual operating system image. However, a disadvantage from the dependence of the installation of the hardware being used. It follows that for each hardware type a unique image created, maintained and distributed. Ultimately, a better performance is achieved at the cost of the administrative burden and storage requirements by this method.

For Windows Vista and Windows 7, Microsoft has developed even a file-based imaging methods. On a Windows Vista computer and the applications you want to install. Then an image is generated with the help of sysprep from this program. Certain parts of the OS ( Security IDs and driver files ) when you create the images be removed. On the target system Windows PE ( Preinstallation Environment ) is booted, a minimal version of Windows Vista, which can be started without installation. The image is then installed on the target system with the Windows Vista Setup program. This is technically a file copy. The setup program then performs the standard hardware detection installs the necessary drivers. This method is significantly faster than the previous setup, but significantly slower than the real ones, sector-based method.

Installation of applications

Usually packaged in packages - - application programs are installed after the operating system is completely installed, which can.

Can be used for Microsoft Windows will the MSI technology (Windows Installer ) are used in the setup program is already integrated into the operating system. For installers that are not present as MSI, an own packaging or a native installation method offers, in which the original setup is used. Even in programs that may not be umpaketiert for reasons of support, you can alternatively use native installation methods ( AutoIt, WinRobots ).

On Linux, the RPM format is widely used. The package will only receive the necessary application files and control file that tells the operating system what actions to perform the installation.

The finished packages can either be scheduled by the competent central roles for the installation ( push mechanism ) or by the user are selected to be installed, for example in a so-called " software Kiosk" ( pull mechanism ). Especially in the pull- variant license management is of great importance.

Configuring the operating system and applications

In general, the users are overwhelmed with the implementation of the configuration of applications. Incorrect configuration of applications is a common cause of problems. In addition, security risks arise when critical components such as the virus scanners are configured incorrectly or even disabled.

Therefore, the applications are configured after installation by the software distribution. Here, the parameters of the application, for example, references to other computers, software keys and directory paths set.

It may be a general parameter for all users who have the same value, or parameters which are set to be different for different groups of users.

It is also necessary to distinguish whether the settings may be changed by the user, or if the software distribution is to make sure that the settings have to be changed or that changes are automatically undone. Systems for software distribution to manage these parameters therefore centrally and apply it automatically to the client computer on.

In MS Windows this can be achieved through the Group Policy, which retrieves the client PC from the domain controller of an NT domain or Active Directory.


After installing and configuring the client computer reports back at the Softwareverteilsystem and reports on the success or failure of the actions undertaken. The administrator obtains the necessary information to eliminate interference, in particular the post-installation failed part installations.

Finally, the data to other systems such as accounting, license management and asset management system to be forwarded.

Installation techniques

An overview of the topic of installing applications can be found in Installation ( computer).

Configuration management

A user needs for his work nowadays a large number of programs. For each user or PC thus, a list of the packages must be stored to be installed by the software distribution. Furthermore, the parameters must be entered to configure the applications. It is very helpful to group the user or computer. The administrator then has considerably less effort than if he had to configure for each computer or user individually.

The Administrator shall at all times can quickly determine the current setpoint and actual configuration of a computer to ensure that it is working. Since these are often a large number of computers, powerful query tools are required. These also provide statistical information, such as a list on how many computers a particular software is installed.

Quality assurance measures such as the documentation of the configuration, training of administrators, the four- eyes principle, operational monitoring and statistical analyzes support the reliability of the software distribution system.

Software distribution systems

Examples of software distribution systems are:

  • Altiris Server / Client Management Suite, Manufacturer: Symantec
  • DX-Union, Manufacturer: Materna
  • FAI open source software for installing and configuring Linux systems
  • Garibaldi (software), Manufacturer: INOSOFT AG
  • HP OpenView, Hewlett- Packard
  • M23 Open Source Software Distribution for Linux
  • Novell ZENworks - Zero Effort Networks, Manufacturer: Novell
  • OCS Inventory NG
  • Open PC Server Integration ( opsi ) open source software distribution and operating system installation, inventory ( Windows clients ), the main developer: uib GmbH
  • RPM using YUM repositories and server: Open Source Software Distribution for Linux
  • System Center Configuration Manager ( SCCM) for all versions of Windows including CE and Tablet - Former System Management Server ( SMS) Manufacturer: Microsoft
  • Tivoli Provisioning Manager and / or Tivoli Intelligent Orchestrator, Manufacturer: IBM
  • WarpIn Software Distribution for OS / 2 and eComStation

Examples of software distribution systems for mobile devices ( Mobile Device Management ):

  • Intellisync Mobile Suite, Manufacturer: Nokia
  • MDS Suite, Manufacturer: BlackBerry
  • Mobile Device Manager 2008 Manufacturer: Microsoft
  • Ubi- Suite, Manufacturer: ubitexx ( Adapted from Research in Motion, BlackBerry today )


Java Web Start allows the download of Java applications and their automatic installation on the client machine. Each time you call such a Java application Java Web Start checks whether the server there is a newer version and install it if necessary. In contrast to the other systems mentioned but it is not controlled from a central location, but initiated locally from the client. Therefore, it is not a software distribution system in the strict sense.