Unterschied zwischen SDLC und STLC

Need weckt das Interesse und ist der einzige Grund, warum ein Prozess beginnt. Später veranlasst dieses Interesse die entsprechenden Ressourcen, Stakeholder, Kunden, CEOs, Manager und Entwicklungsteams, hinter einem erfolgreichen Projektabschluss (in unserem Fall der Softwareentwicklung) zu stehen. Nicht nur Geld (Zinsen) ist der einzige Grund für das Verhalten dieser Menschen, sondern auch Zeit und Markenwert (was noch wichtiger sein wird).

Und hier kommt das Artikelthema, ja SDLC vs STLC ins Bild. Beide SDLC vs STLC hängen in gewissem Maße zusammen oder man kann sagen, dass man der Vorgänger von anderen ist. Der Grund ist einfach: Wenn etwas für einen bestimmten Zweck entwickelt wird (den die Kunden benötigen), muss es vor der Bereitstellung getestet werden. Dies ist der Industriestandard seit Jahrzehnten und Verantwortung, da der Kunde eine enorme Menge Geld investiert hat.

Dies war die Geschichte hinter den Kulissen und führt uns zum Hauptteil des Artikels - SDLC vs STLC. Lassen Sie uns im Detail sehen, was genau diese SDLC vs STLC sind. Was ist die Reihenfolge der Operationen unter jedem? Was ist der Unterschied zwischen SDLC und STLC? Welche Aktivitäten waren für ein erfolgreiches Ende erforderlich?

SDLC steht für Software Development Life Cycle

LEBENSZYKLUS bedeutet eine Reihe von Veränderungen im eigenen Leben. Entweder ein lebender, ein nicht lebender oder ein beliebiger Prozess, der eine Reihe von Schritten oder eine Abfolge von Vorgängen aufweist. Diese Sequenzen sind eine Art Hinweis darauf, dass es einen bestimmten Start- und Endpunkt gibt. Im Gegenteil, man kann sagen, dass der gegebene Prozess einen Unterprozess beinhaltet. Das ist ein Lebenszyklus. Herauszufinden, was ein Lebenszyklus wirklich bewirkt, bringt uns die Diskussion in Richtung Softwareentwicklung voran. SDLC bedeutet also der Lebenszyklus eines Softwareentwicklungsprozesses“ .

In Bezug auf Entwicklungsmodelle gibt es keine definierten Regeln, die für ein anderes Modell sprechen, oder ein bestimmtes Modell ist besser geeignet als das andere (Agilität ist eine Ausnahme). Schauen wir uns einige Modelle an -

  1. Wasserfallmodell - das älteste
  2. V-Modell
  3. Spiralmodell
  4. Iterativ
  5. Agil - aktuell und für jede Projektart am besten geeignet

Hinweis - Ich muss sagen, dass Agile Scrum-Modellpraktiken gut funktionieren, aber in der IT-Branche kann ein Team eines dieser Modelle vorziehen. Wenn zB die Anforderung klar ist und garantiert wird, dass sich das Team in einer späteren Phase nicht ändert, wird es sich mit Sicherheit für Waterfall und nicht für Agile entscheiden.

Phasen in der SDLC-Diskussion

  1. Planung
  2. Systemanalyse und Anforderung
  3. Design
  4. Kodierung oder Entwicklung
  5. Integration und Testen
  6. Betrieb und Instandhaltung

