1. Reinterpret the Problem
"A problem well-defined is a problem half solved." - John Dewey
Understanding, Interpreting, and Clarifying the Problem
Understanding the problem as a Black Box - Input/Output
1. Problem Statement
- Goal
- Constrains
- Success Criteria
2. Strategies
- Reading three times, explaining to myself (aloud)
3. Creating own Problem Mental Representations
4. Barriers
5. Writing a Contract to the Solution
- One-line purpose statement
- Name
- Input - Meaning, Name, and Type
- Output - Meaning, Name, and Type
For example, in the docstring of a function.
6. Best Practice: Test Driven Development (TDD) - Write Tests in this Phase
Checkout Question:
Given a suggested solution, do I know to check whether it solves the problem fully?
Copyright © 2020 Shlomi Hod.
All rights reserved.
All rights reserved.