An environment for CS integrating hypertext, program design and language facilities (abstract)

Introductory computer science courses must provide a sound foundation for developing advanced programming skills as well as the more concrete skills necessary to implement programs: general problem solving skills, algorithm design, and an implementation language Software engineering and program design techniques should be learned from the outset. Maintaining a balance and perspective among these somewhat disparate skills is one of the principal challenges of these courses. This presentation demonstrates a suite of closely integrated tools designed to support a pedagogy focusing on the independent mastery of each of the skills necessary for programming. A student oriented CASE program, Design Tool, is closely integrated with the student’s Pascal programming environment. It is used to develop the students’ problem solving and software project management skills by providing a visual environment in which to design solutions. A hypertext serves to integrate concepts introduced in the classroom with the design and progr amming environment. Associated laboratory exercises are based on directly tmnsfernng designs and progpirns from the hypertext notebook to the programming enviromnent. Over the past two years we have used student questionnaires to assess student response to the tools and attitudes towards design and implementation concepts, as well as preand post-tests, and a standardized series of assignments and exams to evaluate student progress. “We have seen an nnprovement in modular design and an increased overall utilization of the laboratory. While less time is spent in implementation (attributed to early and better designs), more time is spent in exploring programming concepts.