Der obige Prozess kann auch wie folgt aufgeführt werden -

  1. PLANUNG - Bevor physische Beweise auftauchen, steckt immer eine Planung dahinter. Die Planung beginnt, bevor der Papierkram beginnt. In dieser Phase werden aus Sicht der Projekte nur die übergeordneten Details berücksichtigt. Eine engagierte Gruppe von Mitgliedern steht hinter dieser Phase. Alle Vor- und Nachteile der Projekte werden berücksichtigt und wie der ROI maximiert werden kann und wie dies erreicht werden kann. Hier wird viel nachgearbeitet und überprüft, um eventuelle Hindernisse für den Projekterfolg zu beseitigen. Das Fazit lautet: Bevor die Idee in die Realität umgesetzt wird, sollte sie konkrete Gründe haben, um erfolgreich zu sein. Die Planung hängt wiederum von der Art des Ergebnisses ab. Wenn eine neue Software erstellt wird, ist die Planung anders, da die Marktstudie für sie sehr wichtig ist. Wenn dieselbe Software jedoch nach ein paar Jahren aktualisiert wird, findet in diesem Fall keine Marktstudie statt (da es sich bei der Software um eine handelt) Erfolg und so besteht ein Bedarf an Software-Features (Update-Erstellung).
  2. ANALYSE - Sobald der Planungsabschnitt fertig ist, folgt die Analyse, bei der die engagierten Teams mehrere Aufgaben ausführen, bevor sie eine konkrete Lösung finden. Hier wird die Machbarkeitsstudie des Projekts durchgeführt, Schätzungsarbeit, Kostenkalkulation, Bedarfserhebung und Terminplanung. Die Absicht ist klar, eine Endkontrolle durchzuführen, bevor die Arbeit tatsächlich beginnt. Wenn es Mängel gibt, beseitigen Sie diese durch Kommunikation mit dem Entwicklungsteam und den Stakeholdern. Finden Sie die Vor- und Nachteile heraus.
  3. DESIGN - Jetzt ist die Anforderung klar und das Team möchte eine Referenz, bevor sie arbeiten. Die Designer spielen eine entscheidende Rolle. Was die Software funktionieren wird (Funktionalität), wie viele Bildschirme für jeden Abschnitt vorhanden sein werden, Benutzerinteraktivität und jede Kleinigkeit von Details werden in dieser Phase entworfen. Angenommen, ein Kunde hat nach mobiler Software für die Flugbuchung gefragt, und die Anforderung ist klar, dass die Designer die Bildschirme so gestalten, dass sie die von dieser Software verarbeiteten Funktionen abdecken. Die Designer erstellen Layouts, Arbeitspläne, Prozessdiagramme, Pseudocodes und verschiedene andere Arten von Designdokumentationen. Die Verantwortlichen wählen das Beste aus.
  4. CODING - zu diesem Zeitpunkt sind die meisten wichtigen Entscheidungen bereits getroffen. In dieser Phase sollen die Entwurfsarbeiten in eine funktionierende Software repliziert werden. Hier spielen die Entwickler eine herausragende Rolle und es wird versucht, wiederverwendbare Codes zu erstellen. Viele Diskussionen über ein Framework und die am besten geeigneten Methoden zum Erstellen einer funktionierenden Software werden behandelt. Es handelt sich um Programmiertools, die vom Entwicklerteam verwendet werden: Compiler, Debugger, Interpreter. Ich möchte meine Leser darauf aufmerksam machen, dass die Entwicklung einer vollständig funktionierenden Software weder einfach noch klein ist. Ein großer Teil der Arbeit ist vorhanden, sodass das Entwicklerteam sie in kleinere Leistungen aufteilt und sie nach Bedarf oder Dringlichkeit priorisiert (kann auch anhand der Frage bewertet werden, wie wichtig die Funktionalität ist, dh wie hoch diese bestimmte Funktionalität bewertet wurde). Denken Sie daran, dass dies die längste Phase des Entwicklungszyklus ist.
  5. PRÜFUNG - In dieser Phase kommt es zum STLC. In dieser Phase geht es darum, die entwickelte Arbeitssoftware zu testen, bevor sie an die Kunden oder Endbenutzer weitergeleitet wird. Es gibt verschiedene Arten von Testmethoden, die hier von den Testern durchgeführt werden, um mögliche Fehler in der Software festzustellen.
  6. WARTUNG - Dies ist eine Art Kundendienst. So wie wir jedes Fahrrad oder Auto kaufen und nach einem Jahr, wenn es ein Problem gibt, das die ordnungsgemäße Arbeit behindert. Solche Probleme treten immer wieder auf. Hier werden alle Fehler behoben, die auftreten, wenn der Client die Software verwendet, und in Zukunft erforderliche Upgrades oder Verbesserungen vorgenommen werden.

STLC steht für SOFTWARE TESTING LIFE CYCLE

