Academic Catalog 2024-2025

Computer Science

Faculty

Nathan D. Axvig
Ahmed M. Kamel
Damian J. Lampl

Concordia's computer science program provides a wealth of interdisciplinary collaboration and networking opportunities, as well as options for focused study tailored to individual interest.  A computer science major at Concordia offers three concentrations: computing, cybersecurity, and data analytics. 

The Computing concentration follows a traditional liberal arts computer science degree path, focusing on software engineering and operating systems. 

The Cybersecurity concentration focuses on computer networks, digital forensics, and ethical hacking.  

The Data Analytics concentration prepares students for a career in data science, focusing on data mining, forecasting, and statistical models.  Note: The Data Analytics concentration is not available to complete with the Data Science Major.

All three concentrations share a common foundational core of computer science courses and topics, including databases, development in multiple programming languages, algorithms, and computer security. With distinctive course requirements in each, it is possible to simultaneously complete multiple computer science concentrations.

Concordia also offers three academic minors in the computer science discipline: computer science, cybersecurity administration, and data analytics.

The Computer Science Minor complements almost any major, and is particularly well-aligned with Biology, Business, Chemistry, Finance, Math, and Physics.  Note: The Computer Science Minor is not available to complete with a Computer Science Major, regardless of chosen concentration.

The Cybersecurity Administration Minor focuses on using tools to secure computer systems, applications, and networks, without writing code.  Note: The Cybersecurity Administration Minor is available to complete with any Computer Science Major concentration.

The Data Analytics Minor complements every major.  Note: The Data Analytics Minor is not available to complete with a Computer Science Major - Data Analytics Concentration or the Data Science Major.

Courses

CSC 125  -  Introduction to Computer Science,  4 credits.  

An introduction to an object oriented programming language, algorithm design, structured and object-oriented programming techniques. No prior programming experience is assumed. Prerequisite: higher algebra.

Frequency: Every Semester  
Core designations: Mathematics K  
CSC 225  -  Fundamental Structures,  4 credits.  

Intermediate data structures and techniques of object-oriented and structured programming. Discrete data types and structures, including arrays, files, sets, lists, trees, hash tables, sorting and recursion. Small to medium-scale programs are developed.

Frequency: Every Semester  
Prerequisites: CSC 125  
CSC 250  -  Pre-May Seminar,  4 credits.  
Frequency: Not offered on a Regular Basis  
CSC 300  -  May Seminar,  4 credits.  
Frequency: May Seminar  
Core designations: International-Global Prspct G  
CSC 310  -  Web Design and Programming,  3 credits.  

Basics of programming techniques for the World Wide Web. Provides an introduction to several web design methodologies including methodologies for data access and presentation.

Frequency: Every Year - First Semester  
Prerequisites: CSC 125  
This course is PEAK Optional  
CSC 311  -  Mobile Applications Development,  3 credits.  

Basics of software development for mobile devices. Provides an introduction to programming techniques for mobile devices including mobile web access and mobile access to databases.

Frequency: Alternate Years - 2nd Semester  
Prerequisites: CSC 225  
This course is PEAK Optional  
CSC 330  -  Introduction to Database Management,  3 credits.  

An introduction to database theory and practice. Topics include relational database design, ER modeling, normalization, SQL/embedded SQL, concurrency control, data warehousing and other emerging database technologies. Practical software engineering principles are emphasized through student projects.

Frequency: Every Year - First Semester  
Prerequisites: CSC 125  
CSC 335 / MATH 335 / SCM 335  -  Operations Management/Research,  4 credits.  

An introduction to the theory and practice of quantitative modeling and optimization, with applications to computer simulation and business resource management. Possible topics include linear and nonlinear programming, network analysis, game theory, deterministic and probabilistic models. Prerequisite: consent of the instructor.

Frequency: Every Year - First Semester  
Corequisites: PEAK 400  
Core designations: Mathematics K  
This course is PEAK Required  
CSC 340  -  Principles of Software Engineering,  3 credits.  

An overview of the systems development process. Includes: tools/techniques for describing processes, data flows, data structures, file designs, input/output designs, program specifications and prototyping for systems. Discovery, problem-solving and communications skills as employed by the systems analyst are also covered.

Frequency: Alternate Years - 1st Semester  
Prerequisites: CSC 225  
CSC 345  -  Computer Networks,  3 credits.  

