Undergraduate Studies Overview
The Department of Computer Science offers bachelor of science degrees in computer science and in software engineering. Both programs of study are based on a solid foundation of mathematics, including calculus, linear algebra and discrete mathematics. These are designed to offer students opportunities to prepare for careers in a rapidly changing profession, whether they choose after graduation to enter industry, business or government. Students are also prepared for graduate study, an important consideration in a field in which further education is strongly recommended.
The computer science and software engineering programs have the same basis in core computer science, including modern programming methodologies, the analysis of algorithms and data structures, and the study of operating systems. The computer science program continues with courses in advanced data structures, programming languages and automata theory, whereas the software engineering program includes courses in requirements engineering, software validation and testing, and software architecture, culminating in a challenging project course in which students must demonstrate the use of software engineering techniques. Both programs offer a rich choice of application areas, including digital systems design, computer networks, embedded systems, computer imaging, artificial intelligence and cognitive modeling, and human-computer interaction.
