An Examination of Time Requirements for Course Preparations in Computing Science

 

Surinder Dhanjal P. Eng.  &  Mila Kwiatkowska

Department of Computing Science

The University College of the Cariboo (UCC)

Kamloops, BC, Canada, V2C 5N3

e-mail: sdhanjal@cariboo.bc.ca,   phone: (250) 828-5153

e-mail: mkwiatkowska@cariboo.bc.ca,  phone: (250) 371-5592

______________________________________________________________________________________

 

ABSTRACT

 

Both authors have been responsible for developing several new courses [1] and modifying existing courses at the University College of the Cariboo (UCC, Kamloops, BC, Canada). Our paper concentrates on an analysis of the time required for course modifications in a small university-college environment. Our study takes into account the time required for the following groups of tasks: learning new concepts and technologies, preparing teaching materials, selecting reading materials for the students, preparing materials for the evaluation of the students, and setting up laboratory environment.

 

Our analysis, based on the preliminary survey reported in this paper, decisively concludes that the computing science teachers in small university-colleges are heavily loaded with teaching assignments. This situation leads to several negative side effects including high level of stress, job dissatisfaction, and psychological and social problems. 

 

1.     INTRODUCTION

 

Computing science is a relatively young discipline. Consequently, it is constantly going through evolutionary and revolutionary changes. These changes are reflected in the course contents, teaching methodologies, and computing environments [2,3]. Changes involve new theoretical concepts, new technologies, and new software. In the past decade only, with the introduction of Internet and Web applications [4], the IT industry and computing science have undergone tremendous changes in many aspects of the field. New computer systems have been designed using UML, multi-tier architecture, heterogeneous distributed databases, XML, and multimedia technology. Many programming languages (e.g. Java) have been designed. The OOP paradigm, introduced by SIMULA-67 in late sixties, has gained a lot of popularity in the past decade. Microcomputer operating systems have left DOS far behind and have gone through a significant number of iterations of windows using GUI. The faculty in computing science, therefore, must keep up with the changes in subject matter, software, hardware, new technologies, and new delivery methodologies [5].

 

It is obvious from the above discussion, that many subjects and technologies the  computing science teachers are required to teach today, did not even exist when most of these teachers were students themselves. However, there is an enormous pressure on teachers in computing science to ensure that they stay current and up-to-date with the latest developments in the field [5] because before teachers can effectively deliver new material to their students, they must systematically learn themselves. This leads to one of the core questions emerging from this paper: "When do teachers in computing science find time to learn new material and stay current?"

 

2.     PROBLEMS AT THE SMALL UNIVERSITY-COLLEGES

 

The small university-colleges (undergraduate degree granting institutions) do not have enough resources as compared with the major graduate degree granting universities [6]. For example, at UCC:

·        Teachers teach several courses from various areas, often, outside of their area of specialisation. For example, a teacher might have written his thesis in numerical computation but he maybe required to teach in the areas of programming languages or analysis of algorithms or theory of computation (which themselves are highly specialised areas). 

·        Teachers teach courses in two year diploma program (CSOM: Computer Systems and Operations Management), four year applied degree program (BTACS: Bachelor of Technology in Applied Computing Science), and four year academic degree program (B.Sc. with Major in Computing Science). Unlike major universities where all students are academic/degree students, this situation in our institution requires a versatile combination of academic and applied/practical skills.

·        Teachers do not have Teaching Assistants, Markers, and Lab Assistants. Whereas the big universities have a pool of graduate students readily available to be recruited for these positions, the small university-colleges do not have graduate students to provide such teaching support.

·        Budgetary consideration at the small university-colleges is another limitation. The teachers do not always have sufficient funding to purchase the most suitable software for their courses. Consequently, the teachers find less desirable replacements, compromising the overall quality of the course.

 

Teachers spend a lot of time and energy finding effective solutions to all the problems mentioned above. This results in less time and energy for their course preparations.

 

 

3.     COURSE MODIFICATIONS

 

This paper concentrates on an analysis of the time required for course modifications. Our study takes into account the time required for the following groups of tasks:

 

·        learning new concepts, techniques (specification, modelling, documentation), programming languages, compilers, operating systems, platforms, authoring tools, CASE tools, technologies, and practical skills,

