Bachelor's Degree in Computer Science

The Computer Science program is accredited by the Computing Accreditation Commission of ABET,

Detailed list of course requirements and curriculum

As a student in Computer Science (BCOS) you'll gain valuable skills in software design, computer architecture, and  programming in high-level computer languages such as C, C++, and JAVA. Related courses including database management, graphics, networking, and operating systems are also integral courses in this program. Courses are also available in computer game development and bioinformatics (Perl). You are required to successfully complete two co-op work semesters beginning junior year.

Program Educational Objectives

Within three to five years of graduation:

  1. Graduates are proficient in applying computer science principles and best practices to problems in the workplace.
  2. Graduates attain productive and challenging computer science and/or software engineering careers in private practice, industry, or government.
  3. Graduates are engaged in continuing professional development or professional societies in computer science or a related computing field.
  4. Graduates follow standards set forth by professional societies of which they are members.

Student Outcomes

By the time of graduation, students will attain:

(a) An ability to apply knowledge of computing and mathematics appropriate to the discipline

(b) An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution

(c) An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs

(d) An ability to function effectively on teams to accomplish a common goal

(e) An understanding of professional, ethical, legal, security and social issues and responsibilities

(f) An ability to communicate effectively with a range of audiences

(g) An ability to analyze the local and global impact of computing on individuals, organizations, and society

(h) Recognition of the need for and an ability to engage in continuing professional development

(i) An ability to use current techniques, skills, and tools necessary for computing practice

(j) An ability to apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the tradeoffs involved in design choices

(k) An ability to apply design and development principles in the construction of software systems of varying complexity.