Qu'est-ce que le SDLC? Explication des phases, méthodologies et processus du cycle de vie du développement logiciel

James Taylor, qui est l'auteur de Managing Information Technology Projects , a noté qu'un «cycle de vie de projet englobe toutes les activités d'un projet.» Et le but du développement de systèmes est la réalisation des exigences du produit.

Si vous souhaitez apprendre à construire, déployer et créer des logiciels de haute qualité, vous devrez suivre un plan.

Comme Taylor l'a expliqué, votre objectif devrait être de réfléchir de manière holistique à toutes les activités d'un projet et à la meilleure façon de gérer chaque étape.

Mais par où commencer?

Une réponse consiste à tirer parti d'un cadre pour guider votre comportement et vos flux de travail.

Un cadre particulièrement puissant et populaire est appelé le processus du cycle de vie du développement logiciel (SDLC).

Dans cet article, je vais vous expliquer ce qui suit:

  1. Comment fonctionne le SDLC et pourquoi il est utilisé
  2. Chaque étape du SDLC et les meilleures pratiques et méthodologies dont vous devez être conscient lors de son utilisation
  3. Je terminerai en citant des exemples pour montrer les avantages de l'approche SDLC.

Comment fonctionne SDLC et pourquoi il est utilisé

SDLC se compose de six étapes que j'ai schématisées ici pour votre référence.

Dans l'ensemble, SDLC est une boucle fermée. Cela signifie que chaque étape influence les actions qui suivent et chaque étape fournit des conseils prospectifs.

Les six phases visent à s'appuyer les unes sur les autres de manière efficace pour répondre aux questions et assurer l'alignement de votre processus de développement.

Je cherche à prendre le résumé et à fournir des exemples auxquels vous, en tant qu'étudiants et praticiens du développement de logiciels, pouvez plus facilement vous identifier.

Par exemple, si vous vous efforcez de créer un logiciel conçu pour les employés horaires, comme l'a fait Zoomshift, ou un logiciel de suivi du temps, vous commencerez à l'étape «analyse des besoins».

Ici, à ce niveau le plus fondamental, vous détermineriez quelles sont les exigences des travailleurs en matière de suivi des heures et de la main-d'œuvre.

Vous pouvez le faire en discutant avec des employés horaires. Peut-être vous engageriez-vous dans une conversation avec des gestionnaires qui dirigent des équipes de travailleurs horaires.

Une autre idée est que vous pourriez tester les solutions du marché pour mieux comprendre les pièges des logiciels existants.

Vous pouvez prendre des notes, esquisser des diagrammes ou créer des graphiques pour mieux comprendre les commentaires qualitatifs et quantitatifs.

Ce n'est qu'après avoir profondément compris ces points douloureux que vous serez prêt à passer à la phase suivante du SDLC.

Ce n'est qu'alors que vous pourrez démarrer la phase de planification.

La phase d'analyse des besoins peut être fastidieuse.

Mais en suivant ces étapes, vous pouvez réduire votre temps de mise sur le marché, assurer un meilleur rendement du produit, économiser de l'argent et augmenter la probabilité de l'adéquation du produit au marché.

Pensez au-delà du suivi du temps.

Pensez à ce que vous voulez construire et à vos passions technologiques.

Déterminez les conditions requises pour résoudre les problèmes dans ce domaine. C'est là que vous commencez.

Étapes du SDLC et meilleures pratiques et méthodologies

Chaque étape doit être terminée avant de passer à la phase suivante du parcours de développement.

Plus important encore, les trois premières étapes visent à générer des réponses aux questions et les trois dernières étapes sont optimisées pour fournir des résultats.

  • Analyse des besoins
  • Réponse: quels problèmes doivent être résolus?
  • Planification
  • Réponse: que voulons-nous faire?
  • Conception architecturale / logicielle
  • Réponse: Comment atteignons-nous notre objectif?
  • Développement de logiciels
  • Résoudre: construisons
  • Essai
  • Résoudre: assurons que ce que nous avons construit fonctionne
  • Déploiement
  • Résoudre: Prenons notre solution et utilisons-la.

Ces six phases correspondent au comportement que vous implémentez peut-être déjà lors de la définition de la portée, de la création, du test et de la publication du logiciel. Mais SDLC rend le flux de travail standardisé et formel.

