Lean from the Trenches - Henrik Kniberg
This blogpost is not an exhaustive summary of the book. Just contains the notes I took
Set goals. At the beginning of every Sprint ask “Do you believe we will reach this goal?”
What does done means?
- Automated acceptance test passed
- Regression test(backward compatibility test done)
- Demonstration to QA
- Add comments to commit
- Test on dev environment
- Merge code
Always have dev stories and user stories
Have a bugs list. If there is a blocker address immediately. Don’t wait for the next planning meeting
If there is a new bug, check if they are in top 30 bugs you want to tackle. If not then don’t put in the Bugs list
Try to tackle: Next 10 user stories, 5 tech stories and 5 top bugs
Set up a RCA meeting for recurring bugs in the system
Processes should be discovered and not designed forcefully
Have story points and cycle time (time to release features)
Draw the branches: individual, team, trunk If code unit tested move to team. Need not be complete. Complete feature move to trunk System test branch is another branch where system test (if all features are working together) is done. Automated regression testing is done on team branch before merging to trunk On system branch mostly do manual testing + specific scenario testing If there is a bug on system branch send a hotfix to system branch and merge the fix down to trunk
List out test cases Sort test cases by risk, how expensive to do manually and by auto Sort in terms of priority Automate a few. Then iterate
Solve problems not symptoms. In case of fire don’t open window, get smoke out. Find out what caused the fire and install alarms
Figure out consequences of a problem. Check your goal. See if problem conflicts with goal. What is actually the real problem. For this go upward
To figure out root go down ward. Use 5 why’s.