Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
These Strange Ways Will Keep Your Relationship Strong Day To Day
Limelight Media
Une version simplifiée d'un cycle d'itération typique en gestion de projet agile
L'idée de base derrière cette méthode est de développer un système à travers des
cycles répétés (itératifs) et en plus petites portions à la fois (incrémentiel),
permettant aux développeurs de logicielsde tirer parti de ce qui a été appris lors du
développement de parties ou de versions antérieures du système. L'apprentissage
provient à la fois du développement et de l'utilisation du système, où les étapes clés
possibles du processus commencent par une simple mise en œuvre d'un sous-
ensemble des exigences logicielles et améliorent de manière itérative les versions
évolutives jusqu'à ce que le système complet soit mis en œuvre. À chaque itération ,
des modifications de conception sont apportées et de nouvelles capacités
fonctionnelles sont ajoutées. [3]
Développement itératif.
Étapes
Chacune des phases peut être divisée en 1 ou plusieurs itérations, qui sont
généralement limitées dans le temps plutôt que dans les fonctionnalités. Les
architectes et les analystes travaillent une itération avant les développeurs et les
testeurs pour garder leur backlog de travail-produit plein.
Utilisation/Historique
L'instruction DoD 5000.2 publiée en 2000 indiquait une nette préférence pour l'IID :
Il existe deux approches, évolutive et en une seule étape [cascade], pour atteindre la
pleine capacité. Une approche évolutive est privilégiée. … [Dans cette] approche, la
capacité ultime fournie à l'utilisateur est divisée en deux blocs ou plus, avec des
incréments croissants de capacité... le développement logiciel doit suivre un
processus de développement en spirale itératif dans lequel les versions logicielles en
constante expansion sont basées sur l'apprentissage de développement antérieur.
Cela peut aussi se faire par phases.
On peut en voir des exemples dans un certain nombre d'industries. Un secteur qui a
récemment été considérablement touché par ce changement de mentalité a été l'
industrie des lancements spatiaux , avec de nouvelles forces concurrentielles
substantielles à l'œuvre résultant d'une innovation technologique plus rapide et plus
étendue résultant de la formation d' entreprises privées poursuivant le lancement
spatial. Ces sociétés, telles que SpaceX [8] et Rocket Lab , [9] fournissent désormais
toutes deux des services commerciaux de lancement orbital au cours de la dernière
décennie, ce que seuls six pays avaient fait avant il y a une décennie [10] . Nouvelle
innovation dans les approches de développement technologique, les prix et les offres
de services, y compris la capacité qui n'existe que depuis 2016 de voler dans l'espace
sur une scène d'appoint (réutilisable) précédemment volée, diminuant encore le prix
d'accès à l'espace. [11] [8]
SpaceX a été explicite sur ses efforts pour introduire des pratiques de conception
itératives dans l'industrie spatiale et utilise la technique sur les engins spatiaux, les
lanceurs, l'électronique et l'avionique, et les opérations de matériel de vol
opérationnel. [12]
Voir également
Gestion adaptative
Développement logiciel agile
Intégration continue
DevOps § Adoption incrémentielle
Méthode de développement de systèmes dynamiques
Processus de développement de logiciels axé sur les
objectifs
Design d'interaction
Kaizen
Cadre de solutions Microsoft
Analyse et conception orientées objet
OpenUP/Basique
PDCA
Développement rapide d'applications
Libérer tôt, libérer souvent
Remarques
1. ^ Larman, Craig (juin 2003). "Développement itératif et
incrémentiel: Une brève
histoire" (PDF) . Ordinateur . 36 (6) : 47-56. doi :
10.1109/MC.2003.1204375 . ISSN 0018-9162 . S2CID
9240477 . Nous faisions du développement incrémental
dès 1957, à Los Angeles, sous la direction de Bernie
Dimsdale [au ServiceBureau Corporation d'IBM]. Il était
un collègue de John von Neumann , alors peut-être l'a-t-il
appris là-bas, ou l'a-t-il supposé tout à fait naturel. Je me
souviens d'Herb Jacobs (principalement, bien que nous
ayons tous participé) au développement d'une grande
simulation pour Motorola, où la technique utilisée était,
pour autant que je sache...'
2. ^ DOD-STD-2167 Développement de logiciels de
systèmes de défense (04 juin 1985)sur everyspec.com
3. ^ Farcic, Viktor (21 janvier 2014). « Modèles de
développement logiciel : développement itératif et
incrémental » . Conversations technologiques .
4. ^ un b Développement itératif et incrémentiel : Une
brève histoire , Craig Larman et Victor Basili, IEEE
Computer, juin 2003
5. ^ Kendall, Franck ; Gilmore, J. Michael; Halvorsen, Terry
(2017-02-02). « Fonctionnement du système d'acquisition
de la défense » (PDF) . Émissions du DoD . Sous-
secrétaire à la Défense pour les acquisitions, la
technologie et la logistique. p. 12-14. Archivé de
l'original (PDF) le 2017-08-09 . Récupéré le 09/08/2017 .
6. ^ USAID. « Politique opérationnelle du cycle de
programme du chapitre 201 de l'ADS » . Récupéré le 19
avril 2017
7. ^ "Différence entre la cascade et le modèle incrémental" .
19 mai 2016.[ lien mort permanent ]
8. ^ un b Belfiore, Michael (9 décembre 2013). "Le
Fusée" . Politique étrangère . Consulté le 11
novembre 2018 .
9. ^ "Regard intérieur exclusif sur la nouvelle Mega Factory
auparavant secrète de Rocket Lab !" . Astronaute de tous
les jours . 11 octobre 2018 . Consulté le 11
novembre 2018 .
10. ^ Clark, Stephen (28 septembre 2008). "Un doux succès
enfin pour Falcon 1 Rocket" . Vol spatial maintenant .
Consulté le 11 novembre 2018 . la première fusée à
carburant liquide développée en privé à atteindre avec
succès l'orbite.
11. ^ Berger, Éric (2018-06-25). « La fusée russe Proton, qui
précède Apollo, cessera enfin de voler. Des problèmes
techniques, la montée en puissance de SpaceX sont des
facteurs contributifs » . arsTechica . Récupéré
le 26/06/2018 . l'essor rapide d'alternatives à faible coût
telles que la fusée Falcon 9 de SpaceX, a fait passer le
nombre de lancements de Proton au cours d'une année
donnée de huit environ à un ou deux.
12. ^ Fernholz, Tim (21 octobre 2014). "Ce qu'il a fallu à
SpaceX d'Elon Musk pour perturber Boeing, dépasser la
NASA et devenir une entreprise spatiale
sérieuse" . Quartz . Consulté le 11 novembre 2018 . Mais
SpaceX s'est toujours considéré comme une entreprise
technologique, et ses affrontements avec la NASA ont
souvent pris une forme que les développeurs d'ordinateurs
– ou toute personne familière avec le déploiement difficile
de Healthcare.gov – reconnaîtraient comme
générationnelles. SpaceX a suivi un processus de
conception itératif, améliorant continuellement les
prototypes en réponse aux tests. La gestion traditionnelle
des produits nécessite un plan robuste exécuté jusqu'à son
achèvement, une recette pour les dépassements de coûts.
13. ^ Merci, Mike (2015-04-24). "Évolution d'un plan : les
dirigeants de l'ULA énoncent la logique derrière les choix
de conception de Vulcan" . Nouvelles de l'espace .
Consulté le 25 avril 2015 . L'ULA a annoncé le 13 avril
qu'elle développerait une fusée baptisée Vulcan en
utilisant une approche incrémentale dont la première
itération est essentiellement un Atlas 5 équipé d'un
nouveau premier étage.
Les références
Dr Alistair Cockburn (mai 2008). « En utilisant à la fois le
développement incrémentiel et itératif » (PDF) . STSC
CrossTalk . Centre d'assistance technologique logicielle de
l' USAF . 21 (5) : 27-30. ISSN 2160-1593 . Archivé de
l'original (PDF) le 2012-05-26 . Récupéré le 20/07/2011 .
Craig Larman, Victor R. Basili (juin 2003).
"Développement itératif et incrémentiel: Une brève
histoire" (PDF) . Ordinateur IEEE . Société informatique
IEEE. 36 (6) : 47-56. doi : 10.1109/MC.2003.1204375 .
ISSN 0018-9162 . S2CID 9240477 . Récupéré le 2009-
01-10 .
Holly Luyah Didn’t Just Get Famous From Instagram - What Else?
Herbeauty
Share to Facebook
, Number of shares
Share to TwitterShare to WordPressShare to BloggerMore AddThis Share options
, Number of shares
SH AR ES
Search Results
Processus Iteratif et incrémental
Les approches de développement logiciel telles qu'Extreme Programming et Scrum peuvent être
qualifiées d'itérative et incrémentale. Un processus iteratif est un processus dans lequel une
série d'opérations est répétée de manière cyclique, avec l'intention de se rapprocher de plus en
plus d'un certain résultat désiré
Sign in
Search modes
All
Images
News
Videos
Tools
Feedback
Web results
PDF
2.2.12 Les tâches d'un projet logiciel par activités et par phases ................... 5. 2.3. CYCLE DE
VIE DES LOGICIELS EN CASCADE ET EN V..
25 pages
PDF
Cycle de vie du logiciel et bonnes pratiques de développement. Brique BDL. Module Gestion de
Projets Logiciels. Sylvie Vignes.
42 pages
PDF
Problématique du développement logiciel. D'où la nécessité de suivre : 1. Un processus bien
défini : le cycle de vie d'un logiciel.
24 pages
PDF
Cycle de vie : ensemble des étapes de la réalisation, de l'énoncé des besoins à la maintenance
ou au retrait du logiciel. L'origine de ce découpage provient du ...
21 pages
PDF
Cycle de vie du logiciel. – Définition des besoins (cahier des charges). – Analyse des besoins
(spécification). – Planification (gestion de projet).
103 pages
Related searches
Cycle de vie en V
Feedback
Page navigation
123456789 1 Next
0
Footer links
Chad
N'Djamena
- From your IP address
- Update location
HelpSend feedbackPrivacyTerms
1.
16 nov. 2009 — Le modèle qui vient d'être décrit est celui utilisé par la plupart
des projetsactuels, Agile ou non. C'est une stratégie par étape qui a connu ...
Ces différences semblent avoir été oubliées depuis. Je vois maintenant des équipes
qui souhaiteraient faire de l’Agile et qui souffrent de ne faire que du développement
incrémental, là où j’avais l’habitude de voir des projets, basés sur le modèle en
cascade, souffrant de ne faire aucun des deux ou seulement du développement
itératif.
Les deux sont nécessaires. Les gens ont besoin d’apprendre à les utiliser
séparément et ensemble.
Définitions, s’il vous plaît !
Brièvement :
Dans la pratique, il est conseillé d’utiliser les deux à doses raisonnables. Si vous
faites seulement de l’incrémental, il pourra y avoir une surprise désagréable à la fin
quand la qualité ne sera pas au rendez-vous. Si vous faites de l’itératif sur
l’ensemble du système, les effets dominos dus aux nombreux changements pourront
facilement vous faire perdre le contrôle du projet.
Figure 1:
Le mode de validation en V est un acte normal de la vie.
La figure 1 devrait vraiment être lue à l’envers, comme un diagramme de
dépendance : nous ne pouvons pas livrer tant que nous n’avons pas débogué et
validé; nous ne pouvons pas déboguer tant que nous n’avons pas codé; nous ne
pouvons pas coder tant que nous n’avons pas conçu; nous ne pouvons pas
concevoir tant que nous n’avons pas décidé quoi concevoir.
Développement incrémental
Dans le développement incrémental, nous découpons les tâches en petits morceaux
et les planifions pour être développées au fil du temps et intégrées dès qu’elles sont
terminées. Les figures 2 à 4 illustrent ce cycle.
Le modèle qui vient d’être décrit est celui utilisé par la plupart des projets actuels,
Agile ou non. C’est une stratégie par étape qui a connu beaucoup de succès.
L’erreur que font aujourd’hui les gens c’est d’oublier d’itérer. Ils ne prennent pas le
temps d’apprendre à partir de ce qu’ils ont mal compris quand ils ont décidé de ce
qu’il fallait construire au tout début et de réfléchir à ce qui devait être amélioré dans
la phase de conception.
Cette erreur aboutit au classique échec de livrer des choses que les gens ne veulent
pas. Je tiens à souligner que, même de nombreuses équipes de projet Agile
commettent cette erreur.
Développement itératif
Avec le développement itératif, nous réservons du temps pour améliorer ce que nous
avons.
Les spécifications et les interfaces utilisateurs sont historiquement connues pour être
génératrices de tâches d’adaptation, mais ce ne sont pas les seules. La technologie,
l’architecture et les algorithmes sont également susceptibles d’avoir besoin
d’inspection et d’adaptation. La sous-performance est souvent mal anticipée dans les
premières phases de conception, et nécessite une grosse adaptation de
l’architecture.
Développez le système aussi bien que possible en ayant à l’esprit que, si c’est
suffisamment bien fait, les modifications seront minimes et pourront être
rapidement intégrées.
Développez le moins possible avant que cela soit soumis à évaluation, en ayant
à l’esprit que vous aurez limité le gaspillage lorsque vous aurez la bonne
information.
Il y a des aficionados des deux approches. En effet, les deux fonctionnent bien dans
certaines circonstances. Un chef de projet doit apprendre à utiliser les deux.
Léonard dessine une esquisse de ce qu’il compte faire (figure 6) et se dirige vers son
client en demandant : “Est-ce que ça va vous aller ?”
Le client répond : “Non, non, non. Elle ne peut pas regarder à droite, elle doit
regarder vers la gauche !”. Heureusement, Léonard n’a pas trop travaillé pour le
moment, donc c’est facile à changer.
Léonard s’en va, renverse l’image, rajoute un peu de couleur et des détails (figure 7).
Il revient voir le client : “J’en ai à peu près réalisé le tiers. Qu’en pensez-vous
maintenant ?”
Le client répond : “Non, vous ne pouvez pas lui faire une tête de cette taille !
Proportionnez sa tête avec le reste de son corps.” (Oui, ils avaient l’équivalent de
Photoshop et des options de retouche d’image à l’époque – cela s’appelait
“Léonard”).
Le client dit : “Vraiment, j’aurai préféré qu’elle ait les yeux plus gros, mais d’accord, je
vous paye, disons-que c’est terminé.”
Ce que je voudrais souligner c’est que les deux stratégies sont valides et les deux
portent l’étiquette “itératif”. Dans les deux cas, des remaniements ont été effectués
sur une partie existante du système.
La figure 9 montre une stratégie dans laquelle chaque cycle incrémental comprend
deux étapes d’examen/adaptation du système avant que le résultat soit intégré et
prêt à livrer. La figure montre trois phases de développement incrémental, chaque
incrément est intégré une fois terminé, le tout est ensuite prêt à être déployé.
Ceci est un, mais seulement un, des moyens d’associer les deux. Tant qu’ils sont
clairement dans l’état “Examen” ou “Prêt à être livré” (ou “Prêt à être déployé”, ce qui
est encore mieux), les Vs peuvent être combinés dans tous les sens.
Les itérations sont considérablement plus difficiles. Elles sont difficiles à séparer,
difficiles à estimer, et difficiles à planifier. Bien sûr, être difficile ne signifie pas que
vous n’avez pas à faire toutes ces choses. Vous devez les faire, et répondre aux
trois questions suivantes :
Vous aurez besoin d’estimer et tester vos propres ratios, mais ceux que j’ai proposé
ne doivent pas être si mauvais que ça pour une première estimation.
Trois histoires
Pour finir, je vous raconte trois histoires de développement incrémental / itératif qui
se sont bien ou mal passées. Le premier, le projet “Baker”, met en jeu de l’itératif
mélangé avec de l’incrémental, sachant qu’ils auraient dû faire de l’incrémental
lorsqu’ils faisaient de l’itératif. Le second, le projet “Laddie”, témoigne du problème
des projets modernes Agile qui font de l’incrémental sans itératif. Le dernier projet,
“Winifred”, s’est bien déroulé.
Le projet Baker était à coût et périmètre fixés et comptait 200 personnes. Elles
travaillaient selon un cycle mensuel (une stratégie de développement incrémental).
Les équipes étaient séparées et travaillaient selon un mode pipeline de telle façon
que les spécificateurs rédigeaient pendant 1 mois avant de passer leurs livrables aux
concepteurs le début du mois suivant. Un mois plus tard, les concepteurs
transmettaient leurs livrables aux programmeurs qui développaient pendant un mois.
À la fin, les testeurs recevaient des morceaux de code à tester et intégrer.
Le tohu-bohu qui a suivi est exactement ce que à quoi vous pensez. Chaque mois,
les spécificateurs révisaient des parties des spécifications, qui changeaient des
parties de la conception et des développements. Dès le troisième mois, il était
évident pour les développeurs qu’ils étaient en train de programmer un système qui
était déjà en cours de modification chez les concepteurs qui eux-mêmes étaient
simultanément conscients qu’ils étaient en train de concevoir un système qui était
déjà en cours de modification chez les spécificateurs. Les testeurs n’ont jamais rien
reçu qui corresponde.
Le projet Baker était en difficulté dès le départ, en partie à cause à cette stratégie de
pipeline, mais plus encore à cause de la non maîtrise de chaque itération.
Le projet Laddie utilisait une approche Agile avec des itérations de deux semaines.
Toutes les user stories étaient répertoriées dans une longue liste et réalisées à la fin
de chaque itération (c’était leur stratégie de développement incrémental). À la fin de
chaque itération, on montrait au client ce qui avait été construit durant ces deux
semaines. Bien entendu, deux semaines étant un délai très court, il n’y avait jamais
assez de temps pour montrer au client ce qui avait été conçu et il y avait donc
généralement des corrections à apporter.
Le client s’était plaint après un moment qu’il sentait qu’il fallait bien faire les choses
dès la première fois puisque les choix qu’ont lui laissaient sur le comment et quand il
faudrait corriger les erreurs n’étaient pas très agréables. Ceci, avait-il correctement
estimé, violait l’esprit même du développement Agile.
Le projet Winifred était à prix, périmètre et délai fixé, 18 mois avec une pointe à
environ 45 personnes. Le cycle de développement était de trois mois, chaque fin de
cycle entraînant un déploiement (c’était la stratégie des petits pas).
Il n’y avait pas de stratégie incrémentale particulière requise au sein de chaque cycle
de développement. Les équipes pouvaient développer les fonctionnalités dans l’ordre
qu’elles souhaitaient. Par contre, chaque équipe devait montrer ses travaux en cours
aux utilisateurs finaux au minimum deux fois par cycle, de sorte que les utilisateurs
pouvaient modifier ou corriger ce qui était en cours de construction (ceci était leur
stratégie de développement itératif). Cela devait être le logiciel réel, de l’interface
utilisateur jusqu’à la base de données, et non de simples maquettes d’écran
bouchonnées.
Le projet Winifred a été déployé avec succès et les utilisateurs ont obtenus plus ou
moins ce qu’ils voulaient. Le système est encore utilisé et est encore maintenu dix
ans plus tard, ce qui est un bon indicateur de réussite.
Résumé
Le terme “incrément” signifie à la base “ajouter”.
Le développement itératif vous aide à améliorer la qualité de votre produit. Oui, cela
veut dire remanier (~rework), et oui, vous aurez probablement besoin d’en faire un
peu pour obtenir un produit propre.
Ce(tte) oeuvre est mise à disposition selon les termes de la Licence Creative
Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes
Conditions 4.0 International.
les-traducteurs-agiles
traducteuragile