Project Goals

Empirical skills are playing an increasingly important role in the computing profession and our society. Despite this, computer science curricula have paid little attention to developing empirical investigative skills such as forming testable hypotheses, designing experiments, critiquing their validity, collecting data, explaining results, and drawing conclusions. This project is a collaborative effort by David Reed at Creighton University, Craig Miller at DePaul University, and Grant Braught at Dickinson College. It is supported by a National Science Foundation CCLI grant, NSF DUE-0230950.

The main goals of this project are to:

  1. Formalize a set of core empirical concepts and skills needed by today's computer science graduate.
  2. Develop and evaluate resources for integrating the presentation and development of those concepts and skills throughout the computer science curriculum.
  3. Disseminate our approach for adoption at other institutions.

After researching current practices, studying texts and course syllabi, and meeting with faculty in computer science, math, and statistics programs, a list of core empirical competencies has been proposed. A full discussion of this list is found in the SIGCSE 2004 paper entitled Core Empirical Concepts and Skills for Computer Science, which is available via the ACM Digital Library or by request from the authors. The list itself and an abbreviated discussion can be found at the "Required Skills" link above. In addition, papers related to this project can be found at the "Related Papers" link.

The process of collecting, classroom-testing, and disseminating laboratories that introduce and reinforce these empirical competencies is underway. Under the "Lab Repository" link, you will find labs and supporting materials that can be used in various courses of the computer science curriculum. The intention is that these labs be self-contained and well-documented, so that an instructor at any institution could find an appropriate lab and plug it into his or her course with minimal effort. Over the course of this project, new labs will be added to the repository as they are developed and refined. Labs developed and tested at other sites are always welcome.

The "Feedback" link provides a form for submitting ideas, comments, or suggestions concerning the project. If you have a lab or even an idea for a lab that integrates empirical skills into a computer science course, please share them with us.