Department of Computer Science & Engineering

Computer Science

The curriculum in computer science is designed to prepare students to enter the rapidly expanding computer field. Curricula and courses are based upon recommendations by the Institute of Electrical and Electronic Engineering Computer Society and the Association for Computing Machinery. The Computer Science program is accredited by the Computing Accreditation Commission of ABET, www.abet.org.

Program Mission

The mission of the computer science program at Texas A&M University is to prepare intellectual, professional, and ethical graduates, capable of meeting challenges in the field of Computer Science; and to coordinate with other parts of the university to facilitate the effective use of educational resources by sharing cross-disciplinary courses.

Program Objectives

  1. Graduates who choose to enter the workforce will become productive and valuable professionals in their field.
  2. Graduates who choose to pursue advanced degrees will be able to gain admission to graduate programs and will become successful graduate students.
  3. Graduates will understand the importance of lifelong learning to adapt to new technologies, tools and methodologies with the ability to respond to a changing world.

The four-year undergraduate curriculum in computer science at Texas A&M provides a sound preparation in computing, as well as in science, mathematics, English, and statistics. Students take a broad set of core computer science courses in the first two years, which exposes them to the main concepts in computing. During the last two years, students take elective computer science courses drawn from four tracks (theory, computer systems, software, and information and intelligent systems) to provide both breadth and depth. The electives can be used to tailor the curriculum to match the student’s interests. Graduate courses may be taken by qualified students for some of the electives.

A major in computer science includes a 12-hour area of concentration. This allows students to design a course of study that complements their computer science coursework and takes advantage of opportunities offered by other departments across the University.

The Department of Computer Science and Engineering has significant computer resources of its own, shares resources with other departments and makes use of University systems. Departmental resources for students include modern workstations; large computer servers; disk servers; and massively parallel systems as well as network access to the University supercomputers.

Students must submit a formal degree plan during the first full semester in the department. Departmental advisors are available for assistance.

Computer Engineering

The Computer Engineering curricula provide a balanced view of hardware, software, hardware-software trade-offs, analysis, design, and implementation techniques. It is a dynamic and broadly interdisciplinary field that continues to experience rapid professional growth that impacts every area of human endeavor. The Computer Engineering program is accredited by the Engineering Accreditation Commission of ABET, www.abet.org.

Program Mission

The mission of the Computer Engineering program is to provide students with an education that ensures an excellent understanding of hardware and software systems and the necessary system design and development skills, and that fosters professional curiosity and imagination that drives them throughout their career.

The program will stimulate and challenge the students with an exceptional, highly motivated faculty that shares its knowledge and excitement about Computer Engineering, well designed undergraduate and graduate curricula, research opportunities at all levels, and a first-class educational infrastructure.

The program strives to produce graduates who are well prepared to excel in industry, academia and government, and who will take on leadership roles in shaping the technological landscape of the future.

Program Objectives

In support of this mission, the Computer Engineering program has defined the following educational objectives:

  1. Graduates of the program will have the necessary knowledge, both in breadth and depth, to pursue the practice, or advanced study, of Computer Engineering.
  2. Graduates of the program will understand the importance of life-long learning, and be prepared to learn and understand new technological developments in their field.
  3. Graduates of the program will understand the technical, social and ethical context of their engineering contributions.
  4. Graduates of the program will develop the communication, teamwork, and leadership skills necessary to carry on the legacy of excellence of an Aggie Engineer.

The program periodically evaluates these objectives and assesses the level at which they are met. Input in this ongoing effort is provided by alumni, employers and recruiters, the faculty, and by external advisors to the program. This feedback drives the continuous improvement both of individual courses and of the overall curriculum. For more information on this process contact the Computer Engineering Program website.

Throughout this program, the student works with state-of-the-art computers and laboratory equipment and is exposed to the most recent analytical techniques and technological developments. Significant association with the program’s faculty, who are actively engaged in research and professional consulting activities, serves to acquaint the student with the opportunities and rewards available to the practicing Computer Engineering professional.

