January 6, 2017

Agile Methodology: Putting Change to Work

by Ben Bachtler

If you’re curious about the different approaches to product management, then Agile Methodology should be of great interest to you. What is Agile Methodology? It is a team-based approach to product management involving incremental cadence and empirical feedback. Agile enables adaptation to change and unpredictability.

One of the most popular forms of implementing Agile is through the use of Scrum. Scrum is a routine process of communication between three roles during the development lifecycle: Scrum Master, Team, and Product Owner. The responsibility of the traditional project manager is split up among these 3 roles. Within Scrum, there are a number of development cycles called “Sprints”. Sprints normally last about two weeks, with the goal for each Sprint being a shippable increment for the product.

Scrum has 5 different meetings:

Sprint Planning – A collaborative effort involving the Scrum Master, who facilitates the meeting, the Product Owner, who clarifies the details of the product backlog items and their respective acceptance criteria, and the Team, who define the work and effort necessary to meet their sprint commitment.

Daily Scrum – On each day of a sprint, the team holds a meeting called the “daily scrum.” Meetings are typically held in the same location and at the same time each day. Ideally, a daily scrum meeting is held in the morning, as it helps set the context for the coming day’s work.

Backlog Refinement – A meeting that is held near the end of a sprint to ensure the backlog is ready for the next sprint.

Sprint Review – At the end of each sprint, a sprint review meeting is held. During this meeting, the team shows what they accomplished during the sprint. Typically this takes the form of a demo of the new features.

Sprint Retrospective Meeting – The Team discusses the just-concluded sprint and determines what could be changed that might make the next sprint more productive.

Now that you understand how Agile operates, let’s take a moment to reflect and compare.

Before Agile and Scrum, the classic “waterfall” approach reigned supreme. In a waterfall, theoretically, every requirement for a project can be identified before any design or coding occurs. Then, each phase of development is to be carried out sequentially.

While this seems straightforward, a few issues arise. In a waterfall, there is an inherent lack of communication between specialized teams given the sequential nature of the methodology. As a result, sudden and unforeseen changes to requirements, specifications, timelines, and the product itself can lead to headaches, conflicts, missed timelines, and poor end-products. It is easy to see how flexibility and adaptability can diminish the negative consequences that accompany unforeseen changes.

Agile Methodology is designed to provide this crucial adaptability. Given the regular structure of communication, Agile enables every role to assess a host of variables throughout the lifecycle, ensuring changes can be taken in stride. Striving towards presenting a potentially shippable product increment in each iteration, work cycles are driven ever forward, avoiding “paralysis by analysis”. Furthermore, each cycle gives stakeholders recurring opportunities to calibrate success and acknowledge improvement opportunities, allowing the product to be as competitive as possible while preserving its relevance.

The environment in which your products live is ever-changing. Agile Methodology ensures that those changes work for you, not against you.

 

Ben Bachtler is a Demandware applications engineer on the eCommerce implementation team in LYONSCG’s Chicago office.