Faculty members in the department are actively engaged in research in the areas listed below. There are many opportunities for both undergraduate and graduate students to participate in these activities toward thesis or project work and independent study.

Research Area Description
Computer Science Education Explorations into the pedagogy of Computer Science focusing on new methods and paradigms for the teaching of the CS curriculum.
Computer Graphics and Visualization This area provides the technical foundations for studies in Computer Graphics. Areas for advanced study include Advanced Graphics Programming, Image Synthesis, Computer Animation, Virtual Reality, and Data Visualization.
Data Management Studies foundational data management and knowledge discovery challenges prevalent in design, analysis and organization of data. This area can be applied in a variety of domains including data management in resource constrained environments, enterprise and multimedia databases, active and secure databases and knowledge discovery algorithms.
Distributed Systems This area studies systems formed from multiple cooperating computers. This includes the analysis, design, and implementation of distributed systems, distributed middleware, and computer networking protocols, including security.
Intelligent Systems Intelligent Systems encompasses the study of algorithms and architectures that enable effective decision making in complex environments. Researchers in this area include faculty, undergraduate and graduate students working on projects in computer vision, robotics, virtual theatre, sensor networks, data mining, document recognition, and the theoretical foundations of decision-making (e.g. Markov chains and the properties of voting protocols).
Languages and Tools The Languages and Tools area studies language design and implementation together with architecture and use of software development tools.
Security The Security area spans topics from networking to cryptography to secure databases. By choosing different domains in which to study security students can gain a broad understanding of both theoretical and applied knowledge.
Theory The Theory area studies the fundamentals of computation. These fundamentals include complexity theory to determine the inherent limits of computation and communication and cryptography and the design and analysis of algorithms to obtain optimal solutions within those limits.