I put some of the notes here:
3 main principles:
- Design the system to meet the constraints; do not derive constraints from the design.
- Decouple workflows; break dependencies!
- Workflows are easier to control & more predictable than a schedules.
Start with the constraints, then design the system to meet the constraints;
design based on the schedule (constraints);
schedule does not depend on the detailed design.
What I learned is that the system design depends on constraints, which might be resource, schedule and cost, etc. while schedule should not depend on design. This is a 180 degree reverse of the mindset change.
The problems of the schedules.
We need schedules because:
- To control when things happen, but
Detailed schedules are deterministic and do not allow for normal variation.
Managing a level workflow is a lot easier than following a deterministic schedule.
- To predict when things will happen, but
Schedules based on experience are reliable; if it is based on wishful thinking are not
When reality does not match the schedule - the schedule hypothesis was dis-proven!
The workflow is more flexible, always updated based on the situation, "plan is bad, planning is good"
Mary also mentioned the pull scheduling, pull scheduling is time-boxed:
don't scope box, don't ask how long will this take, ask what can we done by this date?
I think which is the concept from Lean/Kanban. I will check it in detail later.
1. Presentation video
2. PPT, which is different from the presentation, but actual concepts are same.