Why project approval isn't enough to make development move.

A project can be approved, funded, and technically feasible, and still not move.
For developers, the problem usually appears in ordinary situations. A change needs an API contract updated, but nobody knows who owns the decision. A feature is ready, but another team needs to review it. Someone asks for approval, then another approval, and the sprint ends with the same work blocked.
We tend to call this a coordination problem. But before trying to fix the workflow, I think we need to ask a more basic question:

  • who actually has the authority to make the work move?

That is where governance comes in.

Approval is the start button

Approval is permission to start an initiative. It is not supposed to be a recurring activity inside every step of development.
Of course, someone has to decide whether a project should exist. A sponsor may commit the funding, or leadership may authorize the use of shared teams. But that decision does not automatically tell developers who can change scope, approve a technical compromise, or accept a security risk.

And turning every ordinary choice into another request for managerial permission only slows things down.
If we always need to shift down, we will never get to speed. We put in more effort while advancing more slowly.

The people closest to the work need room to decide within agreed boundaries. Governance is what defines those boundaries.

The hierarchy is already there

In a small team, responsibilities can sometimes be settled in a conversation. In a large enterprise, a developer might depend on platform engineering, security, procurement, operations, and people who are assigned to five other initiatives.

This is where governance becomes a patch for an existing structure. It doesn't make the hierarchy disappear. It creates a way to work with it.
People can find comfort in ambiguity. If nobody knows who owns a decision, nobody has to carry the full burden of it. But the cost appears when work gets stuck between teams.

A governance model is not a list of important titles. It should identify who owns the result, who performs the work, who needs to be consulted, and who only needs to be informed. RACI is one possible way to write this down, but the diagram matters less than the agreement behind it.

If everyone does everything, no one owns anything.

A charter is authority on paper

Before discussing the backlog, the tool stack, or the delivery process, a project needs a recognized starting point.
A short charter can establish what we're building toward, what falls outside the scope, who sponsors the initiative, who leads delivery, and what resources have actually been committed. It also makes unresolved assumptions visible.

Decisions are part of e very project. But when it becomes itself a complete activity that take time and slow down the process, then these are not just decisions anymore they become a new issue. Approval is a decision that should be made in parallel or before the project. Project aspect and details should ideally be known and decided upon before hand.

For developers, this becomes practical very quickly. Can the tech lead choose an implementation that stays within budget and scope? Who decides when a requested feature affects another team's roadmap? Does a change involving personal data need security or privacy review even if it adds almost no cost?
These decisions should not have to be negotiated from scratch every time.

A decision framework tells people what they can decide locally and what must go elsewhere. A short record of significant decisions keeps everyone from reopening the same question after the fact. The point isn't to invite everyone into every meeting. It's to know who acts, who decides, and who needs to know.

Plan for the problems you can already see

Every project carries risks. Some are predictable: a shared environment will be unavailable, a supplier will miss a date, or an integration will require input from a team that is already overloaded.

Escalation should be designed, not improvised. If a dependency blocks delivery, who gets the issue?
What decision is needed? How long can the team reasonably wait?

Escalation is not a normal step in every ticket. It is a documented route for resolving what falls outside ordinary authority. This is simply forecasting the evident, not predicting the future.

A plan needs actual capacity

A roadmap is useful, but it does not make resources appear. Listing a security reviewer in a project plan doesn't mean they have time to review anything. Listing a contractor doesn't mean an agreement has been signed.

An unconfirmed resource is an assumption, not a secured commitment.

The same goes for budgets, milestones, and communication. A project can look under budget because work hasn't happened yet. A status meeting can be held every week without a single blocked decision getting resolved.

Planning should connect the work to available people, money, dependencies, and decisions. It should also leave room for changes. When requirements shift, someone needs the authority to assess the impact on scope, cost, schedule, and risk, then update the plan.

In practice, this can start with three things: a project charter, a clear model of responsibilities and decision rights, and a shared project plan. These don't need to become massive documents. They need to be understood and usable.

Governance stays with the project for as long as it runs. But it needs to be established before execution begins, because it also tests whether the organization is ready to absorb the work.

This is the connection between approval and actual delivery. The larger discussion in Governance Is Not Bureaucracy; It Is Demarcation explores the structure in greater detail, from authority and ownership to planning and control.

Once those boundaries are established, the next question becomes what, precisely, must be built.

Dive Deeper: Read the full, unabridged analysis on Governance is Not Bureaucracy; It is Demarcation.