This is an old revision of the document!
Course Descriptions
These course descriptions are copied from the CSE Supplemental Calendar. The descriptions are provided here as a convenience. In the event that there is a discrepancy between the versions here and the supplemental calendar, the supplemental calendar is the definitive version.
Note that the required “formal seminar presentation” has taken the form of a poster presentation seminar in recent years. The date for the poster presentations will be determined by the course director. It is normally held at the end of the term, or in the first week of the following term.
CSE 4080 3.0 Computer Science Project
This is a course for advanced students, normally those in the fourth year of an honours program, or students who have passed 36 computer science credits. Students who have a project they wish to do need to convince a member of the faculty in the Department that it is appropriate for course credit. Alternatively, students may approach a faculty member in the Department (typically, one who is teaching or doing research in the area of the project) and ask for project suggestions. Whatever the origin of the project, a “contract” is required. It must state the scope of the project, the schedule of work, the resources required, and the criteria for evaluation. The contract must be signed by the student and his/her project supervisor and be acceptable to the course director. A critical course component that must be included in the contract is a formal seminar presentation. The course director will arrange the seminar sessions, and students and their faculty supervisors are required to participate. The seminar talks will have a typical length of 15-20 minutes, and will be evaluated by the individual supervisor, the course director and one more faculty member. This talk will be worth 30% of the final mark. The remaining 70% of the course mark is the responsibility of the individual supervisor. Internship students may apply to receive credit for their internship as a project course. An approved “contract” with a faculty member, including the seminar presentation, is required and must be approved in advance of the work on the project.
Prerequisites: General prerequisites and permission of the course director. Restricted to students who have passed 36 credits in Computer Science.
Course Credit Exclusions: CSE 4081 6.00, CSE 4082 6.00, CSE 4084 6.00, CSE4088 6.00, CSE 4480 3.00, ENG 4000 6.00
CSE 4081 6.0 Intelligent Systems Project
This is an honours thesis course in Intelligent Systems. Although a course coordinator will be assigned to the course, the bulk of the course will take place through the interaction between a supervisor and a single student (or group of students). After two organizational meetings in September, the student will work with his/her supervisor directly. The course requires an initial project proposal that will be submitted to and approved by the supervisor and the course coordinator (director). This is, in essence, a contract for the project to follow. The supervisor will evaluate the performance of the student in early January. The format of this evaluation will vary from project to project, but the requirements of this evaluation will be specified in the original project proposal. At the beginning of the course, the course director (coordinator) will establish a date and format for the public presentation of all Intelligent System Projects. Normally held between reading week and the third last week of term, this presentation will normally consist of either a short public oral or poster presentation of the project. (The actual format may change from year to year.) All of the faculty associated with the Intelligent Systems Stream will be invited to attend this presentation. The individual supervisor, the course coordinator and one more faculty member will mark this presentation. The final report will be due at the end of the term and will be marked by the individual supervisor. The actual nature of the project will vary from student to student. Although projects that involve significant implementation are anticipated, purely theoretical projects are possible as well.
Marking Scheme:
- Mid-term evaluation: 30%
- Public presentation evaluation: 30%
- Final report: 40%
Prerequisites: Only open to students in the Intelligent Systems Stream who have completed CSE3401 3.0 and CSE3402 3.0 with a minimum grade of B, and have prior permission of the instructor.
Course Credit Exclusions: CSE 4080 3.00; CSE 4082 6.00; CSE 4084 6.00, CSE 4088 6.00, CSE 4480 3.00, ENG 4000 6.00
CSE 4082 6.0 Interactive Systems Project
This is an honours thesis course in Interactive Systems. Although a course coordinator will be assigned to the course, the bulk of the course will take place through the interaction between a supervisor and a single student (or group of students). After two organizational meetings in September, the student will work with his/her supervisor directly. The course requires an initial project proposal that will be submitted to and approved by the supervisor and the course coordinator (director). This is, in essence, a contract for the project to follow. The supervisor will evaluate the performance of the student in early January. The format of this evaluation will vary from project to project, but the requirements of this evaluation will be specified in the original project proposal. At the beginning of the course, the course director (coordinator) will establish a date and format for the public presentation of all Interactive System Projects. Normally held between reading week and the third last week of term, this presentation will normally consist of either a short public oral or poster presentation of the project. (The actual format may change from year to year.) All of the faculty associated with the Interactive Systems Stream will be invited to attend this presentation. The individual supervisor, the course coordinator and one more faculty member will mark this presentation. The final report will be due at the end of the term and will be marked by the individual supervisor.
The actual nature of the project will vary from student to student. Projects will involve the design, implementation and evaluation of an interactive system. While theoretical projects are possible, the expectation is that all projects evaluate the implementation with human participants and include an analysis of these results in the presentation and final report. For projects that will involve significant subject testing and performance evaluation, it is expected that a complete draft implementation of the system will be available by January. Projects must deal with systems that interact with a human user. This interaction must be a critical component of the system
Marking Scheme:
- Mid-term evaluation: 30%
- Public presentation evaluation: 30%
- Final report: 40%
Prerequisites: Only open to students in the Interactive Systems Stream who have passed CSE3311 3.0 and CSE3461 3.0, and have prior permission of the instructor.
Course Credit Exclusions: CSE 4080 3.00; CSE 4081 6.00; CSE 4084 6.00, CSE 4088 6.00, CSE 4480 3.00, ENG 4000 6.00
CSE 4084 6.0 Communication Networks Project
This is an honours thesis course in Communication Networks. Although a course coordinator will be assigned to the course, the bulk of the course will take place through the interaction between a supervisor and a single student (or group of students). After two organizational meetings in September, the student will work with his/her supervisor directly. The course requires an initial project proposal that will be submitted to and approved by the supervisor and the course coordinator (director). This is, in essence, a contract for the project to follow. The supervisor will evaluate the performance of the student in early January. The format of the evaluation will vary from project to project, but the requirements of this evaluation will be specified in the original project proposal. At the beginning of the course, the course director (coordinator) will establish a date and format for the public presentation of all Communication Networks projects. Normally held between reading week and the third last week of the term, this presentation will normally consist of either a short public oral or poster presentation of the project. (The actual format may change from year to year). All of the faculty associated with the Communication Networks Stream will be invited to attend the presentation. The individual supervisor, the course coordinator and one more faculty member will mark this presentation. The final report will be due at the end of the term and will be marked by the individual supervisor.
The actual nature of the project will vary from one student to another. Although projects that involve significant implementation are anticipated, purely theoretical or analysis projects are possible as well.
Marking Scheme:
- Mid-term evaluation: 30%
- Public presentation evaluation: 30%
- Final report: 40%
Prerequisites: Only open to students in the Communication Networks Stream who have received a grade of at least B in CSE3451 4.0 and CSE3213 3.0, and have prior permission of the instructor.
Course Credit Exclusions: CSE 4080 3.00, CSE 4081 6.00, CSE 4082 6.00, CSE4088 6.00, CSE 4480 3.00, ENG 4000 6.00
CSE 4088 6.0 Computer Science Capstone Project
This is a course for students in the fourth year of an honours program. Students who have a project they wish to do need to convince a member of the faculty in the Department that it is appropriate for course credit. Alternatively, students may approach a faculty member in the Department (typically, one who is teaching or doing research in the area of the project) and ask for project suggestions. Whatever the origin of the project, a “contract” is required. It must state the scope of the project, the schedule of work, the resources required, and the criteria for evaluation. The contract must be signed by the student and his/her project supervisor and be acceptable to the course director. A critical course component that must be included in the contract is a final presentation. The course director will arrange the final presentation session, and students and their faculty supervisors are required to participate. The presentations will be evaluated by the individual supervisor, the course director and one more faculty member. This presentation will be worth 30% of the final mark. The remaining 70% of the course mark is the responsibility of the individual supervisor. Internship students may apply to receive credit for their internship as a project course. A “contract” including the final presentation is still required.
Prerequisites: General prerequisites and permission of the course director. Normally restricted to students who have passed 36 credits in Computer Science.
Course Credit Exclusions: CSE4080 3.0, CSE4081 6.0, CSE4082 6.0, CSE4084 6.0, CSE4480 3.0, ENG4000 6.0
CSE 4090 6.0 Software Development Project
A well-designed software product is more than just a computer program. A software product consists of quality code, a well thought out design developed via disciplined professional engineering standards, appropriate literate documentation including requirements, design and testing documents, a manual, and the appropriate installation files and instructions needed to get the product to work. The product has to be correct (i.e. it must satisfy all the requirements specified by the client), usable, efficient, safe and maintainable.
The goal of this course is to provide students with an opportunity to integrate what they have learned in earlier computer science courses, deepen their understanding of that material, extend their area of knowledge, and apply their knowledge and skills in a realistic simulation of professional experience. The end result must be a substantial software product.
This course is run on a tight schedule over the Fall and Winter Terms; work is ongoing and regular. The course is intended to help with the transition from being a student to being an active professional in industry. During the course students are expected to perform independent study, plan their work, make decisions, and take ownership of the consequences of their mistakes.
A combination of teamwork and individual work is required. The requirements elicitation, requirements analysis, design, coding, testing, and implementation of the product will be a team effort. However, individual responsibilities must be clearly identified in every deliverable.
This project will be of significant size and like most industrial projects it will be time and resource limited. Students must meet the specified deadlines. As a result, they will have to set their goals and plan their work accordingly.
Students must apply sound mathematics, good engineering design, and algorithms throughout the project. However, they will also need to apply heuristics and design patterns, or “rules of thumb”, where sound, well-understood algorithms are not available. Any such heuristics must be clearly identified and supported by arguments that justify their choice. The teams will be required to show that the heuristic cannot fail in a way that will violate safety restrictions or other restrictions designated as critical.
Prerequisites: Only open to students in the Software Development Stream. B or higher in CSE3311 3.0, and completion of CSE3101 3.0, CSE3221 3.0, CSE3401 3.0, and CSE3341 3.0
Co requisites: CSE 4312 3.0, CSE 4313 3.0
Course Credit Exclusions: none
CSE 4480 3.00 Computer Security Project
This is a capstone project course for computer security students. The students engage in a significant research and/or development project that has major computer security considerations. This is a required course for Computer Security students. 83 Students who have a project they wish to do need to convince the course director that it is appropriate for course credit. They also need to find a faculty member that agrees to supervise the project. Alternatively, students may approach a faculty member (typically, one who is teaching or doing research in computer security) and ask for project suggestions. For students that are not able to find a suitable project through the above means, the course director is responsible for preparing appropriate projects. Any of the projects may be individual or team projects at the discretion of the course director (coordinator). Whatever the origin of the project, a “contract” is required. It must state the scope of the project, the schedule of work, the resources required, and the criteria for evaluation. The contract must be signed by the student, his/her project supervisor, and the course director. A critical course component that must be included in the contract is a project presentation to take place after the project is finished. The course director will arrange the presentation sessions, and students and their faculty supervisors are required to participate. The presentations will have a typical length of 15-20 minutes, and will be evaluated by the individual supervisor, the course director and at least one more faculty member. The actual nature of the project will vary from student to student. However, after successful completion of the course, students are typically expected to be able to: • Apply the knowledge they have gained in other computer security courses to a real-world system. • Understand the computer security challenges faced by the information technology industry. • Articulate the questions that a particular area of research in computer security attempts to address. • Prepare a professional presentation that outlines the contributions they made to the project and the knowledge they acquired. Prerequisites: Restricted to students in the Computer Security degree. Students must have passed 40 CSE credits. Permission of the course director is required. Course Credit Exclusions: CSE 4080 3.00, CSE 4081 6.00, CSE 4082 6.00, CSE 4084 6.00, CSE4088 6.00, CSE 4700 6.00