a systematic problem solving strategy used to develop many possible solutions to a problem and to narrow down the possible solutions to one final choice
problem solving strategy used to solve a problem and come up with as many solutions as possible, narrow down to one
it is a problem solving process whose objective is to find a and describe way to implement he functional requirements while respecting its constraints