·        preparing teaching materials (exercises, examples, database examples, presentations),

·        selecting reading materials for the students (textbooks, lab books, reference books, articles, internet references),

·        preparing materials for the evaluation of the students (quizzes, on-line tests, assignments, exams),

·        setting up laboratory environment (client software, networks, servers, and databases).

 

For the purpose of this discussion paper, we have further subdivided courses into three broad categories:

·        First year programming courses

·        Upper division level applied courses

·        Upper division level theoretical courses.

 

Although both authors have been responsible for developing several new courses [1] and modifying existing courses at UCC, only one example from each of the above categories will be discussed below to illustrate the time required for various groups of tasks involved in a typical course modification.

 

3.1.  First year programming courses

 

The example used in this category will be COMP 113: Computer Programming I, the first course for computing science students. This course is the backbone and the foundation for all computing science courses. Built directly on top of COMP113 are three important courses required by all computing science students:

 

1.      COMP 123: Computer Programming II in which students get first exposure to data structures such as queues, stacks, and linked lists.

2.      COMP 198: Foundations of Computing Science is a breadth course in which students are introduced to such topics as hardware and software design, basic computer organisation, programming paradigms, elementary relational databases, sequential file processing, networks, and electronic information services. 

3.      COMP 220: Introduction to Discrete Structures in which students learn all major mathematical structures (symbolic logic, methods of proof, sets, mathematical induction, graph theory, functions and relations, recurrence relations) required for all upper division level courses taught in our institution.

 

COMP 113 has evolved and grown significantly over the years. Following are the significant changes made to this course by many instructors over the past 15 years:

 

·        Programming languages changed from Pascal to Modula 2 to TurboPascal to C++ and to current language Java

·        Computer systems changed from Sun to VAX to IBM PC microcomputers

·        The operating systems changed from Unix to VMS to DOS to many Windows platforms.

 

This example alone is sufficient to explain that if an innocent looking first year course is required to go through so many changes, and consequently keeps the teachers busy learning new compilers, editors, operating systems, computer systems, and textbooks, it is not hard to predict how much proportionate time the upper-division level courses built on top of  COMP 113 will require.

 

3.2.  Upper division level applied courses

 

The example used in this category will be COMP 462: E-commerce Systems Development. This course was offered for the first time at UCC in Winter 2000 and subsequently in Winter 2001 and Winter 2002. COMP 462 has been substantially modified since the first offering as follows:

 

3.2.1.  Course units and topics modified:

After the first offering in Winter 2000, the entire ColdFusion unit has been removed and replaced by XML unit with six new topics: XML, DTD, CSS, XSL, XSLT, and the Regular Expressions. Furthermore, new topics presenting  ASP 3.0 and ADO 2.5 have been added.

 

3.2.2.   Teaching materials:

Several new code samples for JavaScript, ASP, XML, XSL and new databases were added to WebCT course site and to the course Web server.

 

3.2.3.   Reading materials for the students:

The textbook Beginning Active Server Pages 2.0  (1998, 655 pages) has been replaced by Beginning Active Server Pages 3.0  (2000, 1200 pages), almost doubling the reading material.  The reference book Electronic Commerce has been replace by its second edition.

 

3.2.4.   Materials for evaluation of the students:

Since the first offering, all quizzes, lab exercises, exams, and projects were modified to reflect the changes in course content.

 

3.2.5.   Computing environment:

Changes have been incorporated in the labs and servers as follows:

·        Labs: PWS 4.0 to IIS 5.0, Windows 95 to Windows 2000, new HomeSite 4.5 authoring tool was added.

·        Servers: Web Server IIS 4.0 on intranet to IIS 4.0 on Internet, and database server with MS SQL Server 7 was added. 

 

3.3.  Upper division level theoretical courses

 

The example used in this category will be COMP 312: Programming Languages. This course was offered for the first time at UCC in Fall 1998 and subsequently in Fall 2000. It has been substantially modified since then as follows:

 

3.3.1.   Course units and topics modified:

After the first offering in Fall 1998, the entire unit on scripting languages (using Tcl) has been removed and replaced by more material in functional and logic programming paradigms.

 

