Mar 28, 2024  
2020-2021 Undergraduate Catalog 
    
2020-2021 Undergraduate Catalog

Computer Science and Engineering


Chair: Gita Alaghband
Program Manager: Christina Ridd
Administrative Assistant: Megan Rogers
Office: Lawrence Street Center, 8th Floor
Telephone: 303-315-1408
Fax: 303-315-1410
Website: engineering.ucdenver.edu/cse

Faculty

Professors
Gita Alaghband, PhD, University of Colorado
Research areas: parallel and distributed systems, parallel algorithms, applications and languages, high-performance computing

Tom Altman, PhD, University of Pittsburgh
Research areas: algorithms, optimization, theory

Min-Hyung Choi, PhD, University of Iowa
Research areas: computer graphics, animation, virtual reality, human computer interface

Associate Professors
Ellen Gethner, PhD, University of British Columbia; PhD, Ohio State University
Research areas: graph theory, number theory, combinatorics, discrete geometry, computational geometry, visualization, algorithms

Ilkyeun Ra, PhD, Syracuse University
Research areas: computer networks, cloud computing, high-performance computing, distributed computing systems

Assistant Professors
Farnoush Banaei-Kashani, PhD, University of Southern California
Research areas: big data management, big data mining, data science, geospatial data analysis, data stores (NewSQL)

Ashis Biswas, PhD, University of Texas at Arlington
Research areas: machine learning, data mining, big data analysis, bioinformatics

Liang He, PhD, Nankai University
Research areas: cyber-physical systems, cognitive battery management, IoTs, mobile computing

Haadi Jafarian, PhD, University of North Carolina Charlotte
Research areas: proactive security for cyber threats, big data analytics for cyber threat intelligence, security for cyber-physical systems & critical infrastructures, security for IoTs, security analytics & automation, science of security

Assistant Professors (Clinical Teaching Track)
Madhuri Debnath, PhD, University of Texas at Arlington
Research areas: data mining, spatio-temporal data analysis, data science, machine learning

Salim Lakhani, PhD, Purdue University
Research areas: cloud computing and security, distributed computing & database systems

Senior Instructor (Clinical Teaching Track)
Diane Yoha, MS, University of Colorado Denver
Research areas: artificial intelligence, linguistic geometry, natural language processing

Professor Emeriti
Boris Stilman, PhD, National Research Institute for Electrical Engineering, Moscow, Russia

Mission Statement

With the advances in technology and the rapid and prevalent growth of the information-based economy, computer science has become an enabling science for nearly all disciplines that impact engineering, science, business, health and government. The future of the discipline promises even more innovative advances. The Department of Computer Science and Engineering at the University of Colorado Denver is committed to providing outstanding education and research training to our diverse undergraduate and graduate students for productive careers in industry, academia and government in the Denver metropolitan area, state and beyond. Our faculty strive for excellence in teaching, research and service by covering a broad spectrum of the discipline’s core fundamentals, as well as applied aspects including those of interdisciplinary nature. We actively engage our students in classroom and out-of-classroom research and help them develop the skills needed to solve complex real-world technological problems of modern society.

Programs Offered

