We describe a sophomore level course that is foremost a comprehensive treatment of logic design, a mandatory topic in many electrical and computer engineering curriculums, but almost equally important, because of the open ended design content, this course serves as the dress rehearsal for what students will encounter in their required senior capstone project. Course outcomes and goals include the usual engineering technical topics such as Boolean algebra, logic design, finite automata, discrete math, modern engineering tools, and solving engineering problems. We also cover and assess those outcomes that are not covered in most of the other engineering courses which include open ended design, multidisciplinary teams, and effective communication. This early assessment in these nontechnical outcomes, allows us earlier intervention for program improvement. Having conducted this course over a period of over six years, we have found that our approach has helped us achieve a marked improvement in both our student outcomes, and the quality of our capstone projects.