Für kleinere Unternehmen (es ist nicht klar, wie groß Ihre Unternehmen sind) sind drei Umgebungen (Entwickler, Bühne, Produktion) üblich. Größere Unternehmen haben häufig eine QS-Umgebung zwischen Entwickler und Phase.
Diese setzen sich normalerweise wie folgt zusammen:
dev : Arbeitscode kopieren. Von Entwicklern vorgenommene Änderungen werden hier bereitgestellt, damit die Integration und die Funktionen getestet werden können. Diese Umgebung wird schnell aktualisiert und enthält die neueste Version der Anwendung.
qa : (Nicht alle Unternehmen werden dies haben). Umfeld zur Qualitätssicherung; Dadurch wird eine seltener geänderte Version der Anwendung bereitgestellt, mit der Tester Prüfungen durchführen können. Auf diese Weise kann über eine gemeinsame Revision berichtet werden, sodass Entwickler wissen, ob bestimmte Probleme, die von Testern festgestellt wurden, bereits im Entwicklungscode behoben wurden.
Staging : Dies ist der Release-Kandidat, und diese Umgebung ist normalerweise ein Spiegel der Produktionsumgebung. Der Staging-Bereich enthält die "nächste" Version der Anwendung und wird für abschließende Stresstests und Client- / Manager-Genehmigungen vor der Inbetriebnahme verwendet.
Produktion : Dies ist die aktuell veröffentlichte Version der Anwendung, auf die der Client / Endbenutzer zugreifen kann. Diese Version ändert sich vorzugsweise nicht, außer bei geplanten Veröffentlichungen.
Ich bin ein bisschen überrascht, dass eine Testumgebung nicht vorhanden ist, da sie als Speicherort für den Code dient, bevor er zur Staging-Version befördert wird.
Um die Frage zu beantworten:
Eine Bühnenumgebung sollte die Produktionsumgebung so genau wie möglich widerspiegeln.
Es wird zur Überprüfung von Bereitstellungsprozeduren verwendet - um sicherzustellen, dass Code ohne Probleme bereitgestellt werden kann, wenn er produktionsbereit ist.
Das heißt, Code wird bereitgestellt - dies wird umfassend getestet und zurückgeführt, um sicherzustellen, dass die Bereitstellung wie geplant verlief (und um etwaige Probleme zu beheben, falls dies nicht der Fall ist).
quelle
Die Bühnenumgebung ist eine Pre-Prod-Umgebung, die die Produktion widerspiegelt. Häufig sind einige Produktionsdaten vorhanden, sodass eine Testgruppe, die sich aus tatsächlichen Benutzern und QS-Testern zusammensetzt, bestätigen kann, dass die vorab veröffentlichten Codebasen / -daten in einer prod-ähnlichen Umgebung bereitgestellt werden und ordnungsgemäß funktionieren, in der Regel mithilfe von Skriptanwendungen und Regression Tests.
Wie @Oded bemerkt, ist es normalerweise üblich, eine QA-Umgebung zu haben, mit der QA-Tester den Code testen.
quelle
Meine Erfahrung mit der US-Regierung / dem US-Verteidigungsministerium ist folgende:
quelle
Als Webentwickler sind in der Praxis hauptsächlich drei Umgebungen zu berücksichtigen :
Produktion : Die Umgebung, die für das Hosten der endgültigen Release-Version eines Produkts für Endbenutzer konfiguriert ist. Es ist auf Sicherheit und Leistung optimiert. Es wird auf einem Live-Server gehostet. Es bedarf einer aufmerksamen und dringenden Unterstützung. Es ist datenkritisch. Daher werden seine Daten regelmäßig gesichert. Es beinhaltet auch Risikomanagement und Disaster Recovery. Die Produktionsumgebung ist so konfiguriert, dass Endbenutzern benutzerfreundliche Fehler angezeigt werden.
Staging : Die Umgebung, die so konfiguriert ist, dass sie den Release Candidate der Anwendung hostet, nachdem ein Code-Freeze deklariert wurde. Es zielt darauf ab, dass der Projektmanager / Eigentümer zusammen mit dem Entwicklungsteam den Umfang des Release-Kandidaten festlegt. Die Qualitätssicherung und auch das Entwicklungsteam müssen vor der Freigabe für die Produktion die endgültigen Korrekturen und die endgültige Ausstattung vornehmen. Am besten ahmt man die Produktionsumgebung nach, indem man die neuesten Daten aus einer Live-Datenbank verwendet, die aus der Produktionsumgebung kopiert wurde. Normalerweise ist die Staging-Umgebung nur für das interne Team und die Stakeholder zugänglich. Sie wird daher entweder auf einem öffentlichen Server gesichert oder in einer Intranet-Umgebung veröffentlicht, wenn alle Stakeholder auf ein lokales Netzwerk zugreifen können. Die Staging-Umgebung ist so konfiguriert, dass mittlere oder vollständige technische Fehler angezeigt werden.
Entwicklung : Die private Umgebung, die von einem einzelnen Entwickler auf seinem Computer konfiguriert wurde, um die eigene Arbeit während eines Entwicklungszyklus zu überprüfen. Dies wird normalerweise als Sprint in einer Scrum-Umgebung bezeichnet. Die Entwicklungsumgebung ist so konfiguriert, dass alle technischen Fehler angezeigt werden.
quelle