Knowledge

Software deployment

Source đź“ť

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:
Solution Installation Schema Submission request to W3C
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:)

Index

Software delivery

verification
improve this article
adding citations to reliable sources
"Software deployment"
news
newspapers
books
scholar
JSTOR
Learn how and when to remove this message
software system
producer
consumer
processes
procedures

adding to it
mainframes
minicomputers
business software
systems architect
consultant
enterprise software
mass-market
microcomputers
software distribution
cartridges
Compact Cassettes

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