Software deployment
From Wikipedia, the free encyclopedia
Software Development Process |
---|
This article is part of the Software Development Process series |
Activities and Steps |
Requirements | Architecture | Implementation | Testing | Deployment |
Models |
Agile | Cleanroom | Iterative | RAD | RUP | Spiral | Waterfall | XP |
Supporting Disciplines |
Configuration Management | Documentation | Project Management |
Software deployment is all of the activities that make a software system available for use.
The general deployment process consists of several interrelated activities with possible transitions between them. These activities can occur at the producer site or at the consumer site or both. Because every software is unique, the precise processes or procedures within each activity can hardly be defined. Therefore, "deployment" should be interpreted as a general process that has to be customized according to specific requirements or characteristics. A brief description of each activity will be presented later.
Contents |
[edit] Deployment activities
[edit] 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.
[edit] 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 uses.
[edit] 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 is typically 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.
[edit] Deactivate
[edit] 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.
[edit] 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’ files and dependencies. This is not to be confused with the term "deinstall" which is not actually a word.
[edit] 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.
[edit] External links
- Standartization efforts
- Articles
- Carzaniga A., Fuggetta A., Hall R. S., Van Der Hoek A., Heimbigner D., Wolf A. L. — A Characterization Framework for Software Deployment Technologies — Technical Report CU-CS-857-98, Dept. of Computer Science, University of Colorado, April 1998. http://serl.cs.colorado.edu/~carzanig/papers/CU-CS-857-98.pdf