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.