Learn More and ApplySoftware Development Concentration, Computer Science (BS)

Menu

Course Requirements

Course Title Quarter Hours
CSC 299SOPHOMORE LAB IN APPLIED COMPUTING4
CSC 343INTRODUCTION TO OPERATING SYSTEMS4
or CSC 344 AUTOMATA THEORY AND FORMAL GRAMMARS
or CSC 348 INTRODUCTION TO COMPILER DESIGN
or CSC 363 THEORY AND PRACTICE OF SAFE SYSTEMS PROGRAMMING
or CSC 389 THEORY OF COMPUTATION
CSC 355DATABASE SYSTEMS4
CSC 376DISTRIBUTED SYSTEMS4
CSC 394SOFTWARE PROJECTS4
IT 223DATA ANALYSIS4
SE 333SOFTWARE TESTING4
or SE 359 AGILE SOFTWARE DEVELOPMENT
or SE 371 PRACTICES OF GLOBAL SOFTWARE DEVELOPMENT
SE 350OBJECT-ORIENTED SOFTWARE DEVELOPMENT4
Select 20 Credit Hours of Major Electives20
Select 20 Credit Hours of Open Electives20

Major Electives

Major Electives courses must be selected from the Introductory and Advanced Major Field Course lists below.  At least 16 of the 20 Major Field Elective Credit Hours must be taken from the list of Advanced Major Field courses.

Introductory Major Field Courses

Course Title Quarter Hours
3D DESIGN & MODELING
WORKSHOP: JAVA FOR PROGRAMMERS
WORKSHOP: LINUX FOR PROGRAMMERS
CODES AND CIPHERS
PROBLEM SOLVING
C++ FOR PROGRAMMERS
RESEARCH COLLOQUIUM
FUNDAMENTALS OF GAME DESIGN
GAME DEVELOPMENT I
GAME DEVELOPMENT II
GEOGRAPHIC INFORMATION SYSTEMS I: DIGITAL MAPPING
EARTH OBSERVATION
INTRODUCTORY COMPUTING FOR THE WEB
WEB DEVELOPMENT I
WEB DEVELOPMENT II
APPLIED NETWORKS AND SECURITY
CALCULUS I
CALCULUS II
INTRODUCTION TO USER EXPERIENCE DESIGN
INTERACTIVE MEDIA SCRIPTING FOR PROGRAMMERS (FORMERLY ISM 336)

Advanced Major Field Courses

Artificial Intelligence

Course Title Quarter Hours
EXPERT SYSTEMS
SYMBOLIC PROGRAMMING
FOUNDATIONS OF ARTIFICIAL INTELLIGENCE

Computational Sciences

Course Title Quarter Hours
SCIENTIFIC COMPUTING

Computer Game Development

Course Title Quarter Hours
OPTIMIZED C++
REAL-TIME NETWORKING (FORMERLY GAM 390)
PHYSICS FOR GAME DEVELOPERS
GAME ENGINE PROGRAMMING I
ARTIFICIAL INTELLIGENCE FOR COMPUTER GAMES
STRATEGY GAMES PROGRAMMING
CONSOLE GAME DEVELOPMENT ENVIRONMENTS
SERIOUS GAMES
TOOL PROGRAMMING FOR GAME DEVELOPMENT
OBJECT-ORIENTED GAME DEVELOPMENT
GAME ENGINE PROGRAMMING II
GAME PROGRAMMING FOR MOBILE DEVICES
GAME DEVELOPMENT PROJECT I
GAME DEVELOPMENT PROJECT II

Computer Graphics

Course Title Quarter Hours
COMPUTER GRAPHICS DEVELOPMENT I
SURVEY OF COMPUTER GRAPHICS
COMPUTER GRAPHICS DEVELOPMENT II
ADVANCED RENDERING TECHNIQUES
COMPUTER GRAPHICS AUTOMATION
PRINCIPLES OF COMPUTER ANIMATION
REAL-TIME GRAPHICS TECHNIQUES

Computer Networks

