Engineering approach to problem solving