CSCE 110 Programming I

Credits 4. 3 Lecture Hours. 2 Lab Hours.

Basic concepts in using computation to enhance problem solving abilities; understanding how people communicate with computers, and how computing affects society; computational thinking; representation of data; analysis of program behavior; methods for identifying and fixing errors in programs; understanding abilities and limitation of programs; development and execution of programs.

CSCE 111 Introduction to Computer Science Concepts and Programming

Credits 4. 3 Lecture Hours. 2 Lab Hours.

Computation to enhance problem solving abilities; understanding how people communicate with computers, and how computing affects society; computational thinking; software design principles, including algorithm design, data representation, abstraction, modularity, structured and object oriented programming, documentation, testing, portability, and maintenance; understanding programs’ abilities and limitations; development and execution programs.

CSCE 113 Intermediate Programming and Design

Credits 2. 1 Lecture Hour. 3 Lab Hours.

Continuation of ENGR 112; programming and design with C++; topics include design and implementation of functions, classes, and class hierarchies; software development strategies; error handling and exceptions; testing and debugging; type safety; strings; templates and the STL; graphics and GUIs; mathematical computation; and principles of object-oriented programming.
Prerequisites: Knowledge of C++ programming, class design, portable graphics, and parameterized types and their implementations.

CSCE 121 Introduction to Program Design and Concepts

Credits 4. 3 Lecture Hours. 2 Lab Hours.

Computation to enhance problem solving abilities; computational thinking; understanding how people communicate with computers, how computing affects society; design and implementation of algorithms; data types, program control, iteration, functions, classes, and exceptions; understanding abstraction, modularity, code reuse, debugging, maintenance, and other aspects of software development; development and execution of programs.
Prerequisite: Programming course (high school or college).

CSCE 181 Introduction to Computing

Credit 1. 1 Lecture Hour.

Introduction to the broad field of computing; presentations from industry and academia about how computer science concepts are used in research and end products; includes a major writing component.

CSCE 206 Structured Programming in C

Credits 4. 3 Lecture Hours. 2 Lab Hours.

(COSC 1420) Structured Programming in C. Basic concepts, nomenclature and historical perspective of computers and computing; internal representation of data; software design principles and practice; structured and object-oriented programming in C; use of terminals, operation of editors and executions of student-written programs.

CSCE 221 Data Structures and Algorithms

Credits 4. 3 Lecture Hours. 2 Lab Hours.

Specification and implementation of basic abstract data types and their associated algorithms including stacks, queues, lists, sorting and selection, searching, graphs, and hashing; performance tradeoffs of different implementations and asymptotic analysis of running time and memory usage; includes the execution of student programs written in C++.
Prerequisite: CSCE 113 or CSCE 121.
Corequisite: CSCE 222/ECEN 222.

CSCE 222/ECEN 222 Discrete Structures for Computing

Credits 3. 3 Lecture Hours.

Provide mathematical foundations from discrete mathematics for analyzing computer algorithms, for both correctness and performance; introduction to models of computation, including finite state machines and Turing machines.
Prerequisite: MATH 151.
Cross Listing: ECEN 222/CSCE 222.

CSCE 285 Directed Studies

Credits 0 to 4. 0 to 4 Lecture Hours.

Special project in computer science. Project must be approved by the department.
Prerequisite: Approval of department head.

CSCE 289 Special Topics in...

Credit 1. 1 Lecture Hour.

Selected topics in an identified area of computer science. May be repeated for credit.
Prerequisite: Approval of instructor.

CSCE 291 Research

Credits 0 to 4. 0 to 4 Other Hours.

Research conducted under the direction of faculty member in computer science. May be taken three times for credit.
Prerequisites: Freshman or sophomore classification and approval of instructor.

CSCE 310 Database Systems

Credits 3. 3 Lecture Hours.