This course is an introduction to the fundamental concepts in the design and implementation of computer networks. Topics include network topologies, OSI and TCP/IP reference models, local area networks, Wi-Fi, and routing. Examples and projects will focus primarily on TCP/IP protocols.

Frequency: Alternate Years - 1st Semester  
Prerequisites: CSC 125  
CSC 380  -  Special Topics,  0-4 credits.  

An opportunity to study in depth an advanced topic of current interest. Students work as teams to complete several extended research projects.

Frequency: Not offered on a Regular Basis  
Repeatable: Yes  
CSC 390  -  Academic Internship,  1-8 credits.  
Frequency: Every Semester  
This course is PEAK Optional  
Repeatable: Yes  
CSC 410  -  Artificial Intelligence,  3 credits.  

This course is intended to give a wide exposure to the history and current state of the field of Artificial Intelligence. Students will be introduced to the different Artificial Intelligence methodologies and familiarized with the relative strengths and weaknesses of these technologies.

Frequency: Alternate Years - 1st Semester  
Prerequisites: CSC 330  
CSC 420  -  Operating Systems,  3 credits.  

A study of how computers manage their resources. Highlights include concurrency, memory management, process and processor management and scheduling, device control, performance evaluation and system security. Several operating systems are compared.

Frequency: Alternate Years - 1st Semester  
Prerequisites: CSC 225  
CSC 430  -  Principles of Programming Languages,  3 credits.  

An introduction to principles of programming language design. Topics include regular and context-free grammars, parsing, static and dynamic scoping, and type checking. Students will explore the dimensions of computer languages drawn from several different programming paradigms.

Frequency: Every Year - First Semester  
Prerequisites: CSC 225  
CSC 445  -  Intro to Computer Security,  3 credits.  

Provides an introduction to a variety of topics in computer security both from a technical and from a human resource point of view.

Frequency: Alternate Years - 2nd Semester  
Prerequisites: CSC 330  
CSC 470  -  Applied Software Project,  3 credits.  

This course will allow the students to apply all their knowledge from the computer science major to implement a real world software project. Students will simultaneously learn techniques for insuring quality software and will apply these techniques among other techniques to implement a software project with direct applicability to a large problem situation.

Frequency: Alternate Years - 2nd Semester  
Prerequisites: CSC 330 and CSC 340  
This course is PEAK Optional  
CSC 480  -  Independent Study,  1-4 credits.  

This course provides an opportunity for individual students to conduct in-depth study of a particular topic under the supervision of a faculty member. Contact the department or program chair for more information.

Frequency: Not offered on a Regular Basis  
Repeatable: Yes  
CSC 483  -  Human-Computer Interaction,  3 credits.  

A study of the mechanisms for interaction (i.e. user interfaces) between users and computing equipment whether this computing equipment comes in the form of a computer or of a computing system embedded within any other system (manufacturing machinery controllers, medical equipment, aircraft, traffic lights, home appliances...etc.) Human computer interaction focuses on user satisfaction as well as ensuring user interfaces that avoid erroneous use of computing equipment that may at times have catastrophic results.

Frequency: Not offered on a Regular Basis  
CSC 487  -  Directed Research,  1-4 credits.  

This course provides an opportunity for individual students to conduct research in a specific area of study, completed under the direction of a faculty mentor. Specific expectations of the research experience to be determined by the faculty. Repeatable for credit. Prerequisite: consent of instructor.

Frequency: Not offered on a Regular Basis  
Repeatable: Yes  
CYS 101  -  Introduction to Cybersecurity,  3 credits.  

In today's world, no one is safe from cyber-attacks, but everyone can be prepared. This course will teach you how malicious actors use social skills and technology to facilitate cyber attacks and provide you with the tools and information you need to defend against those attacks. This online class has optional live sessions. (RIZE Course: CYS I - Introduction to Cybersecurity).

Frequency: Every Semester  
CYS 201  -  Cybercrime and Governance,  3 credits.  

Cybercrime is one of the biggest threats companies face every day. In this course, you will get a firsthand look at the methods used to commit cybercrimes. You will also learn how governments detect, investigate, and stop these crimes, and become familiar with the laws and policies in place to deter cybercriminals. This online class has optional live sessions. (RIZE Course: CYS II - Cybercrime and Governance).

