Problem Solving Techniques For Evolutionary Design
At the Agile Goa conference, I ran a small workshop to help participants understand the core techniques one should master to effectively practice evolutionary design while solving real-world problems.
Key take aways:
- Eliminate Noise – Distill down the crux of the problem
- Divide and Conquer – Focus on one scenario at a time and incrementally build your solution
- Add constraints to future simplify the problem
- Simple Design – Find the simplest possible solution to solve the current scenario at hand
- Refactor: Pause, look for a much simpler alternative
- Be ready to throw away your solution and start again