Overview

  • Project management is the discipline of planning, executing, and overseeing projects to achieve specific goals within set constraints such as time, budget, and resources. It plays a crucial role in ensuring that tasks are organized, priorities are clear, and teams are aligned.
  • Traditional project management frameworks often follow a linear, step-by-step process, while modern methodologies, such as Agile, emphasize flexibility, collaboration, and iterative progress.
  • Understanding key concepts like goal-setting frameworks, such as OKRs (Objectives and Key Results), and adaptive methodologies like Agile provides the foundation for managing dynamic, fast-paced projects. These approaches enable teams to stay focused on outcomes, respond effectively to changes, and drive continuous improvement.

Agile Project Management

  • Agile Project Management is an iterative approach to managing projects that emphasizes flexibility, collaboration, and customer-centric development. Originally conceptualized for software development, Agile has expanded across various industries, transforming how teams deliver value to customers in complex and rapidly changing environments.
  • At its core, Agile values adaptability over strict planning, interactions over processes, and working products over comprehensive documentation. Teams that adopt Agile aim to deliver small, incremental changes to a product or service, incorporating feedback continuously to improve the final outcome.

The Agile Manifesto

  • The Agile movement gained widespread recognition with the publication of the Agile Manifesto in 2001. This manifesto outlines four core values and twelve guiding principles that help define Agile practices:

    • Core Values of Agile:

      • Individuals and interactions over processes and tools.
      • Working software over comprehensive documentation.
      • Customer collaboration over contract negotiation.
      • Responding to change over following a plan.
  • These values do not suggest that processes, documentation, or contracts are unimportant, but rather that teams should prioritize communication, working products, and flexibility to meet customer needs.

  • Key Principles of Agile:

    1. Satisfy the customer through early and continuous delivery of valuable work.
    2. Welcome changing requirements, even late in development.
    3. Deliver working solutions frequently, with a preference for shorter timescales (e.g., weeks rather than months).
    4. Business people and developers must work together daily throughout the project.
    5. Build projects around motivated individuals and give them the support they need.
    6. The most efficient and effective method of conveying information is face-to-face communication.
    7. Working software is the primary measure of progress.
    8. Agile processes promote sustainable development, with the ability to maintain a constant pace indefinitely.
    9. Continuous attention to technical excellence and good design enhances agility.
    10. Simplicity, defined as maximizing the amount of work not done, is essential.
    11. The best architectures, requirements, and designs emerge from self-organizing teams.
    12. Regular reflection on how to become more effective leads to team improvements and adjustments.

Key Terminology

In Agile project management, these terms—tasks (or sub-tasks), user stories, epics, and milestones—each serve distinct purposes but are closely connected to form a hierarchy of project goals, from granular work items to broad organizational objectives. Let’s break each one down in detail and explain their relationships with examples.

Tasks (or Sub-Tasks)

  • Definition:
    Tasks (or sub-tasks) are the smallest units of work that need to be completed to fulfill a specific piece of a user story. They are action items that a team member can execute within a sprint (typically 1-2 weeks). Sub-tasks break down a user story into smaller, more manageable pieces, making it easier to track progress.

  • Example:
    For a user story like “As a user, I want to be able to reset my password so that I can regain access to my account,” sub-tasks might include:
    1. Design the password reset form.
    2. Implement the backend logic for password reset.
    3. Write unit tests for the password reset function.
    4. Add password reset validation checks.
  • Connection to User Stories:
    Tasks are the actions required to fulfill the acceptance criteria of a user story. They are typically assigned during sprint planning and tracked daily (e.g., in a Scrum meeting).

User Stories

  • Definition:
    A user story is a short, simple description of a feature or functionality from the perspective of an end user. It explains who wants something, what they want, and why. User stories are part of Agile’s goal to keep the focus on delivering value to the customer.

  • Example:
    A user story might look like this:
    “As a customer, I want to be able to filter search results by price, so I can find affordable products easily.”

  • Connection to Tasks:
    Each user story is broken down into multiple tasks (or sub-tasks) that team members need to complete to deliver the functionality described. A story will also include acceptance criteria, which define the conditions that must be met for the story to be considered complete.

  • Connection to Sprints:
    Stories are planned during sprint planning, where the team estimates the effort required (using story points or hours) and commits to completing the stories within a sprint.

