486:
application, including auto-filling of the user name and password for sites that require a login. On Linux, Android and iOS this process is even easier because a standardized process for version tracking (for software packages installed in the officially supported way) is built into the operating system, so no separate login, download and execute steps are required – so the process can be configured to be fully automated. Some third-party software also supports automated version tracking and upgrading for certain
Windows software packages.
177:
1287:
38:
1277:
270:. This meant that software deployment could be left to the customer. However, it was also increasingly recognized over time that configuration of the software by the customer was important and that this should ideally have a user-friendly interface (rather than, for example, requiring the customer to edit registry entries on Windows).
452:, the old version of a software application is typically also uninstalled as an automatic part of the process. (This is because Linux package managers do not typically support installing multiple versions of a software application at the same time unless the software package has been specifically designed to
425:
Deactivation is the inverse of activation and refers to shutting down any already-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. The practice of removing
495:
The complexity and variability of software products have fostered the emergence of specialized roles for coordinating and engineering the deployment process. For desktop systems, end-users frequently also become the "software deployers" when they install a software package on their machine. The
485:
Version tracking systems help the user find and install updates to software systems. For example: The
Software Catalog stores the 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
286:
meant that software could be deployed to a large number of customers in minutes, over the internet. This also meant that typically, deployment schedules were now determined by the software supplier, not by the customers. Such flexibility led to the rise of
478:
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
500:
involves many more roles, and those roles typically change as the application progresses from the test (pre-production) to production environments. Typical roles involved in software deployments for enterprise applications may include:
273:
In pre-internet software deployments, deployments (and their closely related cousin, new software releases) were of necessity expensive, infrequent, bulky affairs. It is arguable therefore that the spread of the internet made end-to-end
447:
The update process replaces an earlier version of all or part of a software system with a newer release. It commonly consists of deactivation followed by installation. On some systems, such as on Linux when using the system's
664:
Configuration management systems are designed to make controlling large numbers of servers easy for administrators and operations teams. They allow you to control many different systems in an automated way from one central
356:
questions about its intended use, or directly asking them how they would like it to be configured – and/or making all the required subsystems ready to use. Activation is the activity of starting up the
436:
Uninstallation is the inverse of installation. It is the removal of a system that is no longer required. It may also involve some reconfiguration of other software systems to remove the uninstalled system's
376:, the main copy of the software to be used by users - "production" - might be installed on a production server in a production environment. Other versions of the deployed software may be installed in a
395:
system, differently-configured versions of the system might even exist simultaneously in the production environment for different internal or external customers (this is known as a
641:
399:), or even be gradually rolled out in parallel to different groups of customers, with the possibility of canceling one or more of the parallel deployments. For example,
693:
352:
for executing the software (manually or automatically). For complex systems it may involve configuration of the system – possibly by asking the
381:
326:
process and is sometimes classified as part of the development process rather than deployment process. It includes all the operations to prepare a system for
411:
changes. A "hidden live" group can also be created within a production environment, consisting of servers that are not yet connected to the production
144:
The general deployment process consists of several interrelated activities with possible transitions between them. These activities can occur on the
763:
334:
required for the system to operate with tolerable performance and planning and/or documenting subsequent activities of the deployment process.
651:
474:, into the operating system itself). Automation of these update processes ranges from fully automatic to user-initiated and controlled.
710:
Carzaniga, Antonio; Fuggetta, Alfonso; Hall, Richard S.; Van Der Hoek, André; Heimbigner, Dennis; Wolf, Alexander L. (April 1998).
102:
366:
74:
330:
and transfer to the computer system(s) on which it will be run in production. Therefore, it sometimes involves determining the
1280:
1146:
1075:
969:
872:
81:
55:
462:
Mechanisms for installing updates are built into some software systems (or, in the case of some operating systems such as
756:
949:
816:
801:
121:
88:
17:
711:
568:
341:
70:
1316:
1311:
1105:
1032:
1022:
867:
796:
722:
349:
59:
1290:
1156:
1085:
1027:
749:
1095:
954:
821:
573:
509:
323:
219:
needed to be installed on an existing computer, this might require an expensive, time-consuming visit by a
734:
188:
1017:
1012:
826:
438:
331:
1212:
1060:
1055:
1007:
984:
964:
467:
275:
1321:
1217:
1207:
416:
299:
1120:
919:
902:
811:
712:"A Characterization Framework for Software Deployment Technologies – Technical Report CU-CS-857-98"
593:
475:
1070:
914:
251:
95:
48:
1125:
882:
877:
608:
542:
427:
160:
within each activity can hardly be defined. Therefore, "deployment" should be interpreted as a
694:
OMG Specification for
Deployment and Configuration of Component-based Distributed Applications
944:
897:
392:
361:
component of software for the first time (not to be confused with the common use of the term
283:
243:
1242:
1080:
939:
929:
841:
786:
772:
537:
8:
1262:
1247:
1115:
979:
887:
515:
497:
388:
345:
288:
228:
153:
1252:
892:
688:
603:
578:
521:
373:
208:
145:
1166:
924:
627:
583:
220:
216:
1237:
1181:
959:
851:
846:
588:
377:
319:
149:
215:), the software was often bundled together with the hardware by manufacturers. If
1257:
1110:
1090:
974:
836:
449:
292:
279:
267:
164:
that has to be customized according to specific requirements or characteristics.
138:
1161:
1065:
806:
408:
303:
239:
1305:
1141:
909:
412:
259:
247:
1176:
1171:
1100:
646:
426:
infrequently used or obsolete systems from service is often referred to as
212:
718:
404:
255:
235:
683:
176:
1186:
1151:
741:
453:
358:
224:
699:
157:
37:
934:
353:
327:
263:
152:
side or both. Because every software system is unique, the precise
709:
400:
630:
Software engineering: a practitioner's approach (eighth edition)
791:
598:
548:
527:
991:
463:
1202:
554:
207:
When computers were extremely large, expensive, and bulky (
471:
27:
Activities that make a software system available for use
684:
642:"How to Install and Configure Ansible on Ubuntu 18.04"
365:
concerning a software license, which is a function of
62:. Unsourced material may be challenged and removed.
1303:
298:Other options for software deployment include
291:as a viable option, especially for less risky
757:
231:today, this can still sometimes be the case.
639:
227:. For complex, on-premises installation of
764:
750:
122:Learn how and when to remove this message
955:Software development process/methodology
771:
403:is known to use the latter approach for
322:activity follows from the completed the
309:
689:OASIS Solution Deployment Descriptor TC
14:
1304:
700:JSR 88: Java EE Application Deployment
745:
640:Rees-Carter, Stephen (13 July 2018).
344:involves establishing some form of a
137:is all of the activities that make a
1276:
970:Software verification and validation
873:Component-based software engineering
171:
60:adding citations to reliable sources
31:
490:
24:
721:: Department of Computer Science,
384:and disaster recovery environment.
372:In larger software deployments on
25:
1333:
950:Software configuration management
817:Search-based software engineering
802:Experimental software engineering
674:
553:operations project managers: see
514:build-and-release engineers: see
234:However, with the development of
1286:
1285:
1275:
735:Visual Studio Release Management
569:Application lifecycle management
505:in pre-production environments:
278:possible. Indeed, the advent of
258:, then (in the 1990s and later)
175:
36:
430:or application decommissioning.
242:in the 1980s came new forms of
47:needs additional citations for
797:Empirical software engineering
723:University of Colorado Boulder
633:
621:
13:
1:
614:
526:deployment coordinators: see
822:Site reliability engineering
574:Product lifecycle management
534:in production environments:
510:Software development process
508:application developers: see
238:software for the new age of
7:
827:Social software engineering
562:
337:Installation and activation
10:
1338:
965:Software quality assurance
547:release coordinators: see
276:agile software development
167:
1271:
1230:
1195:
1134:
1048:
1041:
1000:
860:
779:
397:multi-tenant architecture
367:Digital Rights Management
246: – first
1121:Model-driven engineering
920:Functional specification
903:Software incompatibility
812:Requirements engineering
680:Standardization efforts
594:Definitive Media Library
476:Norton Internet Security
915:Enterprise architecture
382:development environment
1126:Round-trip engineering
883:Backward compatibility
878:Software compatibility
609:Deployment environment
543:database administrator
520:release managers: see
428:application retirement
415:, for the purposes of
348:, shortcut, script or
1317:System administration
1312:Software distribution
945:Software architecture
898:Forward compatibility
417:blue–green deployment
393:software as a service
310:Deployment activities
300:blue–green deployment
284:software as a service
244:software distribution
71:"Software deployment"
1243:Computer engineering
940:Software archaeology
930:Programming paradigm
842:Software maintenance
787:Computer programming
773:Software engineering
538:system administrator
407:of new features and
391:environments and/or
340:For simple systems,
56:improve this article
1263:Systems engineering
1248:Information science
1028:Service orientation
980:Structured analysis
888:Compatibility layer
832:Software deployment
516:Release engineering
498:enterprise software
389:continuous delivery
289:continuous delivery
229:enterprise software
141:available for use.
135:Software deployment
1253:Project management
1018:Object orientation
985:Essential analysis
893:Compatibility mode
604:Release management
579:Systems management
522:Release management
187:. You can help by
1299:
1298:
1226:
1225:
1167:Information model
1071:Incremental model
925:Modeling language
628:Roger S. Pressman
584:System deployment
456:this limitation.)
252:Compact Cassettes
221:systems architect
217:business software
205:
204:
132:
131:
124:
106:
18:Software delivery
16:(Redirected from
1329:
1322:Software release
1289:
1288:
1279:
1278:
1238:Computer science
1046:
1045:
960:Software quality
852:Systems analysis
847:Software testing
766:
759:
752:
743:
742:
726:
716:
668:
667:
661:
659:
650:. Archived from
637:
631:
625:
589:Software release
491:Deployment roles
482:Version tracking
378:test environment
293:web applications
200:
197:
179:
172:
127:
120:
116:
113:
107:
105:
64:
40:
32:
21:
1337:
1336:
1332:
1331:
1330:
1328:
1327:
1326:
1302:
1301:
1300:
1295:
1267:
1258:Risk management
1222:
1191:
1130:
1111:Waterfall model
1081:Prototype model
1076:Iterative model
1037:
1013:Aspect-oriented
996:
975:Software system
856:
837:Software design
775:
770:
714:
677:
672:
671:
657:
655:
638:
634:
626:
622:
617:
565:
493:
459:Built-in update
450:package manager
312:
280:cloud computing
201:
195:
192:
185:needs expansion
170:
162:general process
148:side or on the
139:software system
128:
117:
111:
108:
65:
63:
53:
41:
28:
23:
22:
15:
12:
11:
5:
1335:
1325:
1324:
1319:
1314:
1297:
1296:
1294:
1293:
1283:
1272:
1269:
1268:
1266:
1265:
1260:
1255:
1250:
1245:
1240:
1234:
1232:
1231:Related fields
1228:
1227:
1224:
1223:
1221:
1220:
1215:
1210:
1205:
1199:
1197:
1193:
1192:
1190:
1189:
1184:
1179:
1174:
1169:
1164:
1162:Function model
1159:
1154:
1149:
1144:
1138:
1136:
1132:
1131:
1129:
1128:
1123:
1118:
1113:
1108:
1103:
1098:
1093:
1088:
1083:
1078:
1073:
1068:
1066:Executable UML
1063:
1058:
1052:
1050:
1043:
1039:
1038:
1036:
1035:
1030:
1025:
1020:
1015:
1010:
1004:
1002:
998:
997:
995:
994:
989:
988:
987:
977:
972:
967:
962:
957:
952:
947:
942:
937:
932:
927:
922:
917:
912:
907:
906:
905:
900:
895:
890:
885:
875:
870:
864:
862:
858:
857:
855:
854:
849:
844:
839:
834:
829:
824:
819:
814:
809:
807:Formal methods
804:
799:
794:
789:
783:
781:
777:
776:
769:
768:
761:
754:
746:
740:
739:
738:
737:
729:
728:
727:
704:
703:
702:
697:
691:
686:
676:
675:External links
673:
670:
669:
654:on 9 June 2019
632:
619:
618:
616:
613:
612:
611:
606:
601:
596:
591:
586:
581:
576:
571:
564:
561:
560:
559:
558:
557:
551:
545:
540:
532:
531:
530:
524:
518:
512:
496:deployment of
492:
489:
488:
487:
483:
480:
460:
457:
445:
442:
434:
433:Uninstallation
431:
423:
420:
409:user interface
385:
370:
338:
335:
316:
311:
308:
304:canary release
240:microcomputers
203:
202:
182:
180:
169:
166:
130:
129:
44:
42:
35:
26:
9:
6:
4:
3:
2:
1334:
1323:
1320:
1318:
1315:
1313:
1310:
1309:
1307:
1292:
1284:
1282:
1274:
1273:
1270:
1264:
1261:
1259:
1256:
1254:
1251:
1249:
1246:
1244:
1241:
1239:
1236:
1235:
1233:
1229:
1219:
1216:
1214:
1211:
1209:
1206:
1204:
1201:
1200:
1198:
1194:
1188:
1185:
1183:
1182:Systems model
1180:
1178:
1175:
1173:
1170:
1168:
1165:
1163:
1160:
1158:
1155:
1153:
1150:
1148:
1145:
1143:
1140:
1139:
1137:
1133:
1127:
1124:
1122:
1119:
1117:
1114:
1112:
1109:
1107:
1104:
1102:
1099:
1097:
1094:
1092:
1089:
1087:
1084:
1082:
1079:
1077:
1074:
1072:
1069:
1067:
1064:
1062:
1059:
1057:
1054:
1053:
1051:
1049:Developmental
1047:
1044:
1040:
1034:
1031:
1029:
1026:
1024:
1021:
1019:
1016:
1014:
1011:
1009:
1006:
1005:
1003:
999:
993:
990:
986:
983:
982:
981:
978:
976:
973:
971:
968:
966:
963:
961:
958:
956:
953:
951:
948:
946:
943:
941:
938:
936:
933:
931:
928:
926:
923:
921:
918:
916:
913:
911:
910:Data modeling
908:
904:
901:
899:
896:
894:
891:
889:
886:
884:
881:
880:
879:
876:
874:
871:
869:
866:
865:
863:
859:
853:
850:
848:
845:
843:
840:
838:
835:
833:
830:
828:
825:
823:
820:
818:
815:
813:
810:
808:
805:
803:
800:
798:
795:
793:
790:
788:
785:
784:
782:
778:
774:
767:
762:
760:
755:
753:
748:
747:
744:
736:
733:
732:
730:
724:
720:
713:
708:
707:
705:
701:
698:
696:(OMG D&C)
695:
692:
690:
687:
685:
682:
681:
679:
678:
666:
653:
649:
648:
643:
636:
629:
624:
620:
610:
607:
605:
602:
600:
597:
595:
592:
590:
587:
585:
582:
580:
577:
575:
572:
570:
567:
566:
556:
552:
550:
546:
544:
541:
539:
536:
535:
533:
529:
525:
523:
519:
517:
513:
511:
507:
506:
504:
503:
502:
499:
484:
481:
477:
473:
469:
465:
461:
458:
455:
451:
446:
443:
440:
435:
432:
429:
424:
421:
418:
414:
413:load balancer
410:
406:
402:
398:
394:
390:
386:
383:
379:
375:
371:
368:
364:
360:
355:
351:
347:
343:
339:
336:
333:
329:
325:
321:
317:
314:
313:
307:
305:
301:
296:
294:
290:
285:
281:
277:
271:
269:
265:
261:
260:optical media
257:
253:
249:
245:
241:
237:
232:
230:
226:
222:
218:
214:
213:minicomputers
210:
199:
190:
186:
183:This section
181:
178:
174:
173:
165:
163:
159:
155:
151:
147:
142:
140:
136:
126:
123:
115:
104:
101:
97:
94:
90:
87:
83:
80:
76:
73: –
72:
68:
67:Find sources:
61:
57:
51:
50:
45:This article
43:
39:
34:
33:
30:
19:
1177:Object model
1172:Metamodeling
1101:Spiral model
1001:Orientations
831:
663:
656:. Retrieved
652:the original
647:DigitalOcean
645:
635:
623:
494:
439:dependencies
422:Deactivation
396:
362:
342:installation
306:deployment.
297:
272:
268:flash drives
256:floppy disks
233:
206:
196:January 2017
193:
189:adding to it
184:
161:
143:
134:
133:
118:
112:October 2008
109:
99:
92:
85:
78:
66:
54:Please help
49:verification
46:
29:
868:Abstraction
719:Boulder, CO
454:work around
405:A/B testing
387:In complex
324:development
236:mass-market
1306:Categories
1187:View model
1152:Data model
731:Resources
615:References
479:available.
363:activation
359:executable
248:cartridges
225:consultant
209:mainframes
158:procedures
82:newspapers
1196:Languages
706:Articles
665:location.
369:systems.)
332:resources
154:processes
1291:Category
1157:ER model
1023:Ontology
935:Software
861:Concepts
563:See also
354:end-user
328:assembly
264:internet
150:consumer
146:producer
1281:Commons
1106:V-model
468:Android
401:Twitter
374:servers
350:service
346:command
320:release
315:Release
254:, then
250:, then
168:History
96:scholar
1042:Models
792:DevOps
780:Fields
658:8 June
599:Readme
549:DevOps
528:DevOps
444:Update
262:, the
98:
91:
84:
77:
69:
1218:SysML
1142:SPICE
1135:Other
1096:Scrum
1056:Agile
1008:Agile
992:CI/CD
715:(PDF)
464:Linux
223:or a
103:JSTOR
89:books
1203:IDEF
1147:CMMI
1033:SDLC
660:2019
555:ITIL
470:and
318:The
302:and
282:and
266:and
211:and
75:news
1213:USL
1208:UML
1086:RAD
1061:EUP
472:iOS
191:.
156:or
58:by
1308::
1116:XP
1091:UP
717:.
662:.
644:.
466:,
380:,
295:.
765:e
758:t
751:v
725:.
441:.
419:.
198:)
194:(
125:)
119:(
114:)
110:(
100:·
93:·
86:·
79:·
52:.
20:)
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.