The Department of Computer Science and Engineering offers BS, MS and PhD degrees:

  • The undergraduate BS degree  is awarded in computer science (CS) and is ABET accredited. This curriculum is a rigorous study covering theoretical, software, systems and hardware interfaces providing students with a coherent and in-depth education of key components of the field.
  • The Computer Science Scholars Program (dual BA/MS or BS/MS) provides high-performing and motivated undergraduate students the opportunity to begin course work at the graduate level while completing the undergraduate degree in CS. In the process, it allows students to receive dual credit for up to 12 hours of graduate-level CS courses for both the bachelor of science (BS)/bachelor of arts (BA) and the master of science (MS).
  • The undergraduate BA degree is awarded in computer science (CS).  It offers a flexible degree program designed with a modular approach that allows students to combine their computer science education with another academic field of their interest.
  • The undergraduate certificate of Cyber Security & Secure Computing program is designed for students pursuing an undergraduate degree and will help prepare to be cyber defense professionals for careers in both the public and the private sector.
  • The MS degree is awarded in computer science to those students who wish to pursue graduate studies to further develop their education. The MS in CS graduate program covers the core knowledge of key concepts of computer science as well as offers flexibility to pursue specializing in various fields of interests.
  • A track in Data Science in Biomedicine is offered as a MS thesis option. Students who choose this track will adopt biomedical applications of data science to learn data science methodologies and technologies.
  • The graduate certificate in software engineering is designed for working professionals, or computer science students beginning their careers, who are in the field of software engineering and/or software development.
  • The graduate certificate in cybersecurity & defense is designed for working professionals in the field of computer science, network and/or security operations. The certificate program in Cyber Security and Defense will prepare Computer Science professionals to identify, analyze, and mitigate technical cybersecurity-related vulnerabilities, exploits and attacks against network and critical cyber infrastructure.
  • The Computer Science and Information Systems (CSIS) PhD Computer Science track is awarded by the College of Engineering and Applied Science. The CSIS PhD program is an interdisciplinary, joint program between the Department of Computer Science and Engineering and the Information Systems program in the Business School.
  • The multidisciplinary Engineering and Applied Science PhD degree is available through the Department of Computer Science and Engineering.
  • Any undergraduate student currently enrolled in a CU Denver degree program with a major other than computer science may earn a minor in computer science . This includes students from the College of Engineering, Design and Computing, the College of Liberal Arts and Sciences, the School of Public Affairs, the College of Arts & Media, and the School of Education & Human Development.

The most up-to-date information on all programs offered through the computer science and engineering department can be obtained from the department’s website at engineering.ucdenver.edu/cse. Please also see our Graduate Catalog for more details regarding these programs.

Undergraduate Information

Computer Science Program

Computers as a combination of software and hardware have become significant to the whole of society. They affect the way in which business is conducted and the way people study and learn. Very important is the use of computers to develop new avenues of human communication, interaction and cooperation. Communication networks and the combination of text with audio and video are providing more people with fingertip access to a vast array of information and knowledge.

The computer scientist is a professional who must be prepared to apply his or her skills, knowledge and creativity in a rapidly changing field. The bachelor of science in computer science  at CU Denver prepares students for such creative work. The emphasis is on fundamental concepts and basic principles with a long useful life. The program is composed of five major study areas: mathematics, basic or engineering science, required computer science, technical electives and the CU Denver core curriculum .

The computer science program is accredited by the Computing Accreditation Commission (CAC) of ABET.

Computer Science Curriculum

The mathematics, basic science and computer science core requirements give the student a broad exposure to the concepts, methods and practice of computer science and engineering; the student learns the fundamentals of producing solutions to problems.

Technical electives are chosen to add depth to a student’s knowledge in an area of special interest.

The CU Denver undergraduate core curriculum is designed to give the student an exposure to knowledge outside his or her major. For students in the College of Engineering, Design and Computing, courses in the humanities, social sciences and human communications are required.

To be awarded the bachelor of science in computer science, a student must satisfactorily complete all course work shown in the curriculum below, satisfy all university graduation requirements and maintain at least a 2.0 GPA in all computer science courses attempted (see “Policy on Academic Progress” in the introductory section of this chapter). Students must meet with an undergraduate advisor each semester to assure that they are on track within the degree program and are aware of the current requirements of the program. An additional source of information is the CS Undergraduate Advising Handbook available online on the department’s website. Students must complete a 30-hour checkout before registering for the last 30 semester hours of their program. In addition, each student must complete an approved graduation plan within the academic year of their intended graduation date. For advising policies, see the BS-CS handbook on our website.

Note: Prerequisites must be taken before a course that requires them. Co-requisites are to be taken concurrently. Prerequisites will be strictly enforced.

Computer Science Scholars Program: Dual BS/MS