Epics

  • Definition:
    An epic is a large body of work that can be broken down into smaller, more manageable components, such as user stories. Epics often represent a significant feature, a major initiative, or a broader goal that requires coordination across multiple sprints and teams.

  • Example:
    Suppose your team is building a mobile banking app. An epic might be “Enable users to manage their accounts via the app.” This epic could encompass multiple user stories, such as:
    1. “As a user, I want to view my account balance so I can track my finances.”
    2. “As a user, I want to transfer funds between accounts so I can manage my money.”
    3. “As a user, I want to receive notifications for account activity so I can monitor transactions.”
  • Connection to User Stories:
    An epic is essentially a container for related user stories that all contribute to achieving a larger objective. Each user story within an epic delivers incremental value and can often be completed independently.

  • Connection to Sprints and Milestones:
    Epics are typically delivered incrementally across multiple sprints and contribute to achieving milestones. A milestone might signify the completion of an epic or a subset of its key user stories.

  • Use in Agile Tools:
    Many Agile tools (e.g., Jira, Azure DevOps) allow teams to organize user stories into epics, making it easier to track progress and see how smaller tasks contribute to larger goals.

Milestones

  • Definition:
    A milestone is a significant point or event in a project timeline. In Agile, milestones usually represent the completion of a larger body of work that spans multiple sprints and often corresponds to a key deliverable, such as the release of a major feature or product version.

  • Example:
    Suppose your project is to develop an e-commerce platform. A milestone might be “Complete checkout process implementation.” This milestone could encompass several user stories over multiple sprints, such as:
    1. User story: “As a user, I want to add items to my cart.”
    2. User story: “As a user, I want to enter payment details.”
    3. User story: “As a user, I want to receive an order confirmation.”
  • Connection to User Stories, Epics, and Sprints:
    Milestones often signify the completion of an epic or a group of user stories across sprints. They provide higher-level progress markers and align with broader project goals.

  • Connection to OKRs:
    Milestones can also serve as tangible markers toward achieving broader company objectives (OKRs). For example, completing a milestone might represent a key result that contributes to a strategic business objective.

How They’re All Connected

  1. Tasks/Sub-Tasks: The detailed, actionable items that break down the steps needed to fulfill a user story.
  2. User Stories: Define functional requirements from a user perspective. These are implemented over the course of a sprint and are composed of tasks.
  3. Epics: Large bodies of work that encompass multiple user stories, often delivered incrementally across sprints.
  4. Milestones: Represent significant achievements that span multiple epics and sprints, providing higher-level progress markers toward broader project goals.

Iterative Development

  • One of the key aspects of Agile is iterative development. Instead of delivering an entire product at once, Agile teams develop the product incrementally. The project is broken down into smaller units of work (sometimes referred to as user stories, tasks, or features) that can be developed, tested, and delivered within short time frames, often referred to as iterations or sprints.
  • Each iteration should produce a potentially shippable product increment—something tangible that can be demonstrated to stakeholders and customers. This approach ensures that the team can quickly adapt to changes based on real-time feedback, reducing the risk of developing something that doesn’t meet the user’s needs or is no longer relevant due to changing market conditions.

Agile Teams

  • Agile teams are cross-functional, meaning that all the skills necessary to deliver a working product increment are present within the team. This typically includes roles such as developers, testers, designers, and sometimes business analysts or domain experts.
  • A key characteristic of Agile teams is self-organization. Teams have the autonomy to decide how best to accomplish the work they’ve committed to, and they are empowered to make decisions about technical implementation, task prioritization, and collaboration. Managers play more of a supportive role, removing obstacles and providing resources, rather than directing day-to-day tasks.

Benefits of Agile Project Management

  1. Customer-Centric Approach: Agile involves frequent customer interaction, allowing teams to gather valuable feedback and ensure that the product or service being developed aligns with customer expectations.

  2. Flexibility and Adaptability: Agile is designed to accommodate change. Teams can easily pivot to respond to new information or evolving requirements, minimizing the risks associated with fixed, rigid plans.

  3. Higher Product Quality: By breaking down work into smaller units and continuously testing and reviewing the product, teams identify and fix issues earlier in the development process, resulting in a higher-quality end product.

  4. Faster Time to Market: Since Agile focuses on delivering small increments of value, teams can deliver functioning pieces of the product sooner. This allows customers to benefit from improvements more quickly, rather than waiting for the entire product to be completed.

  5. Improved Team Collaboration: Agile promotes collaboration between cross-functional team members and between teams and stakeholders. Daily stand-ups, frequent reviews, and retrospectives facilitate better communication and foster a culture of continuous improvement.

