How might criteria and constraints be used to evaluate competing design ideas?