File structures and access methods; database modeling, design and user interface; components of database management systems; information storage and retrieval, query languages, high-level language interface with database systems.
Prerequisites: CSCE 221 with a grade of C or better; junior or senior classification.

CSCE 312 Computer Organization

Credits 4. 3 Lecture Hours. 2 Lab Hours.

Introduction to computer systems from programmer's perspective including simple logic design, data representation and processor architecture, programming of processors, memory, control flow, input/output, and performance measurements; hands-on lab assignments.
Prerequisites: Grade of C or better in CSCE 221, or concurrent enrollment; or approval of instructor.

CSCE 313 Introduction to Computer Systems

Credits 4. 3 Lecture Hours. 2 Lab Hours.

Introduction to system support for application programs, both on single node and over network including OS application interface, inter-process communication, introduction to system and network programming, and simple computer security concepts; hands-on lab assignments.
Prerequisite: CSCE 221 with a grade of C or better; CSCE 312 or
corequisite CSCE 350/ECEN 350.

CSCE 314 Programming Languages

Credits 3. 3 Lecture Hours.

Explores the design space of programming languages via an in-depth study of two programming languages, one subject-oriented (Java), one functional (Haskell); focuses on idiomatic uses of each language, and on features characteristic for each language.
Prerequisites: Grade of C or better in CSCE 221, or concurrent enrollment; or approval of instructor.

CSCE 315 Programming Studio

Credits 3. 2 Lecture Hours. 2 Lab Hours.

Intensive programming experience that integrates core concepts in Computer Science and familiarizes with a variety of programming/development tools and techniques; students work on 2 or 3 month-long projects each emphasizing a different specialization within Computer Science; focuses on programming techniques to ease code integration, reusability, and clarity.
Prerequisites: CSCE 312 and CSCE 314; or CSCE 350/ECEN 350.
Corequisite: CSCE 313.

CSCE 350/ECEN 350 Computer Architecture and Design

Credits 4. 3 Lecture Hours. 3 Lab Hours.

Computer architecture and design; use of register transfer languages and simulation tools to describe and simulate computer operations; central processing unit organization; microprogramming; input/output and memory system architectures.
Prerequisites: ECEN 248 with a grade of C or better; junior or senior classification.
Cross Listing: ECEN 350/CSCE 350.

CSCE 399 High-Impact Experience

Credits 0. 0 Other Hours.

Participation in an approved high-impact learning practice; documentation and self-assessment of learning experience.
Prerequisite: Junior or senior classification.

CSCE 410 Operating Systems

Credits 3. 3 Lecture Hours.

Hardware/software evolution leading to contemporary operating systems; basic operating systems concepts; methods of operating systems design and construction including algorithms for CPU scheduling, memory and general resource allocation, process coordination and management; case studies of several operating systems.
Prerequisites: CSCE 313 and CSCE 315.

CSCE 411 Design and Analysis of Algorithms

Credits 3. 3 Lecture Hours.

Study of computer algorithms for numeric and non-numeric problems; design paradigms; analysis of time and space requirements of algorithms; correctness of algorithms; NP-completeness and undecidability of problems.
Prerequisite: Grade of C or better in CSCE 221 and CSCE 222/ECEN 222; junior or senior classification or approval of instructor.

CSCE 412 Cloud Computing

Credits 3. 3 Lecture Hours.

Operating system and distributed systems fields that form the basis of cloud computing such as virtualization, key-value storage solutions, group membership, failure detection, peer to peer systems, datacenter networking, resource management and scalability; popular frameworks such as MapReduce and HDFS and cases studies on failure determination.
Prerequisite: Grade of C or better in CSCE 315.

CSCE 416/ECEN 416 Hardware Design Verification

Credits 3. 3 Lecture Hours.

Hardware functional verification; case studies on verification in integrated circuit design; introduction to industry best practices; introduction to logic functional verification.
Prerequisites: CSCE 312, CSCE 350/ECEN 350, or ECEN 350/CSCE 350, or equivalent in computer architecture; familiarity with C/C++/Verilog/VHDL programming.
Cross Listing: ECEN 416/CSCE 416.

