Computer science programs and focus areas

As a student in the computer science program, you will receive the knowledge and preparation necessary to meet the challenges of designing and developing software systems and algorithms.

Focus areas

Whether you are an undergraduate or graduate student, you can expect to do research in one or more of the following focus areas.

Research led by Dr. Bruce McMillin, interim department chair and professor of computer science, in the areas of:

  • Analysis of Algorithms
  • Graph Theory
  • Applied Game Theory
  • Complexity Theory
  • Discrete Mathematics
  • Automata Theory
  • Numerical Methods
  • Optimization Techniques

Research led by Dr. Daniel Tauritz, associate chair of undergraduate studies and associate professor of computer science, in the areas of:

  • Artificial Intelligence
  • Evolutionary Computation
  • Computer Vision
  • Data Mining
  • Machine Learning
  • Neural Networks
  • Scientific Visualization
  • Robotics

Research led by Dr. Sanjay Madria, professor of computer science, in the areas of:

  • Mobile Wireless Networking
  • Sensor Networks
  • Pervasive Computing
  • Cloud Computing
  • Social Networks
  • Smart Environments
  • Green Computing

Research led by Dr. Wei Jiang, associate professor of computer science, in the areas of:

  • Cyber Security
  • Network Security
  • Information Assurance
  • Privacy
  • Critical Infrastructure Protection
  • Digital Forensics

Research in the areas of:

  • Software Architecture
  • Software Maintenance
  • Software Requirements Engineering
  • Knowledge Engineering

The computer science program offers a unified software engineering experience. Students learn software project management in its many roles, from overall project management and process improvement to the management of individual lifecycle components, including software deployment and evolution.

The university’s Software Engineering Research Program specializes in:

  • Software Quality
  • Software Testing
  • Hardware/Software Co-design
  • Formal Methods of Software Specification and Verification
  • Automated Software Engineering
  • Algorithm Theory

Critical Infrastructure Protection

Research led by Dr. Ali Hurson, professor of computer science, in the areas of:

  • Operating Systems
  • Distributed Systems
  • Parallel Computing
  • Computer Architecture
  • Compilers
  • Programming Languages
  • Database Systems
  • Networking

This multidisciplinary study is dedicated to improving the security, reliability and survivability of our nation's vital infrastructures. We strive to improve the quality, survivability, security and reliability of critical systems using the most broad-based technology possible, to grow a workforce aware of and trained in both physical and cyber security, and to stimulate the economic viability of U.S. corporations and institutions.

Our nation is increasingly dependent on systems, such as the electric power grid, oil and gas distribution and pipelines, transportation systems, telecommunications systems, and information systems. These systems are naturally distributed, thus, are very complex; in fact, they are typically interconnected sets of systems or networked Systems of Systems (SoS). The distributed structure makes them vulnerable to attack at many places, in many forms including physical and cyber-based, singly or in combination with each other.

In order to assure the continued functioning of these systems, their complexity requires expertise in all aspects of the attack scenario. This, therefore, includes not only protecting against physical attack and damage but also the integrated reliability and security of such large-scale systems, where an attack at one point can have drastic consequences over a much broader target area, leading to cascading failures.

Missouri S&T's CS department focuses on the Software Engineering aspects of Critical Infrastructure Systems, Wireless Computing Technologies, Artificial Intelligence, Distributed Computing, Security, Fault Tolerance, and Visualization.

The intention is to improve the quality, survivability, security, and reliability of critical systems using the broadest-based technology possible, to grow a workforce aware of and trained in security (physical and cyber), and to stimulate the economic viability of US corporations and institutions by improving the security, reliability, and survivability of their critical infrastructures.