Mark P. Jones. Technical Report. Department of Computer Science & Engineering, OGI School of Science & Engineering at OHSU, January 2002.
In software projects, developers often rely on a wide variety of evidence to assure themselves that the system they are building is functioning correctly. There are many ways to generate evidence---from code reviews to testing and theorem proving---but the diversity and volume of evidence can be hard to manage, maintain, or exploit as a project evolves and meaningful levels of assurance are required.
In this paper, we describe a new kind of tool that facilitates effective use of evidence throughout a project. Such tools should allow users to capture and collate evidence with source materials; to exploit dependencies; to automate combination and reuse; and to understand, manage, and guide further development and validation efforts. Our work is presented in the context of a prototype built for the Programatica project at OGI where evidence is represented by a certificate abstraction, but the key ideas, we believe, should be more widely useful.