College of Arts and Sciences

BA in Computer Science

The Bachelor of Arts in Computer Science gives you the flexibility to tailor your curriculum to satisfy your individual talents and goals. The program combines a set of required core courses with a wide variety of elective courses in the various areas of computer science.

About the Major

 

The Bachelor of Arts in Computer Science gives you the flexibility to choose from a wide variety of electives in the various areas of computer science, while completing a set of core courses.  

Degree Requirements  

You must complete a total of 44 credits that includes a combination of courses in computer science, mathematics, and electives.

Required Courses

Among the required courses are:

  • Fundamentals of Computing I and II
  • Architecture and Assembly Language  
  • Concepts of Programming Languages  
  • Software Development  
  • Calculus I

For more information, and to see a complete list of degree requirements, visit the Course Catalog.

Additional Requirements

You are required to complete 15 additional credits with at least one course taken in two of the three breadth areas of Systems, Applications, and Theory. Examples include:

  • Computer Networks  
  • Introduction to Internet Programming
  • Data Mining  
  • Computer Graphics  
  • Formal Languages and Automata  
  • Algorithms and Complexity 

For more information, and to see a complete list of additional requirements, visit the Course Catalog.

Learning Outcomes

 

Bachelor of Arts in Computer Science students will demonstrate:

  • An understanding of object-oriented programming paradigm;
  • An understanding of algorithm analysis and data structures;
  • An understanding of theoretical foundations of computing;
  • An understanding of the theory of programming languages;
  • An understanding of the principles of software engineering;
  • An understanding of domain-specific theory;
  • An understanding of the hardware/software interface;
  • An understanding of computer operating systems;
  • Facility with basic programming constructs;
  • The ability to design and implement object-oriented solutions;
  • The ability to develop domain-specific programs;
  • Professionalism in teamwork; and
  • Effective oral and written communication

Start your UHart journey today. Take the next step.