COMPUTER SCIENCE 265
SOFTWARE ENGINEERING I
Course Information
Lecturers
Prof. D. M. Hoffman
Engineering Office Wing, rm. 333
Email: dhoffman@csc.uvic.ca
Prof. R. N. Horspool
Engineering Office Wing, rm. 335
Email: nigelh@csc.uvic.ca
Lecture Schedule
The Fall term lectures are held every Tuesday, Wednesday, and
Thursday at 13:30 in Cornett A120.
Teaching Assistants
Ian Chen
Email: ianchen@sanjuan.csc.uvic.ca
Office Hours: Mondays, 1pm -- 2pm, Tuesdays, 10am -- 11am,
Fridays, 3pm -- 4pm, in ELW, rm. A242
JK (Jayakrishnan Nair)
Email: jk@sanjuan.csc.uvic.ca
Office Hours: Mondays, 1pm -- 2pm, Tuesdays, 10am -- 11am,
Fridays, 3pm -- 4pm, in ELW, rm. A242
Neil Walker
Email: nwalker@sanjuan.csc.uvic.ca
Office Hours: Thursdays, 2:30 -- 4:30 in ELW, rm. B208
Textbooks
The following book is strongly recommended:
Randal L. Schwartz, Learning Perl,
O'Reilly, 1993.
ISBN: 1-56592-042-2.
Other materials will take the form of on-line class notes and
the on-line documentation for commands already available on
the computer system.
Note that knowledge of the C programming language is
assumed in the course;
therefore access to a C language manual is desirable.
Course Objectives
The goal of the course is to improve your programming productivity
by helping you to write code that is demonstrably correct,
by making effective use of software tools,
and by developing familiarity with the program development environment.
Topics
-
Scripting languages (such as shell scripts, Perl scripts, AWK files).
-
Shell commands for managing files and directories.
-
Commands for maintaining software (such as make),
for searching files (grep),
for debugging (dbx), and for profiling (prof).
-
Testing techniques, based on stubs and drivers,
on selection of appropriate test input values,
and on checking output.
-
Code inspection methods, incorporating assertions,
transition functions and invariants.
-
Use of archive libraries.
-
Object-oriented programming concepts and techniques,
including templates, class libraries,
exceptions and dynamic binding.
Course Grading
The final grade will be computed as follows:
Exercises and Laboratories: |
total weight 30%
(exercises: 5% each, labs: approx. 1% each) |
In-class quizzes: |
total weight 35% |
Final exam: |
weight 35% |
In addition, a score of at least 35% on the final exam is required for
a passing grade in the course.
Grading of exercises and quizzes may certainly be appealed if you believe that
a mistake has been made.
However, such an appeal will only be accepted if it is made within 14 days
of the exercise or quiz mark being posted.
Grade Conversion
Over-all Course
% Grade |
Assigned
Letter Grade |
90 - 100 | A+ |
85 - 89 | A |
80 - 84 | A- |
75 - 79 | B+ |
70 - 74 | B |
65 - 69 | B- |
60 - 64 | C+ |
55 - 59 | C |
50 - 54 | D |
< 50 | F |
Information on this page maintained by
nigelh@csc.uvic.ca