Interested in taking a summer course? Taking a summer course can help you stay on track to graduate, or allow you to take fewer courses during a challenging semester. Consider enrolling in CSCE 361, 423, 451, and 479.
CSCE 361: Software Engineering
(in-person, 8-week, a main prerequisite to Senior Design courses)
Techniques used in the disciplined development of large software projects. Software requirements analysis and specifications, program design, coding and integration testing, and software maintenance. Software estimation techniques, design tools, and complexity metrics.
CSCE 423/823: Design and Analysis of Algorithms
(in-person, second 5-week)
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 451/851: Operating Systems Principles
(online, second 5-week)
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 479/879: Deep Learning
(online, 8-week)
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.