Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Prochain SlideShare
Symposium scrum
Symposium scrum
Chargement dans…3
×

Consultez-les par la suite

1 sur 33 Publicité

Plus De Contenu Connexe

Similaire à 1.pdf (20)

Plus récents (20)

Publicité

1.pdf

  1. 1. Project Management Dr. EL BAZZI Mohamed Salim
  2. 2. Qu'est-ce qu'un projet ? Un projet est une entreprise temporaire entreprise pour créer un produit, un service ou un résultat unique. Un projet est défini comme temporaire car il a une heure de début et de fin définie, et il est unique car il comporte un ensemble particulier d'opérations conçues pour atteindre un objectif. • Les principales caractéristiques d'un projet sont : • Il a un début et une fin définis • Une fois le point final atteint, le projet est terminé • Il tente de réaliser quelque chose de nouveau • Le projet doit répondre aux exigences du client ou des parties prenantes
  3. 3. Qu'est-ce que la gestion de projet ? La gestion de projet est une discipline qui permet de planifier, d'organiser, de motiver et de contrôler les ressources pour atteindre des objectifs de projet spécifiques. L'objectif principal de la gestion de projet est d'atteindre les objectifs et les cibles du projet tout en gardant à l'esprit la portée, le temps, la qualité et le coût du projet. Il facilite le flux de travail du projet avec une collaboration d'équipe sur un seul projet.
  4. 4. Objectifs de la gestion de projet Lors de la préparation d'un projet, vous devez examiner ces perspectives, ce qui permet de mieux comprendre l'ensemble du processus. Voici les principaux objectifs de gestion de projet logiciel : • Comment le projet s'intègre-t-il dans l'organisation ? • Comment le projet va-t-il évoluer dans le temps ? • Quelles sont les compétences requises pour gérer le projet avec succès ? • Elaboration et mise en place de procédures • Communication efficace, collaboration et directives productives • Atteindre les objectifs du projet dans les délais estimés avec une haute qualité • Allouer et optimiser les ressources nécessaires pour atteindre les objectifs du projet • Répondre aux besoins et exigences exclusifs du client
  5. 5. Méthodologies de gestion de projet Voici les différentes méthodologies disponibles pour la gestion de projet : • Prince2 • Agile • Six Sigma • Scrum • Kanban • Lean • Cascade Nous examinerons chacun de ces éléments dans une partie ultérieure du didacticiel. Divers outils sont disponibles pour suivre les tâches du projet et mesurer les réalisations au cours du projet. Ceux-ci incluent les diagrammes de Gantt, les diagrammes PERT et les structures de travail descendantes.
  6. 6. Qu'est-ce que la méthodologie Agile ? Méthodologie Agile, c'est-à-dire une pratique qui favorise l'itération continue du développement et des tests tout au long du cycle de développement logiciel du projet. Dans le modèle Agile de test logiciel, les activités de développement et de test sont simultanées, contrairement au modèle Waterfall.
  7. 7. Qu'est-ce que le développement logiciel agile ? • La méthodologie de développement logiciel Agile est l'un des processus les plus simples et les plus efficaces pour transformer une vision d'un besoin métier en solutions logicielles. Agile est un terme utilisé pour décrire les approches de développement de logiciels qui utilisent la planification continue, l'apprentissage, l'amélioration, la collaboration d'équipe, le développement évolutif et la livraison précoce. Elle encourage des réponses flexibles au changement. Le développement logiciel agile met l'accent sur quatre valeurs fondamentales. • Interactions individuelles et d'équipe sur les processus et les outils • Logiciel de travail sur une documentation complète • Collaboration avec le client sur la négociation du contrat • Répondre au changement au sujet d'un plan
  8. 8. Modèle agile vs modèle en cascade • Les modèles Agile et Waterfall sont deux méthodes différentes pour le processus de développement de logiciels. Bien qu'elles soient différentes dans leur approche, les deux méthodes sont parfois utiles, selon les besoins et le type de projet.
  9. 9. Modèle agile Modèle de cascade • Modèle en cascade : le développement du logiciel se déroule de manière séquentielle du point de départ au point final. • Le processus de conception n'est pas divisé en modèles individuels • Le client ne peut voir le produit qu'à la fin du projet •Définition de la méthodologie agile : les méthodologies agiles proposent une approche incrémentale et itérative de la conception de logiciels •Le processus Agile en génie logiciel est divisé en modèles individuels sur lesquels les concepteurs travaillent •Le client a des occasions précoces et fréquentes d'examiner le produit et de prendre des décisions et des modifications au projet
  10. 10. • Le modèle agile est considéré comme non structuré par rapport au modèle en cascade • Les petits projets peuvent être mis en œuvre très rapidement. Pour les gros projets, il est difficile d'estimer le temps de développement. • L'erreur peut être corrigée au milieu du projet. • Le processus de développement est itératif et le projet est exécuté en courtes itérations (2 à 4) semaines. La planification est très moindre. • Les modèles en cascade sont plus sûrs car ils sont tellement orientés plan • Toutes sortes de projets peuvent être estimés et réalisés. • Ce n'est qu'à la fin que l'ensemble du produit est testé. Si l'erreur d'exigence est détectée ou si des modifications doivent être apportées, le projet doit recommencer depuis le début • Le processus de développement est échelonné, et la phase est beaucoup plus importante que l'itération. Chaque phase se termine par la description détaillée de la phase suivante
  11. 11. • La documentation est moins prioritaire que le développement logiciel • Chaque itération a sa propre phase de test. Il permet de mettre en œuvre des tests de régression à chaque fois que de nouvelles fonctions ou logiques sont publiées. • Dans les tests agiles, lorsqu'une itération se termine, les fonctionnalités livrables du produit sont livrées au client. Les nouvelles fonctionnalités sont utilisables juste après l'expédition. Il est utile lorsque vous avez un bon contact avec les clients. • La documentation est une priorité absolue et peut même être utilisée pour former le personnel et mettre à niveau le logiciel avec une autre équipe • Ce n'est qu'après la phase de développement que la phase de test est exécutée car les parties séparées ne sont pas entièrement fonctionnelles. • Toutes les fonctionnalités développées sont livrées en une seule fois après la longue phase de mise en œuvre.
  12. 12. • Les testeurs et les développeurs travaillent ensemble • À la fin de chaque sprint, l'acceptation de l'utilisateur est effectuée • Cela nécessite une communication étroite avec les développeurs et analyse ensemble les exigences et la planification • Les testeurs travaillent séparément des développeurs • L'acceptation par l'utilisateur est effectuée à la fin du projet. • Le développeur n'intervient pas dans le processus d'exigence et de planification. Habituellement, les délais entre les tests et le codage
  13. 13. SCRUM • Maître de mêlée • Scrum Master est responsable de la mise en place de l'équipe, de la réunion de sprint et de la suppression des obstacles à la progression • Propriétaire du produit • Le Product Owner crée le backlog du produit, hiérarchise le backlog et est responsable de la livraison de la fonctionnalité à chaque itération • Équipe Scrum • L'équipe gère son propre travail et organise le travail pour terminer le sprint ou le cycle
  14. 14. Product backlog • Il s'agit d'un référentiel où les exigences sont suivies avec des détails sur le nombre d'exigences (histoires d'utilisateurs) à remplir pour chaque version. Il doit être maintenu et priorisé par le Product Owner, et il doit être distribué à l'équipe Scrum. L'équipe peut également demander l'ajout, la modification ou la suppression d'une nouvelle exigence
  15. 15. Pratiques Scrum
  16. 16. Flux de processus des méthodologies Scrum : Le flux de processus des tests Scrum est le suivant : • Chaque itération d'une mêlée est connue sous le nom de Sprint • Le backlog de produit est une liste où tous les détails sont entrés pour obtenir le produit final • Au cours de chaque sprint, les meilleures histoires d'utilisateurs du backlog de produit sont sélectionnées et transformées en backlog de sprint • L'équipe travaille sur le backlog de sprint défini • L'équipe vérifie le travail quotidien • À la fin du sprint, l'équipe livre les fonctionnalités du produit
  17. 17. Métriques agiles : • Les métriques qui peuvent être collectées pour une utilisation efficace d'Agile sont : • Facteur de traînée • Effort en heures qui ne contribue pas à l'objectif du sprint • Le facteur de traînée peut être amélioré en réduisant le nombre de ressources partagées, en réduisant la quantité de travail non contributif • Les nouvelles estimations peuvent être augmentées en pourcentage du facteur de traînée - Nouvelle estimation = (Ancienne estimation + facteur de traînée) • Rapidité • Quantité de backlog (user stories) convertie en fonctionnalité livrable du sprint • Nombre de tests unitaires ajoutés • Intervalle de temps nécessaire pour terminer la construction quotidienne • Bugs détectés dans une itération ou dans des itérations précédentes • Fuite de défaut de production
  18. 18. Scrum • SCRUM est une méthode de développement agile qui se concentre spécifiquement sur la gestion des tâches dans un environnement de développement en équipe. Fondamentalement, Scrum est dérivé d'une activité qui se produit lors d'un match de rugby. Scrum croit en l'autonomisation de l'équipe de développement et préconise de travailler en petites équipes (disons de 7 à 9 membres). Agile et Scrum se composent de trois rôles, et leurs responsabilités sont expliquées comme suit :
  19. 19. • Maître de mêlée • Scrum Master est responsable de la mise en place de l'équipe, de la réunion de sprint et de la suppression des obstacles à la progression • Propriétaire du produit • Le Product Owner crée le backlog du produit, hiérarchise le backlog et est responsable de la livraison de la fonctionnalité à chaque itération • Équipe Scrum • L'équipe gère son propre travail et organise le travail pour terminer le sprint ou le cycle
  20. 20. Product Backlog • Il s'agit d'un référentiel où les exigences sont suivies avec des détails sur le nombre d'exigences (histoires d'utilisateurs) à remplir pour chaque version. Il doit être maintenu et priorisé par le Product Owner, et il doit être distribué à l'équipe Scrum. L'équipe peut également demander l'ajout, la modification ou la suppression d'une nouvelle exigence
  21. 21. Flux de processus des méthodologies Scrum : Le flux de processus des tests Scrum est le suivant : • Chaque itération d'une mêlée est connue sous le nom de Sprint • Le backlog de produit est une liste où tous les détails sont entrés pour obtenir le produit final • Au cours de chaque sprint, les meilleures histoires d'utilisateurs du backlog de produit sont sélectionnées et transformées en backlog de sprint • L'équipe travaille sur le backlog de sprint défini • L'équipe vérifie le travail quotidien • À la fin du sprint, l'équipe livre les fonctionnalités du produit
  22. 22. Programmation extrême (XP) • La technique de programmation extrême est très utile lorsque les demandes ou les exigences des clients changent constamment ou lorsqu'ils ne sont pas sûrs de la fonctionnalité du système. Il préconise des « versions » fréquentes du produit dans des cycles de développement courts, ce qui améliore intrinsèquement la productivité du système et introduit également un point de contrôle où toutes les exigences des clients peuvent être facilement mises en œuvre. Le XP développe des logiciels gardant le client dans la cible.
  23. 23. • Les exigences métier sont rassemblées en termes d'histoires. Toutes ces histoires sont stockées dans un endroit appelé le parking. • Dans ce type de méthodologie, les versions sont basées sur des cycles plus courts appelés itérations avec une durée de 14 jours. Chaque itération comprend des phases telles que le codage, les tests unitaires et les tests système où, à chaque phase, des fonctionnalités mineures ou majeures seront intégrées à l'application.
  24. 24. Phases de programmation eXtreme : • Il y a 6 phases disponibles dans la méthode Agile XP, et celles-ci sont expliquées comme suit : • Planification • Identification des parties prenantes et des sponsors • Exigences en matière d'infrastructures • Informations et collecte liées à la sécurité • Accords de niveau de service et ses conditions • Une analyse • Capture d'histoires dans un parking • Prioriser les histoires dans le parking • Nettoyage des histoires pour estimation • Définir l'itération SPAN(Time) • Planification des ressources pour les équipes de développement et d'assurance qualité
  25. 25. • Concevoir • Répartition des tâches • Préparation du scénario de test pour chaque tâche • Cadre d'automatisation de la régression • Exécution • Codage • Tests unitaires • Exécution de scénarios de tests manuels • Génération de rapport de défaut • Conversion des cas de test de régression Manuel vers Automatisation • Examen de mi-itération • Examen de fin d'itération
  26. 26. • Emballage • Petites versions • Les tests de régression • Démos et critiques • Développer de nouvelles histoires en fonction du besoin • Améliorations du processus basées sur les commentaires de la revue de fin d'itération • Fermeture • Lancement pilote • Entraînement • Lancement de la production • Assurance de garantie SLA • Revoir la stratégie SOA • Support de production
  27. 27. • Deux storyboards sont disponibles pour suivre le travail au quotidien, et ceux-ci sont répertoriés ci-dessous à titre de référence. • Carton d'histoire • Il s'agit d'une manière traditionnelle de collecter toutes les histoires dans un tableau sous la forme de notes adhésives pour suivre les activités XP quotidiennes. Comme cette activité manuelle demande plus d'efforts et de temps, mieux vaut passer à un formulaire en ligne. • Scénario en ligne • L'outil en ligne Storyboard peut être utilisé pour stocker les histoires. Plusieurs équipes peuvent l'utiliser à des fins différentes.
  28. 28. Méthodologies de cristal • La méthodologie Crystal est basée sur trois concepts • Affrètement : diverses activités impliquées dans cette phase sont la création d'une équipe de développement, la réalisation d'une analyse de faisabilité préliminaire, l'élaboration d'un plan initial et la mise au point de la méthodologie de développement • Livraison cyclique : La phase de développement principale consiste en deux ou plusieurs cycles de livraison, au cours desquels le • L'équipe met à jour et affine le plan de publication • Met en œuvre un sous-ensemble des exigences via une ou plusieurs itérations d'intégration de test de programme • Le produit intégré est livré à de vrais utilisateurs • Examen du plan de projet et de la méthodologie de développement adoptée • Conclusion : les activités réalisées au cours de cette phase sont le déploiement dans l'environnement de l'utilisateur, des revues et des réflexions post-déploiement sont effectuées.
  29. 29. Méthode de développement logiciel dynamique (DSDM) • DSDM est une approche de développement d'applications rapide (RAD) pour le développement de logiciels et fournit un cadre de livraison de projet agile. L'aspect important de DSDM est que les utilisateurs doivent être impliqués activement et que les équipes ont le pouvoir de prendre des décisions. La livraison fréquente du produit devient l'objectif actif avec DSDM. Les techniques utilisées dans DSDM sont • Time Boxe • Règles MoSCoW • Prototypage • Le projet DSDM se compose de 7 phases • Avant-projet • Étude de faisabilité • Étude commerciale • Itération du modèle fonctionnel • Concevoir et construire l'itération • Mise en œuvre • Post-projet
  30. 30. Développement piloté par les fonctionnalités (FDD) • Cette méthode est axée sur les fonctionnalités de « conception et construction ». Contrairement à d'autres méthodes Agile en génie logiciel, FDD décrit des phases de travail très spécifiques et courtes qui doivent être accomplies séparément par fonctionnalité. Il comprend la visite guidée du domaine, l'inspection de la conception, la promotion pour la construction, l'inspection du code et la conception. FDD développe des produits en suivant les choses dans la cible • Modélisation d'objets de domaine • Développement par fonctionnalité • Propriété du composant/classe • Équipes de fonctionnalités • Contrôles • Gestion de la configuration • Constructions régulières • Visibilité des progrès et des résultats
  31. 31. Développement logiciel simplifié • La méthode de développement logiciel Lean est basée sur le principe de « production juste à temps ». Il vise à augmenter la vitesse de développement des logiciels et à réduire les coûts. Le développement Lean peut être résumé en sept étapes. • Éliminer les déchets • Amplifier l'apprentissage • Différer l'engagement (décider le plus tard possible) • Livraison anticipée • Responsabiliser l'équipe • Construire l'intégrité • Optimiser l'ensemble
  32. 32. Métriques agiles : • Les métriques qui peuvent être collectées pour une utilisation efficace d'Agile sont : • Facteur de traînée • Effort en heures qui ne contribue pas à l'objectif du sprint • Le facteur de traînée peut être amélioré en réduisant le nombre de ressources partagées, en réduisant la quantité de travail non contributif • Les nouvelles estimations peuvent être augmentées en pourcentage du facteur de traînée - Nouvelle estimation = (Ancienne estimation + facteur de traînée) • Rapidité • Quantité de backlog (user stories) convertie en fonctionnalité livrable du sprint • Nombre de tests unitaires ajoutés • Intervalle de temps nécessaire pour terminer la construction quotidienne • Bugs détectés dans une itération ou dans des itérations précédentes • Fuite de défaut de production

×