Frequency: Every Year - Second Semester  
Prerequisites: CYS 101  
CYS 230  -  Modern Cybersecurity,  3 credits.  

Cybersecurity must keep pace with changing and evolving trends. In this class, you will learn about the changing landscape of cybersecurity, emerging mobile technologies that are likely to be targeted, and new forms of cyber-attacks being launched. By the end of the course, you will be able to implement the most up-to-date practices in cybersecurity to protect against attacks. This online class has optional live sessions. (RIZE Course: CYS III - Modern Cybersecurity).

Frequency: Every Year - First Semester  
CYS 350  -  Network and Systems Security,  3 credits.  

Even the strongest systems can be vulnerable to cyber-attacks. As a result, jobs in cybersecurity are rapidly expanding as companies look to secure their digital assets. This course will teach you how to secure those assets by identifying and fixing potential security vulnerabilities. By the end of the course, you will be able to identify and remedy common network and systems vulnerabilities. This online class has optional live sessions. (RIZE Course: CYS IV - Network and System Security).

Frequency: Every Year - Second Semester  
CYS 450  -  Cyber Forensics,  3 credits.  

When cybercrimes happen, you need to know how to respond. This course examines the tools and techniques used to perform cyber forensics and conduct investigations into cybercrimes. By the end of the course, you'll be able to gather and analyze important digital evidence and gain skills in analyzing cybercrime that are in demand. This online class has optional live sessions. (RIZE Course: CYS V - Cyber Forensics).

Frequency: Every Semester  
Prerequisites: (CYS 101 and CYS 201) or CSC 445  
CYS 475  -  Ethical Hacking,  3 credits.  

To stop a hacker, you need to be able to think like a hacker. In this course, you will learn hands-on techniques for attacking and penetrating networks and systems. You will be prepped with tools to launch these offensive tactics, and then complete a hands-on project where they are asked to ethically hack a real system. This online class has optional live sessions. (RIZE Course: CYS VI - Capstone - Ethical Hacking).

Frequency: Every Semester  
Prerequisites: CYS 450  
DATA 200  -  Introduction to Data Analytics,  4 credits.  

This is an introductory course in using modern data analysis concepts and tools to gain insight and make decisions in a business or organizational setting. Topics include data storage, business intelligence, basic data mining and modeling, visualization, prediction/forecasting, and clustering/segmentation. Students will complete at least one data analytics project, starting from an original research question and concluding with actionable recommendations.

Frequency: Every Semester  
Core designations: Mathematics K  
DATA 316 / MATH 316  -  Applied Statistical Models,  4 credits.  

An introduction to the construction and analysis of least-squares models, including multiple regression, ANOVA, ANCOVA, and mixed models. Generalized linear models will also be presented, with special attention paid to logistic regression and log-linear models. Examples and applications will be drawn from various disciplines, including biology, medicine, economics, engineering, and the social sciences.

Frequency: Alternate Years - 2nd Semester  
Prerequisites: MATH 205 or MATH 315 or BUSN 320 or PSYC 230 or SOC 228 or DATA 200  
Core designations: Mathematics K  
DATA 317  -  Forecasting,  4 credits.  

Forecasting is the science of predicting future events and outcomes. In this course students will learn how to effectively use both data and theory to create forecasts and how to quantify and communicate uncertainty in forecasts. Topics include random walks, Markov models, time series analysis, Bayesian methods and qualitative forecasting.

Frequency: Alternate Years - 1st Semester  
Prerequisites: DATA 200 or MATH 205 or MATH 315 or BUSN 320  
Core designations: Mathematics K  
DATA 318  -  Data Mining,  4 credits.  

Data mining is the study of discovering and assessing patterns, relationships and information within large datasets. This course provides an introduction to data mining with an emphasis on predictive modeling techniques and machine learning algorithms. Examples and applications will be drawn from various disciplines.

Frequency: Alternate Years - 2nd Semester  
Prerequisites: DATA 200 or MATH 205 or MATH 315 or BUSN 320 or PSYC 230 or SOC 228  
Core designations: Mathematics K  
DATA 380  -  Special Topics,  0-4 credits.  

Courses covering various topics of interest in this particular discipline are offered regularly. Contact department or program chair for more information.

