Différence entre SDLC et STLC

Le besoin suscite l'intérêt et en fait la seule raison pour qu'un processus démarre. Plus tard, cet intérêt pousse les ressources, les parties prenantes, les clients, le PDG, les gestionnaires et les équipes de développement concernés à mener à bien la fermeture d'un projet (dans notre cas, le développement de logiciels). Non seulement l'argent (les intérêts) est le seul objectif derrière le comportement de ces personnes, mais aussi le temps et la valeur de la marque (ce sera encore plus crucial).

Et c'est là que le sujet de l'article, oui SDLC vs STLC, entre en scène. Les deux SDLC vs STLC sont liés dans une certaine mesure ou on peut dire que l'un est le prédécesseur des autres. La raison est simple: si quelque chose est développé dans un but précis (besoin des clients), il doit être testé avant le déploiement. Ce sont les normes de l'industrie depuis des décennies et la responsabilité, car le client a investi énormément d'argent après cela.

C'était l'histoire derrière la scène et nous mène à la section principale de l'article - SDLC vs STLC. Voyons en détail ce que sont exactement ces SDLC vs STLC. Quelle est la séquence des opérations sous chacune? Quelle est la différence entre SDLC et STLC? Quel genre d'activités fallait-il pour réussir?

SDLC signifie cycle de vie du développement logiciel

CYCLE DE VIE signifie une série de changements dans sa vie. Soit un processus vivant, non vivant ou tout autre processus comportant une série d'étapes ou une séquence d'opérations. Ces séquences sont une sorte d'indication qu'il a un point de départ et de fin défini. Au contraire, on peut dire que le processus donné comporte un sous-processus. Voilà ce qu'est un cycle de vie. Comprendre ce qu'est vraiment un cycle de vie nous fait avancer dans la discussion vers le développement de logiciels. Ainsi, SDLC signifie « le cycle de vie d'un processus de développement logiciel» .

En ce qui concerne les modèles de développement, il n'y a pas de règles définies qui préconisent l'un par rapport à l'autre ou un modèle particulier est bon à utiliser que les autres (l'agilité est une exception). Voyons quelques modèles -

  1. Modèle de cascade - le plus ancien
  2. Modèle V
  3. Modèle en spirale
  4. Itératif
  5. Agile - le plus récent et le plus adapté à tout type de projet

Remarque - Je dois dire que les pratiques du modèle Scrum agile sont bonnes à travailler, mais dans l'industrie informatique, une équipe peut préférer l'un de ces modèles. Par exemple, si l'exigence est claire et garantit de ne pas changer à un stade ultérieur, l'équipe ira sûrement avec Waterfall et non avec Agile.

Phases de la discussion SDLC

  1. Planification
  2. Analyse du système et exigences
  3. Conception
  4. Codage ou développement
  5. Intégration et test
  6. Opération et maintenance

