Agile Scrumban – Built on the Fabric of Scrum and Kanban

Scrumban, a hybrid of Scrum and Kanban flavors of Agile, offers the best of both worlds. Scrumban ensures that a highly versatile workflow management is achieved by integrating the flexibility and visualization of Kanban into the structure of Scrum. Scrumban thus offers a middle ground to the Scrum’s structure overhaul, and Kanban’s unstructured approach – making it useful for both development and maintenance projects.

To fully understand Scrumban, let us first understand the main individual characteristics of Scrum and Kanban.

Scrum

  • Small, cross-functional self-organizing teams
  • Work is split into a list of small deliverables, sorted by priority
  • Prescribed roles- Scrum Master, Product Owner, Development Team
  • Short fixed length iterations with potentially shippable code demonstrated after each iteration
  • Approach is to inspect and optimize the release plan, and update priorities
  • Retrospectives occur after each iteration

In Scrum, the work to be done for the next sprint is chosen beforehand, and the sprint is then locked till the work is done. And at the end of the sprint duration, the queue is empty.

Kanban

  • Workflow Visualization through Kanban Board
  • No prescribed roles
  • Limits WIP – limits the items in process at any given time
  • Measures lead time and optimizes the process to improve the lead time

In Kanban, the work keeps flowing, and although the size of the queue is limited, the items in the queue can be changed at any time.

Scrum and Kanban: The Divide

Both these approaches have their own pros and cons, and work on different ideologies. Whereas Scrum has a set of prescribed roles, Kanban has none. Meetings are an integral part of Scrum, while Kanban has no such requirements. Besides, unlike Scrum, Kanban does not have a fixed time limit for development.

Let us observe how Scrumban fixes this divide, and coalesces  an ingenious approach absorbing the best of both.

Scrumban

Introduced by Corey Ladas, Scrumban was initially developed as a method of transitioning a development team from Scrum to Kanban. However, it has evolved as a methodology on its own, combining the finest elements of both Scrum and Kanban.

Scrumban Methodology: Filling the Void

  • Scrumban makes iterations short and optional while imbibing Kanban’s approach of continuous workflow. Items are worked upon as and when they appear, with no prioritized and committed product backlog items. Prioritization on demand technique is normally used.
  • Scrumban has a definite team, but only requires roles as needed. There is no definite number, and roles are more specialized and less cross-functional than in Scrum teams. Team members are free to choose the task they like using the pull system.
  • Scrumban boards are used like Kanban for workflow visibility with the columns – ToDo, Doing, and Done. The board is persistent – only the tasks and priorities change.
  • Like Scrum, Scrumban involves daily meetings, however, embraces on-demand planning at regular intervals, rather than sticking to release-planning meeting or retrospectives at the end of the sprint like Scrum.
  • Like Kanban, Scrumban does not have a specific time constraint. Through the use of WIP limits on columns within their task board, the team limits itself. In Scrumban, a WIP limit is normally equal to the number of people in the team, but can be expanded based on work specifications.
  • Like Kanban, Scrumban relies on measuring the lead time and cycle time as the key metric to estimate the average time of completion of a specific task.
  • Feature Freeze is used in Scrumban when project deadline is near, which implies that the features the team already has for development can only be worked on, and no additional features can be added.
  • Finally, triage is critical as Scrumban does not embrace estimating. Scrumban triage enables termination of less significant features in order to complete essential features on time.

Scrumban definitely brings in the best of both worlds, however, application of Scrumban is not conducive for every environment and culture. Scrumban is apt for fast-paced processes or projects that require continuous product manufacturing with dynamic environments. Let us understand the applicability criterion for Scrumban.

Suitability of Scrumban

To sum up, Scrumban is ideally suited for:

  • Projects that involve great deal of unexpected change to user stories and priority reworking. For example- maintenance projects like event driven work or help-desk/support.
  • Teams focused on new product development or continuous management improvement.
  • Projects where Scrum is constrained by workflow issues, resources and processes.
  • Teams that require both structure of Scrum and flexibility of Kanban.
  • Transitioning to Kanban, where minor methodology changes are required to limit disruption.

Indubitably, when used aptly, Scrumban leads to better quality, reduced lead time, application of Kaizen and JIT principles along with waste minimization and process improvement. A word of caution is that before applying any methodology, it is imperative to understand the basic principles of all the agile methodologies currently in practice to determine the befitting approach for the project specific needs. The company and team readiness to adopt that approach also matters.

