Important Messages

*** The WebCT Vista site will only be accessible starting January 4th, or shortly thereafter ***

*** Labs start January 11th ***

Course Description & Prerequisites

Introduction to Software Development: Specification, design, implementation and maintenance of large, multi-module software systems. Principles, techniques, methodologies and tools for computer aided software engineering (CASE); human-computer interfaces, reactive systems, hardware-software interfaces and distributed applications.

Prerequisite: Prerequisite: Either (a) all of CPSC 213, CPSC 221 or (b) all of CPSC 216, CPSC 219, CPSC 220 or (c) all of CPSC 211, CPSC 213, CPSC 260, EECE 320.

Course Objectives

When you complete this course, you should be able to:

Overall Objectives

Objectives by topic


  Lifecycle   Requirements   Design   Implementation   Testing   Intellectual Property

Course Structure

Lectures

Labs

Here is the lab schedule for this term. Each lab is 2 hours long:

Section Day Time Place TA
L2A Tuesdays 4:00pm to 6:00pm ICCS 015 James L.
L2C Wednesdays 10:00am to 12:00pm ICCS 015 Mohan
L2D Wednesdays 3:00pm to 5:00pm ICCS 015 Mohan
L2E Mondays 3:00pm to 5:00pm ICCS 015 James L.
L2F Mondays 12:00pm to 2:00pm ICCS 015 James K.

Labs are an important part of this course. Labs will provide you with the practical knowledge and skills required for the completion of your course assignments. Each lab is designed to give you the opportunity to meet and work as a group, and attendance is mandatory.

Each lab session is supervised by a teaching assistant (TA), who will introduce the necessary tools, provide instructions for the projects, and answer questions.

If, because of illness, you cannot attend a given lab, please contact the TA immediately.

Tentative lab topics

Final lab topics and dates will be posted on WebCT Vista.

People

Instructor

Meghan Allen

Graduate Teaching Assistants

Evaluation

Your grade in this course will be based on the following activities:

Your final mark will be calculated using the following formula:

To pass this course, you must obtain a 50% overall mark and, in addition, you must:

Students who fail the project, the implementation phase of the project, or the final exam, will be assigned as the final grade in the course the minimum of 45% (an F) and the grade computed using the above formula. The instructors reserve the right to modify the course grading scheme at any time.

Grade disputes

If you feel that your assignment, project, or exam was graded incorrectly or unfairly, PLEASE discuss the grade with your TA or myself, during regular office hours. You have 7 days after a grade is returned to dispute the marking (whether or not you were present to receive the returned assignment or exam).
If you find a marking error, it will be corrected immediately. I will not remark individual questions if you disagree with the marking scheme. However, I will re-mark your entire exam if you feel that the grading scheme used was unfair and would like me to re-evaluate your exam.

Posting grades

Grades will be posted regularly via WebCT Vista.

Grading scale

Percentage (%) Letter Grade
90-100 A+
85-89 A
80-84 A-
76-79 B+
72-75 B
68-71 B-
64-67 C+
60-63 C
55-59 C-
50-54 D
0-49 F

Assignments

This term, we are planning to have one large project, broken into 4 assignments.

The submission procedure will be clearly specified in the assignments.

Late policy: TBA

Your projects are group work, but no inter-group communication about projects is permitted unless explicitly noted in the assignment description. Please read the policies section found at the end of this course outline.

Note that the project is a mandatory component of this course. You must obtain a passing average grade in the project in order to pass the course. You must also received a passing average grade in the implementation phase of the project.

If you have been unable to complete an assignment due to illness, you must present to the instructor a note from your physician, detailing the period during which you were ill, in order not to be penalized (i.e., receive a grade of 0) for that particular course work. The instructor will then tell you the course of action to follow regarding the missed assignment.

Examinations

There will be a midterm, and a final examination. Each exam will be closed-book.

The midterm (80 minutes) will be held on:

Tuesday, March 9th - starting at 2:00pm

The final exam (150 minutes) will be scheduled by UBC. We should get the exam schedule sometime in February or March.

Do not write an examination if there is a medical factor which might impair your performance. If you have been unable to write the midterm due to illness, you must present to the instructor a note from your physician, detailing the period during which you were ill, in order not to be penalized (i.e., receive a grade of 0) for the midterm. The instructor will then tell you the course of action to follow regarding the missed midterm.

If you have been or will be unable to write the final examination due to illness, you should contact your home faculty as soon as possible. For example, Science students, you would contact the Science Undergraduate Advising office. For more information on this subject, visit: http://www.essential.science.ubc.ca/Academic/Advising/concession.jsp

Course Bulletin Board

The course bulletin board on WebCT Vista is required reading, as the instructor and TAs may post important information there. You should check the bulletin board about once a day. In addition, you are encouraged to post your questions about the course material on the course bulletin board. You are also encouraged to respond to questions for which you know the answer. Students who help other students by answering questions on the bulletin board could receive extra participation credit. The instructors and the TAs will regularly monitor the bulletin board and try to answer your questions as promptly as possible. In case you need a face-to-face discussion, you can bring you questions regarding the course material, assignments, project and labs to

Course Resources

Textbook

There is no textbook material for the course, the lectures and assigned readings will contain all information on the exams.

Online Resources

The course material is available on the CPSC 310 WebCT Vista site found at: http://www.vista.ubc.ca or directly from the course home site: http://www.ugrad.cs.ubc.ca/~cs310.

The WebCT Vista site also contains the course bulletin board and the student grades for the various course activities. To access the WebCT Vista site you need to use your Campus Wide Login (CWL) id and password. The course home site is accessible without any password.

The course calendar is available online as a public google calendar at: http://www.ugrad.cs.ubc.ca/~cs310/calendar.html. Note that this calendar is tentative and may change.

Course Outline

The following is a tentative outline of the topics covered in the lectures and labs of this course. The order in which the topics will be presented may change.

General Advice

Academic Conduct

Unless otherwise stated, all work in this course is to be done on an individual basis. Students should know where to draw the line between getting legitimate outside assistance with course material and outright cheating. Students who obtain too much assistance without learning the material ultimately cheat themselves the most. Submitting the work of another person as your own (i.e., plagiarism) constitutes academic misconduct, as does communication with others (either as donor or recipient) in ways other than those permitted for assignments and exams. Such actions will not be tolerated. Students should be particularly careful when hiring a tutor. It is not permitted to submit code for an assignment or lab that was written in whole or in part by a tutor. All offences will be reported to the Department of Computer Science.

As a student at UBC you should be familiar with the "Student Discipline" policies outlined in the "Academic Regulations" section of the UBC Calendar. As a Computer Science student, you are also expected to be familiar with the Computer Science Department Lab policies and responsibilities found at:

The standard UBC regulations regarding misconduct will apply to all individual work submitted for grading in this course. It is sincerely hoped that there will be no need to invoke this policy.