CSCI-4143 (2) Principles of Telecommunications Policy

Learn the key issues and principles that guide the decisions of policymakers with respect to the regulatory treatment of voice, video, and data communications. Engage in critical debate, and develop instincts for anticipating the likely regulatory models that may be applied to new technologies. This introductory course covers technical, economic, legal, political, and institutional considerations. Coreq., CSCI 4123 or 4133. Same as TLEN 5210

CSCI-4202 (3) Artificial Intelligence 2

Second course in artificial intelligence. Topics may vary, but typically cover neural networks, natural language processing, and artificial life. Prereq., CSCI 3202 or instructor consent.

CSCI-4229 (3) Computer Graphics

Studies design, analysis, and implementation of computer graphics techniques. Topics include interactive techniques, 2D and 3D viewing, clipping, segmentation, translation, rotation, and projection. Also involves removal of hidden edges, shading, and color. Restricted to Computer Science (CSMR) or all other College of Engineering majors only. Prereqs., knowledge of basic linear algebra and CSCI 2270. Same as CSCI 5229. Prerequisites: Restricted to Computer Science (CSMR) or all other College of Engineering majors only.

CSCI-4239 (3) Advanced Computer Graphics

Studies design, analysis and implementation of advanced computer graphics techniques. Topics include shaders, using the GPU for high performance computing, graphics programming on embedded devices such as mobile phones; advanced graphics techniques such as ray tracing. Prereq., CSCI 4229 or instructor consent required. Same as CSCI 5239.

CSCI-4273 (3) Network Systems

Focuses on design and implementation of network programs and systems, including topics in network protocols, file transfer, client-server computing, remote procedure call, and other contemporary network system design and programming techniques. Prereqs., CSCI 3753 or equivalent, and familiarity with C and Unix. Same as CSCI 5273.

CSCI-4308 (4) Software Engineering Project 1

Advanced practicum in which students design, implement, document and test software systems for use in industry, non-profits, government and research institutions. Also offers extensive experience in oral and written communication throughout the software lifecycle. Students must take CSCI 4308 and 4318 contiguously, as the project spans the entire academic year. Prereqs., successful completion of a minimum of 36 credit hours of Computer Science Foundation, Track Foundation, Track Core, Computer Science electives, and WRTG 3030. Prerequisites: Restricted to students with 87-180 credits (Senior, Fifth Year Senior) Computer Science (CSCI) majors or Computer Science Concurrent Degree majors only.

CSCI-4312 (3) Health Informatics

Teaches students essential skills necessary for developing usable assistive and performance support systems, which include consideration of the academic and professional interdisciplinary issues that govern the work. An overview of ongoing and emerging topics in medical informatics will be presented. Prereq., CSCI 2270. Recommended prereq., CSCI 3002. Same as CSCI 5312.

CSCI-4314 (3) Algorithms for Molecular Biology

Surveys combinatorial algorithms used to understand DNA, RNA, and proteins. Introduces students to methods used to process genomic data. Topics covered include a review of algorithms and molecular biology, sequence analysis, RNA and protein structure analysis, and comparative genomics. Students will get hands-on experience processing recent genomic data. Prereqs., CSCI 2270 and CSCI 3104, or CHEM 4711, or MCDB3500 or Iphy 4200. Same as CSCI 5314 and MCDB 4314.

CSCI-4317 (3) Genome Databases: Mining and Management

Develops essential skills for performing genomic analyses, with focus on developing practical research tools. Introduces human genome and microbiome projects, Python/SQL scripting, accessing and understanding genomic data, sequence alignment and search, evolutionary models, expression data, biological networks, and macromolecular structure. Prereqs., MCDB 3500, CSCI 3104, or CHEM 4711; coreq., CSCI 2270. Same as CSCI 5317. Credit not granted for this course and CHEM 4621 or MCDB 4621.

CSCI-4318 (4) Software Engineering Project 2

Second semester of an advanced practicum in computer science. Students must take CSCI 4308 and 4318 contiguously as the project spans the entire academic year. Prereq., CSCI 4308.

CSCI-4342 (3) Groupware and Workflow Systems

Supports students in developing professional skills and knowledge concerning the use of computer technologies to support collaborative activities. Also covers the impact of digital collaboration technologies on users, groups, organizations and society. Students will gain practical experience with Business Process Management and the use of Workflow Management Systems. Same as CSCI 5342.

CSCI-4412 (3) Design, Creativity, and New Media

Explores the design of new media and technologies to support design and creativity. Analyzes design and creativity as human activities of fundamental importance in the networked information culture and economy. Provides theoretical and practical analysis of new media. Instructor consent required. Recommended prereq., CSCI 3002. Instructor consent required. Same as CSCI 5412.

CSCI-4446 (3) Chaotic Dynamics

