- Think about the stock market.
It has a few simple rules,
you can buy stocks and you can sell stocks.
But the way these rules interact create complex systems.
You can have waves of buying and selling
based on the actions of individual actors.
That's why you have stock market rallies,
waves of individual buyers and sellers
cascade through the marketplace and impact the whole system.
You probably can't predict what will happen
to the stock market each day,
but it follows a long-term pattern.
If you look at the market over decades,
then you can see patterns of buying and selling over time.
Enterprise agile developers view software the same way.
You can't really predict which
open source project will take off,
or what technologies will fall out of favor.
Also, sometimes your customers will change their minds,
your project will lose its budget.
That's why you should try to build software
with simple rules.
You want to deliver quickly and be adaptable to make changes.
Kanban has five simple properties
to build software with simple rules.
Think of them as the simple rules
for a complex, adaptive system.
The first property is visualize workflow.
This is where you use your Kanban Board
to show work traveling through the team.
The second is to limit work in progress.
This is a key lean principle.
When you overload the system, you slow things down.
You always want to limit the amount of work
going through the system
so things don't come to a screeching halt.
The third is measure and manage flow.
A key part of lean is improving the system.
It's much easier to figure out if you're making progress
if you can measure and manage flow.
The fourth is to make process policies explicit.
This is one of the key things you want to remember
about complex adaptive systems.
You want to use simple rules and keep these rules explicit.
The fifth and final property is to use models
to recognize improvement opportunities.
This is closely related to the third property,
and it gives you some guidance on how to improve.
These five properties help you create a Kanban method
to improve your delivery process.
That means that everything that you do in Kanban
should help enhance at least one of these properties.
Don't be too discouraged if you don't have
a clear image in your head of what
each of these properties means.
They were adapted from lean principles,
and it shouldn't be entirely clear at first
how each of these properties leads
to specific Kanban practices.
For now, just try to remember
that Kanban is using these lean principles
to try and deal with the complex world
of technology and software development.
You might not be using them in manufacturing,
but you can still use these lean ideas to improve your work.