Académique Documents
Professionnel Documents
Culture Documents
Un SDLC est un ensemble de phases (événement), d’activités et de rôles (compétences) qui ont
comme objectif la production d’un logiciel
Approche linéaire
Le prototypage :le prototypage est très intéressant dans la collecte et l’analyse des besoins
utilisateur.Le client apportera ses critiques et suggestions par rapport au prototype jusqu’à
atteindre la stabilité des besoins du client
Il se base sur le développement d’une version initiale du système qui sera présentée
aux utilisateurs et de la faire évoluer progressivement jusqu’à atteindre la version
adéquate
Approche incrémentale :(tabda mel fekraaa wba3id tabda bel partie bel partie fi développement)
Approche itérative (n9asmou en forme de partie par example kol partie ta3mel specification
/conception w implementation wba3id déploiement )
Activités du modèle
• Le plus prioritaire sera placé en haut et vise versaa
• La taille et la complexité des incréments dépendra du degré d’urgence pour le
client.
Identification des besoins techniques de l’incrément N
Développement de l’incrément
Approche Agile
Il s’agit d’un processus itératif et incrémental qui vise à éliminer les inconvénients des
approches séquentielles
La cohésion d'une équipe est plus importante que le suivi des conventions
Le client et le fournisseur sont des partenaires qui partagent un risque. L’agilité vise la
collaboration des deux parties pour atteindre un objectif commun.
La planification originale ne doit pas être trop détaillée, car certains aspects ne seront
probablement jamais réalisés.
Rational Unified Process
RUP est un processus de développement logiciel itératif et incrémental, centré sur l'architecture,
piloté par des cas d'utilisation et orienté vers la diminution des risques.
Objectif : Produire un logiciel de qualité qui satisfait les besoins des utilisateurs avec un
budget et un planning prédéfini.
1. Développement
Permet la prise en charge en continue des changements. L’intégration se fait
à chaque itération : pas d’effet
Permet d’aboutir à une architecture solide puisque cette dernière est révisée
à chaque itération.
2. Management des besoins utilisateurs
La mesure de la qualité d'un produit passe essentiellement par la question
"Est ce que le système réalise ce qui est sensé réalisé"
Le management des besoins favorise le partage des connaissances entre les
différentes partie-prenantes.
L'évaluation se fait par les tests et non à base de documents. Les défauts dont
identifiés tôt dans le projet d'où la réduction des risques.
Rôles d'analyse
Méthodologie de conception
Rôles de développement
Rôles de test
Rôles de manager
Rôles de production et support
Les activités dans RUP
Un rôle réalise une ou plusieurs activités.
Définition Une activité est une unité de travail qu'un individu appartenant à un rôle est
sensé assurer, et qui produit un résultat significatif dans le contexte Méthodologie de
conception est sensé assurer, et qui produit un résultat significatif dans le contexte d'un
projet
Exemples
Planifier les itérations -> Project Manager
Trouver les acteurs et les cas d'utilisation Méthodologie de conception -> System analyst
Revue de la conception -> Design reviewer
Exécuter un test de performance -> Performance tester
Les artéfacts
Définition Les activités ont comme input et output des artifacts. Un artifact est un fragment
d'information qui est produit, modifié ou utilisé par un processus. Examples : Un modèle
comme un use-case diagram. Un élément de modèle comme une Méthodologie de conception
classe, un acteur etc
Les workflows
Définition Un workflow est une séquence d'activités décrivant l’interaction entre des rôles et
produisant un résultat ayant une valeur ajoutée
. Dans le langage UML, un workflow peut être décrit avec un diagramme de séquence, un diagramme
d'activités ou un diagramme de collaboration.
Il s’agit d’un processus itératif et incrémental qui vise à éliminer les inconvénients des
approches séquentielles.
• Une approche Agile doit augmenter la satisfaction du client et faciliter l’activité du
développement.
2. Caractéristiques
Adaptatives
Orientées personnes
• Responsabilité
3. Fondements des méthodes Agile: manifeste Agile
La cohésion d'une équipe est plus importante que le suivi des conventions
Un logiciel partiellement fonctionnel, est toujours plus valable qu’une
documentation soignée
Le client et le fournisseur sont des partenaires qui partagent un risque. L’agilité vise
la collaboration des deux parties pour atteindre un objectif commun.
Le manifeste Agile
Notre plus haute priorité est de satisfaire le client en livrant rapidement et régulièrement
des fonctionnalités à grande valeur ajoutée.
Accueillir positivement les changements de besoins, même tard dans le projet. Les
processus Agiles exploitent le changement pour donner un avantage compétitif au client.
Livrer fréquemment un logiciel opérationnel avec des cycles de quelques semaines à
quelques mois Méthodes Agile et une préférence pour les plus courts.
Réalisez les projets avec des personnes motivées.
Fournissez-leur l’environnement et le soutien dont ils ont besoin et faites-leur confiance pour
atteindre les objectifs fixés.
La méthode la plus simple et la plus efficace pour transmettre de l’information à l'équipe de
développement et à l’intérieur de celle-ci est le dialogue en face à face.
Conclusion
•Agile est un ensemble de recommandations visant à rendre le développement
logiciel plus efficace. Un grand projet qui va durer dans le temps sera divisé en petit s
fragments à livrer périodiquement
•L’agilité est un ensemble de techniques et de « best practises » plus qu’une
méthodologie à part entière
•Agile se base sur les valeurs telles que: communication, confiance, compétence
beaucoup plus que la documentation et les deadlines.
Chapitre 7 :Introduction à Scrum
Scrum est :
Un cadre de travail permettant de répondre à des problèmes complexes
etchangeants, tout en livrant de manière productive et créative des produits
logiciels de la plus grande valeur possible.
Scrum n’est pas :
processus ni une méthode de développement de produit logiciel.
II. La théorie de Scrum
Transparence : Les aspects importants du processus doivent être visibles à
ceux qui sont responsables des retombées.
Inspection : Les utilisateurs Scrum doivent en permanence surveiller l’état
d’avancement par rapport à l’objectif de l’itération.
La fréquence de ces inspections ne devrait pas gêner le travail en
cours.
Adaptation
Si un inspecteur détermine qu’un ou plusieurs aspects du processus dérivent
hors des limites acceptables, un ajustement doit être fait dès que possible afin
de minimiser le risque d’autres dérives
III. Les rôles Scrum
Le Product Owner est responsable de maximiser la valeur du produit et du
travail de l’Équipe de Développement.
Le product owner représente le client et doit défendre le produit.
Définir les Ordonner les Optimiser la besoin est visible,
besoins besoins pour valeur du travail transparent, et
du produit et mieux réaliser effectué par clair pour tous, et
rédige les les l’Équipe de qu’il montre ce
spécifications objectifs et Développement sur quoi l’Équipe
missions de Développement
travaillera
prochainement
III.2 Scrum Master
C’est la personne chargée de lever tout obstacle pouvant freiner l’évolution
du travail de l’équipe de développement, il s’agit d’un facilitateur.
S’assurer de la devant l’équipe Optimiser la
bonne valeur du travail
application de de effectué par
la méthode l’Équipe de
développement Développement
Release 0
• Peut donner lieu à des “death sprint” donc mauvaise qualité logicielle Long sprint
Long sprint
• Difficile à planifier
Le Product Backlog
Une liste triée par ordre de priorité de tâches et/ou de besoins.
Les bugs, améliorations, changements sont tous pris en charge comme des
éléments dans le product Backlog (pas uniquement les besoins fonctionnels).