Computer Science: Bachelor of Science
The ABET-accredited Bachelor of Science in Computer Science degree is for students desiring more in-depth exploration of computer science (48 hours of CS in the B.S. in contrast to 36 hours in the B.A.), along with ABET accreditation through an increased level of math and natural sciences.
Program Requirements & Course Catalog
A complete list of major requirements, courses, and a proposed four-year program of study are available in the UAB Undergraduate Catalog. Rely on it for the most up-to-date information about major requirements. Generally all students will take several math and natural sciences courses, several electives, and computer science core courses like Discrete Structures, Automata and Formal Languages, Programming Languages, and a senior capstone.
The program educational objectives of the UAB B.S. degree program in Computer Science are to produce graduates who will be equipped to:
- apply knowledge and skills in computer science to solve diverse and unique problems arising from real world applications,
- continuously acquire knowledge and skills, both theoretical and applied, related to core areas of computer science,
- work productively as professionals (e.g., careers in both public and private sectors, graduate school, academia) by:
- demonstrating effective use of oral and written communication,
- working competently as a member of a team unit,
- adhering to ethical standards in the profession.
In order to meet the program objectives, a graduate of the program will have accomplishments consistent with the general criteria for student outcomes specified by the Computing Accreditation Commission of ABET.
B.S. Student Outcomes
Student outcomes for the B.S. in Computer Science are as follows:
- An ability to apply knowledge of computing and mathematics appropriate to the discipline.
- An ability to analyze a problem, and identify and define the computing requirements appropriate to its solution.
- An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs.
- An ability to function effectively on teams to accomplish a common goal.
- An understanding of professional, ethical, legal, security, and social issues and responsibilities.
- An ability to communicate effectively with a range of audiences.
- An ability to analyze the local and global impact of computing on individuals, organizations, and society.
- Recognition of the need for and an ability to engage in continuing professional development.
- An ability to use current techniques, skills, and tools necessary for computing practice.
- 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 trade-offs involved in design choices.
- An ability to apply design and development principles in the construction of software systems of varying complexity.
These student outcomes represent the knowledge and capabilities that the faculty has determined that each of our graduates should have by the time the student graduates. These outcomes support our CAC ABET Criterion 3.
B.S. Annual Student Enrollment and Graduation Data
For Fall 2017, there were 335 undergraduate students enrolled as majors in the B.S. in Computer Science undergraduate program and during the academic year 2016-2017 (July 1-June 30), 34 students graduated with a B.S. in Computer Science. For student enrollment and graduation data for previous years, please visit the UAB Office of Institutional Effectiveness and Analysis website.
Taking Graduate Courses as an Undergraduate
Interested in taking higher-level graduate courses? Under special circumstances, our undergraduate students are allowed to take graduate courses for graduate credit. Learn more on the Graduate-Level Courses page.
Ready to Apply?
All the information you need to apply can be found on UAB's Undergraduate Admissions Hub.