Home  Help
caption


Notice: A session had already been started - ignoring session_start() in D:\hshome\syzosys\syzosys.com\home_left.php on line 2
x

Library

Home :: Library :: Programming :: Deployment

Deployment

The process of managing and automating the packaging, testing, distribution and installation of software files and/or applications to systems across an enterprise network.

Why is SD important?

An effective SD process protects your organization from the risks associated with planned software changes by automating the process to improve the efficiency, reliability and security of software deployments. A comprehensive SD solution provides:

  • Reliability
  • Reproducibility
  • Referential Integrity
  • Security

Reliability

  • Allows for greater control of the distribution process
  • Provides confidence that all files selected for the release will be distributed

Reproducibility

  • Ensures that a release can be reproduced
  • Provides rollback functionality to re-install the previous release

Referential Integrity

  • Tracks and archives the contents of each release distributed
  • Maintains an audit trail of release distributions for each machine

Security

  • Ensures that only authorized personnel have access to release files
  • Ensures only authorized releases are distributed
  • Maintains releases in a secure catalogue
  • Distributes releases in a secure manner

Indications that you need SD

  • Frequent release distributions
  • Inconsistent distribution results
  • Distribution errors
  • Inability to rollback a release on a target system

What does an effective SD solution address?

  • 1. Release Packaging
  • 2. Release Management
  • 3. Release Testing
  • 4. Release Distribution and Installation
  • 5. Audit Trail Completion

Deployment activities

Release

The release activity follows from the completed development process. It includes all the operations to prepare a system for assembly and transfer to the customer site. Therefore, it must determine the resources required to operate at the customer site and collect information for carrying out subsequent activities of deployment process.

Install

The Install is the initial insertion of software into a customer site. Currently, this activity is best supported by specialized tools. The two sub-activities are transfer and configure. The former is to move the product from the producer site to the customer site, while the latter one refers to all the configuration operations that make the system ready for customer users.

Activate

Activation is the activity of starting up the executable component of software. For simple system, it involves establishing some form of command for execution. For complex systems, it should make all the supporting systems ready to use.

In larger software deployments, the working copy of the software might be installed on a production server in a production environment. Other versions of the deployed software may be installed in a test environment, development environment and disaster recovery environment.

Deactivate

Deactivation is the inverse of activation, and refers to shutting down any executing components of a system. Deactivation is often required to perform other deployment activities, e.g., a software system may need to be deactivated before an update can be performed.

Adapt

The adaptation activity is also a process to modify a software system that has been previously installed. It differs from updating in that adaptations are initiated by local events such as changing the environment of customer site, while updating is mostly started from remote software producer.

Update

The update process replaces an earlier version of all or part of a software system with a newer release.

Built-In

Mechanisms for installing updates are built into some software systems. Automation of these update processes ranges from fully automatic to user initiated and controlled. Norton Internet Security is an example of a system with a semi-automatic method for retrieving and installing updates to both the antivirus definitions and other components of the system. Other software products provide query mechanisms for determining when updates are available.

Version tracking

Version tracking systems help the user find and install updates to software systems installed on PCs and local networks.

Web based version tracking systems notify the user when updates are available for software systems installed on a local system. For example: VersionTracker Pro checks software versions on a user's computer and then queries its database to see if any updates are available.

Local version tracking system notifies the user when updates are available for software systems installed on a local system. For example: Software Catalog stores version and other information for each software package installed on a local system. One click of a button launches a browser window to the upgrade web page for the application, including auto-filling of the user name and password for sites that require a login.

Browser based version tracking systems notify the user when updates are available for software packages installed on a local system. For example: wfx-Versions is a Firefox extension which helps the user find the current version number of any program listed on the web.

Uninstall

Uninstallation is the inverse of installation. It is a remove of a system that is no longer required. It also involves some reconfiguration of other software systems in order to remove the uninstalled system’s files and dependencies. This is not to be confused with the term "deinstall" which is not actually a word.

Retire

Ultimately, a software system is marked as obsolete and support by the producers is withdrawn. It is the end of the life cycle of a software product.