With skilled resources and expertise to understand the intricacies of various agile approaches, we at Astegic have developed a Scrumban Framework – SBDEFT (Scrumban Driven Engagement Framework for Testing). SBDEFT is developed with an aim to deliver the benefits of both the approaches, Scrum and Kanban, in a pioneering way in an outsourced context. Our experts are adept at understanding and implementing the approach that best suits your project, whether it is Scrum, Kanban or Scrumban. Moreover, our TRAF (Testing Requirement Analysis Framework) ensures validating QA /Testing requirements in the early stages of development to serve you with the best approach.

Kanban for Software Teams

Highly competitive contemporary businesses focus on effective, efficient, robust and speedy solutions that can deliver quality products. And the application of the concept of Kanban is helping businesses achieve this objective.

Kanban, as a concept, was initially developed and applied by Toyota in the 1940s as a method that helped their project team to visualize the entire process workflow, thus enabling better communication and collaboration among team members. Further, it also assisted in standardizing cues and refining the process, resulting in reduced wastage and enhanced value.

Given these obvious benefits, the core principles of Kanban have since moved into industries beyond manufacturing. And currently, in Software Development and Testing sphere, application of the principles of Kanban has become almost inevitable.

Kanban ensures faster release of quality software by enabling better team collaboration. Using Kanban, the entire software development and testing process are divided into different stages, with tasks being transferred from one stage to another as the process moves forward. And a Kanban board is created to visualize and share this entire process, and the ongoing work-progress, with all the stakeholders.

Typically, a Kanban board consists of the following essential elements:

Columns And Swimlanes: The Vertical Columns reflect the phases of the process the task must pass through before being finally considered as complete. The FIFO principle is followed with tasks being pulled from the top and added at the bottom.

And there are Horizontal Swimlanes that divide the Kanban board into cells. Swimlanes denote the horizontal categorisation of issues in the active Kanban board and may contain tasks or indicate priority, person, classes of work and so on.

Individual Kanban Cards: They bear the complete information and details about a given task- type of task, task requirements, task deadlines, people responsible, and all affiliated docs. These cards are post-its when it’s a physical board, while for online boards, they are digital elements to open, update, and move across the board through simple click and drag.

WIP(Work In Progress) Limits: These are limits that stand for maximum amount of work items a given phase or the whole workflow can hold. These limits are set to ensure that the team is focusing on limited tasks, and not working on too many things at the same time. This saves the team from work overload and undue delays.

Card Blocking: They represent the tasks that pose challenges for the team working on the board. And further indicates that the team needs to resolve the problem before pulling in new work. Even though this slows down the cycle time but it saves your potential inventory of in-progress work that can grow and become stressful over time. Hence, its better to clear the blockers as soon as possible.

Source: Maltem

Using these elements, Kanban ensures a lean software development methodology that focuses on just-in-time delivery of functionality through managing the work in progress (WIP).

Benefits of Kanban

The biggest benefit of Kanban is waste minimization through right prioritization and application of WIP limits, thus leading to an overall improvement in throughput. And moreover, Kanban is an easy fit-in. You don’t have to alter your current procedures to imbibe Kanban, rather you may work the way you do, and Kanban can act as an overlay on top of your current work processes.

The method is also quite useful in contexts with frequent priority shifts and change requests by getting rid of time-framed fixed-length iterations, and setting up WIP limits. Kanban optimizes and prioritizes User Stories by sizing and decomposing requirements into Minimal Marketing Features thus delivering value to customers more rapidly and frequently.

Kanban also positively influences the overall working style of the team by embracing the philosophy to complete the projects timely and encourages leadership across organizational structure. In Kanban, as the entire work-chain is visible to everyone, hence, whenever there are any jams or bottlenecks, everyone knows where they occur, and are collectively responsible to ensure work-flow continuity thus encouraging the team spirit. Kanban thus assists in securing high-level transparency and real-time communication of capacity.

Moreover, having limited tasks to spread and focus upon assists the team to achieve an optimal level of performance along with making them visualize the broader organizational goals.

Thus Kanban assists teams to deliver software services more efficiently, more frequently, and at an optimized flow and throughput levels.

To ensure that our clients receive these benefits, we at Astegic have developed a dedicated Kanban Driven Engagement Framework for Testing (KDEFT) that addresses the critical concerns of speed, agility and communication throughout the SDLC, and across time zones. Our methodology involves complete transparency of work and real-time communication and we offer near 24×7 rapid service from both Astegic’s US and India based testing operations.