Computer Science: Software Engineering

The Bachelor of Science in Computer Science-Software Engineering major is designed for students wishing to find positions as computer scientists, as software developers, or to pursue graduate study. The major requires a core of computer science courses (23 hours) covering essential elements of the Computer Science Body of Knowledge that all computer science graduates must master.  In addition to the core computer science courses, 15 additional hours of computer science course work in hardware, systems, theory, and software engineering is required. The major also requires 8 hours of support work in mathematics and the completion of an internship. 

A grade of C- or higher must be achieved in all 200-level courses listed below. 

Required Courses: Total Hours: 38

CSCI 241: Discrete Mathematics
CSCI 251: Introduction to Computer Science
CSCI 261: Data Structures
CSCI 262: Algorithms
CSCI 277: Web and Mobile Application Development
CSCI 351: Programming Languages
CSCI 355: Database
CSCI 371: Software Engineering
CSCI 495: Research and Development I
CSCI 496: Research and Development II

Choose One:
CSCI 331: Operating Systems
CSCI 361: Computer Organization

Choose One:
CSCI 453: Formal Language Theory
CSCI 454: Compiler Theory

Support Courses: Total Hours: 8
MATH 231: Calculus I
MATH 232: Calculus II

Students interested in graduate school in computer science are encouraged to complete a minor in mathematics, including linear algebra and differential equations. Graduate study in analysis of algorithms and the study of computability theory require an advanced understanding of mathematics.