Phasen in der STLC -

  1. Anforderungsanalyse
  2. Testplanung
  3. Testfallentwicklung
  4. Umgebungs-Setup
  5. Test Ausführung
  6. Schließung des Testzyklus
  1. ANFORDERUNGSANALYSE - Der allererste Schritt in den STLC-Prozess. Es ist der Teil des gesamten Prozesses, in dem die QA-Teams die Anforderung (bedeutet, was zu testen ist) und die prüfbaren Anforderungen kennenlernen. Zum besseren Verständnis der Anforderungen kann der Tester mit den Kunden Kontakt aufnehmen (dies kommt jedoch nur selten vor, wenn die Tests und nicht die Entwicklung erforderlich sind). Dies ist eine Art Diagramm, das in dieser Phase der STLC folgte.
AufnahmekriterienAktivitäten durchgeführtLiefergegenstände
Genaues Erfordernis mit vollständiger Beschreibung, um das zu befolgende Testverfahren zu definieren.Art der Prüfung sind in diesem Abschnitt aufgeführtDie erzielten Ergebnisse sind in diesem Abschnitt aufgeführt
  1. TESTPLANUNG - Die wichtigste Phase in der STLC. Hier werden alle Schätzungen und Zeiten berechnet, bevor der Test tatsächlich beginnt. Das Ergebnis davon wird Pläne oder Strategiedokumentationen testen. Nach Abschluss dieser Phase kann das QA-Team mit der Entwicklung von Testfällen beginnen. Das gleiche Diagramm, das in der oberen Phase gezeichnet wurde, wird wieder für Änderungen verwendet.
  2. TESTENTWICKLUNG - Die eigentliche Entwicklung von Testfällen wird nach Abschluss der Testplanungsphase durchgeführt. Hier arbeitet das Testteam an den Testfällen. Dabei werden nicht nur die Testfälle, sondern ein vollständiger Bericht mit den Testdaten einbezogen und dokumentiert. Sobald diese abgeschlossen sind, werden sie von Peer-Mitgliedern oder QS-Leads überprüft. Hier selbst wird auch das RTM (Requirement Traceability Matrix) erstellt. Diese Dokumente verfolgen die Anforderung auf beide Arten (dh vorwärts und rückwärts).
  3. UMWELT-SETUP - Dies wird im Allgemeinen nicht praktiziert, da die Umgebung bereits während der Entwicklungsphase (in SDLC) festgelegt wurde. Im Allgemeinen treten keine Änderungen in der Umgebung auf.
  4. TESTAUSFÜHRUNG - Hier werden die Testfälle basierend auf den ursprünglich erstellten Testplänen ausgeführt. Wenn die Fälle in Ordnung sind, werden sie als PASS markiert, ansonsten FAIL. In dieser Phase wird eine vollständige Liste der Fehler erstellt, die vor dem endgültigen Release der Software an das Entwicklerteam weitergeleitet werden.
  5. TESTZYKLUSABSCHLUSS - Eine Diskussion, bei der das Team aus Testsicht entscheidet, was richtig und was falsch gelaufen ist. In diesem Meeting werden Dinge besprochen, die in Zukunft verbessert werden müssen, um Zeit und Mühe in die richtige Richtung zu sparen. Diese sind aus entwicklungspolitischer Sicht hilfreich.

Head to Head Vergleich zwischen SDLC und STLC (Infographics)

Unten sehen Sie den 9 größten Unterschied zwischen SDLC und STLC

Hauptunterschiede zwischen SDLC und STLC

Sowohl SDLC als auch STLC sind auf dem Markt sehr beliebt. Lassen Sie uns einige der wichtigsten Unterschiede zwischen SDLC und STLC diskutieren:

  • SDLC ist eine Entwicklungsmethode, während STLC eine Testmethode ist
  • Mehrere verschiedene Phasen werden zu SDLC kombiniert, während mehrere Testphasen oder -praktiken zu STLC kombiniert werden
  • SDLC deckt den gesamten Softwareentwicklungszyklus ab, während STLC den gesamten Testzyklus abdeckt
  • SDLC beginnt mit der Planungsphase und deckt den gesamten Entwicklungsverlauf ab, während STLC mit der Testplanung beginnt und alle Aspekte oder Arten von Tests abdeckt
  • CEO, Senior Business Analyst, Senior Manager und Entwickler sind die Personen, die sich um die verschiedenen Phasen von SDLC kümmern. Auf der anderen Seite ist der QA-Leiter der Testanalyst, der den laufenden Prozess steuert.
  • SDLC wird gestartet, wenn die eigentliche Anwendung nicht erstellt wurde, STLC wird jedoch gestartet, wenn die eigentliche Anwendung vorhanden ist oder ein Teil der Arbeitssoftware vorhanden ist.
  • SDLC ist die Obermenge von STLC, während STLC die Untermenge von SDLC ist