Frequency: Not offered on a Regular Basis  
Repeatable: Yes  
DATA 390  -  Academic Internship,  1-8 credits.  
Frequency: Not offered on a Regular Basis  
This course is PEAK Optional  
Repeatable: Yes  
DATA 470  -  Applied Data Project,  4 credits.  

This course will allow students to apply their knowledge of data wrangling, analysis, and visualization to implement a data project. Students will learn concepts of data and project management, applying their knowledge to the solving of a significant data-rich challenge.

Frequency: Alternate Years - 1st Semester  
Prerequisites: DATA 316 or DATA 317 or DATA 318  
This course is PEAK Optional  
DATA 480  -  Independent Study,  1-4 credits.  

This course provides an opportunity for individual students to conduct in-depth study of a particular topic under the supervision of a faculty member. Contact the department or program chair for more information.

Frequency: Not offered on a Regular Basis  
Repeatable: Yes  
DATA 487  -  Directed Research,  1-4 credits.  

This course provides an opportunity for individual students to conduct research in a specific area of study, completed under the direction of a faculty mentor. Specific expectations of the research experience to be determined by the faculty. Repeatable for credit. Prerequisite: consent of instructor.

Frequency: Not offered on a Regular Basis  
Repeatable: Yes  
DATA 600  -  Data Analysis & Visualization,  3 credits.  

This course focuses on technical and visual aspects of inspecting and presenting data. Technical topics include importing data from various sources, establishing relationships between data tables, transforming data, filtering, sorting, and aggregation. Visuals will be designed to focus attention on what the data is saying, with a special focus on visuals that respond dynamically to user manipulations. Emphasis will be placed on the design/refinement cycle for visualizations.

DATA 608  -  Statistics & Research Analysis,  3-4 credits.  

This course allows the student to understand and demonstrate knowledge of descriptive and inferential statistics used in research, and apply their knowledge to real-world situations and research questions. Emphasis is placed on distinguishing similarities and differences among statistical tests, and recognizing the essentiality of statistics for producing and comprehending scientific research

DATA 617  -  Forecasting,  3 credits.  

Forecasting is the science of predicting future events and outcomes. In this course students will learn how to effectively use both data and theory to create forecasts and how to quantify and communicate uncertainty in forecasts. Topics include random walks, Markov models, time series analysis, Bayesian methods and qualitative forecasting.

Frequency: Alternate Years - 1st Semester  
DATA 618  -  Data Mining,  3 credits.  

Data mining is the study of discovering and assessing patterns, relationships and information within large data sets. This course provides an introduction to data mining with an emphasis on predictive modeling techniques and machine learning algorithms. Examples and applications will be drawn from various disciplines.

Prerequisites: DATA 608  
DATA 640  -  Agriculture Data Analytics,  3 credits.  

The students will study different patterns of agricultural organizations' decision-making and ways that data analysis can be effectively used for each type. The course provides an understanding of the basics of several important analytic methods for agriculture business. Students will learn various machine learning models using Python in this course which will help them in making better decisions.

Frequency: Every Year - Second Semester  
DATA 665  -  Advanced Operations Management/Research,  3 credits.  

Students will learn specialized applications of operations research to problems arising from business. These will include data envelope analysis, transportation/transshipment problems, goal programming, network models (including PERT-CPM), and capital budgeting. Other topics such as inventory models, facility location problems, etc. will be covered as time and student interest permit. Special attention will be paid to the development and analysis of models for realistic medium- to large-scale problems.

DATA 680  -  Special Topics,  0-4 credits.  
Repeatable: Yes  
DATA 685  -  Integrative Capstone Experience I,  3 credits.  

The main purpose of the capstone course is to provide the culminating, integrative curricular experience for students. The course consolidates students' learning to develop a project with knowledge gained from many areas in the MSQM. The focuses of the course are case analyses and professional development.

DATA 686  -  Integrative Capstone Experience II,  3 credits.  

Integrative Capstone Experience II's main purpose is to provide a structured means for students to get hands-on experience in real-life business analytics practices. Students will apply skills and knowledge gained throughout the MSQM program, such as statistical techniques, models, and analytical decision-making that support the business-defined problems scoped collaboratively between companies and Concordia.

Prerequisites: DATA 685 (may be taken concurrently)