12. May 2013

How to improve complex software system in 10 steps

1. Introduce small change.
2. Wait and watch the impact. It may take some time to proliferate.
3. Learn about consequences.
4. Point out broken old parts which should be removed or replaced.
5. Prepare stubs and fixes.
6. Dry run. Prepare for quick rollback.
7. Repeat steps 4-6 until you’re sure.
8. Detonate the change.
9. Get ready to fix stuff that breaks during aftershocks.
10. Take a break, enjoy new system and learn something new.