formerly University of Missouri-Rolla
Missouri S&T

Advancing Excellence Campaign for Missouri S&T






Computer Science

500 West 15th Street
325 Computer Science Bldg.
Rolla, MO 65409
(573) 341-4491
csdept@mst.edu

print 

Areas of Excellence

The Missouri S&T computer science department has identified the following research and teaching areas of interest to focus on in the next several years. We will continue our tradition of providing a strong foundation for our students, and these areas of excellence will help students identify additional options to broaden their academic and research backgrounds, as well as their professional opportunities.

Software Engineering

Missouri S&T's Computer Science program provides a full unified software lifecycle experience over the entire course of the student's CS education at Missouri S&T. This experience includes software project management in its many roles, ranging from overall project management and process improvement to the management of individual lifecycle components, including software deployment and evolution. Missouri S&T's software engineering research program specializes in software quality, software testing, hardware/software co-design, and formal methods of software specification and verification, software requirements engineering and software process improvement, and algorithm theory.

To obtain an emphasis in Software Engineering, the student takes the following courses as part of their M.S. degree program:

Requirements Engineering, (CS 409): elicitation of software requirements

Software Testing and Quality Assurance (CS 307): unit, subsystem, system, object-oriented, and specification, testing, software quality

Object Oriented Analysis and Design (CS 308): principles, mechanisms, and methodologies in object-oriented analysis and design

Software Engineering II (CS 406): software metrics used in the life cycle

Critical Infrastructure Protection

Critical Infrastructure Protection is a multi-disciplinary study dedicated to improving the security, reliability, and survivability of the infrastructures that play a vital role in the effective functioning of our nation. Missouri S&T's specialty focuses on the critical hardware/software integrated systems that make up the nation's critical infrastructures. 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.

To obtain an emphasis in Critical Infrastructure Protection, the student takes at least four out of the following courses as part of their M.S. degree program (two of them must be at 400 level):

Distributed Operating Systems (CS 384): algorithms used in the creation of modern (distributed) operating systems

Distributed Systems Theory and Analysis (CS 484): advanced analysis using formal methods

Computer Communications and Networks (CS 365): network architecture model, security, and wireless with implementations

Advanced Topics in Wireless Networking (CS 485):cellular networks, ad hoc networks, wireless LAN'S and security

Computer Security (CS 463): vulnerabilities and threats to information in cyberspace, principles and techniques for preventing and detecting threats, and recovering from attacks

Mobile and Sensor Data Management (CS 467): architectures, Mobile-IP, broadcasting, replication, caching fault tolerance, ad hoc and sensor routing, keys

Software Testing and Quality Assurance (CS 307): unit, subsystem, system, object-oriented, and specification, testing, software quality

Object Oriented Analysis and Design (CS 308): principles, mechanisms, and methodologies in object-oriented analysis and design

Bioinformatics

Bioinformatics is any application of computational methods to address biological problems. Although often used to refer to analysis of genomic information, bioinformatics is defined broadly by the NSF and NIH as "research, development, or application of computational tools and approaches for expanding the use of biological, medical, behavioral or health data, including those to acquire, store, organize, archive, analyze, or visualize such data." Missouri S&T's bioinformatics research program specializes in visualization of biological data sets, parallel algorithm development and algorithmic theory for biological data analysis, and management of biological databases.

To obtain an emphasis in Bioinformatics, the student takes the following courses as part of their M.S. degree program:

Data Base Systems (CS 338): normalization and functional dependencies, transaction models, concurrency and locking, time stamping, serializability, recovery techniques, and query planning and optimization

Data Mining & Knowledge Discovery (CS 434): data knowledge representation and knowledge acquisition, machine learning and neural networks

Bioinformatics (CS 311): application of computational methods to biology with problems in molecular, structural, morphological, and bio diversity informatics

Advanced Bioinformatics (CS 401 soon to be CS 411): a continuation of CS 311

Java GUI and Visualization (CS 342): Java classes with an eye towards algorithm visualization

Web Data Management and XML (CS 437): semi-structured data models and XML, query languages such as Xquery, XML indexing, and mapping of XML views and schema management change detection, web mining and security