Software Development

The Software Development track can be used to satisfy the track requirements of the CIS Major.

Tracks highlight areas of specialization within the department and guide student elective choices. Each track has an approved list of CIS courses, available from the computer science office or the department website. Tracks may also include recommended science and math courses; some include a minor in another field.

The Software Development track prepares students for careers in software engineering, software project management, software quality assurance, and other areas involving the creation of software. Course work focuses on solving problems related to the cost of development as well as the quality of the software delivered in complex software projects.

Faculty Advisors: Steve Fickas, Boyana Norris, Michal Young.

104 credits total

CIS Core Requirements (80 credits) 80
CIS Track Requirements (24 credits)  
Complete the following course:
  • CIS 423 Software Methodology II
Complete 2 courses selected from the following:
  • CIS 413 Advanced Data Structures
  • CIS 420 Automata Theory
  • CIS 427 Introduction to Logic
  • CIS 455 Computational Science
  • CIS 461 Introduction to Compilers
Complete 8 additional upper-division CIS elective credits
  • Choose electives from CIS upper-division courses, including Individualized Study Courses.
  • CIS 399 and 410 must have regular class meetings, homework assignments and a prerequisite of 313 or higher.
Complete 4 upper-division math elective credits
  • Choose any upper division math course (300-level or higher) with a prerequisite of MATH 252 or higher, or CIS 413, 420, 427, 410 Cryptography, 473 Probabilistic Methods.
  • CIS courses used to complete mathematics elective cannot be used toward upper-division CIS elective credits.