CSCE 420 Artificial Intelligence

Credits 3. 3 Lecture Hours.

Fundamental concepts and techniques of intelligent systems; representation and interpretation of knowledge on a computer; search strategies and control; active research areas and applications such as notational systems, natural language understanding, vision systems, planning algorithms, intelligent agents and expert systems.
Prerequisite: CSCE 221; junior or senior classification or approval of instructor.

CSCE 429 Software Development, Globalization and Culture Abroad

Credits 3. 3 Lecture Hours.

Software development cycle; software outsourcing model, execution and practices; software industries on products, services and consultancy; software globalization; and offshore development culture; travel abroad required.
Prerequisite: CSCE 315 or approval of instructor.

CSCE 431 Software Engineering

Credits 3. 2 Lecture Hours. 2 Lab Hours.

Application of engineering approach to computer software design and development; life cycle models, software requirements and specification; conceptual model design; detailed design; validation and verification; design quality assurance; software design/development environments and project management.
Prerequisite: CSCE 315 or approval of instructor.

CSCE 433 Formal Languages and Automata

Credits 3. 3 Lecture Hours.

Basic types of abstract languages and their acceptors; the Chomsky hierarchy; solvability and recursive function theory; application of theoretical results to practical problems.
Prerequisite: CSCE 315 or approval of instructor.

CSCE 434 Compiler Design

Credits 3. 3 Lecture Hours.

Programming language translation; functions and general organization of compiler design and interpreters; theoretical and implementation aspects of lexical scanners; parsing of context free languages; code generation and optimization; error recovery.
Prerequisite: CSCE 315 or approval of instructor.

CSCE 435 Parallel Computing

Credits 3. 3 Lecture Hours.

Overview of parallel computing technology and programming methods; includes multiprocessor architectures, programming tools, parallel performance, parallel algorithms, and applications of parallel computing.
Prerequisites: CSCE 315 and junior or senior classification or approval of instructor.

CSCE 436 Computer-Human Interaction

Credits 3. 3 Lecture Hours.

Comprehensive study of the Computer-Human Interaction (CHI) area; includes history and importance of CHI; CHI design theories; modeling of computer users and interfaces; empirical techniques for task analysis and interface design; styles of interaction and future directions of CHI including hypermedia and computer-supported collaborative work.
Prerequisite: CSCE 315 or concurrent enrollment or approval of instructor.

CSCE 438 Distributed Objects Programming

Credits 3. 3 Lecture Hours.

Principles of distributed computing and programming with current paradigms, protocols, and application programming interfaces including Sockets, RMI, CORBA, IDL, Servlets, Web Services; security issues with public/private keys, digital signatures, forms and GUI based applications with multi-tier components, database connectivity and storing/streaming data structured using XML.
Prerequisite: CSCE 315 or approval of instructor.

CSCE 440 Quantum Algorithms

Credits 3. 3 Lecture Hours.

Introduction to the design and analysis of quantum algorithms; basic principles of the quantum circuit model; gives a gentle introduction to basic quantum algorithms; reviews recent results in quantum information processing.
Prerequisite: CSCE 315 or approval of instructor.

CSCE 441 Computer Graphics

Credits 3. 3 Lecture Hours.

Principles of interactive computer graphics; 2-D and 3-D rendering pipelines, including geometric object and view transformations, projections, hidden surface removal, and rasterization; lighting models for local and global illumination; hierarchical models of 3-D objects; systems and libraries supporting display and user interaction.
Prerequisite: CSCE 221; junior or senior classification or approval of instructor.

CSCE 442 Scientific Programming

Credits 3. 3 Lecture Hours.

Introduction to numerical algorithms fundamental to scientific and engineering applications of computers; elementary discussion of error; algorithms, efficiency; polynomial approximations, quadrature and systems of algebraic and differential equations.
Prerequisites: CSCE 221 with a grade of C or better; MATH 304 or MATH 308 or concurrent enrollment.