Common Agile Frameworks

  • While Agile is a mindset and a set of principles, specific frameworks have emerged to help teams apply Agile practices. These frameworks provide structured methodologies that teams can follow while staying true to Agile values. Two of the most widely adopted frameworks are Scrum and Kanban.
  1. Scrum: A structured framework that organizes work into fixed-length sprints and uses defined roles (Product Owner, Scrum Master, and Development Team) to manage the work. Scrum includes specific ceremonies such as Sprint Planning, Daily Stand-ups, Sprint Reviews, and Retrospectives.

  2. Kanban: A flexible framework that focuses on visualizing the flow of work and continuously improving that flow. It emphasizes limiting work in progress (WIP) and optimizing efficiency without the need for fixed-length iterations or predefined roles.

  • Let’s delve deeper into two of the most popular Agile frameworks: Scrum and Kanban. These frameworks represent different approaches to applying Agile principles in practice, each with its strengths and appropriate use cases.

Scrum and Kanban: Frameworks Within Agile

  • Scrum and Kanban are both popular frameworks within the Agile methodology, helping teams manage and complete work through iterative progress, continuous improvement, and adaptability. While they share the same Agile principles, they differ significantly in their approach, structure, and practices. Scrum provides a highly structured method, emphasizing iterative delivery through defined roles, ceremonies, and time-boxed sprints.
  • On the other hand, Kanban offers greater flexibility with a continuous flow approach, aiming to optimize efficiency and adapt to changing priorities without the need for strict timelines. The choice between Scrum and Kanban depends on the team’s needs, the nature of the work, and the level of structure required for successful outcomes.

Scrum Framework

Overview

  • Scrum is a highly structured, iterative, and time-boxed framework designed to deliver work in small, incremental pieces. It focuses on fixed-length iterations called sprints, typically lasting 1-4 weeks, during which a team works to complete a defined set of deliverables (often referred to as stories or backlog items). Although the traditional Scrum sprint length is two weeks, teams may choose shorter or longer sprints based on their specific needs, project pace, and feedback cycles. For example, weekly sprints can be advantageous for highly dynamic projects or early-stage product development, where requirements change frequently and faster iterations are essential to remain agile and address evolving priorities.

Key Roles in Scrum

  1. Product Owner: Responsible for defining and prioritizing the product backlog (the list of work to be done). The Product Owner acts as the bridge between the stakeholders and the development team, ensuring that the team works on the most valuable tasks.
  2. Scrum Master: Facilitates the Scrum process, removes impediments, and ensures the team adheres to Scrum practices. They are not the team’s manager but act more like a coach and process facilitator.
  3. Development Team: A self-organizing, cross-functional team that works on delivering the stories or backlog items during the sprint.

Scrum Ceremonies (Meetings)

  1. Sprint Planning: Held at the start of each sprint to plan what the team will work on, based on priorities set by the Product Owner and the team’s capacity. The goal is to commit to delivering a certain number of stories by the end of the sprint.
  2. Daily Stand-up (Daily Scrum): A short, daily meeting (typically 15 minutes) where each team member answers three questions: What did I do yesterday? What will I do today? What blockers are in my way?
  3. Sprint Review: Held at the end of the sprint, where the team demonstrates the work completed to stakeholders and collects feedback.
  4. Sprint Retrospective: After the review, the team reflects on their processes and performance during the sprint, identifying areas for improvement.

Artifacts in Scrum

  1. Product Backlog: A prioritized list of all the work that could be done on the product. Items are added, removed, or reprioritized by the Product Owner.
  2. Sprint Backlog: A subset of the product backlog selected for the current sprint, along with the tasks needed to complete them.
  3. Increment: The sum of all the completed stories at the end of the sprint that meet the Definition of Done (DoD). This increment should be a potentially shippable product.

Strengths of Scrum

  • Predictability: With defined sprints, teams and stakeholders know when to expect delivery.
  • Structure: Clear roles and ceremonies help ensure focus, consistency, and accountability.
  • Continuous Feedback: Frequent reviews and retrospectives promote continuous improvement and adaptability to change.

Challenges of Scrum

  • Rigidity: The fixed-length sprint cycle can sometimes feel too rigid for teams that deal with constantly changing priorities or urgent tasks.
  • Overhead: Scrum’s formal roles, meetings, and processes can feel bureaucratic or cumbersome for smaller teams or simpler projects.

Kanban Framework

Overview

  • Kanban is a much more flexible, flow-based framework designed to visualize work and maximize efficiency. Unlike Scrum, which is time-boxed, Kanban does not have fixed-length iterations. Instead, it focuses on continuous delivery and improving the flow of work through the system by limiting work in progress (WIP) and visualizing tasks on a Kanban board.

