Scientific Annotation Middleware
Software Engineering Plan


SAM will follow an interative development model, making software available to collaborating projects and the public during the project to obtain feedback concerning requirements and to identify and resolve bugs. The layers an components of SAM will be designed and developed in the general order:

Metadata Management Services
Semantic Services
Notebook Services
Notebook Interface
Client side components will be developed in parallel with the services with which they interact. An additional task, to develop an interim/transitional 'SAM-compatible' notebook interface based on an existing DOE2000 notebook, will occur early in the project. (The primary purpose of this task is to enable users of current notebook systems to have a path to data forward compatibility with the SAM notebook interface.)

Configuration Management

The project will start with a private CVS repository maintained at PNNL. The repository will be directly accessible from ORNL using ssh port forwarding. Details for connecting:

ssh -L
set CVSROOT :pserver:@localhost:/msrc/proj/collab/cvs/cvsroot
Project name: SAM

SAM will investigate means for adding additional capabilities, such as bug tracking. One specific direction that will be pursued is investigating the possibilities for a SciDAC/National Collaboratories shared service based on software from SourceForge.

Release management

The SAM team will establish a download area on the website to allow public access to SAM software. Major releases are expected every 6-12 months (see detailed Milestones). A mailing list will be established and used to announce new releases. The releases themselves will be packaged with installation scripts. The use of automated update mechanisms will be investigated for non-web-based client and/or server components.

Development Standards

Last updated: 7/30/01