Design under Uncertainty