Design and Problem Solving