Key Principles of Kanban

  1. Visualize the Workflow: Work is represented on a Kanban board, typically organized into columns that represent stages of work (e.g., “To Do,” “In Progress,” “Done”). This makes it easy to see the status of every task at a glance.
  2. Limit Work in Progress (WIP): By limiting how many tasks can be in progress at any given time, Kanban ensures that the team focuses on completing tasks before starting new ones, which reduces context switching and improves throughput.
  3. Manage Flow: Kanban aims to improve the flow of work through the system. Teams look for bottlenecks (areas where work gets stuck or takes too long) and make adjustments to improve efficiency.
  4. Make Process Policies Explicit: Kanban emphasizes clear rules for how work moves through the system, ensuring everyone understands the process and criteria for moving tasks between stages.
  5. Improve Collaboratively, Evolve Experimentally: Kanban encourages continuous improvement through incremental changes rather than overhauls.

Kanban Board

  • The primary tool in Kanban is the board, which helps visualize the flow of work. The board is divided into columns, and tasks (represented as cards) move from left to right as they progress. Columns might represent stages like:
    • To Do
    • In Progress
    • Review
    • Done
  • Teams can further customize columns based on their workflow. The board helps teams quickly identify bottlenecks by showing where work is piling up.

Strengths of Kanban

  • Flexibility: Unlike Scrum, which has fixed sprints and roles, Kanban is highly adaptable. New tasks can be added at any time, and work is continuously delivered.
  • Focus on Flow: By visualizing work and limiting WIP, Kanban helps teams improve efficiency and avoid overloading team members.
  • Simplicity: Kanban’s minimal structure makes it easy to adopt without the need for formal roles or processes.

Challenges of Kanban

  • Less Predictability: Without the fixed-length iterations of Scrum, it can be harder to predict when work will be delivered unless a team has established stable throughput and lead times.
  • Less Formal Structure: While this can be a benefit, some teams may miss the structure and roles provided by Scrum, especially if they struggle with self-management.

Scrum vs. Kanban: Key Differences

  1. Cadence:
    • Scrum: Time-boxed iterations (sprints) typically lasting 1-4 weeks. Work is planned, committed to, and completed within these time frames.
    • Kanban: Continuous flow of work with no fixed iterations. Work is pulled into the system as capacity becomes available, and delivery happens continuously.
  2. Roles:
    • Scrum: Clearly defined roles (Product Owner, Scrum Master, Development Team).
    • Kanban: No predefined roles. Teams organize themselves based on their needs.
  3. Planning:
    • Scrum: Formalized planning at the beginning of each sprint, where the team commits to a certain amount of work.
    • Kanban: Ongoing planning; tasks are added to the board as needed. Planning happens as work is pulled into the system.
  4. Focus on Time vs. Flow:
    • Scrum: Emphasizes delivering work within a specific time period (sprint).
    • Kanban: Focuses on optimizing the flow of work through the system and delivering work continuously.
  5. Change Management:
    • Scrum: During a sprint, changes to the sprint backlog are generally avoided to maintain focus on committed work.
    • Kanban: Changes are allowed at any time, making Kanban more suitable for teams that face constantly shifting priorities.

Choosing Between Scrum and Kanban

  • Scrum is often a good fit for teams that:
    • Want structure and clear roles.
    • Work on projects with clear deliverables that can be planned in short iterations.
    • Need a framework that includes regular reviews, planning, and reflection to improve both the product and the process.
  • Kanban is often a better fit for teams that:
    • Prefer a continuous flow of work without rigid sprints.
    • Deal with a lot of incoming work that needs to be addressed quickly, such as in support or operations teams.
    • Want a lightweight, flexible process to improve efficiency and reduce bottlenecks.

Hybrid Methodology: Agile + OKRs

  • A hybrid methodology rooted in Agile Project Management (with its focus on sprints, user stories, and iterative progress) and OKR frameworks (which provide strategic alignment across multiple projects) ensures a clear, structured way to track work across various levels of a project, from individual tasks to larger strategic goals. The Agile component emphasizes flexibility, collaboration, and continuous improvement, while the OKR component ensures that project work is directly linked to overarching organizational objectives.
  • By using this blended approach, teams can remain adaptable while maintaining a firm focus on delivering outcomes that matter most to the business.
  • Let’s break down each component and explain why this is useful.