The Computer Science (CS) Scholars Program provides high-performing and motivated undergraduate students the opportunity to begin graduate work at the master’s level while completing the undergraduate degree in CS. In the process, it allows students to receive dual credit for up to 12 hours of graduate-level computer science courses for both the Bachelor of Science (BS) and the Master of Science (MS) degree. This accelerates the time to obtain a graduate degree for the student, saving both time and expense.

Program Guidelines:

Students admitted into the CS Scholars Program will be allowed to take 5000-level courses in computer science while still completing their undergraduate degree in computer science. CS Scholars are allowed to apply up to 12 credit hours (4 courses) of 5000-level courses toward both their BS degree in computer science, as technical electives, and their MS degree in computer science.

The following guidelines are applied to students in the BS Scholars Program:

  • Dual credit CSIS 5000-level courses must be taken at CU Denver and must be courses selected from category A or B as required by the MS degree in computer science (outlined in the CU Denver computer science Graduate Handbook).
  • Students must score a B- or higher in their 5000-level computer science courses for the course to be applied toward the MS degree. A passing grade below a B- will contribute to the BS degree requirements, but not to the MS degree requirements.
  • Students cannot apply more than 12 credit hours of graduate coursework to the MS degree taken prior to the completion of the BS degree.
  • Students must apply for the CS Scholars Program before their final year of courses to receive dual credit for 5000-level courses. Students will be considered undergraduate students until all requirements for the BS degree in computer science are completed.
  • The BS degree will be conferred the semester during which these requirements are completed. At that time, students will also be considered an MS student. Students then continue to fulfill the remaining requirements for their MS degree in computer science (thesis option or project option or course only option). CS Scholars are expected to finish their MS degree in 2 semesters upon completion of their BS degree (course only option), plus a summer session for students pursuing an MS project or thesis.

Admission Requirements:

  • Must be a full-time undergraduate student in computer science at CU Denver in good standing, with a minimum of 60 credit hours completed toward the BS degree in computer science, and must have completed CSCI 3412: Algorithms, CSCI 3453: Operating Systems Concepts, and CSCI 3287: Database Systems.
  • Must have a minimum cumulative GPA of 3.3 or a 3.5 GPA in CS major coursework.
  • Must complete an application to the CS Scholars Program, including a dual degree course plan. The application must be approved by the student’s CS academic advisor and submitted to the CS department.
  • Must apply and be accepted into the CU Denver MS program in computer science for the semester during which they will enter the CS Scholars Program dual-credit program.

Bachelor of Arts Computer Science Curriculum

The mathematics, basic science, computer science core requirements and computer science technical electives give the students a solid foundation in computer science; the student learns the fundamentals of computational thinking.

Students are encouraged to focus their free electives towards their area of interest to earn a certificate, minor or double major. The bachelor of arts in computer science is modeled as CS+X where X is a component of the degree consisting of 38 credit hours that students can use to pursue their passion in a different field toward a minor, double major, or even additional CS education. The program shares the same computer science courses as the BS in CS with fewer math and CS requirements. Students can use the 38 credits of free electives in fields such as graphic design, mechanical engineering, marketing, biology, physics, architecture, entrepreneurship, business, communications and any other subject offered at CU Denver. The program is composed of five major study areas: mathematics, basic science, required computer science, technical electives, free electives and the CU Denver core curriculum.

The CU Denver undergraduate core curriculum is designed to give the student an exposure to knowledge outside his or her major. For students in the College of Engineering, Design and Computing, courses in the humanities, social sciences and human communications are required.

To be awarded the bachelor of arts in computer science, a student must satisfactorily complete all course work shown in the curriculum below, satisfy all university graduation requirements and maintain at least a 2.0 GPA in all computer science courses attempted (see “Policy on Academic Progress” in the introductory section of this chapter). Students must meet with an undergraduate advisor each semester to assure that they are on track within the degree program and are aware of the current requirements of the program. An additional source of information is the BA-CS Undergraduate Advising Handbook available online on the department’s website. Students must complete a 30-hour checkout before registering for the last 30 semester hours of their program. In addition, each student must complete an approved graduation plan within the academic year of their intended graduation date. For advising policies see BA-CS Handbook.

