1 . Am I required to take English, or some natural language?
2 . After I am finished my degree, I'd like to work in a "specialized" field, say Operations Research, AI, Scientific Computing, Gaming, e-Business, Human Computer Interaction, web programming, etc. Keeping that in mind, which courses should I take, both CMPT and other?
3 . In the calendar, it lists CMPT 385 as a prerequisite for CMPT 485. However, CMPT 385 isn't offered, so how can I obtain the prerequisite for CMPT 485?
4 . Which courses at the Dept. are more theoretical and which ones are more about hands-on programming?
| Theoretical | Hands-on |
| CMPT 360 | CMPT 350 |
| CMPT 364 | CMPT 352 |
| CMPT 417 | CMPT 355 |
| CMPT 461 | CMPT 370 |
| CMPT 463 | CMPT 371 |
It should be noted however, that the course content varies from year to year depending on who teaches the course that term. Also, most CMPT courses at the U. of S. can not be put into either of the two categories since they involve a combination of the theoretical and practical aspects of the discipline of Computer Science.
5 . Who should take CMPT 400 and CMPT 405, and what is the difference between them?
CMPT 40
0 and CMPT 405 are project courses. They are designed for better students to give them the chance to investigate some topic or develop some project does not fit in the regular courses. Students in these courses will be supervised by a faculty member, but are expected to be able to research their topic and develop their project and ideas with relatively little help from their supervisor. As a result, these courses are restricted to students with an average of 65% or better. In addition, a student with a 65% average will not necessarily be given permission to take one of these courses as it might not be possible to find a supervisor. CMPT 400 is required for all regular Honours students, and CMPT 405 is required for all Software Engineering Honours students who do not go on an internship program. As a result, Honours students have priority for entrance into these courses.
CMPT 400 emphasizes research on a topic by reading books and/or papers. The primary outcome from CMPT 400 is a research paper explaining what was learned and ideas for future work in the area. The focus of CMPT 405 is the development of a software product. There will be background reading for a CMPT 405 project, and a written paper is often required, but the emphasis is on development of a working version of a software project. As should be obvious, there can be a fine line between a CMPT 400 project and a CMPT 405 one. This is resolved by determining whether the primary focus is on the paper or on the software product.
Students who wish to take either CMPT 400 or CMPT 405 should apply to the Department towards the end, or just after completion, of their third year. If the student has some idea of a project that is great, and the Department will determine whether that topic is feasible. However, a student need not have a topic. The form requests that a student state their area or areas of interest, and the Department will attempt to match the student with a supervisor who is interested in similar areas. By the end of September, the student and supervisor are expected to agree on a topic, and sign an agreement of what is expected from the student. For CMPT 405, it is certainly possible for a team of students to work together on some product.
Note that the same project cannot be used for two courses. Also, a student is not normally allowed to do both CMPT 400 and CMPT 405.
Application forms: