Using Commercial CASE Environments to Teach Software Design

This paper describes a course developed to teach software design with a focus on the use of computer-aided software engineering (CASE) environments. Commercial CASE tools were acquired and used in a classroom environment in response to the needs expressed by local industry. The paper assesses the benefits and problems associated with placing emphasis on CASE tools in a software engineering course. Using mature CASE environments brings one kind of realism to the students' project experience, but the complexity of learning a design methodology and complex tools places limits on the scope of design projects that can be assigned. Design recovery tools show promise for helping students learn design principles. In addition, assignments in which students carried out independent assessments of various CASE tools were found to be very valuable opportunities for students to practice written and oral expression, in addition to broadening their knowledge of CASE.