CSCE 443/VIST 487 Game Development

Credits 3. 2 Lecture Hours. 2 Lab Hours.

Aesthetic and technical aspects of computer game development, including game mechanics, story development, content creation and game programming; includes game design, interface design, 3D modeling and animation, graphics algorithms, shader programming and artificial intelligence; group project includes the design and development of a game from start to finish.
Prerequisites: CSCE 441 or VIST 486 or approval of instructor.
Cross Listing: VIST 487.

CSCE 444 Structures of Interactive Information

Credits 3. 2 Lecture Hours. 2 Lab Hours.

A systems approach to the programming, design, authoring and theory of hypermedia; object-oriented visual and interactive programming; visual design, including color, space, text and layering; the reference as a metadisciplinary structure; collecting and sampling; ontologies, maps and navigation as means of structuring information; create dynamic hypermedia that is expressive and interpretive.
Prerequisite: CSCE 315 or approval of instructor.

CSCE 445 Computers and New Media

Credits 3. 3 Lecture Hours.

Potential and realized impact of computers in the design of new media; relationship between authors and readers of interactive material; influence of media design on the content expressed.
Prerequisite: CSCE 221 or approval of instructor.

CSCE 446/VIST 477 Virtual Reality

Credits 3. 3 Lecture Hours.

Theory and practice of virtual reality; interactive 3D virtual environments; input/output devices, 3D interaction techniques, augmented reality, role of realism in VR, navigation techniques, design guidelines and evaluation methods.
Prerequisite: Grade of C or better in VIST 271, CSCE 221, or CSCE 441.
Cross Listing: VIST 477/CSCE 446.

CSCE 447/VIST 476 Data Visualization

Credits 3. 3 Lecture Hours.

Visual representation and design of data and information; 3D visualization, infographics, data narratives, principles of visual data encoding and interaction techniques.
Prerequisite: Grade of C or better in VIST 271, or CSCE 221, or CSCE 441.
Cross Listing: VIST 476/CSCE 447.

CSCE 451 Software Reverse Engineering

Credits 3. 2 Lecture Hours. 2 Lab Hours.

Overview of the compilation mechanism to generate executable files and raw binary codes from source codes; executable file formats for an operating system to run the binary code; disassembly algorithms and control graph analysis; static and dynamic analyses; case studies on code obfuscation, codebreaking, malware analysis.
Prerequisite: CSCE 313 or approval of instructor.

CSCE 452 Robotics and Spatial Intelligence

Credits 3. 3 Lecture Hours.

Algorithms for executing spatial tasks; path planning and obstacle aance in two- and three-dimensional robots--configuration space, potential field, free-space decomposition methods; stable grasping and manipulation; dealing with uncertainty; knowledge representation for planning--geometric and symbolic models of the environment; task-level programming; learning.
Prerequisite: CSCE 315 or approval of instructor.

CSCE 456 Real-Time Computing

Credits 4. 3 Lecture Hours. 3 Lab Hours.

Introduction to principles and applications of real-time computing; system architecture; D/A and A/D conversion; synchronous data acquisition and analysis; computers in real-time control; asynchronous monitoring and control; resource scheduling; interfacing issues; lectures and laboratory.
Prerequisites: CSCE 313 and MATH 152.

CSCE 461/BMEN 428 Embedded Systems for Medical Applications

Credits 3. 2 Lecture Hours. 3 Lab Hours.

Principles of embedded system architecture and programming; fundamentals and theoretical foundations of wireless communication systems; hands-on experiences of how an embedded system could be used to solve problems in biomedical engineering; projects on wireless sensors and imaging for medical devices.
Prerequisite: BMEN 211, CSCE 350/ECEN 350, or CSCE 315, or approval of instructor.
Cross Listing: BMEN 428/CSCE 461.

CSCE 462 Microcomputer Systems

Credits 3. 2 Lecture Hours. 1 Lab Hour.

