We are trying to tell something positive about #NoProjects instead of just saying No.
What are the alternatives?
1970: “Management the development of large software systems”, Winston Royce
=> waterfall
- some people think it is the antithesis of agile
- some people think it is the start of agile
- he never mentioned/called it waterfall
1970: IBM 360
10.000 KIPS (10 MIPS) => 36.000 million instructions per hour
4096kb
COBOL on OS/360
IMS database
monthly rental: 250kUSD
CPU cycles $$$ expensive => planning is cheap
1971: Intel 4004 CPU; 2300 transistors
2016: Raspberry Pi
4.744 MIPS => 17.000.000 million instructions per hour
1Gb
buy at 35USD
CPU cycles are cheap => planning is expensive
=> just do it, don’t think about it
Technology Change:
- Stage #1: do the same things faster
- Stage #2: adopt new processes to increase benefit => shipping containers vs men shipping bags
- Stage #3: innovation => the whole loop starts again
Electricity => allowed to rethink how we layout factories
in the past factories were laid out around the belt, and one belt was driving all machines
the reason why Japan is the home of Lean is because all their factories have been destroyed in 1945, they had to rebuild it and redesigned them
=> change the processes
One more thing:
1968: PMI - Project Management Institute
projects are a technology of the 40s, 50s and 60s, they didn’t exist before the first and second world war.
- the manhattan project
- the polaris project
- planning, programming and budgeting system (PPBS)
We still use Projects:
A project is temporary, it has a start and end.
Software is like infrastructure, you build it, it’s here to stay.
Projects create risk, impact quality.
2013: #NoProjects
- projects suffer commitment escalation
Projects Success:
- On Schedule
- On Budget
- On Quality
where’s the money, the value? => project success creates conflict & goal displacement
Projects are temporary
- continuous improvement, flow and delivery
Business are not temporary: SAAB, Lehman Brothers, ABN-AMRO
=> business is digital today
Why would you stop technology endeavours?
Enhancing technology is business as usual. And that means it is continuous.
John Deere, a tractor company: paid millions of dollars to buy a Silicon Valley startup to acquire an algorithm
=> Uber, Spotify, Monzo (fintech startup), Just Eat, Netflix, Deliveroo, Amazon, AirBnB, …
When will Spotify be done? Not the model ;)
Continuous Digital is born (see photo) if digital business …
go away from a governance model based on the project model, whether we are on track (green, orange, red)
=> you need a governance model that checks whether the team is delivering business value
start building & analysis together
Optimise for (lots of ) small: organise yourself to be able to do lots of small pieces of work => don’t do branches, go for trunk-based development.
And yes, you need quality. Quality is cheaper.
- Products over projects
- Business over products
Teams: stable not static => they grow and they shrink, people go and people come => Continuous, Responsible, Regular deliveries
- Amazon: releases every 11 seconds
- The Guardian (a newspaper): releases 400 times per week (last week we did 1500 releases)
Part of business: all skills required, value seeking
Start with a minimum viable team (MVT), probably 3 persons.
grow the team if they are successful, if they are not get rid of it => split, shrink, …
if you have a DBA in the team, I bet, your team will need a DBA #ConwaysLaw
The business is technology and technology is the business.
- Optimise for small.
- Manage for continuity.
Questions
What about Legacy products?
In fact it is the easiest way of making NoProjects work. You actually have a product that works.
What about Deadlines ?
If you are agile, deadlines should not be a problem. The thing is, you need to evaluate the deadline, look at the options. Do we continue or do we stop.