Ceci est à votre avantage: en suivant des étapes spécifiques, vous pouvez facilement communiquer où vous en êtes dans le processus et informer les autres de votre destination.

Plongeons plus en profondeur dans chaque étape et expliquons les questions d'approfondissement et les résultats pour lesquels vous voudrez optimiser.

Phase # 1: Analyse des exigences

Cette étape du SDLC vous oblige à obtenir les commentaires et l'adhésion des parties prenantes internes et externes pertinentes.

Pensez à mes exemples précédents avec le développement de logiciels de suivi du temps. Vous devrez réfléchir largement à qui sont vos «utilisateurs».

Certaines idées incluent vos clients, concepteurs, votre patron ou d'autres représentants techniques de l'équipe.

En fin de compte, vous cherchez à répondre à cette question: quels problèmes doivent être résolus? Je trouve utile dans la première phase de prendre des notes et d'écouter activement.

Lorsque vous vous sentez très à l'aise avec vos réponses, vous pouvez passer à la phase suivante.

Phase # 2: Planification

Vous cherchez à répondre à cette question: que voulons-nous faire? Cette question peut vous inciter à comprendre les aspects économiques unitaires de votre plan (coûts et avantages), les facteurs d'atténuation des risques et les valeurs attendues.

Tout comme pour planifier des vacances, vous devez organiser vos affaires et réfléchir aux sacs à emballer.

Voici un exemple pertinent.

J'ai beaucoup lu sur l'histoire d'Instagram. Un temps considérable a été consacré à la phase de planification du développement de l'application. C'était juste au moment où les médias sociaux se développaient rapidement.

La manière dont les utilisateurs interagiraient avec le produit était encore très inconnue.

Les fondateurs savaient que si l'expérience fondamentale était forte (prise, édition et partage de photographies), la croissance, le succès et une conversion élevée suivraient. C'est ce qu'ils ont prévu.

Les fondateurs ont consacré du temps à la conception d'applications et de sites Web, sachant que s'ils planifiaient correctement, la phase d'architecture et de conception serait plus fluide.

Ils regardaient toujours une longueur d'avance et pensaient à l'avenir du partage social et des achats en ligne.

Planifiez ce que vous pouvez contrôler et soyez conscient des choses que vous ne pouvez pas planifier. Cela vous aidera à avoir une base solide à l'approche de la troisième phase.

Phase # 3: Conception architecturale / logicielle

À ce stade, vous savez quelles sont vos exigences et ce que vous voulez.

Vous êtes sur des bases solides pour répondre maintenant à la question suivante avant de commencer à écrire un logiciel: comment atteindre notre objectif? En bref, vous devez décider de ce que vous optimisez et concevoir pour cela.

Vous créez peut-être des logiciels que vous souhaitez sécuriser, performants, résilients et efficaces. Lequel de ces principes est le plus important pour vous et pourquoi?

Les parties prenantes de la première phase sont-elles d'accord? Assurez-vous que les parties prenantes sont parfaitement alignées.

Après la phase de conception, vous commencerez à mettre «la main sur les claviers» et les modifications deviendront plus coûteuses en termes de temps et d'argent dépensés. De petits coûts variables s'additionneront.

Il y a quelques piliers de conception que je vous conseille de prendre en compte pendant cette phase: excellence opérationnelle, sécurité, fiabilité, efficacité des performances et optimisation des coûts.

Utilisez ces compartiments pour prendre les décisions de conception finales.

Phase # 4: Développement logiciel

C'est la phase de construction dans laquelle vous ne cherchez pas à répondre aux questions mais à produire des résultats.

Plus précisément, vous cherchez à montrer un parti pris pour l'action et à développer un prototype ou un système que d'autres peuvent expérimenter.

Lorsque vous commencez à créer, il est essentiel que vous suiviez les trois premières phases afin que votre résultat corresponde aux attentes.

Sortez votre ordinateur, assurez-vous que votre environnement est propice au travail, prenez un chauffe-café et une tasse et allumez votre moniteur.

Dans cette phase, vous gagnez la confiance de vos parties prenantes en incarnant l'état d'esprit d'un constructeur.

Phase # 5: Test

J'avais l'habitude de voir des collègues porter des t-shirts qui disaient ce qui suit: «Construire des pierres, pas tellement tester.