Components: Tasks \(\rightarrow\) Stories \(\rightarrow\) Sprints \(\rightarrow\) Milestones \(\rightarrow\) OKRs

  • Track tasks (or sub-tasks) within user stories with reasonable acceptance criteria/outcomes in sprint planning meetings.

    • What this means: This practice involves breaking down work into smaller, manageable tasks or sub-tasks within user stories during sprint planning. Each task is associated with specific acceptance criteria or expected outcomes that need to be met for the task to be considered complete.
    • Why it’s useful: This ensures clarity on what “done” looks like for each task. By tracking tasks in sprint planning meetings, the team can better understand workload, dependencies, and timelines. It helps maintain focus on short-term deliverables, ensuring that each sprint (typically 1-4 weeks) delivers incremental value to the product.
  • Conduct sprint review meetings to evaluate sprint outcomes and gather feedback.

    • What this means: Sprint review meetings are held at the end of each sprint to evaluate the work completed, showcase it to stakeholders, and gather feedback. These meetings provide an opportunity for the team to demonstrate what they have accomplished and discuss what could be improved moving forward.
    • Why it’s useful: Sprint reviews foster transparency and collaboration with stakeholders, ensuring that the work delivered meets expectations and aligns with business needs. The feedback collected helps refine future plans, address any issues, and maintain momentum toward achieving overall project goals.
  • Track sprints aligned with a project milestone in project/milestone review meetings.

    • What this means: Sprints are tracked and reviewed in the context of larger project milestones. After each sprint, progress is evaluated against these milestones during project or milestone review meetings.
    • Why it’s useful: This method helps maintain alignment between short-term sprint goals and long-term project milestones. By regularly reviewing the sprint outcomes in the context of milestones, teams can ensure that the project is moving forward at the right pace and that potential issues are identified early. This enables more informed decision-making, such as adjusting priorities or timelines as needed.
  • Track project milestones as part of OKRs (which might encompass more than one project) to ensure strategic alignment.

    • What this means: Project milestones are tracked in the context of OKRs, which represent broader organizational goals. OKRs are high-level objectives, typically set quarterly, with measurable key results that demonstrate progress toward those objectives. Milestones across multiple projects can contribute to achieving these OKRs.
    • Why it’s useful: This creates a direct link between project work and the overall strategic direction of the organization. Tracking milestones against OKRs ensures that project outcomes align with the larger business goals. This helps prioritize work that has the highest impact on strategic objectives, reducing the risk of teams working in silos or focusing on tasks that don’t drive the company forward.

Why is this methodology useful?

  1. Clear visibility at all levels: This methodology provides clear visibility from the smallest task to the highest strategic objective. It ensures that day-to-day work (tasks and user stories) contributes to the broader business goals (OKRs). This visibility helps teams prioritize their efforts effectively.

  2. Frequent feedback loops: By conducting sprint and milestone reviews, the team can continuously inspect and adapt. This promotes flexibility, allowing teams to respond to changes in requirements or priorities with minimal disruption.

  3. Alignment with strategic goals: By connecting project milestones to OKRs, this approach ensures that the work being done contributes directly to the company’s strategic objectives. This minimizes the risk of wasted effort and keeps teams aligned with the larger vision.

  4. Manageable, incremental progress: Breaking down work into tasks and sub-tasks within sprints ensures that teams focus on achievable, short-term goals. This builds momentum through regular delivery of value, which boosts team morale and stakeholder confidence.

  5. Accountability and ownership: Each task has clear acceptance criteria, ensuring accountability. By reviewing sprints and milestones, the team stays accountable for its progress and outcomes, which fosters a culture of responsibility.

Example of the Full Flow: OKRs + Agile

Objective (O): Improve the user experience of the e-commerce platform.

  • Key Result 1 (KR): Increase the user checkout success rate by 15%.
    • Milestone: Complete the redesign of the checkout process.
      • User Story: “As a user, I want a one-page checkout, so I can complete my purchase faster.”
        • Tasks:
          1. Design the one-page checkout UI.
          2. Implement front-end changes.
          3. Integrate the new checkout flow with payment APIs.
          4. Test the new checkout flow using A/B testing.
  • Key Result 2 (KR): Reduce the average page load time by 2 seconds.
    • Milestone: Optimize website performance.
      • User Story: “As a user, I want faster load times for product pages so I can browse without delays.”
        • Tasks:
          1. Compress image sizes across the platform.
          2. Implement lazy loading for images.
          3. Minify JavaScript and CSS files.
          4. Test website speed improvements using A/B testing.
  • By breaking down large objectives into key results and delivering them through milestones and user stories, Agile teams can ensure that their work aligns with the company’s strategic vision and delivers real, measurable value.

Citation

If you found our work useful, please cite it as:

@article{Chadha2020DistilledPM,
  title   = {Project Management},
  author  = {Chadha, Aman and Jain, Vinija},
  journal = {Distilled AI},
  year    = {2020},
  note    = {\url{https://vinija.ai}}
}