Ce que vous devez savoir avant
Vous commencez

Débute 4 June 2026 03:24

Se termine 4 June 2026

00 Jours
00 Heures
00 Minutes
00 Secondes
course image

Pratiques de développement logiciel

Maîtrisez le développement logiciel avec UML, Git, Docker, les pipelines CI/CD et l'intégration de l'IA. Acquérez des compétences pratiques en collecte des exigences, pratiques agiles, débogage, test et stratégies DevOps.
Birla Institute Of Technology And Science–Pilani (BITS–Pilani) via Coursera

Birla Institute Of Technology And Science–Pilani (BITS–Pilani)

2865 Cours


2 days 23 hours 38 minutes

Amélioration optionnelle disponible

Débutant

Progressez à votre rythme

Paid Course

Amélioration optionnelle disponible

Aperçu

Welcome to the Software Development Practices course! In this course, you will explore techniques for eliciting and documenting software requirements, including the creation of use cases and user stories.

You will learn to design software systems using visual modeling methods such as UML diagrams and Data Flow Diagrams (DFDs). Throughout this learning journey, you will acquire the skills to produce high-quality code, leverage libraries and APIs, and efficiently manage code with version control tools like Git and GitHub.

You will also delve into contemporary deployment and DevOps strategies, encompassing debugging, testing, Docker implementation, and CI/CD pipelines, to ensure robust and reliable software development. With a blend of practical hands-on experience and theoretical insights, this course equips you with the expertise needed to thrive in software development.

Get ready to embark on an exciting learning journey that will enhance your proficiency in Software Development Practices.

