Project Management

Project management is the practice of creating, allocating, applying resources to the completion of a project. A project is an undertaking that seeks to create something new to meet an objective, generally through the creation or enhancement of a product or service. A product is the output of the project. A project is completed when the objective is met or cannot be met based on resource constraints.

The Iron Triangle of Project Management

The iron triangle are the constraints of managing a project. They are:

  • Speed: How quickly the project can complete
  • Cost: How much money the project requires
  • Scope: The requirements and constraints of what must be delivered

Generally speaking, you can optimize for any two points on the iron triangle. For example, to get more done (scope) in less time (speed) often requires spending more money (cost). Of course, it's not always that simple.

Project Artifacts

Project artifacts are the output of project management practices other than the product, such as schedules, budgets, and status reports. Depending on project size, there are many different artifacts that might be produced as part of the project.

Project Charter

A project charter is a founding document that summarizes why the project was started, plus the initial set of expectations for budget, scope, and timeline. Often a project charter is maintained as a "living document" that is updated periodically as the project progresses.

Common elements of a project charter include:

  • A vision that describes what is valuable about the project for both the producer and consumer of the product.
  • A requirements summary that gives a high-level description of what must be delivered by when.
  • A set of stretch goals that describe accomplishments that would be "nice to have" but aren't necessary to consider the project a success.

Project Plan

A project plan is defines the sequence of tasks, dependencies between tasks, and organizational elements of the project. Typically a project plan is a "living document" that is updated regularly as the project progresses.

Common elements of a project plan include:

  • A project brief or executive summary that describes the projects purpose, timeline, budget, and scope in a few short paragraphs or bullet points
  • A vision statement that describes the purpose of the end-product, or a synopsis of (or link to) the project charter
  • A history of achieved milestones and changes to the plan
  • A schedule overview that lists each project milestone along with its purpose, scope, and anticipated completion date
  • A resources list that includes the teams, tools, materials and the focus/purpose of each resource involved in the project (see also: Enterprise Initiatives)
  • A risk list that describes known risks to project success, along with each risk's probability, impact, and mitigation plan
  • A definition of done or release criteria that describes the quality, performance, and sign-off requirements needed to consider each feature "done" or otherwise ready to be used by the customer.

Project Management Tips

Plan to Re-plan

Each project is a novel undertaking and it's exceptionally rare that up-front plans are perfect. Instead of spending excessive effort to create the perfect plan, plan just enough to get started and to re-plan as you learn from experience. As the project proceeds, take what you've learned and update the plan regularly throughout the project.

For the long-term plan, use the "cone of uncertainty" to set expectations.

Deeper Knowledge on Project Management

Machine Learning Project Outline

An outline and checklist to guide typical machine learning projects

Backlog Coupling

When work on one team or product excessively depends on work from another team or product

You Aren't Gonna Need it (YAGNI)

A simple mnemonic to help limit project scope


Little-a agile, like in the manifesto


Elements of well-formed requirements: The fundamental building blocks of product engineering

ROAM: Resolved, Owned, Accepted, Mitigated

A risk evaluation and acceptance model

Jira Align

Notes on Jira Align


A lightweight framework for product and project management

Scaled Agile Framework (SAFe)

A product and project management framework for large enterprises

RACI: Responsible, Accountable, Consulted, Informed

An roles and responsibilities model


How timeboxes work

Broader Topics Related to Project Management

Change Management

The practice of implementing and communicating changes in organizations

Product Management

Resources for Product Management

Project Management Knowledge Graph