Milestone-Kanban: A hybrid project scheduling technique

cartoon characters working on an oversized kanban board

The Milestone-Kanban Schedule (MKS) is a hybrid project scheduling and management technique that combines traditional and Agile best practices. The technique is well-suited for projects where the required deliverables are clear but the time and effort needed to create them are not. It embraces iterative planning, uses milestones to establish a project roadmap, a Kanban board to manage the work, and stand-up meetings to track progress.

Traditional project management techniques use work breakdown structures (WBS), Gantt charts, and the critical path method to create the schedule. The underlying assumption that the work is well-defined and the required effort can be easily estimated is a shortcoming of these approaches. Monitoring and reporting processes are complicated and become lagging indicators.

Agile projects use iterative and incremental delivery, which enables flexibility. However, they do not require (but may use) a roadmap to communicate and set expectations for future work. Teams use easily accessible visual reporting tools and update their status daily, which promotes transparency.

Milestone-Kanban bridges these practices to create a robust, lightweight, and flexible framework for planning many types of projects and managing their performance. The technique uses a simple five-step process to create and maintain the project schedule:

  • Step 1: Define the Deliverables
  • Step 2: Create a Roadmap
  • Step 3: Build the Kanban
  • Step 4: Monitor Progress
  • Step 5: Plan Iteratively

Step 1: Define the deliverables

Traditional project management practices start with defining the scope of work. In other words, what needs to be delivered? Defining the scope and deliverables establishes specific and measurable performance expectations.

Step 1a: Collect requirements

A good first step on any project is identifying the stakeholders and understanding their needs. This is an iterative process where high-level needs are initially elaborated, and more detailed requirements are defined later. Requirements can be collected through brainstorming sessions, focus groups, surveys, observation, and analysis of regulations and standards. Requirements can be memorialized in a document, spreadsheet, post-it notes, or an application lifecycle management (ALM) tool.

Step 1b: Define the scope

After initial requirements have been collected, the next step is to define the scope—what will be delivered by the team. Listing the in- versus out-of-scope items creates clarity. Often there are border items that may be needed but are not part of this project. For example, training may be needed but will be provided by another team.

Step 1c: Define deliverables

The project deliverables can be identified after the scope has been set. Deliverables are tangible or intangible outputs (nouns) that support an internal project need or external customer requirement. For example, the project scope is an intangible, internal deliverable; a prototype is a tangible, external deliverable.

Traditionally, a work breakdown structure (WBS) is used to decompose the project work and is represented in a hierarchy chart or outline format. The lowest level of detail in the WBS is the work package. Work packages are small enough to be estimated and assigned. Planning packages are larger items that will be decomposed into work packages later.

Step 2: Create a roadmap

Traditional project schedules use milestones to mark the planned completion of a significant project event. Agile teams often create roadmaps to outline a similar high-level plan.

MKS creates a roadmap depicting major milestones and deliverables with their estimated completion dates. These dates may be external requirements or based on high-level duration estimates. The milestones will be progressively elaborated with greater date-specificity for upcoming work. Months or quarters can be used for distant milestones or where additional information is needed.

The roadmap can be communicated using a variety of tools and formats, such as post-it notes on the wall or in a virtual tool, a spreadsheet, a presentation, or a project scheduling tool. Lines can be added to portray interdependencies. Visual cues such as color-coding and swim lanes can be used to organize the milestones and deliverables by the owner, workstream, product, etc. Due dates, owners, and other information can also be included.

Step 3: Build the Kanban board

Kanban is a lean inventory management tool originally developed by Toyota and broadly adopted by most Agile teams. Kanban allows teams to visualize work.

Step 3a: Identify tasks

Start by identifying the activities or tasks required to create the upcoming deliverables. The level of detail will depend on the project size, complexity, and team maturity. Some tasks may have mandatory predecessors that need to be acknowledged.

Step 3b: Build the Kanban board

