Teaching Philosophy & Expectations

Last updated February 22, 2006

WB01666.gif (3829 bytes)

Undergraduate Lecture Courses

Most of the courses that I teach in this category are CS or CompE technical electives.   These courses tend to have a foundation based on software development processes as well as ad hoc tools, methods, and techniques.  Very little theoretical or fundamental technology, such as that you might be exposed to in an operating systems or data communication course, is involved.  

Some of the ideas or concepts I teach are main stream and some are unproven.  My philosophy for undergraduate lecture courses is based on an assumption that a student enrolling in one of these courses is motivated by a true interest in significant learning in the subject area.   I expect each student to be able to read assigned material on a daily basis (and stay current) and to understand most material without detailed explanation.  Students should possess curiosity and analytical skills.  Material studied should raise questions, and many of them the student should be able to answer for herself or himself. Other questions will be appropriate for discussion in class.  I expect students to frequently participate in and contribute to class discussions.

Students should be able to do independent study and present the results of independent study in a written paper with proper referencing.  I like to give somewhat unstructured homework assignments that give the student the opportunity to perform a method or technique and then evaluate the results.  I also try to give each student the maximum opportunity to focus his or her study and work into areas of particular interest.  I tend to down play the significance of examinations as a way to evaluate a student's knowledge of the subject area, but I do use examinations as a means of ensuring a comprehensive understanding of the material studied in a course.  Examinations are generally essay in nature. Other methods of assessing a student's ability include performance on individual exercises, term projects, and class participation.

I usually lecture from PowerPoint slides which are made available to students via the course's Web page.

WB01666.gif (3829 bytes)

Graduate Lecture Courses

For graduate level lecture courses (and courses carrying a dual 400-level/500-level designation) I have the same basic expectations as expressed above.  But in addition, I expect graduate students to have an in-depth understanding of computer science and software engineering principles as well as familiarity with literature published in technical books, conference proceedings, and journals.  Graduate students must possess basic library and research skills.  Graduate students must be capable of independent study and must be able to write technical reports with proper use of reference material and correct citations.  For off-campus students I try to make course assignments and term projects applicable to the professional work setting and permit students to focus on work-related issues.

In selecting a text to support graduate courses I generally use recent books that have general coverage of the course topics. However, I present the material that I think is most important and present it in an order that I prefer. This often means that the course presentation order is different from that selected by the text author(s). I may also skip material in the texts and present material that is not covered in the texts. I sometimes express options that are different from those of text authors. I generally use two text in each 400/500-level course and over the last few semesters have used completely new texts each time the courses have been offered.

WB01666.gif (3829 bytes)

Project Courses

In project courses (CS 480, CS 481, and CS 580) my philosophy is to function in much the same way that a project manager would function in dealing with an industrial project.  That means that I will be actively involved in specifying the processes to be used and will periodically monitor project status, but generally will not provide detailed technical consultation.  I expect students enrolled in project courses to be self motivated and able to manage their own time in order to complete their project on time.  I don't expect to constantly monitor and prod the student's efforts, however I do expect the student to communicate the status of his or her project at least weekly or when exceptional situations develop.  I also expect the student to quickly seek help when needed.   However, students in these courses are expected to possess most of the relevant technical knowledge need to perform adequately on the selected project or able to independently learn computer languages, methods, and techniques not already mastered.  Project courses involve significant interaction with project sponsors and require the preparation and presentation of technical information. Therefore, an ability to communicate effectively in spoken and written English is mandatory.

WB01666.gif (3829 bytes)