Analysing a Problem and Designing a Solution