Le processus ci-dessus peut également être répertorié ci-dessous -

  1. PLANIFICATION - Tout d'abord avant que toute preuve physique n'apparaisse, il y a toujours une planification derrière. La planification vient avant le début de la paperasse. Dans cette phase, seuls les détails de haut niveau sont pris en compte du point de vue des projets. Un groupe de membres dévoués est derrière cette phase. Tous les avantages et inconvénients liés aux projets sont pris en compte et comment maximiser le retour sur investissement et les moyens de le faire sont également pris en compte. Ici, il y a beaucoup de retouches et un examen est fait pour surmonter tout obstacle à la réussite du projet. En fin de compte, avant que l'idée ne devienne réalité, elle devrait avoir des raisons concrètes de fonctionner et de réussir. La planification dépend à nouveau du type de résultat. Si un nouveau logiciel est en cours de construction, la planification sera différente car une étude de marché sera très cruciale pour lui, mais si le même logiciel est mis à jour après quelques années, alors dans ce cas il n'y aura pas d'étude de marché (car le logiciel est un succès et il y a donc un besoin de mise à jour des fonctionnalités du logiciel).
  2. ANALYSE - Une fois la phase de planification terminée, vient ensuite l'analyse où les équipes dédiées effectuent plusieurs tâches avant d'arriver à une solution concrète. Ici, l'étude de faisabilité du projet est effectuée, les travaux d'estimation, les coûts, la définition des exigences et la planification. L'intention est claire de faire une dernière vérification avant le début des travaux. S'il y a des lacunes, supprimez-les en communiquant avec l'équipe de développement et les parties prenantes. Découvrez les avantages et les inconvénients.
  3. CONCEPTION - Maintenant, l'exigence est claire, et l'équipe veut une référence avant de travailler, les concepteurs jouent un rôle crucial. Ce que le logiciel fonctionnera (en termes de fonctionnalités), le nombre d'écrans qui seront là pour chaque section, l'interactivité de l'utilisateur et chaque détail est conçu dans cette phase. Disons qu'un client a demandé un logiciel mobile pour la réservation de vol et qu'il est clair que les concepteurs vont concevoir les écrans pour couvrir les fonctionnalités que ce logiciel traitera. Les concepteurs proposeront des dispositions, des plans de travail, des diagrammes de processus, des pseudocodes et plusieurs autres types de documentation de conception. Les personnes responsables choisiront le meilleur choix.
  4. CODAGE - à ce stade, la plupart des décisions importantes ont déjà été prises. L'intention de cette phase est de reproduire les travaux de conception dans un logiciel fonctionnel. Ici, les développeurs jouent un rôle de premier plan et des efforts sont déployés pour produire des codes réutilisables. Beaucoup de discussions liées à un cadre et aux meilleures méthodes appropriées pour créer un logiciel de travail sont prises en compte. Il existe des outils de programmation impliqués qui sont utilisés par l'équipe de développeurs qui sont - Compilateur, débogueur, interprète. Je voudrais attirer l'attention de mes lecteurs sur le fait que le développement d'un logiciel de travail complet n'est ni facile ni petit. Un gros morceau de travail est là pour que l'équipe de développement les divise en livrables plus petits et les hiérarchise selon le besoin ou l'urgence (peut également être évalué en fonction de l'importance cruciale de la fonctionnalité, c'est-à-dire de la hauteur de cette fonctionnalité particulière). N'oubliez pas qu'il s'agit de la phase la plus longue du cycle de développement.
  5. TEST - Dans cette phase vient au STLC. Cette phase consiste à tester le logiciel développé avant de le transmettre aux clients ou aux utilisateurs finaux. Il existe plusieurs types de méthodologie de test qui sont exécutés ici par les testeurs pour trouver d'éventuels défauts dans le logiciel.
  6. MAINTENANCE - Il s'agit d'une sorte de service après-vente. Comme la façon dont nous achetons un vélo ou une voiture et après un an s'il y a un problème qui gêne le bon fonctionnement. Ces types de problèmes se posent à maintes reprises. Ici, tous les bogues qui surviennent lorsque le client utilise le logiciel sont résolus, toute mise à niveau nécessaire à l'avenir ou améliorations éventuelles.

STLC signifie CYCLE DE VIE DE TEST DE LOGICIEL

Phases du STLC -

  1. Analyse des exigences
  2. Planification des tests
  3. Développement de cas de test
  4. Configuration de l'environnement
  5. Exécution du test
  6. Fermeture du cycle de test
  1. ANALYSE DES EXIGENCES - La toute première étape du processus STLC. C'est la partie de l'ensemble du processus où les équipes d'AQ apprennent à connaître les exigences (c'est-à-dire quoi tester) et les exigences testables. Pour une meilleure compréhension de l'exigence, le testeur peut effectuer un suivi auprès des clients (mais cela se produit rarement, uniquement si le test est nécessaire et non le développement). Il s'agit d'une sorte de graphique qui a suivi dans cette phase du STLC.
Critères d'admissionActivités réaliséesLivrables
Besoin exact avec une description complète pour définir la procédure de test à suivre.Les types de tests sont répertoriés dans cette sectionLes résultats obtenus sont énumérés dans cette section
  1. PLANIFICATION DES ESSAIS - La phase la plus cruciale du STLC. Ici, toutes les estimations et le temps sont calculés avant que le test ne commence réellement. Le résultat de ceci testera des plans ou des documentations de stratégies. Une fois cette phase terminée, l'équipe d'AQ peut commencer par les activités de développement de cas de test. Le même graphique qui est dessiné dans la phase supérieure est à nouveau utilisé avec des modifications.
  2. DÉVELOPPEMENT DES TESTS - Le développement réel des cas de test est effectué une fois la phase de planification des tests terminée. Voici le travail d'équipe de test sur les cas de test. Non seulement les cas de test, mais un rapport complet qui contient les données de test sont impliqués et documentés. Une fois terminées, celles-ci sont vérifiées par des membres pairs ou des responsables de l'assurance qualité. Ici aussi, la RTM (matrice de traçabilité des exigences) est également préparée. Ces documents suivent l'exigence dans les deux sens (signifie en avant et en arrière).
  3. CONFIGURATION DE L'ENVIRONNEMENT - Ceci n'est généralement pas pratiqué car l'environnement a déjà été décidé lors de la phase de développement (en SDLC). En général, il n'y a aucun changement dans l'environnement.
  4. EXÉCUTION DU TEST - Ici, les cas de test sont exécutés sur la base des plans de test initialement préparés. Si les cas sont corrects, ils sont marqués PASS sinon ECHEC. Une liste complète des bogues est préparée dans cette phase et transmise à l'équipe de développement pour correction avant la version finale du logiciel.
  5. CLÔTURE DU CYCLE D'ESSAI - Une discussion où l'équipe décide ce qui a bien et mal tourné du point de vue du test. Les choses à améliorer à l'avenir qui peuvent économiser du temps et des efforts dans la bonne direction sont discutées lors de cette réunion. Ces informations sont utiles du point de vue du développement.