Microcomputers as components of systems; VLSI processor and coprocessor architectures, addressing and instruction sets; I/O interfaces and supervisory control; VLSI architectures for signal processing; integrating special purpose processors into a system.
Prerequisite: CSCE 313.

CSCE 463 Networks and Distributed Processing

Credits 3. 3 Lecture Hours.

Basic hardware/software, architectural components for computer communications; computer networks, switching, routing, protocols and security; multiprocessing and distributed processing; interfacing operating systems and networks; case studies of existing networks and network architectures.
Prerequisite: CSCE 313 or approval of instructor.

CSCE 464 Wireless and Mobile Systems

Credits 3. 3 Lecture Hours.

Introduction to wireless and mobile systems; wireless communication fundamentals; wireless medium access control design; transmission scheduling, network and transport protocols over wireless design, simulation and evaluation; wireless capacity; telecommunication systems; vehicular, adhoc, and sensor network systems; wireless security; mobile applications.
Prerequisites: CSCE 313; junior or senior classification or approval of instructor.

CSCE 465 Computer and Network Security

Credits 3. 3 Lecture Hours.

Fundamental concepts and principles of computer security, operating system and network security, secret key and public key cryptographic algorithms, hash functions, authentication, firewalls and intrusion detection systems, IPSec and VPN, wireless and web security.
Prerequisites: CSCE 313 and CSCE 315; junior or senior classification; or approval of instructor.

CSCE 469 Advanced Computer Architecture

Credits 3. 3 Lecture Hours.

Introduction to advanced computer architectures including memory designs, pipeline techniques, and parallel structures such as vector computers and multiprocessors.
Prerequisite:ECEN 350/CSCE 350.

CSCE 470 Information Storage and Retrieval

Credits 3. 3 Lecture Hours.

Representation of, storage of and access to very large multimedia document collections; fundamental data structures and algorithms of current information storage and retrieval systems and relates various techniques to design and evaluation of complete retrieval systems.
Prerequisite: CSCE 315 or approval of instructor.

CSCE 481 Seminar

Credit 1. 2 Lab Hours.

Investigation and report by students on topics of current interest in computer science.
Prerequisite: Junior or senior classification.

CSCE 482 Senior Capstone Design

Credits 3. 1 Lecture Hour. 6 Lab Hours.

Project-based course to develop system integration skills for solving real-world problems in computer science; significant team software project that integrates advanced concepts across computer science specializations; projects require design, implementation, documentation and demonstration, as well as design methodology, management process and teamwork.
Prerequisites: Senior classification; CSCE 315, CSCE 411, and two additional CSCE tracked courses.

CSCE 483 Computer Systems Design

Credits 3. 1 Lecture Hour. 6 Lab Hours.

Engineering design; working as a design-team member, conceptual design methodology, design evaluations, total project planning and management techniques, design optimization, systems manufacturing costs considerations; emphasis placed upon students' activities as design professionals.
Prerequisites: CSCE 315 and CSCE 462; senior classification.

CSCE 485 Directed Studies

Credits 0 to 6. 0 to 6 Other Hours.

Permits work on special project in computer science. Project must be approved by the department.
Prerequisite: Senior classification.

CSCE 489 Special Topics in...

Credits 1 to 4. 1 to 4 Other Hours.

Special topics in computer science that are new or unique that are not covered in existing courses.

CSCE 491 Research

Credits 0 to 4. 0 to 4 Other Hours.

Research conducted under the direction of faculty member in computer science. May be taken three times for credit.
Prerequisites: Junior or senior classification and approval of instructor.

Agumbe Suresh, Mahima, Visiting Assistant Professor
Computer Science & Engineering
PHD, Texas A&M University, 2015

Ahmed, Sarker T, Instructional Assistant Professor
Computer Science & Engineering
PHD, Texas A&M University, 2016

Akleman, Ergun, Professor
Computer Science & Engineering
PHD, Georgia Institute of Technology, 1992