SDLC vs STLC Vergleichstabelle

Schauen wir uns den Top Vergleich zwischen SDLC vs STLC an -

Die Vergleichsbasis zwischen SDLC und STLC

SDLC

STLC

UrsprungEntwicklungslebenszyklusLebenszyklus testen
PhasenSechs Phasen

1. Planung

2. Analyse

3. Design

4. Entwicklung

5. Testen

6. Wartung

Sechs Phasen

1. Anforderungsanalyse

2. Testplanung

3. Testentwicklung

4. Umgebung einrichten

5. Testausführung

6. Testabschluss

BeziehungSDLC kann als übergeordnetes Element oder als Vorgänger betrachtet werden.STLC ist der Nachfolger, da es sich um SDLC handelt.
ÜberHierbei handelt es sich um die vollständige Entwicklung der Software, einschließlich Tests und anderer Phasen.Dies ist besorgt über die Testphase und den QS-Teil.
Phasen der AnforderungserfassungIn SDLC sammelt der Business Analyst die Anforderungen, das Entwicklungsteam führt die Entwicklung durch.In STLC führt das Testteam die Arbeitsüberprüfung nach der Analyse der Testdokumente aus und überprüft sie aus funktionaler und nicht funktionaler Perspektive.
AbsichtSDLC sollte alle Hindernisse auf dem Weg zu einer erfolgreichen Softwareentwicklung überwinden.STLC soll nur in der Testphase auf Fallstricke oder Mängel aufmerksam machen.
Design-PhaseIn der SDLC sorgt ein technischer Architekt für die Qualität der Software. Hier in SDLC kann ihm Business Analyst dabei helfen, die Anforderungen besser zu verstehen.

In STLC ist der Testarchitekt derjenige, der die Aktivitäten steuert, er führt die Testplanung und Identifizierung der übergeordneten Testpunkte durch.
CodierungsphaseDie realen Codes werden entwickelt und die eigentliche Arbeit nimmt Gestalt an, wie es die betonte Designstruktur vorsieht.Das Testteam arbeitet an der Entwicklung von Testplänen und überprüft das Arbeitsverhalten der Software. Zu beachten ist, dass in SDLC die Codes entwickelt werden, während in STLC nur Testfälle entwickelt werden.
TestphaseDie tatsächlichen Codes werden getestet, was von den Peer-Entwicklern durchgeführt werden kann. In dieser Phase werden Unit-Tests, Integrationstests und Systemtests durchgeführt.In STLC erfolgt die Testausführung plus Berichterstellung. Zu beachten ist, dass im Gegensatz zum Testen von Code in SDLC hier ein Funktionsverhalten vorliegt und die Software nicht auf Funktionalität getestet wird.

Schlussfolgerung - SDLC vs STLC

Die Diskussion ist klar in Bezug auf die SDLC vs STLC. Einer ist der Entwicklungsansatz und der andere ist der Testansatz als Ganzes. Obwohl das Testen unter SDLC als einer der Abschnitte fällt, ist zu beachten, dass es sich um eine ganz andere Funktion handelt, die ausgeführt wird. Es ist sehr wichtig zu beachten, dass STLC unter dem SDLC ist. Die betreffenden Aktivitäten in den einzelnen Abschnitten sind unterschiedlich.

Empfohlene Artikel

Dies war ein Leitfaden für den Hauptunterschied zwischen SDLC und STLC. Hier diskutieren wir auch die wichtigsten Unterschiede zwischen SDLC und STLC mit Infografiken und Vergleichstabelle. Sie können sich auch die folgenden Artikel ansehen, um mehr zu erfahren.

  1. SDLC vs Agile
  2. Python vs Go
  3. PL SQL vs SQL
  4. Agile vs DevOps