Agile

Agile is an iterative approach to project management and software development that helps teams deliver value to their customers faster and with fewer headaches.  In an agile team, they deliver work in smaller, and workable, but consumable, increments. Requirements, plans, and results are evaluated continuously so teams have a natural mechanism for responding to change quickly.

During my first internal Agile training, I was introduced to the Agile Manifesto. Many scrum masters and trainers use it for Agile 101 Introduction.

Manifesto for Agile Software Development

While there is value in the items on the right, we value the items on the left more.

Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan

Agile Project Management (APM) is an iterative approach to planning and guiding project processes. Just as in Agile Software Development, an Agile project is completed in small sections. These sections are called iterations.

Here is the definition of Scrum and Kanban. My current projects are using Scrum methodology. I am writing this blog to give me better understanding about Agile and how I can apply it into my work and personal life goals.

What is Scrum?

Scrum is a framework that helps teams work together. Scrum encourages teams to learn through experiences, self-organize while working on a problem, and reflect on their wins and losses to continuously improve. While the Scrum I’m talking about is most frequently used by software development teams, its principles and lessons can be applied to all kinds of teamwork. 

Often thought of as an agile project management framework, Scrum describes a set of meetings, tools, and roles that work in concert to help teams structure and manage their work.

https://www.atlassian.com/agile/scrum

Keywords in Scrum

  • Sprints
  • Sprint Planning
  • Ceremonies
  • Backlogs
  • Sprint Reviews
  • Standups
  • Scrum Master
  • Roles
  • Retrospective

What is Kanban?

Kanban is a popular framework used to implement agile software development. It requires real-time communication of capacity and full transparency of work. Work items are represented visually on a kanban board, allowing team members to see the state of every piece of work at any time.

Kanban is all about visualizing your work, limiting work in progress, and maximizing efficiency or flow. Kanban teams focus on reducing the time it takes to take a project or user story from start to finish.

Keywords in Kanban

  • Cards
  • Boards
  • Work In Progress (WIP) limits

Scrum or Kanban?

Reference: https://www.atlassian.com/agile/kanban/kanban-vs-scrum