web-dev-qa-db-fra.com

Quelle est l'origine des "environnements de déploiement" (dev / test / staging / prod)?

Lorsque vous lisez sur le déploiement/la libération logicielle, je vois de nombreuses personnes se référant à une idée que Wikipedia appelle " environnements de déploiement ".

Les environnements de déploiement de développement, de test, d'acceptation et de production sont désignés de manière remarquablement systématiquement, mais je ne peux jamais trouver de références qui pointent à une origine.

J'ai essayé de regarder à la fois SDLC et Itil. Au moins selon Wikipedia, le [~ # ~ # ~ # ~] prescrit une liste similaire d'environnements de développement distincts et [~ # ~ # ~ # ~ # ~] concept d'environnement distinct et d'un processus de gestion de la libération pour déplacer des logiciels entre eux.

Je suis curieux de savoir d'où/que ce concept de développement, de test, d'acceptation et de production est originaire et pourquoi ces environnements particuliers (les deux "pourquoi 4?" Et "pourquoi ceux Quatre) et l'un quelconque du raisonnement d'origine derrière elle. Spécifiquement, je suis après référence aux documents et sources d'origine.

7
mikewilliamson

Les environnements de développement, de test, d'acceptation et de production ont évolué de nécessité, de pragmatisme et de commodité. En d'autres termes, ils existent parce qu'ils ont un sens.

L'origine de ces environnements est le cycle de vie du développement logiciel. Les trois environnements correspondent approximativement aux phases de développement, d'intégration et de test, ainsi que les phases d'exploitation et de maintenance du SDLC.

Pourquoi ces environnements particuliers? Fournir de l'isolement entre les phases SDLC.

  • L'environnement de développement fournit un bac à sable avec lequel les développeurs de logiciels peuvent essayer leurs idées de sécurité.

  • L'environnement de test fournit une zone où la Q & A (c'est-à-dire tenter de casser le logiciel) peut être effectuée sans affecter les environnements de développement ni de production.

  • L'environnement d'acceptation duplique exactement l'environnement de production, mais permet aux parties prenantes d'essayer le logiciel sans se soucier de briser la production réelle.

  • La production est isolée des autres environnements jusqu'à ce que le logiciel ait passé toutes les autres étapes et est prêt à se déployer.

6
Robert Harvey