3.3.2.   Teaching materials:

Several new examples for Java, PC Scheme and Arity PROLOG have been added in OOP, functional and logic programming paradigms respectively. 

 

3.3.3.   Reading materials for the students:

The second edition of one of the textbooks on Java has been replaced by The Java Programming Language Third Edition by Arnold, Gosling and Holmes (2000, 596 pages) adding approximately 150 pages of the reading material.

 

3.3.4.   Materials for evaluation of the students:

Since the first offering, all quizzes, lab exercises, exams, and projects were modified to reflect the changes in course content.

 

3.3.5.   Computing environment:

All lab exercises on Java, PC Scheme and Arity PROLOG have been moved from the minicomputer environment to the microcomputer environment.

 

 

4.     WORK LOAD ANALYSIS AT UCC

 

Our analysis is based on these two premises:

1.      A calendar year consists of 52 weeks with the workload of 40 hours per week.

2.      Teachers are required to work for 42 weeks a year:

52 weeks - (2 weeks holidays  +  8 weeks vacation) = 42 weeks

 

This 42 weeks workload is subdivided into these two components:

A.  Instructional period consisting of 2 semesters (15 weeks per semester): 30 weeks

B.  Non-instructional period (course development and preparation time including professional development  time): 12 weeks             

 

4.1.  How much time do we have for course modifications during instructional period of 30 weeks?

 

We conducted a survey at UCC to answer this question. Table 1 represents our findings about time allocation in a typical workweek during the instructional period. These calculations are based on 16 units of teaching (equivalent to 3 courses or more) and 20 students per course. The numbers do not include course revisions or course preparation time for course lectures, demos, and exercises.

 

Table 1 indicates (see Total Hours Per Week) that the teachers spend more than 40 hours per week during the instructional period. Therefore, during the instructional period of 30 weeks, they do not have any time for course modifications.

 

 

Activity

Activity Description

Number of hours

per week

Min     Max

 

Instructions

 

Instructional time in class (including time to get in and out of the classrooms)

 

17  -  22

 

 

 

Marking

 

Marking assignments, short exercises, projects, quizzes, midterms, and final exams

 

 

10  -  16

 

 

Student Consultations

 

Students consulting including office hours, answering e-mail and voice mail

 

 

4    -  6

 

 

Meetings & Committees   

 

Departmental meetings, committee work and meetings, and institutional  meetings

 

 

2    -   4

 

Course Administration

 

On-going preparation activities: reviewing and ordering notes before and after lectures, duplicating sets of notes, maintaining WebCT, software and hardware administration  (for example: creating database users, Web server users) or requesting related jobs from lab demonstrator. Assuming 3 different courses with a typical vectoring of 3 lectures and 1 lab.

 

 

7   -    9

 

Total Hours Per Week:

 

 

40   -  56

 

Table 1   Weekly time allocation for a single course offering

 

 

 


 

4.2. How much time do we have for course modifications during the non- instructional period of 12 weeks?

 

The next component of our survey is an attempt to answer this question. Table 2 summarises our findings about time allocation for the maintenance of a single existing course:

 

Activity

Activity Description

Number of hours

per course

Min     Max

 

Final exam

 

Final exam revision and changes reflecting changed course content

 

 

8  -  15

 

Midterm exam

 

 

Midterm exam(s) rewriting

 

 

5   -   8

 

 

Quizzes

 

Preparing 2-4 new quizzes and other short tests including answers

 

 

12    -  15

 

 

Assignments

   

 

Changing 4-6 Assignments including design and implementation of the answers

 

 

30  -    40

 

Software & hardware

 

Software evaluation, installation and testing including time spend on reading related software documentation.

 

 

30  -    40

 

Software & hardware

 

Changing lectures and  course notes, preparing PowerPoint slides, changes to in-class exercises and answers, writing and testing small programs, setting up example databases (time estimation is based on 36 lectures)

 

 

36  -    120

 

Total Hours Per Course Offering:

 

 

121   -  238

 

Table 2   Time allocation for a single course offering

 

