Browse Active Research Projects

Undergraduates can participate in projects for credits by registering in CS 4974 or 4994. Consult the Faculty Advisor or Research Supervisor before you register for this course.

Participation on a VTURCS project could also lead to an honors thesis for CS majors interested in graduating with honors.

Can't find anything that piques your curiousity? Don't be afraid to check out the Computer Science faculty list for someone who has a research interest you'd like to know more about. They might just have something for you.

Stephen Edwards

Adding Built-in Self-testing to JavaBeans Components

Faculty Advisor
Stephen Edwards
Research Supervisor
Stephen Edwards
Description of Work
Our research group has been developing approaches for embedding a component's test suite(s) in a "self-testing" wrapper together with the necessary scaffolding needed to run the suite(s). By packaging a wrapper class together with the original, and providing a way for either one to be created on demand, a clean, transparent self-testing capability can be provided. The goal of this project is to adapt these techniques to JavaBeans, where the extra features would be packaged together with the original bean inside its jar.
Application Instructions
Stop by during my office hours to discuss possibilities.
Project URL
none
Area(s) of Research
Software Engineering
Compensation
Work for Credit or Volunteer
Contact
edwards@cs.vt.edu
James D. Arthur

An Eclipse-based Prototype for Supporting Hazzard Analysis

Faculty Advisor
James D. Arthur
Research Supervisor
James D. Arthur
Description of Work
To develop a prototype tool (eclipse-based) that will support Hazard Analysis. Tool will provide interface to add Hazards, Causes and Mitigation approaches, and a rudimentary Graphical Editor for constructing/analyzing corresponding Functional Block Diagrams and Fault Trees
Application Instructions
Meet with Dr. Arthur
Project URL
http://
Area(s) of Research
Software Engineering
Compensation
Work for Credit or Volunteer
Contact
arthur@vt.edu
Stephen Edwards

Automated Grading Meets Test-first Coding

Faculty Advisor
Stephen Edwards
Research Supervisor
Stephen Edwards
Description of Work
Web-CAT is an automated grading system used in some of our classes to grade students based on how they test their own code. We would like to support other schools who want to use Web-CAT for their courses too. Unfortunately, there are a number of institutional, policy-oriented, and technology-oriented problems that stand in the way of this. This project would involve plotting out a path towards a real open-source project that could be used by multiple schools, as well as towards accommodating the various administrative requirements of different institutions. This project would involve helping to architect a real-world web application designed for open-source development and educational use.
Application Instructions
Stop by during my office hours to discuss possibilities.
Project URL
none
Area(s) of Research
Software Engineering, Computer-Aided Instruction
Compensation
Work for Credit or Volunteer
Contact
edwards@cs.vt.edu
Stephen Edwards

Automatically Generating Test Data

Faculty Advisor
Stephen Edwards
Research Supervisor
Stephen Edwards
Description of Work
This project is a continuation of current research on techniques for automatically generating test data for software components. Think of a software component as a black-box that provides a well-defined "interface" as a series of methods. Generating one test case amounts to choosing a sequence of method calls (and their parameters) that will exercise the component in some interesting way. Automatically generating an entire test suite is then the problem of writing a program that can generate a reasonable number of "interesting" test cases in this fashion, and which will give some assurance that all the cases taken together will do a good job of revealing any defects hidden in the component's implementation. An early prototype generator that does this will be redesigned and re-engineered. Java programming experience is required, and the implementation of several graph-based algorithms is an important part of the project.
Application Instructions
Stop by my office hours to discuss possibilities.
Project URL
none
Area(s) of Research
Software Engineering
Compensation
Work for Credit
Contact
edwards@cs.vt.edu
Danesh Tafti

Building a Linux Cluster

Faculty Advisor
Danesh Tafti
Research Supervisor
Description of Work
Update an existing linux cluster. Requires reconfiguration with OSCAR. The hardware is in place but needs to be reconfigured with updated software and OS. Great opportunity to get hands on experience in building clusters.
Application Instructions
Project URL
http://www.hpcfd.me.vt.edu
Area(s) of Research
Networking, Parallel Computation, Software Engineering, Systems
Compensation
Work for Pay
Contact
dtafti@vt.edu
Godmar Back

Google-based Plagiarism Detector