Note: Prerequisites must be taken before a course that requires them. Co-requisites are to be taken concurrently. Prerequisites will be strictly enforced.

Computer Science Scholars Program: Dual BA/MS

The Computer Science (CS) Scholars Program provides high-performing and motivated undergraduate students the opportunity to begin graduate work at the master’s level while completing the undergraduate degree in CS. In the process, it allows students to receive dual credit for up to 12 hours of graduate-level computer science courses for  both the Bachelor of Arts (BA) and the Master of Science (MS) degree. This accelerates the time to obtain a graduate degree for the student, saving both time and expense.

The following guidelines are applied to students in the BA Scholars Program:

  • If accepted, students remain in an Undergraduate status until receiving their BA degree, then move into a Graduate status with an intent of completing the MS in Computer Science within a year. 
  • Students can take up to four graduate courses while in an Undergraduate status.
  • Complete the following courses while in undergraduate status including all pre-requisites:  CSCI 3453: Operating Systems, CSCI 4591: Computer Architecture, MATH 2411 and MATH 3195: Linear Algebra and Differential Equations.
  • Students must meet with a CS Graduate advisor within a semester of acceptance into the Dual BA/MS Program.
  • Students with a prior associates or bachelor degree completing the BACS may apply for the Dual BA/MS Program their last semester. 

 

To apply for the Dual BA/MS Program, students must:

  • Be a full-time undergraduate student in computer science at CU Denver in good standing, with a minimum of 60 credit hours completed toward the BACS degree.
  • Complete the following courses: MATH 2411, CSCI: 3412: Algorithms, CSCI 3453: Operating Systems Concepts, and CSCI 3287: Database Systems.
  • Commit to completing the following two courses while in undergraduate status:  CSCI 4591: Computer Architecture and MATH 3195: Linear Algebra and Differential Equations.
  • Have a minimum cumulative GPA of 3.3 or a 3.5 GPA in CS major coursework.

Undergraduate Certificate in Cybersecurity and Secure Computing

The goal of the undergraduate certificate of Cyber Security & Secure Computing program is to reduce vulnerability in the national information infrastructure by promoting higher education and research to help prepare cyber defense professionals for careers in both the public and the private sector. The curriculum of this certificate has been created to meet all criteria of NICE (National Initiative for Cybersecurity Education) undergraduate level of certification.

Certificate Objectives

This certificate program focuses on both the technical and analytical aspects of advanced cyber security and defense. 

Program Objectives

  • Master the fundamental concepts of cyber security principles and techniques.
  • Learn about potentials for cyber security threats and attacks.
  • Master cyber-defense tools, methods, and components to secure systems.
  • Learn how to take appropriate measures should a system compromise occur.
  • Learn principles and practices for secure computing

Learning Outcomes

  • Be able to describe and apply the fundamental concepts of cyber security principles and techniques.
  • Be able to analyze potential cyber threats and attacks.
  • Be able to use cyber defense tools, methods, and components to properly secure systems.
  • Be able to effectively and quickly evaluate and mitigate if systems are threatened or compromised.

Certificate Eligibility

Current students in good standing in an undergraduate computer science program (BA or BS), and those completing their minor in computer science are eligible. Applications from other CU Denver majors or non-degree students will be evaluated based on their current transcript. The student’s application is subject to the approval of the computer science and engineering department chair.

Students planning to pursue a Cybersecurity & Secure Computing Certificate in Computer Science and Engineering should apply as early as possible to facilitate course planning, and no later than census date of the semester prior to graduation with their undergraduate degree. 

Process to Attain Certificate Objectives

The following classes need to be taken with a grade of C- or better:

  • CSCI 3761: Introduction to Computer Networks
  • CSCI 3453: Operating Systems Concepts
  • CSCI 4034: Theoretical Foundations of Computer Science
  • CSCI 4741: Principles of Cybersecurity
  • CSCI 4743: Cyber and Infrastructure Defense

Students must take and pass each course with a grade of C- or better.  The Cybersecurity & Secure Computing Certificate requires a minimum cumulative GPA of 2.0.