Proposition forge agile 1.0

26

description

 

Transcript of Proposition forge agile 1.0

Page 1: Proposition forge agile 1.0
Page 2: Proposition forge agile 1.0

Proposition deforge Agile

by ekitov1.0 avril 2012

Laurent MeurisseNicolas Deverge

Page 3: Proposition forge agile 1.0

3

Thèmes abordés➡ interactions

➡ artefacts

➡ outils

➡ outils (iOS)➡ traçabilité

➡ collaboration sociale

➡ livraison continue

Page 4: Proposition forge agile 1.0

4

Pourquoi une Forge Agile➡ les outils de collaboration, d'industrialisation, de

développement et d’industrialisation doivent être spécifiques sur un projet agile.

➡ L'implémentation de cette forge est ici présentée avec le socle Atlassian  dont nous estimons mature, intégré et innovant. D'autres implémentations sont possibles.

Page 5: Proposition forge agile 1.0

interactions

5

Page 6: Proposition forge agile 1.0

Interactions

Spécification

Planifier, assigner, Task Coding

Document

Qualité du code, Revue de code

Intégration & Déploiement

Continue

Tester

Test d'acceptance Automatique

Métier DévelopementIntégration

continue

Tests Unitaires Automatiques

1

2 3

45

78

9 6

6

Page 7: Proposition forge agile 1.0

1.Spécification➡ Règles métiers, Exigences Non fonctionnelles, IHM

2.Plannifier, Assigner

➡ Création du backlog, valorisation/estimation, planification/assignation, roadmap

➡ Workflow de développement➡ Suivi projet

3.Coding

➡ Développement de l’application

Interactions

7

Page 8: Proposition forge agile 1.0

4.Intégration et déploiement continu➡ Packaging, Build automatique

➡ Déploiement sur plateformes

5.Tests unitaires automatiques

➡ A chaque commit : exécution des tests unitaires.

6.Tests d’acceptance automatique

➡ Exécute l’acceptance métier

➡ Réalisée par l’un des outils (greenpepper, fitnesse, cucumber, jBehave...)

Interactions

8

Page 9: Proposition forge agile 1.0

7.Qualité du Code, Revue du Code➡ Mesure de la qualité du code

➡ Mesure de la couverture des test (pour chaque nouvelle release)

➡ Revue et commentaire du code et création de tâches de refactoring

8.Tests utilisateurs exploratoires ➡ Pour chaque story du backlog, l’utilisateur teste

l’application de manière exploratoire.

Interactions

9

Page 10: Proposition forge agile 1.0

9.Documentation➡ Ecriture de la documentation technique et

fonctionnelle (sous forme de wiki) représentant le référentiel du produit

Interactions

10

Page 11: Proposition forge agile 1.0

artefacts

11

Page 12: Proposition forge agile 1.0

Artefacts

Spécification

Planifier, assigner, Task Coding

Document

Qualité du code, Revue de code

Intégration & Déploiement

Continue

Tester

Code (Git/SVN)

Référentiel Métier & Technique

Backlog

Repository

Tests d'acceptance

Tests Unitaires & Acceptance

Automatiques

12

Page 13: Proposition forge agile 1.0

outils

13

Page 14: Proposition forge agile 1.0

Outils

Specifications

Planifier, assigner Coding

Documentation

Qualité du code, Revue de code

Intégration & Déploiement

Continue

Tester

Test d'acceptance Automatique

Tests Unitaires Automatiques

14

➡ exemple d’implémentation avec la suite Atlassian et d’autres outils indépendants.

Page 15: Proposition forge agile 1.0

Atlassian Confluence➡ Wiki, blog, travail collaboratif

Atlassian Greenhopper/Jira

➡ Périmètre fonctionnel (backlog)

➡ Planification, roadmap➡ Suivi de la réalisation

➡ Bug tracking

Atlassian Fisheyes

➡ Consultation du code source➡ Multi repository

➡ Delta & merge de code

Outils

15

Page 16: Proposition forge agile 1.0

Atlassian IDE Connector➡ Intégration de l'IDE Eclipse avec la suite Atlassian

Atlassian Bamboo

➡ Intégration Continue

Fitnesse, GreenPepper, Cuncumber➡ Acceptance automatique de la couche métier

➡ Les spécifications exécutables servent de test.

Selenium

➡ Acceptance automatique de l’interface utilisateur web

Sonar

➡ Mesure de la qualité de code (automatique)

Outils

16

Page 17: Proposition forge agile 1.0

Crucible➡ Revue de code collaborative

Clover

➡ Couverture des tests unitaires (et focus sur les ajouts de code à chaque release)

Bonfire➡ Tests utilisateurs via un explorateur

Outils

17

Page 18: Proposition forge agile 1.0

outils (iOS)

18

Page 19: Proposition forge agile 1.0

Outils

19

➡ exemple d’implémentation pour des applications iOS

Backlog, Planifier

Coding

Intégration & Déploiement

Continue

Tester

Test d'acceptance Automatique

Tests Unitaires Automatiques

UIAutomation

OCUnit GHUnit

Franck

GTM

Sketchesstoryboarding

prototypage

application

Page 20: Proposition forge agile 1.0

traçabilité

20

Page 21: Proposition forge agile 1.0

Traçabilité

➡ intégration & connexion API entre les applications de bout en bout

21

Page 22: Proposition forge agile 1.0

collaborationsociale

22

Page 23: Proposition forge agile 1.0

23

Spécification

Planifier, assigner, Task Coding

Document

Qualité du code, Revue de code

Intégration & Déploiement

Continue

Tester

Test d'acceptance Automatique

Métier Dévelopement

Tests Unitaires Automatiques

intéractions

entre individus

collaboration sociale Partager au réseau de l'inidividu

Flux d'activité

tagging social (mentions)

compétence individu

timeline individu

➡ la forge devient une plateforme sociale et collaborative de bout en bout

Page 24: Proposition forge agile 1.0

livraison continue

24

Page 25: Proposition forge agile 1.0

25

Livraison Continue

SERVEUR OPSSERVEUR STAGING

Déploiement ContinueIntégration Continue

RUN

SERVEUR D'ACCEPTANCE

Test d'acceptance

AutomatiqueTester

TESTS

Demo

DEMO

Code (Git/SVN) Repository

➡ intégration, déploiement en continue sur les plateformes d’acceptance, de staging et de prod

Page 26: Proposition forge agile 1.0