Programme

  • Introduction au cours
  • Bienvenue dans le cours sur les Pratiques de Développement Logiciel ! Dans ce cours, vous explorerez des techniques pour obtenir et documenter les exigences logicielles, y compris la création de cas d'utilisation et de récits utilisateurs. Vous apprendrez à concevoir des systèmes logiciels en utilisant des méthodes de modélisation visuelle telles que les diagrammes UML et les diagrammes de flux de données (DFD). Tout au long de cet apprentissage, vous acquerrez les compétences nécessaires pour produire un code de haute qualité, tirer parti des bibliothèques et des API, et gérer efficacement le code avec des outils de contrôle de version comme Git et GitHub. Vous vous plongerez également dans les stratégies contemporaines de déploiement et de DevOps, comprenant le débogage, les tests, la mise en œuvre de Docker et les pipelines CI/CD, pour assurer un développement logiciel solide et fiable. Avec une combinaison d'expérience pratique et d'aperçus théoriques, ce cours vous équipe de l'expertise nécessaire pour prospérer dans le développement logiciel. Préparez-vous à embarquer pour un voyage d'apprentissage passionnant qui améliorera votre maîtrise des Pratiques de Développement Logiciel.
  • Aperçu des Pratiques de Développement Logiciel
  • Ce module offre une vue d'ensemble complète du développement logiciel, y compris les méthodologies et pratiques essentielles. Les étudiants exploreront le cycle de vie du développement logiciel (SDLC) et compareront les méthodologies clés telles que Waterfall, Agile et DevOps. L'importance de l'itération et des retours d'information dans le processus de développement sera soulignée pour mettre en avant l'amélioration continue et l'adaptation. Ce module initie les étudiants aux applications pratiques des concepts de développement logiciel à travers des études de cas. En examinant les applications web développées en Java et Python, les étudiants gagneront des insights sur des scénarios réels. De plus, un aperçu de la structure du cours montrera comment chaque module est interconnecté et se rapporte aux études de cas, fournissant une feuille de route pour le trajet d'apprentissage.
  • Exigences Logicielles et Pratiques Agiles
  • Le module "Exigences Logicielles" propose une introduction complète aux techniques et pratiques essentielles pour recueillir, documenter et gérer les exigences logicielles. Les apprenants exploreront les meilleures pratiques de collecte des exigences, et la création de cas d'utilisation et de récits utilisateurs efficaces. De plus, le module offre une vue d'ensemble du cadre Scrum, couvrant les rôles, les artefacts et les événements pour améliorer les compétences de gestion de projet agile. À travers une étude de cas pratique sur un système de guichet automatique bancaire, les participants appliqueront leurs connaissances pour développer des exigences réelles et les organiser en sprints, assurant la gestion efficace des projets logiciels depuis leur conception jusqu'à leur achèvement.
  • Conception Logicielle
  • Le module "Conception Logicielle" équipe les apprenants des compétences nécessaires pour concevoir efficacement des systèmes logiciels par le biais de la gestion pratique de projets et de l'utilisation de techniques de modélisation visuelle. Ce module couvre la création de cas d'utilisation, de récits utilisateurs et de plans de sprint pour démarrer un projet. Il approfondit également les diagrammes de langage de modélisation unifié (UML), enseignant aux apprenants comment construire et interpréter des diagrammes de cas d'utilisation, de classes, de composants, de séquences, et d'activités. De plus, le module se concentre sur la conception des flux de données avec des diagrammes de contexte et des diagrammes de flux de données (DFD). À la fin de ce module, les apprenants seront capables de concevoir des systèmes logiciels robustes et de représenter visuellement leur architecture et leurs processus de données avec précision.
  • Outils, Pratiques et Revues de Développement de Code Efficaces
  • Ce module se concentre sur les aspects essentiels de l'écriture de code de haute qualité, l'utilisation efficace des bibliothèques et des API, et la réalisation de revues de code approfondies. Les apprenants exploreront l'importance du code propre, comprendront les normes et les meilleures pratiques de codage, et apprendront comment appliquer ces principes dans leur travail. De plus, le module couvre l'intégration et l'utilisation avancée des bibliothèques et des API, ainsi que des outils pour générer de la documentation. Enfin, les apprenants acquerront des insights sur la réalisation de walkthroughs et de revues de code productifs, utilisant des outils courants pour fournir des retours constructifs.
  • Projets de Développement Logiciel
  • Ce module propose une introduction complète aux environnements de développement intégrés (IDE) et démontre leur application dans un projet pratique. Les apprenants exploreront les fonctionnalités fondamentales des IDE populaires, comprendront comment configurer et configurer un IDE pour leurs projets, et découvriront des plugins pour accroître la productivité. Le module inclut également une démonstration de projet pratique, guidant les apprenants à travers le processus de compréhension des exigences du projet, de mise en œuvre, et d'exécution sur une machine locale.
  • Construction et Versionnage du Code
  • Ce module offre une compréhension approfondie des processus et outils essentiels pour construire, gérer et contrôler le code source dans le développement logiciel. Il couvre tout le cycle de vie du code depuis la compilation jusqu'au contrôle de version et l'application pratique de Git et GitHub. À travers une série de leçons et de démonstrations pratiques, les apprenants développeront les compétences nécessaires pour gérer efficacement le code et collaborer sur des projets logiciels.
  • Débogage et Test
  • Le module "Débogage et Test" offre aux apprenants une compréhension complète des concepts et pratiques essentiels dans l'assurance qualité logicielle. À travers trois leçons ciblées, les participants exploreront les concepts de test introductifs, les techniques pratiques de débogage, et les approches de test aux normes de l'industrie. En combinant des connaissances théoriques avec des exercices pratiques, ce module équipe les apprenants des compétences nécessaires pour assurer la qualité et la fiabilité des produits logiciels dans des environnements de développement réels.
  • Pratiques de Déploiement Logiciel
  • Ce module offre une vue d'ensemble complète des pratiques modernes de déploiement logiciel, en se concentrant sur l'évolution des serveurs physiques aux machines virtuelles et conteneurs, avec une emphase sur la technologie Docker. À travers une série de leçons, les apprenants acquerront les connaissances de base de Docker, apprendront à créer et utiliser des Dockerfiles, et acquerront des compétences pratiques dans le déploiement d'images Docker et l'utilisation de DockerHub.
  • DevOps
  • Ce module propose une introduction complète au DevOps, couvrant son besoin, sa définition et ses dimensions fondamentales. Il approfondit les pratiques essentielles de DevOps comme l'intégration continue et la livraison/déploiement continu(e), détaillant leur mise en œuvre au sein des pipelines CI/CD. De plus, il offre des démonstrations pratiques pour solidifier les concepts théoriques par une application pratique. À la fin, les apprenants seront équipés pour comprendre, expliquer, et mettre en œuvre efficacement les pratiques DevOps.
  • Tendances Actuelles dans les Pratiques de Développement Logiciel
  • Le module introduit les apprenants au rôle transformateur de l'intelligence artificielle dans le développement logiciel moderne. Ce module couvre d'abord la mise en œuvre de l'étude de cas discutée tout au long du cours ; puis couvre l'intégration de l'IA dans diverses étapes du cycle de vie du développement logiciel, y compris le développement, le test, et le déploiement. Les participants exploreront les tendances actuelles, les outils, et les techniques qui exploitent l'IA pour améliorer la productivité, la précision, et l'efficacité. À travers les leçons sur les pratiques basées sur l'IA, les cas d'utilisation réels, et les tendances futures, les apprenants acquerront les connaissances et compétences nécessaires pour intégrer efficacement les technologies IA dans leurs processus de développement logiciel.
  • Examen Complet

Enseigné par

Shreyas Suresh Rao, Prof. Akanksha Bharadwaj, and Punit Galav


Matières

Programming