BS in Computer Science Software Engineering Concentration

Bachelor of Science 2014-2015

Computer Science

Software Engineering Concentration
Degree Requirements
Students in this degree must meet the following requirements:
  • complete a minimum of 192 credit hours (generally 48 courses)
  • Earn a grade of C- or higher in WRD 103, WRD 104, and all Major and Minor courses
  • Earn a grade of D or higher in all other Liberal Studies and Open Elective courses
  • maintain a cumulative GPA of 2.0 or higher
Students who earn a cumulative DePaul University GPA:
  • between 3.500 and 3.699 will graduate cum laude
  • between 3.700 and 3.849 will graduate magna cum laude
  • of at least 3.850 will graduate summa cum laude
For DePaul's policy on repeat courses and a complete list of academic policies see the DePaul Undergraduate Handbook in the Course Catalog.
Course Requirements
Liberal Studies
The Liberal Studies program is the general education portion of the curriculum at DePaul University. Students must earn a grade of D or better in all courses taken to satisfy these requirements. The only exception is the Capstone course which is considered also a major requirement and WRD 103 and WRD 104 in which students need to earn a C- or better.

Students may choose to take some CDM courses that carry Liberal Studies credit but they cannot double count them if they are part of the major requirements. A complete list of courses that carry Liberal Studies credit can be found on the Liberal Studies website along with an overview of the Liberal Studies requirements for this program. Students can search for courses that satisfy a particular Liberal Studies requirement on campusconnect.

Note Students must complete CSC 208 Ethics in Technology as one of the two required Philosophical Inquiry learning domain requirements.

Although students are free to take course requirements in any order they choose, provided they have mastered the course-specific prerequisites, it is strongly recommended that students follow these year-by-year suggestions, especially regarding the first-year major courses.

First Year
CSC 241 Introduction to Computer Science I AND CSC 242 Introduction to Computer Science II
OR CSC 243 Python for Programmers AND 1 Major Elective
MAT 140 Discrete Mathematics I
MAT 141 Discrete Mathematics II
CSC 300 Data Structures in Java I
1 Open Elective
Liberal Studies Requirements
LSP 110 Discover Chicago
OR LSP 111 Explore Chicago
LSP 112 Focal Point Seminar
WRD 103 Composition and Rhetoric I
WRD 104 Composition and Rhetoric II
1 Arts & Literature
1 Self, Society, and the Modern World
Second Year
CSC 299 Sophomore Lab in Applied Computing
CSC 321 Design and Analysis of Algorithms
SE 325 Introduction to Software Engineering SE 325 Self-Test
SE 350 Object-Oriented Software Development
WRD 204 Technical Writing
CSC 301 Data Structures in Java II
1 CS Major Elective
1 Open Elective
Liberal Studies Requirements
LSP 200 Seminar on Multiculturalism in the United States
CSC 208 Ethics in Technology
1 Religious Dimensions
1 Self, Society, and the Modern World
Third Year
IT 223 Data Analysis IT 223 Self-Test
CSC 373 Computer Systems I
CSC 374 Computer Systems II
CSC 355 Database Systems
CSC 360 User Interface Architecture and Development
CSC 347 Concepts of Programming Languages
2 Open Electives
Liberal Studies Requirements
1 Junior Year Experiential Learning
1 Philosophical Inquiry 
1 Arts & Literature
1 Understanding the Past
Fourth Year
CSC 376 Distributed Systems
CSC 348 Introduction to Compiler Design
CSC 394 Software Projects (Capstone)
2 Major Electives
1 CS Major Elective
1 Open Elective
Liberal Studies Requirements
1 Arts & Literature
1 Religious Dimensions
1 Understanding the Past
1 Scientific Inquiry Lab
1 Self, Society, and the Modern World
Major Electives
Students in the SE concentration can choose major electives from the following list:
SE 333 Software Testing
SE 352 Object-Oriented Enterprise Application Development
SE 359 Agile Software Development
CSC 308 Frameworks for Web Application Development
CSC 371 Mobile Application Development for iOS
ISM 360 User-Centered Evaluation

Students must earn a grade of C- or higher in all major elective courses.