Faculty Advisor
Godmar Back
Research Supervisor
Description of Work
Develop a program that extracts unattributed passages from term papers and submits them to Google (see http://www.google.com/apis/ )
Application Instructions
Send email to gback@cs.vt.edu
Project URL
http://
Area(s) of Research
Software Engineering
Compensation
Work for Credit or Volunteer
Contact
gback@cs.vt.edu
Wu Feng

High-Performance Biological Sequence Search

Faculty Advisor
Wu Feng
Research Supervisor
Jeremy Archuleta
Description of Work
Biological sequence searching has become a fundamental aspect of all bioinformatics. It can help in tasks such as sequencing the human genome, designing pathogen signatures for pathogen detection, identifying unknown viruses (e.g., the virus now known as SARS), and so on. In this project, you will be coding different modules of part of a much larger project (i.e., mpiBLAST at http://www.mpiblast.org) in order to improve functionality, maintainability, and performance.
Application Instructions
E-mail a resume to feng@cs.vt.edu. Optional, but preferred, materials include unofficial undergraduate transcript and a brief one-paragraph statement of what interests you about this project.
Project URL
http://www.mpiblast.org/
Area(s) of Research
Bioinformatics, Parallel Computation, Software Engineering, Systems, Theory, Computational Biology, Databases, Data Mining, Artificial Intelligence
Compensation
Negotiable
Contact
feng@cs.vt.edu
Daniel R. Dunlap, Andrea Kavanaugh

NSF Research Experience for Undergraduates (REU)

Faculty Advisor
Daniel R. Dunlap, Andrea Kavanaugh
Research Supervisor
Dunlap, Kavanaugh and others in the Center for Human-Computer Interaction
Description of Work
We have positions for undergraduate researchers funded by the National Science Foundation's Research Experience for Undergraduates (REU) program. The projects involve user-centered design and evaluation of collaborative virtual environments and applications. Specific projects include a collaborative learning environment for science students, a knowledge management system for public school teachers, extensions to the Blacksburg Electronic Village, and quality-of-life support for military personnel. Technical questions include -- how can collaborators maintain "awareness" of one another in virtual environments?, how can we log and evaluate "sessions" in distributed systems?, what is the impact of community networking on families and community groups?, how can military personnel maintain their personal lives while serving thousands of miles from home? We will hire at least 6 undergraduates in this program, and probably 8. Students can also arrange to work for course credit of various sorts, including service learning, independent studies, and honors theses.
Application Instructions
Send email to dunlapd@vt.edu, kavan@vt.edu
Project URL
http://java.cs.vt.edu
Area(s) of Research
Human-Computer Interaction, Software Engineering, Systems, Computer-Aided Instruction
Compensation
Work for Pay or Credit
Contact
dunlapd@vt.edu
Godmar Back

Programming Language Reference Project

Faculty Advisor
Godmar Back
Research Supervisor
Godmar Back
Description of Work
Create a web resource that provides a quick reference for different programming languages, based on how common programming idioms are expressed in them. The idea is to compare by saying: "If you write this in C, you'd use this in Perl". Using this resource should make it easy to learn a new programming language by referring to a language one already knows. A key criteria should be conciseness, but pointers to further information should be provided as well. See the project web page for a further description.
Application Instructions
Send email to gback@cs.vt.edu if you're interested.
Project URL
http://people.cs.vt.edu/~gback/PLCP/PLCP.html
Area(s) of Research
Software Engineering, Systems
Compensation
Work for Credit or Volunteer
Contact
gback@cs.vt.edu
Alexey Onufriev, Lenwood Heath

Protein Completion (A Structural Biology Web Server)

Faculty Advisor
Alexey Onufriev, Lenwood Heath
Research Supervisor
Jon Myers, Alexey Onufriev
Description of Work
Structure of a biological molecule is a key determinant of its biological function. However, experimentally available structures (from X-ray crystallography) are missing the hydrogen atoms. Without them, structures are seriously incomplete. We have developed a (first in the world) prototype web application that uses theoretical methods to add the missing hydrogens. Lots of work is still to be done, and we need help in virtually every aspect of the project: PHP, web design, C++/PERL programming, core algorithm development, testing. We are also planning to use the server to address some important biological questions. This is an "instant gratification" project, as your contribution becomes immediately accessible to researchers world-wide + you get your name on the project's credits page (good for your resume...)
Application Instructions
Contact Alexey Onufriev alexey@cs.vt.edu
Project URL
http://chekhov.cs.vt.edu/completion
Area(s) of Research
Bioinformatics, Human-Computer Interaction, Software Engineering, Computational Biology
Compensation
Negotiable
Contact
alexey@cs.vt.edu
Alexey Onufriev

Protein folding on a PC.

Faculty Advisor
Alexey Onufriev
Research Supervisor
Alexey Onufriev and grad. students
Description of Work
Have you heard of the famous "protein folding" problem? What people call the "grand challenge of computational science"? We are working on an algorithm that has the potential to solve the problem on a --single PC--. If you want to be a part of the team and have a chance to publish in prestigious journals, join us. No prior knowledge of biology or physics is required, only enthusiasm for solving hard problems. However, excellent programming skills and solid math background are a must.
Application Instructions
email me.
Project URL
http://
Area(s) of Research
Bioinformatics, Software Engineering, Theory, Computational Biology
Compensation
Negotiable
Contact
alexey@cs.vt.edu
Edward A. Fox

Ski Cross Website

Faculty Advisor
Edward A. Fox
Research Supervisor
Edward A. Fox
Description of Work
Informational web site on the new discipline of ski cross, which will be in the Olympics for the first time in 2010. To include news, interviews, event coverage, and forums. Usability study desirable for formative evaluation.
Application Instructions
Contact Joseph Varnau, jvarnau@vt.edu, cell 703-727-1104, graduating in Management EIT in May 2009. He can provide further details. negotiable reward structure to be discussed.
Project URL
http://www.skiracing.com/index.php?option=com_content&task=view&id=4818&Itemid=57
Area(s) of Research
Human-Computer Interaction, Software Engineering
Compensation
Negotiable
Contact
fox@vt.edu; jvarnau@vt.edu
Chris North

Snap-Together Visualization

Faculty Advisor
Chris North
Research Supervisor
Chris North
Description of Work
Assist in one of the following projects that are related to Snap: * Development of Java based visualization components * Development of a web based visualization layout component using ASP * Development of a web based system for developers to submit and update new visualizations * Development of Javascript components for visualization layout
Application Instructions
Email me.
Project URL
http://infovis.cs.vt.edu/snap/
Area(s) of Research
Human-Computer Interaction, Software Engineering
Compensation
Work for Credit
Contact
north@vt.edu
Madhav Marathe

Software Development for Large Complex Simulations

Faculty Advisor
Madhav Marathe
Research Supervisor
Madhav Marathe and Keith Bisset
Description of Work
The Network Dynamics and Simulation Science Laboratory (NDSSL) is actively pursuing a program to build very large scale simulations of biological, information, technical and social (BITS) systems. Examples include: transportation systems, integrated next generation telecommunication systems, epidemiology and public health, commodity markets and systems biology. Participate in the design and implementation of BIST systems. Work in a multi-disciplinary team on a range of topics, including development and testing of algorithms, web services definitions and implementations, large scale software development.
Application Instructions
Please send an email with your resume. Experience in C++ and Java is required and familiarity with Web services, algorithm design and development and high performance computing is a plus.
Project URL
http://
Area(s) of Research
Parallel Computation, Software Engineering, Theory
Compensation
Work for Pay or Credit
Contact
marathe@vt.edu or kbisset@vbi.vt.edu
W. Feng

Supercomputing on Video Gaming Consoles

Faculty Advisor
W. Feng
Research Supervisor
Ashwin Aji
Description of Work
Given the extreme needs of today's sophisticated video games, game consoles and video graphics cards in their own right have become supercomputers. The goal of this project is to program *and* optimize a bioinformatics application (or perhaps something else, if reasonable) on the Sony PlayStation 3 and/or the NVIDIA Tesla video graphics card using the CUDA programming environment. (For those interested in human-computer interaction, a nice interface to the above bioinformatics application would serve as a nice project as well, or an interface to our existing codes.)
Application Instructions
E-mail a resume to feng@cs.vt.edu. Optional, but preferred, materials include unofficial undergraduate transcript and a brief one-paragraph statement of what interests you about this project.
Project URL
http://
Area(s) of Research
Bioinformatics, Human-Computer Interaction, Parallel Computation, Problem Solving Environments, Software Engineering, Systems, Theory, Databases, Data Mining, Knowledge
Compensation
Negotiable
Contact
feng@cs.vt.edu
Edward A. Fox

Veterinary Experiment Analysis - Force Plate Lab

Faculty Advisor
Edward A. Fox
Research Supervisor
Edward A. Fox, along with Peter K. Shires (BVSc, MS, Diplomate ACVS, shirespk@vt.edu) and H. Marie Suthers-McCabe (D.V.M., msuthers@vt.edu)
Description of Work
The Virginia-Maryland Regional College of Veterinary Medicine has a force plate laboratory. Animals are walked across a plate with sensors, with video recorded as well, to help assess their gait, which can be used to determine effectiveness of treatments and therapies on lameness, hip dysplasia, and other problems. Analysis of the computerized sensor data and video records from experiments is needed, along with development and deployment of tools to help.
Application Instructions
Please contact Professor Fox or Shires.
Project URL
http://fox.cs.vt.edu
Area(s) of Research
Bioinformatics, Digital Libraries, Software Engineering
Compensation
Work for Credit
Contact
fox@vt.edu
Barbara Ryder

Visualizing Temporary Usage in Large Java Programs

Faculty Advisor
Barbara Ryder
Research Supervisor
Marc Fisher
Description of Work
Short-lived or temporary objects can be significant source of performance problems in Java programs. We have developed an analysis to help identify temporary objects in large framework-based Java applications. For this project you will develop an Eclipse plug-in to visually explore temporary and non-temporary data structures in Java applications. This implementation will be in Java using the Eclipse libraries for user interface and graphics.
Application Instructions
email fisherii@cs.vt.edu
Project URL
http://prolangs.cs.vt.edu/
Area(s) of Research
Human-Computer Interaction, Software Engineering
Compensation
Work for Pay or Credit
Contact
fisherii@cs.vt.edu