VERGLEICH - STLC und SDLC

In diesem Kapitel werden wir die Vergleichsfaktoren zwischen STLC und SDLC verstehen. Betrachten wir die folgenden Punkte und vergleichen Sie dabei STLC und SDLC.

  • STLC ist Teil von SDLC. Es kann gesagt werden, dass STLC eine Teilmenge des SDLC-Satzes ist.

  • STLC beschränkt sich auf die Testphase, in der die Qualität der Software oder des Produkts sichergestellt ist. SDLC spielt eine wichtige Rolle bei der vollständigen Entwicklung einer Software oder eines Produkts.

  • STLC ist jedoch eine sehr wichtige Phase von SDLC und das Endprodukt oder die Software können nicht freigegeben werden, ohne den STLC-Prozess zu durchlaufen.

  • STLC ist auch Teil des Post-Release / Update-Zyklus, der Wartungsphase von SDLC, in der bekannte Fehler behoben werden oder der Software eine neue Funktionalität hinzugefügt wird.

In der folgenden Tabelle sind die Vergleichsfaktoren zwischen SDLC und STLC anhand ihrer Phasen aufgeführt.

Phase SDLC STLC
Anforderungserfassung
  • Business Analyst sammelt Anforderungen.
  • Das Entwicklungsteam analysiert die Anforderungen.
  • Nach einem hohen Level beginnt das Entwicklungsteam mit der Analyse aus der Architektur- und Designperspektive.
  • Das Testteam überprüft und analysiert das SRD-Dokument.
  • Identifiziert die Testanforderungen - Schlüsselpunkte für Umfang, Verifizierung und Validierung.
  • Überprüft die Anforderungen an die logische und funktionale Beziehung zwischen verschiedenen Modulen. Dies hilft bei der frühzeitigen Erkennung von Lücken.
Design
  • Die Architektur von SDLC hilft Ihnen dabei, ein Design der Software auf hoher und niedriger Ebene basierend auf den Anforderungen zu entwickeln.
  • Business Analyst arbeitet am Spötter des UI-Designs.
  • Sobald das Design fertig ist, wird es von den Stakeholdern unterzeichnet.
  • In STLC planen normalerweise entweder der Testarchitekt oder ein Testleiter die Teststrategie.
  • Identifiziert die Testpunkte.
  • Die Ressourcenzuweisung und die Zeitpläne werden hier festgelegt.
Entwicklung
  • Das Entwicklungsteam beginnt mit der Entwicklung der Software.
  • Integration in verschiedene Systeme.
  • Sobald die Integration abgeschlossen ist, wird eine testfertige Software oder ein Produkt bereitgestellt.
  • Das Testteam schreibt die Testszenarien, um die Qualität des Produkts zu überprüfen.
  • Detaillierte Testfälle werden für alle Module zusammen mit dem erwarteten Verhalten geschrieben.
  • Hier werden die Voraussetzungen sowie die Ein- und Ausstiegskriterien eines Testmoduls festgelegt.
Umgebung einrichten
  • Das Entwicklungsteam richtet eine Testumgebung mit dem entwickelten Produkt zur Validierung ein.
  • Das Testteam bestätigt die anhand der Voraussetzungen eingerichtete Umgebung.
  • Führt Rauchtests durch, um sicherzustellen, dass die Umgebung für das zu testende Produkt stabil ist.
Testen
  • Die eigentliche Prüfung wird in dieser Phase durchgeführt. Es umfasst Unit-Tests, Integrationstests, Systemtests, Fehler-Retesting, Regressionstests usw.
  • Das Entwicklungsteam behebt den gemeldeten Fehler und sendet ihn zur erneuten Prüfung an den Tester zurück.
  • UAT-Tests werden hier ausgeführt, nachdem Sie sich vom SIT-Test abgemeldet haben.
  • Das Testen der Systemintegration beginnt basierend auf den Testfällen.
  • Gegebenenfalls gemeldete Fehler werden erneut getestet und behoben.
  • Hier werden Regressionstests durchgeführt und das Produkt wird abgemeldet, sobald es die Ausstiegskriterien erfüllt.
Bereitstellung / Produktfreigabe
  • Sobald die Abmeldung von verschiedenen Testteams eingegangen ist, wird die Anwendung in einer Produktumgebung für echte Endbenutzer bereitgestellt.
  • Die Rauch- und Hygienetests in der Produktionsumgebung werden hier abgeschlossen, sobald das Produkt bereitgestellt wird.
  • Testberichte und Matrixvorbereitung werden vom Testteam durchgeführt, um das Produkt zu analysieren.
Instandhaltung
  • Es behandelt die Unterstützung, Verbesserung und Aktualisierung nach der Bereitstellung, falls vorhanden.
  • In dieser Phase werden Testfälle, Regressionsanzüge und Automatisierungsskripte basierend auf den Verbesserungen und Aktualisierungen verwaltet.