Explores chaotic dynamics theoretically and through computer simulations. Covers the standard computational and analytical tools used in nonlinear dynamics and concludes with an overview of leading-edge chaos research. Topics include time and phase-space dynamics, surfaces of section, bifurcation diagrams, fractal dimension, and Lyapunov exponents. Prereqs., two semesters calculus, CSCI 1200, 1300 or equivalent, and PHYS 1110. Recommended prereqs., PHYS 1120, CSCI 3656, and MATH 3130. Same as CSCI 5446 and ECEN 4423.

CSCI-4448 (3) Object-Oriented Analysis and Design

An applied analysis and design class addressing the use of object-oriented techniques. Topics include domain modeling, use cases, architectural design, and modeling notations. Students apply the techniques in analysis and design projects. Restricted to Computer Science (CSMR) or all other College of Engineering majors only. Prereq., CSCI 3155 or expertise in one or more object-oriented programming languages, such as C++ or Java. Same as CSCI 5448. Prerequisites: Restricted to Computer Science (CSMR) or all other College of Engineering majors only.

CSCI-4502 (3) Data Mining

Introduces basic data mining concepts and techniques for discovering interesting patterns hidden in large-scale data sets, focusing on issues relating to scalability and efficiency. Topics covered include data preprocessing, data warehouse, association, classification, clustering, and mining specific data types such as time-series, social networks, multimedia, and Web data. Prereq., CSCI 2270 or instructor consent. CSCI 4502 and 5502 are the same course.

CSCI-4555 (3) Compiler Construction

Introduces the basic techniques used in translating programming languages: scanning, parsing, definition table management, operator identification and coercion, code selection and register allocation, error recovery. Students build a complete compiler for a simple language. Prereqs., CSCI 2824 or ECEN 3703 and CSCI 2400 or ECEN 2120. Same as ECEN 4553 and CSCI 5525.

CSCI-4576 (4) High-Performance Scientific Computing

Introduces computing systems, software, and methods used to solve large-scale problems in science and engineering. Students use high-performance workstations and a supercomputer. First course in a two-semester sequence. Recommended prereq., CSCI 3656. Same as CSCI 5576.

CSCI-4586 (4) High-Performance Scientific Computing 2

Introduces computing systems, software, and methods to solve large-scale problems in science and engineering. Students use high-performance workstations and a supercomputer. Second course in a two-semester sequence. Prereq., CSCI 4576.

CSCI-4593 (3) Computer Organization

Studies computer design at the gate level. Discusses instruction set architecture design, arithmetic and logic unit design, control logic, memory design and caches, simple pipelining, I/O, and peripheral devices. Briefly covers aspects of modern computer architecture, such as multicore processors and cache coherence for these. Prereq., ECEN 2350, and ECEN 3350 or CSCI 2400. Same as ECEN 4593. Prerequisites: Restricted to Electrical Engineering (EEEN), Electrical and Computer Engineering (ECEN) Computer Science (CSEN), Engineering Physics (EPEN) or Applied Mathematics (APPM) majors only.

CSCI-4753 (3) Computer Performance Modeling

Presents a broad range of system measurement and modeling techniques, emphasizing applications to computer systems. Topics include system measurement, work load characterization, and analysis of data; design of experiments; simulation; and queuing theory and queuing network models. Prereq., CSCI 3753 or equivalent, and second-semester calculus. Recommended prereq., a course in statistics. Same as CSCI 5753 and ECEN 4753/5753.

CSCI-4809 (3) Computer Animation

Develops a firm understanding of the general principles of computer animation. Lectures cover the creation of models, materials, textures, surfaces, and lighting. Path and key frame animation, particle dynamics, and rendering are introduced. Students are assigned a number of animation tutorials to carry out. CSCI 4809/5809 and ATLS 4809/5809 are all the same course.

CSCI-4810 (1) Seminar in Computational Biology

Provides an overview of current research topics in computational biology and health informatics, with a focus on research conducted on campus. Each week students will attend an on-campus seminar or a presentation by an on-campus research group. Prepares students to participate in a research project. Prereqs., CSCI 4312 or 4314 or 4317. CSCI 4810 and 5810 are the same course.

CSCI-4830 (1-3) Special Topics in Computer Science

Covers topics of interest in computer science at the senior undergraduate level. Content varies from semester to semester. May be repeated up to 9 total credit hours.

CSCI-4839 (3) User-Centered Design

Develops the skills and practices necessary to apply user-centered approaches to software requirements analysis, and the design and evaluation of computer applications. Restricted to Computer Science (CSMR) or all other College of Engineering majors only. Same as CSCI 5839. Prerequisites: Restricted to Computer Science (CSMR) or all other College of Engineering majors only.

CSCI-4900 (1-3) Upper Division, Undergraduate Level Independent Study

Provides opportunities for independent study at the upper-division undergraduate level. Students work on a small research problem or tutor lower-division computer science students. Prereq., CSCI 1200 or 1300.