Amato, Nancy M, Professor
Computer Science & Engineering
PHD, University of Illinois, 1995

Andersen, Flemming, Professor of the Practice
Computer Science & Engineering
PHD, Technical University of Denmark, 1995

Bettati, Riccardo, Professor
Computer Science & Engineering
PHD, University of Illinois, 1994

Caverlee, James B, Associate Professor
Computer Science & Engineering
PHD, Georgia Institute of Technology, 2007

Chai, Jinxiang, Associate Professor
Computer Science & Engineering
PHD, Carnegie Mellon University, 2006

Chaspari, Theodora, Assistant Professor
Computer Science & Engineering
PHD, University of Southern California, 2017

Chen, Jianer, Professor
Computer Science & Engineering
PHD, Columbia University, 1990

Choe, Yoonsuck, Professor
Computer Science & Engineering
PHD, University of Texas, 2001

Da Silva, Dilma M, Professor
Computer Science & Engineering
PHD, Georgia Institute of Technology, 1997

Daugherity, Walter C, Senior Lecturer
Computer Science & Engineering
PHD, Harvard University, 1977

Davis, Timothy A, Professor
Computer Science & Engineering
PHD, University of Illinois - Urbana Champaign, 1989

Dewitte, Paula S, Associate Professor of the Practice
Computer Science & Engineering
JD, St. Mary's School of Law, 2008
PHD, Texas A&M University, 1989

Duffield, Nicholas G, Professor
Computer Science & Engineering
PHD, Queen Mary College, Univ. of London, 1987

Dutta, Anandi K, Lecturer
Computer Science & Engineering
PHD, University of Louisiana at Lafayette, 2016

Furuta, Richard K, Professor
Computer Science & Engineering
PHD, University of Washington, 1986

Garay, Juan A, Professor
Computer Science & Engineering
PHD, The Pennsylvania State University, 1989

Goldberg, Daniel W, Assistant Professor
Computer Science & Engineering
PHD, University of Southern California, 2010

Gooch, Bruce S, Associate Professor
Computer Science & Engineering
PHD, University of Utah, 2003

Gratz, Paul V, Associate Professor
Computer Science & Engineering
PHD, University of Texas, 2008

Gu, Guofei, Associate Professor
Computer Science & Engineering
PHD, Georgia Institute of Technology, 2008

Guerra Nakamura, Fabiola, Senior Lecturer
Computer Science & Engineering
PHD, Federal University of Minas Gerais, 2010

Gutierrez-Osuna, Ricardo, Professor
Computer Science & Engineering
PHD, North Carolina State University, 1998

Hammond, Tracy A, Professor
Computer Science & Engineering
PHD, Massachusetts Inst of Technology, 2007

Hu, Jiang, Professor
Computer Science & Engineering
PHD, University of Minnesota, 2001

Hu, Xia, Assistant Professor
Computer Science & Engineering
PHD, Arizona State University, 2015

Huang, Ruihong, Assistant Professor
Computer Science & Engineering
PHD, University of Utah, 2014

Huang, Shaoming, Assistant Professor
Computer Science & Engineering
PHD, Hong Kong University of Science and Technology, 2012

Ioerger, Thomas R, Associate Professor
Computer Science & Engineering
PHD, University of Illinois, 1996

Jiang, Anxiao, Associate Professor
Computer Science & Engineering
PHD, California Institute of Technology, 2004

Jimenez, Daniel A, Professor
Computer Science & Engineering
PHD, University of Texas at Austin, 2002

Kerne, Andrew, Professor
Computer Science & Engineering
PHD, New York University, 2001

Keyser, John C, Professor
Computer Science & Engineering
PHD, University of North Carolina at Chapel Hill, 2000

Kim, Eun J, Associate Professor
Computer Science & Engineering
PHD, Pennsylvania State University, 2003

Klappenecker, Andreas, Professor
Computer Science & Engineering
PHD, Universitat Karlsruhe, 1998

