Ranging from hands-on applications to pure theory, Computer Science introduces students to all facets of the discipline.
It also gives you an appreciation of the historical, ethical, and social context of computing, and the responsibility of the computer professional and casual computer user in a modern society.
At a Glance
At Mount Allison, computer science courses are designed to address the needs of a wide variety of users, from the casual to the professional.
Whether you want to learn more about certain software or to develop advanced programming skills, Mount Allison has a computer science course for you.
Introductory computer science courses offer an overview of programming skills, the use and application of popular software, and the essentials of computing.
More advanced courses deal with topics ranging from artificial intelligence and the role of computers in society to the design and implementation of advanced hardware or software systems.
Specialized areas include:
- theory of computation
- artificial intelligence
- computer graphics
- software and hardware design
All courses in the computing curriculum offer a blend of theory and practical application, with many of the offerings having a significant project component in which students are given the opportunity to apply the classroom material to real-world problems.
At Mount Allison, there are different degree options in Computer Science depending on your interests and career goals.
Bachelor of Arts (BA) in Computer Science
As a Bachelor of Arts student with a major in Computer Science, you'll combine your computer science courses with courses in arts and letters, humanities, and social sciences.
BA honours Computer Science is also available.
Bachelor of Science (BSc) in Computer Science
As a Bachelor of Science student with a major in Computer Science, you'll combine your computer science courses with courses in chemistry, physics, and other science courses.
BSc honours Computer Science is also available.
Computer Science +
Minor in Computer Science
A minor in Computer Science consists of a selection of core and elective computer science courses and can be combined with any degree.
COMP 1631 — Introduction to Computer Science
This course provides a broad survey of computer science and an introduction to programming. Topics include: origins of computers, data representation and storage, Boolean algebra, digital logic gates, computer architecture, assemblers and compilers, operating systems, networks and the Internet, theories of computation, and artificial intelligence. (Format: Lecture 3 Hours, Laboratory 3 Hours)
COMP 2611 — Data Structures and Algorithms I
This course introduces effective methods of data organization, focusing on data structures and their algorithms via abstract data types with the use of recursive procedures. It explores the design of flexible file structures and related methods such as indexes, system file structures, and hashed access, and it emphasizes object-oriented programming techniques.(Format: Lecture 3 Hours, Laboratory 3 Hours)
COMP 2931 — Introduction to Systems Programming
This course is an introduction to programming at the systems level. Topics include: basic machine organization, assembly language, the UNIX environment, shell scripting, and C/C++ programming. (Format: Lecture 3 Hours, Laboratory 3 Hours)
COMP 3531 — Simulation and Modelling
This course introduces the simulation technique for studying mathematical models. Topics include: systems theory and system models, continuous system simulation, discrete system simulation, Monte Carlo methods, random number generators, and simulation languages. It emphasizes computer implementation of the methods studied.
COMP 3651 — Artificial Intelligence
This course introduces general problem solving methods associated with automated reasoning and simulated intelligence. Topics include: state space heuristic search theory, mechanical theorem proving, game playing, natural language processing, propositional logic, learning and cognitive models and expert systems.
COMP 3851 — Computers and Society
This course examines the externalities arising from the introduction of technical innovations into society. The social context is central to understanding not only the effects of a technology but also informs the computing profession of the appropriate technical content of the innovation. An emphasis on the philosophical basis for computing ethics, including ethical issues faced by and brought about by computing professions, is the starting point for topics such as security, privacy, intellectual property, reliability and liability.
COMP 4721 — Software Design
This course focuses on software design culminating in a major project. It studies life cycle models and their phases: planning, requirements, specifications, design, implementation, testing, and maintenance. (Format: Lecture 3 Hours, Laboratory 2 Hours)
Find a full list of computer science courses in our Academic Calendar — Computer Science.
Whether you're entering the job market or continuing your education, your Mount Allison degree will stand out.
Mount Allison has been recognized by Maclean's as the top primarily undergraduate university in Canada more times than any other university.
With experiential learning and career development opportunities available in every degree, you'll also graduate with hands-on learning and on-the-job experience.
Our graduates also boast extraordinarily high acceptance rates to top graduate programs and professional schools such as law and medicine.
Popular career paths for Computer Science graduates include:
- computer network specialist
- logistics specialist
- web developer/website designer
- computer engineer/programmer
- software/programmer analyst
- database developer/administrator
- systems architect/analyst
- video game/multimedia/applications developer
- intelligence officer
- computer designer
- electronic commerce specialist
- software developer
- security architect/network security analyst
Micah Stairs ('17)
BSc, honours in Computer Science and Mathematics
Google software engineer
Mount Allison's Computer Science program was the perfect foundation for me. The program itself covers all the essentials and the learning continues outside the classroom. The competitive programming competitions gave me a chance to learn new ways of thinking, providing a toolbox of skills that made tech interviews a breeze. Furthermore, the research opportunities are outstanding here: I would argue I had more experience than most of my friends in larger institutions.
Each summer, faculty in the Department of Mathematics and Computer Science offer research opportunities for undergraduate students. The students acquire valuable research experience while interacting with professors and other undergraduate students.
There are also many opportunities for students to attend internationally-recognized conferences and programming competitions.
Mount Allison students have a strong record of participation in the annual International Collegiate Programming Contest (ICPC), which for universities in Atlantic Canada is a three-level competition: the Northeast North American (NENA) Regional contest, the North America Championship (NAC), and the World Finals.