Comparaison directe entre SDLC et STLC (infographie)

Vous trouverez ci-dessous la principale différence de 9 entre SDLC et STLC

Différences clés entre SDLC et STLC

Les deux SDLC vs STLC sont des choix populaires sur le marché; laissez-nous discuter de certaines des principales différences entre SDLC vs STLC:

  • SDLC est une méthodologie de développement, tandis que STLC est une méthodologie de test
  • Plusieurs phases différentes sont combinées pour former SDLC, tandis que plusieurs phases ou pratiques de test se combinent pour former STLC
  • SDLC couvre l'ensemble des cycles de développement logiciel, tandis que STLC couvre l'intégralité des cycles de test
  • SDLC commence par la phase de planification et couvre l'intégralité du développement, tandis que STLC commence par la planification des tests et couvre tous les aspects ou types de tests.
  • Le PDG, l'analyste commercial principal, les cadres supérieurs et les développeurs sont les personnes qui s'occupent des différentes étapes de SDLC. D'un autre côté, responsable de l'assurance qualité, l'analyste de test est la personne qui régit le processus en cours.
  • SDLC démarre lorsque l'application réelle n'a pas été créée, mais STLC démarre lorsque l'application réelle existe ou qu'un bloc de logiciel fonctionnel existe.
  • SDLC est le sur-ensemble de STLC tandis que STLC est le sous-ensemble de SDLC

Tableau de comparaison SDLC vs STLC

Regardons la comparaison supérieure entre SDLC et STLC -

La base de la comparaison entre SDLC et STLC

SDLC

STLC

OrigineCycle de vie du développementTest du cycle de vie
PhasesSix phases

1. Planification

2. Analyse

3. Conception

4. Développement

5. Test

6. Entretien

Six phases

1. Analyse des exigences

2. Planification des tests

3. Développement de tests

4. Configuration de l'environnement

5. Exécution des tests

6. Clôture du test

RelationSDLC peut être considéré comme le parent ou le prédécesseur.STLC est le successeur car il est dans SDLC.
SurIl s'agit du développement complet du logiciel, y compris les tests et les autres phases.Cela concerne la phase de test et la partie QA.
Phases de collecte des exigencesDans SDLC, l'analyste métier rassemble les exigences, l'équipe de développement effectue le développement.Dans STLC, l'équipe de test effectue la revue du travail après avoir analysé les documents de test, revue du point de vue fonctionnel et non fonctionnel.
IntentionSDLC avait pour objectif de surmonter tout obstacle lors du développement réussi d'un logiciel.Le STLC est destiné à trouver des écueils ou des lacunes dans la phase de test uniquement.
Phase de conceptionDans le SDLC, un architecte technique est là pour assurer la qualité du logiciel. Ici, dans SDLC, Business Analyst peut l'aider à mieux comprendre les exigences.

Au STLC, l'architecte de test est celui qui régit les activités, il fait la planification des tests et l'identification des points de test de haut niveau.
Phase de codageLes vrais codes sont développés et le travail réel prend forme selon la structure de conception soulignée.L'équipe de test travaille sur le développement de plans de test et vérifie le comportement de travail du logiciel. Une chose à noter est que dans SDLC les codes sont développés alors que dans STLC seuls les cas de test sont développés.
Phase de testLes codes réels sont testés, ce qui peut être fait par les pairs développeurs. Au cours de cette phase, des tests unitaires, des tests d'intégration et des tests système sont effectués.Dans STLC, l'exécution du test et le travail de rapport se produisent. Une chose à noter est que, contrairement aux tests de code dans SDLC, il existe un comportement fonctionnel et des tests de non-fonctionnalité du logiciel sont effectués.

Conclusion - SDLC vs STLC

La discussion est claire concernant le SDLC vs STLC. L'un est l'approche de développement et l'autre est l'approche de test dans son ensemble. Bien que les tests relèvent de SDLC comme l'une des sections, la chose importante à noter est que c'est une fonction très différente qui est exécutée. Il est très important de noter que STLC est sous le SDLC. Les activités concernées dans chaque section sont différentes.

Articles recommandés

Cela a été un guide pour la principale différence entre SDLC et STLC. Ici, nous discutons également des principales différences entre SDLC et STLC avec des infographies et un tableau de comparaison. Vous pouvez également consulter les articles suivants pour en savoir plus-

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