UC Santa Cruz computer scientist wins National Science Foundation grant for research on software engineering

James Whitehead, an assistant professor of computer science at the University of California, Santa Cruz, has received a prestigious award from the National Science Foundation's Faculty Early Career Development (CAREER) Program. Whitehead will use the grant of $300,000 over five years to support his research on configuration management systems, which help teams of software developers coordinate their work on complex projects.

Configuration management systems allow each person working on a software development project to make changes and test their effects, to keep track of each version they create, and to examine the overall project to see how their work interacts with that of others. Configuration management is analogous to document management, in which a word-processing program is used to save many drafts of a report or other document and to track changes made by different people. A single software project may involve 50 to 100 people, so configuration management systems are usually more complex than document management systems.

Configuration management is essential to understanding the state of the software during its development and controlling the changes made to it by different people, Whitehead said.

"Configuration management is an area where I believe I can make a significant theoretical contribution," he said.

In the first part of the research project, Whitehead will gather information about all existing configuration management systems--the "configuration management domain" in computer science lingo. He will then develop a domain model by analyzing the existing systems to determine their common features.

Whitehead plans to extend this work to create a unified domain model for configuration management, document management, knowledge management, hypertext versioning systems, and engineering (computer-aided drafting) databases. These other domains have many similarities to configuration management, yet computer scientists working in these different areas usually do not interact. Whitehead hopes his project will help others see commonalities and encourage the exchange of ideas between different fields.

In the second part of the project, Whitehead will create a program that automatically generates configuration management systems based on the domain model he created and the specific needs of the user.

"Every software project is subtly different, but there's only a fixed number of configuration management systems," Whitehead said. "If you can auto-generate them, then you can tailor them to the project."

In addition to conducting research, each CAREER award recipient works toward specific teaching goals. Whitehead will collaborate with other UC Santa Cruz faculty to develop undergraduate courses and a master's program in software engineering. Instruction on configuration management will figure prominently in both.

Whitehead is also chair of the Web Distributed Authoring and Versioning (WebDAV) Working Group of the Internet Engineering Task Force. The WebDAV protocol is an extension of the Hypertext Transfer Protocol (HTTP) that facilitates collaborative authoring directly on an HTTP server. With this protocol, the World Wide Web becomes a writable medium rather than a read-only way to download information. Microsoft Office, Adobe GoLive, and Macromedia Dreamweaver all support the WebDAV protocol.

The CAREER Program grants are the National Science Foundation's most prestigious awards for new faculty. The CAREER Program recognizes and supports the early career development activities of faculty members who are most likely to become the academic leaders of the 21st century.


Editor's note: Reporters may contact Whitehead at (831) 459-1227 or ejw@soe.ucsc.edu.