CS Major Electives
CS major electives can be chosen from the list of Introductory Major Field courses and Advanced Major Field courses: 
  • Introductory Major Field Courses
    CSC 233 Codes and Ciphers
    CSC 235 Problem Solving
    CSC 309 C++ for Programmers
    GAM 244 Game Development I
    GAM 245 Game Development II
    ISM 210 Introduction to Human-Computer Interaction
    ISM 336 Interactive Media Scripting for Programmers
    IT 130 Introductory Computing for the Web IT 130 Self-Test
    IT 231 Web Development I
    IT 232 Web Development II
    IT 263 Applied Networks and Security
    MAT 150 Calculus I
    MAT 151 Calculus II
  • Advanced Major Field Courses
    • Theory of Computation
      CSC 344 Automata Theory and Formal Grammars
      CSC 389 Theory of Computation
      CSC 327 Problem Solving for Contests
    • Data Storage
      CSC 352 Database Programming
      CSC 353 Advanced Database Concepts
    • Computer Systems
      CSC 343 Introduction to Operating Systems
      CSC 361 Optimized C++ (Formerly GAM 371)
      CSC 362 C++ Multithreading
      CSC 371 Mobile Application Development for iOS
      CSC 372 Mobile Application Development for Android
      CSC 375 Introduction to Robotics
      TDC 368 Network Programming
    • Data Analysis and Data Mining
      CSC 324 Data Analysis and Statistical Software II
      CSC 367 Introduction to Data Mining
      CSC 334 Advanced Data Analysis
      GEO 241 Geographic Information Systems I
      GEO 243 Remote Sensing
    • Computational Sciences
      CSC 331 Scientific Computing
    • Artificial Intelligence
      CSC 357 Expert Systems
      CSC 358 Symbolic Programming
      CSC 380 Foundations of Artificial Intelligence
    • Computer Vision
      CSC 381 Introduction to Digital Image Processing
      CSC 382 Applied Image Analysis
    • Software Engineering
      SE 333 Software Testing
      SE 352 Object-Oriented Enterprise Application Development
      SE 359 Agile Software Development
      SE 368 Software Measurement and Project Estimation
      SE 371 Practices of Global Software Development
    • Security
      CNS 320 Computer Forensic and Incident Response
      CNS 340 Fundamentals of Information Assurance
      CSC 333 Cryptology
    • Human-Computer Interaction
      CSC 360 User Interface Architecture and Development
      ISM 360 User-Centered Evaluation
      IT 330 User Interface Development for Interactive Systems
    • Computer Graphics
      GPH 321 Computer Graphics Development I
      GPH 325 Survey of Computer Graphics
      GPH 329 Computer Graphics Development II
      GPH 339 Advanced Rendering Techniques
      GPH 358 Computer Graphics Automation
      GPH 372 Principles of Computer Animation
      GPH 389 Real-Time Graphics Techniques
    • Computer Game Development
      CSC 361 Optimized C++ (Formerly GAM 371)
      GAM 350 Physics for Game Developers
      GAM 374 Fundamentals of Game Programming I
      GAM 376 Artificial Intelligence for Computer Games
      GAM 378 Strategy Games Programming
      GAM 380 Console Game Development Environments
      GAM 382 Serious Games
      GAM 353 Tool Programming for Game Development
      GAM 386 Game Programming for Mobile Devices
      GAM 390 Multiplayer Game Development
      GAM 372 Object-Oriented Game Development
      GAM 377 Fundamentals of Game Programming II
      GAM 394 Game Development Project I
      GAM 395 Game Development Project II
    • Web Development
      CSC 308 Frameworks for Web Application Development
      ECT 330 Advanced Internet Application Development
      ECT 360 Introduction to Xml
      IT 320 Content Management Systems
    • Computer Networks
      TDC 362 Principles of Data Communications
      TDC 363 Introduction to Local Area Networks
      TDC 365 Network Interconnection Technologies
      TDC 371 Wireless Communications Networks
      TDC 372 Digital Access Services
      TDC 375 Network Protocols
      TDC 377 Fundamentals of Network Security
      TDC 379 Telecommunication and Network Security Practicum

Students must earn a grade of C- or higher in all CS major elective courses.

Open Electives
Open Electives may be taken from any unit at DePaul. These are the only courses that may be taken under the pass/fail option (see the DePaul Undergraduate Course Catalog for details). Students must earn a grade of D or higher in all open elective courses. Courses that satisfy a CDM minor or other minors are normally credited as open electives.