Course Title Quarter Hours
PRINCIPLES OF DATA COMMUNICATIONS (FORMERLY TDC 362)
INTRODUCTION TO LOCAL AREA NETWORKS (FORMERLY TDC 363)
NETWORK INTERCONNECTION TECHNOLOGIES (FORMERLY TDC 365)
WIRELESS COMMUNICATIONS NETWORKS (FORMERLY TDC 371)
WAN SERVICES (FORMERLY TDC 372)
NETWORK PROTOCOLS (FORMERLY TDC 375)
FUNDAMENTALS OF NETWORK SECURITY (FORMERLY TDC 377)
TELECOMMUNICATION AND NETWORK SECURITY PRACTICUM (FORMERLY TDC 379)

Computer Systems

Course Title Quarter Hours
INTRODUCTION TO OPERATING SYSTEMS
INTRODUCTION TO COMPILER DESIGN
OPTIMIZED C++
OPTIMIZED C++ MULTITHREADING
VIRTUALIZATION AND CLOUD COMPUTING
MOBILE APPLICATION DEVELOPMENT FOR IOS
MOBILE APPLICATION DEVELOPMENT FOR ANDROID
MOBILE APPLICATION DEVELOPMENT FOR IOS II
MOBILE APPLICATION DEVELOPMENT FOR ANDROID II
NETWORKING FOR CYBER-PHYSICAL SYSTEMS
CYBER-PHYSICAL SYSTEM SECURITY
CYBER-PHYSICAL SYSTEM ENGINEERING I
CYBER-PHYSICAL SYSTEMS ENGINEERING II
CYBER-PHYSICAL SYSTEMS ENGINEERING III
EMBEDDED SYSTEMS I
EMBEDDED SYSTEMS II
FOUNDATIONS OF CYBER-PHYSICAL COMPUTING
INTRODUCTION TO ROBOTICS
INTRODUCTION TO ANDROID DEVELOPMENT
NETWORK PROGRAMMING (FORMERLY TDC 368)

Computer Vision

Course Title Quarter Hours
INTRODUCTION TO DIGITAL IMAGE PROCESSING
APPLIED IMAGE ANALYSIS

Data Analysis and Data Mining 

Course Title Quarter Hours
DATA ANALYSIS AND REGRESSION
ADVANCED DATA ANALYSIS
FOUNDATIONS OF DATA SCIENCE
INTRODUCTION TO BIG DATA PROCESSING
MACHINE LEARNING
DATA VISUALIZATION

Data Storage

Course Title Quarter Hours
DATABASE PROGRAMMING
ADVANCED DATABASE CONCEPTS

Human-Computer Interaction

Course Title Quarter Hours
WEB APPLICATIONS
USER INTERFACE DEVELOPMENT FOR INTERACTIVE SYSTEMS
USER EXPERIENCE RESEARCH METHOD (FORMERLY ISM 360)

Security

Course Title Quarter Hours
COMPUTER FORENSIC AND INCIDENT RESPONSE (FORMERLY CNS 320)
FUNDAMENTALS OF INFORMATION ASSURANCE (FORMERLY CNS 340)
SECURITY TESTING AND ASSESSMENT (FORMERLY CNS 388)
CYBER DEFENSE EXERCISES AND ATTACK RESPONSES (FORMERLY CNS 389)
CRYPTOLOGY

Software Engineering

Course Title Quarter Hours
INTRODUCTION TO SOFTWARE ENGINEERING
SOFTWARE TESTING
CONTINUOUS DELIVERY AND DEVOPS
OBJECT-ORIENTED ENTERPRISE APPLICATION DEVELOPMENT
AGILE SOFTWARE DEVELOPMENT
PRACTICES OF GLOBAL SOFTWARE DEVELOPMENT

Theory of Computation

Course Title Quarter Hours
PROBLEM SOLVING FOR CONTESTS
AUTOMATA THEORY AND FORMAL GRAMMARS
THEORY OF COMPUTATION

Web Development

Course Title Quarter Hours
FRAMEWORKS FOR WEB APPLICATION DEVELOPMENT
WEB APPLICATIONS
ADVANCED INTERNET APPLICATION DEVELOPMENT
INTRODUCTION TO XML
CONTENT MANAGEMENT SYSTEMS

Open Electives

Open Elective Credit Hours are required to meet the minimum graduation requirements of 192 hours. Open Electives may be taken from any unit at DePaul.

See www.cdm.depaul.edu to see sample schedule of course requirements on a year-by-year basis.