DEV Community

Anton Kleshchev
Anton Kleshchev

Posted on

Make Agile more Flexible

Introduction

We all know that Agile is a methodology designed to make project planning and implementation dynamic and flexible. Today we're creating a schedule for one set of features and tomorrow after reviewing a demo we can change it according to our adjusted needs and purposes. This sounds really great, however this has a price: the planning we perform needs to be constantly changed and maintained according to the needs and priorities of all parties: team leads, managers, corporate leaders and stakeholders. Often such hierarchy of product owners makes planning stiff and highly resource consuming and leads to hesitation in making radical and frequent changes to the company roadmap. Therefore there is a space to make this process a bit more flexible by introducing a clear continuous algorithm for the planning process.

The Algorithm of a Continuous Planning Process

I call this algorithm an "Evolutionary Timeboxing".
This algorithm can be used any time at any point whether it's in the middle of the sprint or the beginning of the quarter, in general at any time.
Let's go over the main steps:

  1. Define planning horizon you want to plan for. This is similar to military where you can perform strategic (year+), operational (quarterly) or tactical (iteration or N weeks time span) planning.
  2. Decompose the business requirements of the project(s) into system components for all levels (where it's necessary). Define an estimate, nature of work for all activities. Define clear dependencies between system components and dependencies on the components of other projects.
  3. Define a timebox which is the target of your planning. Add or adjust the system components as deliverables for that timebox. Account for level of effort and available teams.
  4. Adjust or define all other timeboxes for the current and all other layers according to the new changes. Keep all layers synchronized. Notify the teams accordingly.

By following this algorithm it's possible to maintain a continuous and very flexible process of planning which is clear and transparent to both stakeholders who require high level vision (i.e. strategic level), project and product managers (operational level) and regular developers (tactical level). Currently I'm working on automating the reshuffling part which should make the process even more easier.
Let me know what you think about and your general thoughts of this practice!

AWS Security LIVE!

Tune in for AWS Security LIVE!

Join AWS Security LIVE! for expert insights and actionable tips to protect your organization and keep security teams prepared.

Learn More

Top comments (0)

Billboard image

Use Playwright to test. Use Playwright to monitor.

Join Vercel, CrowdStrike, and thousands of other teams that run end-to-end monitors on Checkly's programmable monitoring platform.

Get started now!

👋 Kindness is contagious

Explore a sea of insights with this enlightening post, highly esteemed within the nurturing DEV Community. Coders of all stripes are invited to participate and contribute to our shared knowledge.

Expressing gratitude with a simple "thank you" can make a big impact. Leave your thanks in the comments!

On DEV, exchanging ideas smooths our way and strengthens our community bonds. Found this useful? A quick note of thanks to the author can mean a lot.

Okay