My research focuses primarily on software visualization and how it can be applied to both computing education and software engineering.

  • Software Visualization. Software visualization investigates efficient and effective ways of automatically producing graphical representations of program source code, algorithms, or the runtime behavior of software. Such visualization technology promises to have a positive impact on difficult and costly issues in software engineering such as communicating program information for the purposes of testing, maintenance, and reverse engineering, especially for large, complex systems.
  • Software Process. The efficacy with which challenges to many software engineering projects can be met and overcome is largely dependent on the underlying process by which the software is developed. Many modern software systems require innovative and agile processes to successfully develop complex, distributed, and largely autonomous software components.
Computer Software, Computer Science, Computer Engineering
PhD, Auburn University, Computer Science and Engineering, 1996
MS, Georgia Institute of Technology, Computer Science, 1989
BS, Jacksonville State University, Mathematics and Computer Science, 1988
computer engineering computer programming computer software