Agile Development

How many time did you fail your long-term plans for the next year?

Posted by Xiaoye's Blog on March 15, 2020

TOC

  1. TOC
  2. Basic Concepts
    1. Agile and Lean
      1. Agile Development
    2. Scrum, Extrem Programming (XP) & Kanban
    3. Planning Poker & Cause-Effect Diagrams
  3. Actual Practices
  4. Ref

Basic Concepts

Agile and Lean

Agile and lean can be seen as cousins with common values but different origins. Lean arose from manufacturing, while agile arose from software development.

Agile Development

  1. Iterative development is the core of agile development.
    1. develop by iterations, that is, shorter periods of time where the whole process happens(planning, development, tests, release, client feedback)
  2. Use incremental development to set goals for every iteration.
  3. Advantage of agile development:
    1. Release quickly
    2. Reduce risk to fail (fail quickly, iterate quickly)
  4. Steps of every iteration
    1. Requirments analysis
    2. Design
    3. Coding
    4. Testing
    5. Deployment/evaluation

Scrum, Extrem Programming (XP) & Kanban

Unlike Waterfall model, Scrum and XP are based on agile methodoligy. Scrum focuses on structure and communication and XP adds engineering practices, Kanban focuses on visuslizing flow and managing bottlenecks.

The Scrum aitifacts are:

  1. Product backlog: client wisht list
  2. Spring backlog: Sprint planning list
  3. Product incrementa: item completed during a sprint

Three Roles in Scrum

  1. Product owner: define and prioritize the items in product backlog
  2. Scrum master
  3. Scrum team

For Kanban, refer to one day in Kanban land

Planning Poker & Cause-Effect Diagrams

Solve problem, not symptom. Without this type of analysis, we tend to jump to conclusions and execute ineffective and conterproductive changes.

I love the explanations about cause-effect diagrams in the book ‘learn from the trenches’

Actual Practices

To be finished…

Ref

  1. 敏捷开发入门教程
  2. 敏捷开发之Scrum
  3. Agile and Scrum Overview
  4. Lean from the Trenches-managing large-scale project with Kanban