Le Guide Agile par Wishtack
  • Le Guide Agile par Wishtack
  • Sans Agilité
    • Bottom-up vs Top-down
    • Exemple de Régression Naturelle
  • Agile Manifesto
  • Scrum
    • Théorie et Piliers du Scrum
    • Valeurs du Scrum
    • Scrum Team
    • Artefacts
      • Product Backlog
      • Sprint Backlog
      • Increment
      • User Story
      • Epic
      • Expression du Besoin
      • Definition of Done
      • Definition of Ready
    • Evénements
      • Sprint
      • Sprint Planning
      • Stand-Up Meeting ou Daily Scrum
      • Sprint Review
      • Sprint Retrospective
      • Backlog Refinement
      • Timeboxing
    • Mesures & Outils
      • Story Points vs Temps
      • Valeur, Bugs et Chores
      • Vélocité
      • Scrum Board
      • Burn Down Chart
      • Burn Up Chart
      • Technical Debt
  • Priorisation & Planning
    • Le Modèle de Kano
    • La Méthode MoSCoW
    • Release Planning
    • User Story Mapping
  • eXtreme Programming
    • Apprendre à Conduire
    • Valeurs de l'eXtreme Programming
    • Pratiques de l'eXtreme Programming
    • Testing
    • Intégration Continue, Livraison Continue et Déploiement Continu
      • Intégration Continue
      • Livraison Continue
      • Déploiement Continu
      • Review Apps
  • Indicateurs
  • Kanban
    • Principes du Kanban
    • Workflow
    • Indicateurs et Paramètres
    • Classes of Service
  • Transformation Agile
    • Projet Pilote
    • Plan de Passage à l'Agilité
    • Le Changement
    • Contractualisation
    • Management
    • Scrum of Scrums
  • Agile at Scale
  • Transformation Etape par Etape
  • Outils
  • Quelques Liens
  • Bonus
    • The "Rong" Way to do Agile
    • Agile Causal Relations
    • Talks
Powered by GitBook
On this page
  • Bottom-up
  • Top-down
  1. Sans Agilité

Bottom-up vs Top-down

Bottom-up

La tradition académique veut que l'on conçoive et que l'on développe les applications de bas en haut.

  1. On développe une couche générique.

  2. On essaie de répondre à tous les besoins que l'on peut imaginer et qui finissent souvent par être surréalistes.

  3. On perd donc beaucoup de temps pour du développement superflu.

  4. On se retrouve avec une interface inutilisable.

SocialNetworkMessage(
    recipient_group_list=[
        RecipientGroup(
            can_edit=False,
            can_reply=False,
            is_anonymous=False,
            private=True,
            recipient_list=[user1, user2]
        ),
        RecipientGroup(
            can_edit=True,
            can_reply=True,
            is_anonymous=True,
            private=False,
            recipient_list=[user3, user4]
        )
    ],
    is_embeddable=False,
    message_expiration=datetime(2025, 10, 1),
    show_thumbnail=True,
    ...
)

... ou sans named parameters

SocialNetworkMessage(
    [
        RecipientGroup(
            False,
            False,
            False,
            True,
            [user1, user2]
        ),
        RecipientGroup(
            True,
            True,
            True,
            False,
            [user3, user4]
        )
    ],
    False,
    datetime(2025, 10, 1),
    True,
    ...
)

Attention à l'"Over-Thinking"

Top-down

Dans le bâtiment, il n'est pas évident de construire des escaliers de haut en bas mais dans l'univers virtuel du développement, on peut.

Peu importe le point de départ de l'escalier, ce qui compte est que celui-ci arrive au 1er étage. Dans ce cas, il est préférable de commencer par le point d'arrivée c'est à dire l'étage; ainsi nous sommes sûrs que l'escalier arrivera bien au bon niveau et non quelques centimètres plus bas ou plus haut car nous avons oublié de prendre en compte l'épaisseur du carrelage.

L'approche top-down permet de garantir que le développement répond au besoin et uniquement au besoin, évitant ainsi le développement superflu.

PreviousSans AgilitéNextExemple de Régression Naturelle

Last updated 6 years ago