Vous ne pouvez pas produire une version finale d'un produit sans manger votre propre «nourriture pour chien».

À la fin de cette phase, vous êtes en mesure de vous assurer que ce que vous avez construit fonctionne. Recherchez des bogues ou des défauts. Obtenez un deuxième avis.

Sondez profondément pour trouver des erreurs qui ralentiront la sortie de votre produit final. Assurer des fondamentaux solides.

Phase n ° 6: déploiement

Allez prendre votre solution et utilisez-la. Lancement. Passez en direct.

Faites en sorte que les parties prenantes de la première phase utilisent votre logiciel dans la nature Célébrer. Commencez à mesurer l'engagement commercial.

Écoutez les utilisateurs et effectuez des itérations, car grâce à des sondages et à des conseils sur les commentaires des utilisateurs, vous pouvez recommencer à la première phase en définissant de nouvelles exigences.

Rassembler tout cela: l'approche SDLC

SDLC existe pour vous aider à réduire votre temps de mise sur le marché, à garantir un meilleur rendement du produit, à économiser de l'argent et à augmenter la probabilité que ce que vous construisez soit utile aux parties prenantes qui vous intéressent.

Le SDLC est particulièrement utile dans le monde du développement logiciel car il vous oblige à «colorier dans les lignes».

En d'autres termes, SDLC vous obligera à suivre les étapes et à vous assurer que vous faites les bonnes actions au bon moment et pour les bonnes raisons.

Considérez le SDLC comme un modèle de réussite. Le suivre aveuglément ne garantit rien - mais cela augmente la probabilité que vous soyez satisfait des résultats.

Le développement logiciel - comme nous le savons tous - est un vaste domaine et peut couvrir les outils de conception de sites Web et les formulaires en ligne jusqu'à des systèmes d'apprentissage automatique ou de backend plus robustes.

Que vous codiez ou non dans le navigateur ou que vous fassiez un travail de développement plus robuste, vous avez besoin d'un plan d'action.

Créer un logiciel peut être difficile.

Cela peut aussi être enrichissant. SDLC est un guide pour le travail technique, mais plus largement, il peut être considéré comme un guide dans la vie.

Vous pouvez déployer SDLC sur de nombreux domaines.

Par exemple, l'écriture de contenu SaaS suit le cycle SDLC. Avant d'écrire du contenu, l'auteur doit d'abord définir les exigences, planifier ce qui sera écrit, puis mettre le stylo sur papier.

SDLC est également un excellent cadre pour les entrepreneurs technologiques.

Mon ami voulait créer la meilleure agence de publicité Facebook et m'a contacté ainsi que d'autres personnes pour obtenir des conseils. Je lui ai conseillé d'utiliser SDLC pour effectuer d'abord une analyse des besoins même si ses ambitions étaient assez grandes.

Je lui ai demandé: quels problèmes cherchez-vous à résoudre? Que veulent vos utilisateurs? Et enfin, comment cette plateforme vous aiderait-elle à atteindre ces objectifs?

En formulant ces questions autour du SDLC, il était mieux en mesure de se concentrer sur sa solution ultime et de créer les bons outils pour les bons utilisateurs.

Il a rétréci sa portée et a défini plus étroitement son espace de problème. Il a pu allouer des ressources à la phase de planification avant de commencer à faire autre chose.

Il a ensuite créé le meilleur service de croissance Instagram que je connaisse. Mais son domaine est en constante évolution.

Il existe maintenant un logiciel pour jouer le rôle de planificateur de médias sociaux à grande échelle. A terme, il devra revenir à l'essentiel: l'analyse des besoins.

L'adoption de sa technologie est la preuve que le SDLC, lorsqu'il est appliqué et exécuté correctement, peut conduire à des résultats technologiques et commerciaux profonds. Mais comme pour le développement d'une entreprise, les logiciels ne se font jamais.

Par conséquent, le cycle continue.

Indépendamment de ce que vous construisez - une entreprise, un outil, un programme complexe ou un produit entièrement nouveau - il serait sage de déployer SDLC pour garantir la qualité et vous aider à rester concentré sur vos clients pendant que vous construisez.

«Construire des roches» devrait être votre étoile du Nord.

SDLC est un outil qui vous guidera tout au long du processus.