Table 2 demonstrates (see Total Hours Per Course Offering) that the time required for modifying a typical computing science course at UCC ranges from 121 hours to 238 hours. The average time required for one course, therefore, is 179 hours or approximately 4.5 weeks. Assuming that every computing science teacher at UCC maintains 6 courses per year, the total time required is 27 weeks. The time allocated for course preparation and professional development is 12 weeks per year in total: There is a difference of 15 weeks per calendar year. It must be emphasised that this calculation does not include any time for professional development. Assuming that 5 weeks is a reasonable estimate for professional development time, the above difference of 15 weeks may easily escalate to 20 weeks per calendar year.

 

Our analysis based on the preliminary survey reported in this section, therefore, decisively concludes that the computing science teachers in small university-colleges are heavily loaded with teaching assignments.

 

 

5.     SOME SIDE EFFECTS

 

The fact that the computing science teachers at the small university-colleges are heavily loaded with teaching assignments, leads to several negative side effects. Some of them are discussed below. 

 

·        Teachers at small institutions, such as UCC, are so heavily involved in teaching that whenever research is discussed with them, they all report that they have gathered many valuable ideas on which they have already conducted sufficient research that they are ready to publish, but time is their single most important problem. The foremost question always remains: "When do these teachers heavily charged with teaching workload find time to do justification to their research projects?" So the first major side effect is that the research activity suffers heavily.

·        The teachers cannot keep current in their areas of expertise at the desired level as is stated in STLHE Ethical Principles in University Teaching [4].

 

The teachers feel that they are constantly and continuously lagging behind and struggling to catch up in both fields: research and teaching.

 

Some additional negative effects are: 

·        job dissatisfaction

·        employee recruitment and retention problem or the academic hiring crisis [6]

·        physical and mental health problems including sickness due to job stress

·        family life problems due to overwork 

 

This partial list of negative side effects strongly suggests that the workload of the computing science teachers needs to be more reasonable and the special requirements of the discipline must be recognised.

 

 

6.     CONCLUSION

 

Computing science is a relatively young discipline. Consequently, it is constantly going through evolutionary and revolutionary changes. Since the small university-colleges such as UCC do not enjoy as many facilities as major graduate degree granting universities, the computing science teachers at these small undergraduate degree granting institutions face many problems not encountered at major universities. One of these problems is the time required for the modifications of the existing courses. In this paper, these problems are discussed with special reference to three broad categories of the computing science courses (first year programming courses, upper division level applied courses, and upper division level theoretical courses). Our analysis strongly suggests that the computing science teachers in small university-colleges are heavily loaded with teaching assignments. This leads to several negative side effects. This paper discusses these side effects and concludes that the workload of the computing science teachers needs to be more reasonable and the special requirements of the discipline must be recognised. Without any action on our part, overworked computing science teachers will either work overtime jeopardising their family life and their health or they will compromise the quality of instruction and will not maintain the currency of courses.

 

 

REFERENCES

 

1.      Richard F. Paweska, Roelof Brouwer, Surinder Dhanjal & Wayne Babinchuk, "Meeting the Modern Challenge - Integrating Computing Science Undergraduate Education at the University College of the Cariboo", WCCCE '99 (Kelowna, BC) Proceedings, May 6-7, 1999.

 

2.      IEEE Computer Society and Association for Computing Machinery Joint Task Force on Computing Curricula, Computing Curricula 2001 Computer Science, Final Report, December 15, 2001.

 

3.      Frontiers in Education (FIE) 2002 (to be held on November 6-9, 2002 in Boston, Massachusetts, USA) conference website: http://www.wpi.edu/News/Conf/FIE2002.  

 

4.      Frank Klassner, "Can Web Development Courses Avoid Obsolescence?",  SIGCSE Bulletin - inroads: ITiCSE'00 Proceedings, Volume 32, Number 3, September 2000.

 

5.      Harry Murray, Eileen Gillese, Madeline Lennon, Paul Mercer & Marilyn Robinson, "Ethical Principles in University Teaching", STLHE (Society for Teaching and Learning in Higher Education), York University, North York, Ontario, 1996.

 

6.      Eric Roberts, "Conserving the Seed Corn: Reflections on the Academic Hiring Crisis", SIGCSE Bulletin - inroads, Volume 31, Number 4, December 1999.