Agile Glossary Part 1: Scrum, Kanban, and Extreme Programming (XP)

Original
Sanplex Content
2020-12-28 15:00:00
3419
Summary : This Agile glossary part one explains the core principles and practices of three major software development methodologies: Scrum, Kanban, and Extreme Programming (XP). It highlights key concepts like iterative development, visualizing workflows, and core agile values.
Sanplex: The best Jira alternative with for complete lifecycle management
Download Now

In this Agile glossary, we’ll explain 19 key Agile terms that will help you decode this software development methodology.

Key Terms to Cover:

  • Scrum
  • Kanban
  • Extreme Programming (XP)
  • Acceptance Testing
  • Backlog
  • Burn Down Chart
  • Daily Meeting
  • Effort Estimates in Abstract Units (Points)
  • Impediment
  • Iteration
  • Iteration Planning
  • Iteration Velocity
  • Kanban Board
  • Release Planning
  • Task Board
  • Test-Driven Development
  • User Story
  • Workflow
  • Work-in-Progress (WIP)

1. SCRUM

Scrum is an Agile methodology for software project management. Scrum was invented in 1993 by Jeff Sutherland, John Scumniotales, and Jeff McKenna. According to the latest surveys, Scrum is the most popular Agile project management methodology in software development. Scrum is often mixed with Extreme Programming engineering practices, like TDD and refactoring, for better results.


Core Scrum practices include:

  • Backlog: (Product, Release, and Sprint Backlogs - lists of all functionality in the product, release, and sprint, respectively).
  • Iterative development: (The whole project gets divided into Sprints, usually lasting 4 weeks each).
  • Scrum meetings: (Daily meetings where team members answer the following questions: What have you done since the last daily scrum? What has impeded your work? What do you plan on doing between now and the next daily scrum?).
  • Burn Down Charts: (Charts that show Sprint, Release, and Product progress).
  • Sprint review meeting: (Provides an inspection of project progress at the end of every Sprint).

2. Kanban

The Kanban Method for application to IT and software development was formulated by David Anderson in 2010 as an approach to incremental, evolutionary process and systems change for organizations. It uses a work-in-progress limited pull system as the core mechanism to expose system operation (or process) problems and stimulate collaboration to continuously improve the system. Visualization is an important aspect of Kanban as it allows teams to understand the work and the workflow. Although Scrum is still the most popular methodology, Kanban adoption within organizations is growing at a fast rate.


Core Kanban practices include:

  • Visualize the workflow: (Written in Kanji [Chinese characters], "Kanban" means "sign" or "large visual board." Kanban boards are one of the ways to display progress).
  • Limit Work-In-Progress (WIP): (Use a pull system – establish and respect your ideal capacity).
  • Manage Flow: (Monitor, measure, and report the flow of work through each state).
  • Make Process Policies Explicit: (Describe the process accurately in order to improve it).
  • Implement Feedback Loops: (Compare expected outcomes with actual outcomes and make adjustments).
  • Improve Collaboratively, Evolve Experimentally: (Use models and the scientific method to implement continuous, incremental, and evolutionary changes).

3. Extreme Programming (XP)

Extreme Programming is a software engineering methodology. It is built on five core values: Communication, Simplicity, Feedback, Courage, and Respect. These values are supported by numerous agile practices (e.g., Pair programming, Planning game, Continuous integration, Small releases, Simple design, etc.).

Write a Comment
Comment will be posted after it is reviewed.