Kum, Hye Chung, Associate Professor
Computer Science & Engineering
PHD, University of North Carolina - Chapel Hill, 2004

Lee, Hyunyoung, Senior Lecturer
Computer Science & Engineering
PHD, Texas A&M University, 2001

Leyk, Teresa S, Senior Lecturer
Computer Science & Engineering
PHD, Australian National University, 1998

Liu, Jyh C, Professor
Computer Science & Engineering
PHD, University of Michigan - Ann Arbor, 1989

Loguinov, Dmitri, Professor
Computer Science & Engineering
PHD, City University of New York, 2002

Lupoli, Shawn V, Instructional Assistant Professor
Computer Science & Engineering
BS, Frostburg State University, 2017

Mahapatra, Rabinarayan, Professor
Computer Science & Engineering
PHD, Indian Institute of Technology, Kharagpur, 1992

Moore, John Michael, Instructional Assistant Professor
Computer Science & Engineering
PHD, Texas A&M University, 2007

Mortazavi, Jack B, Assistant Professor
Computer Science & Engineering
PHD, University of California - Los Angeles, 2014

Murphy, Robin R, Professor
Computer Science & Engineering
PHD, Georgia Institute of Technology, 1992

Nakamura, Eduardo F, Visiting Associate Professor
Computer Science & Engineering
PHD, Federal University of Minas Gerais, 2007

Narayanan, Krishna R, Professor
Computer Science & Engineering
PHD, Georgia Institute of Technology, 1998

Quek, Francis K, Professor
Computer Science & Engineering
PHD, University of Michigan, 1990

Quinn, Michael D, Associate Professor of the Practice
Computer Science & Engineering
MS, University of Southern California at Los Angeles, 1978

Ragan, Eric D, Assistant Professor
Computer Science & Engineering
PHD, Virginia Tech, 2013

Ragsdale, Daniel J, Professor of the Practice
Computer Science & Engineering
PHD, Texas A&M University, 2001

Rauchwerger, Lawrence, Professor
Computer Science & Engineering
PHD, University of Illinois, 1995

Ritchey, Philip C, Instructional Assistant Professor
Computer Science & Engineering
PHD, Purdue University, 2015

Rojas, Joseph M, Professor
Computer Science & Engineering
PHD, University of California, Berkeley, 1995

Sarin, Vivek, Associate Professor
Computer Science & Engineering
PHD, University of Illinois, 1997

Schaefer, Scott D, Professor
Computer Science & Engineering
PHD, Rice University, 2006

Shell, Dylan A, Associate Professor
Computer Science & Engineering
PHD, University of Southern California, 2008

Shipman III, Frank M, Professor
Computer Science & Engineering
PHD, University of Colorado, 1993

Song, Dezhen, Professor
Computer Science & Engineering
PHD, University of California, Berkeley, 2004

Stoleru, Radu, Associate Professor
Computer Science & Engineering
PHD, University of Virginia, 2007

Sueda, Shinjiro, Assistant Professor
Computer Science & Engineering
PHD, University of British Columbia, 2010

Sze, Sing H, Associate Professor
Computer Science & Engineering
PHD, University of Southern California, 2000

Tyagi, Aakash, Professor of the Practice
Computer Science & Engineering
PHD, University of Louisiana, 1993

Walker, Duncan M, Professor
Computer Science & Engineering
PHD, Carnegie Mellon University, 1986

Wang, Zhangyang, Assistant Professor
Computer Science & Engineering
PHD, University of Illinois at Urbana-Champaign, 2016

Ward, Ronald G, Senior Lecturer
Computer Science & Engineering
PHD, Texas A&M University, 1973

Welch, Jennifer L, Professor
Computer Science & Engineering
PHD, Massachusetts Institute of Technology, 1988

Williams, Tiffani L, Associate Professor
Computer Science & Engineering
PHD, University of Central Florida, 2000

Yum, Ki H, Senior Lecturer
Computer Science & Engineering
PHD, The Pennsylvania State University, 2002