Contact Information
Office: 309C Herak
Address:  502 E. Boone Ave.
AD Box 26
Spokane, WA 99258
Current Courses (Spring 2019)
Past Courses
  • CPSC 121: Computer Science I (Spring '11, Fall '11, '12, '13)
  • CPSC 223: Data Structures (Fall '09, '10)
  • CPSC 224: Object-Oriented Programming (Spring '12)
  • CPSC 310: Data Mining (Fall '14, '16)
  • CPSC 324: Topics in Java Programming (Spring '10)
  • CPSC 326: Organization of Programming Languages (Fall '10, '11, Spring '13-17)
  • CPSC 330: Software Engineering (Spring '10, '11, '12)
  • CPSC 351: Theory of Computation (Fall '15)
  • CPSC 321: Database Management Systems (Fall '09, '11, '13, '17, '18)
  • CPSC 491: Senior Design I (Fall '12-18)
  • CPSC 492: Senior Design II (Spring '13-17)
  • CPSC 499: Computers and Society (Fall '16-18)
  • UNIV 099: Strategies for Success (Fall '12, Spring '13, Fall '14, Spring '14-15)
  • Publications
    A list of my publications can be found here (including preprints of most papers). Many of these are also available at DBLP.
    My research interests are broadly in the area of database technology (conceptual modeling, data discovery, data integration) and scientific data management (observation models and scientific workflows). I am currently involved in the following projects.

    • Observational Data Semantics. Scientists often rely on observational data (i.e., sets of raw or derived "observations" and "measurements") to carry out analyses. While observational data is largely stored in spreadsheets or simple relational structures, the discovery, interpretation, and integration of observational data often requires complex metadata (e.g., to capture contextual information, measurement scales, experimental methods, and so on). As part of the NSF-funded Semtools and SONet projects, I collaborate with members of NCEAS and researchers at UC Davis to develop ontology-based models for representing the semantics of observational data, approaches for semantically annotating observational data sets, and tools that leverage annotations and corresponding ontologies for improving discovery and integration of ecological data. Our goal is to develop approaches and technology that can help scientists to more easily describe, find, and reuse observational data.

    • Scientific Workflow Modeling and Design. As a contributor to the Kepler Scientific Workflow System my interests are in making scientific workflows easier to specify, re-purpose, and reuse for scientists and workflow engineers. My work in this area explores typing mechanisms for scientific workflows, methods for composing dataflow and control-flow constructs, and support for processing nested data (i.e., XML) within Kepler. This work is being carried out within the NSF sponsored Kepler/CORE,
    • Scientific Workflow Provenance. An advantage of scientific workflow systems over traditional scripting approaches is their ability to automatically record data and process dependencies introduced during a workflow run. With colleagues at UIUC, we are developing approaches to efficiently store, query, and visualize the provenance of workflow runs. Our work largely focuses on capturing and storing explicit data dependencies for general classes of workflow models, including those that work over structured (i.e., XML) data. This work has produced a new Query Language for Provenance (QLP) and corresponding storage and evaluation techniques for processing QLP queries.

    Prior to joining Gonzaga, I worked as a Project Scientist at the UC Davis Genome Center in the Data and Knowledge Systems Lab and as a Postdoctoral Researcher at the San Diego Supercomputer Center at UCSD.