Accelerated Master's Degree in Computer Science

Accelerated Master's Degree in Computer Science

Accelerated Master's in Computer Science

This program allows highly qualified undergraduate students to take graduate courses that count toward both the bachelor’s degree and master’s degree. With a head start on completing their graduate courses, students can earn their master's degree in just one additional year.

Application and Admission Information

Admission Requirements

Eligibility Requirements
  • Currently a full-time, School of Computing undergraduate student
  • Minimum sophomore standing
  • 3.0 GPA
  • Currently enrolled in the computer science, computer engineering, or software engineering major planning to pursue a master's degree in computer science
Program-Specific Admission Requirements

In your application for admission to this master's program:

  • Personal Statement: Your statement should include your research interests, your objectives, and names of potential faculty advisors.
  • Applicant Worksheet for Accelerated Computer Science (MS)
  • Completing at least 12 undergrad credit hours in the master's degree discipline with a grade of at least B (including at least one of CSCE 310, CSCE 310H, CSCE 311, SOFT 260, SOFT 260H or RAIK 283H)
  • Application fee of $25
NOT Required
  • CV
  • Letters of recommendation
  • GRE

Dual-Credit Courses

During their senior year, students will take up to 12 credit hours of approved graduate coursework that will count toward both the bachelor's and master's degrees. Students must take 9-12 hours at the graduate level from the courses listed below. NOTE: After being admitted to the accelerated master's program, students must complete the Graduate Credit Request for each course they want to be enrolled in at the graduate level.

More course details

CSCE 411/811: Data Modeling for Systems Development

Concepts of relational and object-oriented data modeling through the process of data model development including conceptual, logical and physical modeling. Techniques for identifying and creating relationships between discrete data members, reasoning about how data modeling and analysis are incorporated in system design and development, and specification paradigms for data models. Common tools and technologies for engineering systems and frameworks for integrating data. Design and analysis of algorithms and techniques for identification and exploration of data relationships, such as Bayesian probability and statistics, clustering, map-reduce, and web-based visualization.

CSCE 413/813: Database Systems

Data and storage models for database systems; entity/relationship, relational, and constraint models; relational databases; relational algebra and calculus; structured query language; Logical database design: normalization; integrity; distributed data storage; concurrency; security issues. Spatial databases and geographic information systems.

CSCE 423/823: Design and Analysis of Algorithms

Mathematical preliminaries. Strategies for algorithm design, including divide-and-conquer, greedy, dynamic programming and backtracking. Mathematical analysis of algorithms. Introduction to NP-Completeness theory, including the classes P and NP, polynomial transformations and NP-complete problems.

CSCE 428/828: Automata, Computation, and Formal Languages

Introduction to the classical theory of computer science. Finite state automata and regular languages, minimization of automata. Context free languages and pushdown automata, Turing machines and other models of computation, undecidable problems, introduction to computational complexity.

CSCE 438/838: Internet of Things

Theoretical and practical insight into the Internet of Things (IoT). Basics of IoT, including devices and sensors, connectivity, cloud processing and storage, analytics and machine learning, security, business models as well as advanced topics such as localization, synchronization, connected vehicles, and applications of IoT. Includes a group project that provides hands-on interaction with IoT.

CSCE 440/840: Numerical Analysis

Principles of numerical computing and error analysis covering numerical error, root finding, systems of equations, interpolation, numerical differentiation and integration, and differential equations. Modeling real-world engineering problems on digital computers. Effects of floating point arithmetic.

CSCE 445/845: Eye Tracking in Usability and Software Engineering

Create and evaluate new and existing human computer interfaces in the context of software engineering. Interdisciplinary applications of eye tracking in various areas of software engineering, biometrics, and psychology among others will be presented. Learn how to design, conduct, and analyze a technically sound eye tracking empirical study for software engineering problems in a group setting.

CSCE 451/851: Operating Systems Principles

Organization and structure of operating systems. Control, communication, and synchronization of concurrent processes. Processor and job scheduling. Memory organization and management including paging, segmentation, and virtual memory. Resource management. Deadlock avoidance, detection, recovery. File system concepts and structure. Protection and security. Substantial programming.

CSCE 462/862: Communication Networks

Introduction to the architecture of communication networks and the rudiments of performance modeling. Circuit switching, packet switching, hybrid switching, protocols, local and metro area networks, wide area networks and the Internet, elements of performance modeling, and network programming. Network security, asynchronous transfer mode (ATM), optical, wireless, cellular, and satellite networks, and their performance studies.

CSCE 463/863: Data and Network Security

Concepts and principles of data and network security. Focuses on practical aspects and application of crypto systems in security protocols for networks such as the Internet. Topics include: applications of cryptography and cryptosystems for digital signatures, authentication, network security protocols for wired and wireless networks, cyberattacks and countermeasures, and security in modern computing platforms.

CSCE 467/867: Testing, Verification and Analysis

In-depth coverage of problems related to software quality, and approaches for addressing them. Topics include testing techniques, dynamic and static program analysis techniques, and other approaches for verifying software qualities. Tool support for performing testing, verification, and analysis will also be studied.

CSCE 476/876: Introduction to Artificial Intelligence

Introduction to basic principles, techniques, and tools now being used in the area of machine intelligence. Languages for AI programming introduced with emphasis on LISP. Lecture topics include problem solving, search, game playing, knowledge representation, expert systems, and applications.

CSCE 477/877: Cryptography and Computer Security

Introductory course on cryptography and computer security. Topics: classical cryptography (substitution, Vigenere, Hill and permutation ciphers, and the one-time pad); Block ciphers and stream ciphers; The Data Encryption Standard; Public-key cryptography, including RSA and El-Gamal systems; Signature schemes, including the Digital Signature Standard; Key exchange, key management and identification protocols.

CSCE 478/878: Introduction to Machine Learning

Introduction to the fundamentals and current trends in machine learning. Possible applications for game playing, text categorization, speech recognition, automatic system control, date mining, computational biology, and robotics. Theoretical and empirical analyses of decision trees, artificial neural networks, Bayesian classifiers, genetic algorithms, instance-based classifiers and reinforcement learning.

CSCE 479/879: Introduction to Deep Learning

Fundamentals and current trends in deep learning. Backpropagation, activation functions, loss functions, choosing an optimizer, and regularization. Common architectures such as convolutional, autoencoders, and recurrent. Applications such as image analysis, text analysis, sequence analysis, and reinforcement learning.

Contact Us