About the Agile Framework

There are many Agile frameworks that manage and deliver projects. But, the most commonly used Agile methodology is Scrum.  In addition, other common Agile methodologies are Lean, Kanban Software Development, and Extreme Programming (XP).

These Agile frameworks often share principles, characteristics, and practices. However, each has its own specific practices, terminology, and implementation tactics. We have summarized some of the most well know Agile methodologies.

Scrum – Most recognized Agile Framework

Scrum is the most recognized and internationally used Agile framework. In addition, this framework was developed mainly by Ken Schwaber, Mike Beedle and Jeff Sutherland. Scrum success is probably due to the fact that the methodology is easy to learn and apply, and teams can use it to handle a wide range of products.

Further, there are many roles within the scrum methodology. Firstly, the “Product Owner” works closely with the team to identify and prioritize requirements and recorded them in the Product Backlog. This artifact records the items (e.g., features, product defects, non-functional requirements, and technical requirements) that the team can address in order to successfully deliver a working product. With priorities driven by the Product Owner, the development team estimates and commits to deliver “potentially shippable increments” during successive sprints, typically lasting from one to four weeks. Once the product owner and development team agree on the scope of the iteration, only the team can add additional requirements to the sprint. Once a sprint has been completed, the Product Backlog may be refined if necessary. The next set of requirements is then selected for the next Sprint.

Agile Framework

Lean and Kanban Software Development

Lean Software Development is an iterative Agile Framework originally developed by Mary and Tom Poppendieck. Its principles and practices are based on Lean management originally developed in companies like Toyota.

This agile framework focuses on delivering value to the customer and on improving the efficiency of the process steps that deliver value to the customer. Its main principles are:

  • Firstly, eliminating Waste
  • Secondly, amplifying Learning
  • Thirdly, deciding as Late as Possible
  • Fourthly, delivering as Fast as Possible
  • Fifthly, empowering the Team
  • Sixthly, building Integrity In
  • Finally, seeing the Whole

Lean methodology eliminates waste by focusing on valuable products and delivering them in small batches. It highlights the speed and efficiency of the development workflow, maintaining constant communication between the team and the customer.

Lean’s underlying idea is that the customer request draws the product. It also focuses on the resources’ efficiency, ensuring that everyone is producing as much as possible and reducing intra-team workflow dependencies.

Lean also suggests that the team tests at the same time that develops the code.

Agile teams use Kanban to continuously create and deliver products without being overburdened.

Kanban is based on 3 basic principles:

  • Firstly, visualize what you do today (workflow) to understand the context of all items in the big picture.
  • Secondly, limit the amount of work in progress (WIP) to maintain the team’s focus and efficiency.
  • Finally, enhance flow, pulling additional items from the backlog only when the ongoing work is complete.

Kanban stimulates continuous collaboration, learning, and improving by designating the best team workflow.

Extreme Programming (XP)

XP is one of the most popular Agile frameworks. It was first described by Kent Beck.

XP is a very disciplined approach to delivering quality software, swiftly and continuously. Customers are highly involved, in providing feedback and adjusting the product requirements.

Moreover, the original XP is based on four values, simplicity, communication, feedback, and courage and twelve practices:

  • Planning Game
  • Small Releases
  • Customer Acceptance Tests
  • Simple Design
  • Pair Programming
  • Test-Driven Development
  • Refactoring
  • Continuous Integration
  • Collective Code Ownership
  • Coding Standards
  • Metaphor
  • Sustainable Pace

Agile Frameworks

about-me
hero-pattern
Agile Certifications

Agile Certifications

There are many different Agile certifications based on different Agile Frameworks. On this post we will address the most important and relevant ones.

hero-pattern
hero-pattern