The Kanban board is a visual management tool to track the flow of project work that can be used to track deliverables and tasks. The columns generally represent process steps. The most basic board has three columns: Backlog, Doing, and Done. The Backlog column is the prioritized list of upcoming work. The Doing column is the activities currently in process. The Done column is the items that are complete.

Kanban is a very flexible tool and can be customized to fit the project’s specific needs. The Doing column can be decomposed into multiple process steps. Task cards can be color coded to identify assignments or deliverables. Rows can be used to group work and tasks.

Step 3c: Mature the practice

More advanced practices can be adopted to improve performance. Limiting the number of work-in-process items and pulling work reduces multi-tasking and increases productivity. Defining quality expectations through a definition of done decreases rework.

Step 4: Monitor progress

The Kanban board and the stand-up meeting are effective, core Agile practices for monitoring and tracking progress. The practices also promote transparency, accountability, and collaboration.

The stand-up is a 15-minute, time-boxed meeting where the team reviews its progress. The meeting is held around the Kanban board. Each team member answers three questions:

• What have you completed since the last meeting?
• What are you working on today?
• Are there any blockers or impediments to your progress?

Tracking completed work allows for efficient handoffs, creates accountability, and avoids confusing effort with achievement. Discussing upcoming work promotes collaboration and allows the team to align priorities. Addressing impediments allows problems to be solved quickly.

Step 5: Plan iteratively

Both traditional and Agile project management recognize the importance of regularly updating and maintaining the project schedule. Traditional practices refer to iterative planning and progressive elaboration. Agile recognizes that plans need to respond to change. MKS embraces both practices.

Iterative planning can be conducted at two levels. First, future deliverables and milestones are decomposed into smaller and more well-understood components. Second, the tasks required to create the deliverables should be identified, reviewed, and elaborated.

Milestone and deliverable planning should occur at least monthly, and the planning horizon should include the next 1-3 months. Task planning should occur weekly and should plan about a month into the future.

This is an Agile Alliance community blog post. Opinions represented are personal and belong solely to the author. They may not represent the opinion or policy of Agile Alliance.

Add to Bookmarks Remove Bookmark
Add to Bookmarks Remove from Bookmarks
Add to Bookmarks Remove from Bookmarks
Alan Zucker

Alan Zucker

Alan Zucker has over 25-years of experience leading projects and project execution organizations in Fortune 100 companies. His agile experience predates the Agile Manifesto. He played a leadership role in the agile transformation of a Fortune 50 financial services company. For the past 5-years, Alan has been an instructor, coach, and keynote speaker. He teaches traditional and Agile project management practices with leading training providers and universities. He has developed several Agile courses. He has…

Recent Blog Posts

Recent Posts

Your Bookmarks

No favorites to display. You must have cookies enabled to add bookmarks.

Recent Agile Alliance Blog Posts

Ensuring safe, inclusive Agile events
The mission of Agile Alliance is to support people and organizations who explore, apply, and expand Agile values, principles, and practices. When members of the Agile community have concerns about our pursuit of that mission, it is important to address those issues.
Ensuring safe, inclusive Agile events
The mission of Agile Alliance is to support people and organizations who explore, apply, and expand Agile values, principles, and practices. When members of the Agile community have concerns about our pursuit of that mission, it is important to address those issues.

Post your comments or questions

Discover the many benefits of membership

Your membership enables Agile Alliance to offer a wealth of first-rate resources, present renowned international events, support global community groups, and more — all geared toward helping Agile practitioners reach their full potential and deliver innovative, Agile solutions.

Not yet a member? Sign up now

Member Dues are Increasing on March 1, 2024
Member Dues are Increasing March 1, 2024

Renew your Membership
or Sign-up Now and Save!

Effective March 1, 2024, select membership levels will see a slight increase in dues, a change from our temporary reduction during the COVID-19 pandemic to support our community. Read more about the changes here.