Note that the information found here is in the process of being migrated to the new SBForge wiki at

Development - Various Information


Table Of Contents:



The NetarchiveSuite system is continuously under development. The information given on this page is primarily information used in development work, including coordination between different institutions with developers.

The Communication section gives information of to communicate as a developer or contributer.

The Developer Short Cuts section lists usefull short cuts when doing development work, however it may be a good idea to get acquainted with repository, methodology and guidelines & policies before using these short cuts.

The Repository section explains where code and code related information is placed.

The Projects in pipeline section gives reference to various design discussion and assignments for tasks that may or may not become implemented at a later stage. This is mainly concerned with bigger changes.

The Current Project Information contains the current and past information about iterations, produced as part of following the development methodology as well as the current staffing of the roles used in the development methodology.

The Development Methodology section describes the processes and related roles which is basis for how the development work is done.

The Guidelines & Policies section includes references to guidelines that supports various processes and administration routines.

The Generated reports section includes references to automatically generated reports, mainly concerned with code and bugsthat supports.

How to contribute with patches to NetarchiveSuite


Description of how to contribute is given by the process description (especially the Tracker Issue Life-Cycle process which includes an Implementation process) and various coding guidelines (including unit test). If you read it and follow the suggestions therein, you will not only make it easier to get your changes to NetarchiveSuite be accepted into the main distribution, you will also likely improve the quality of your code overall.

We're always happy to receive patches, though we may choose not to apply them if the implemented features go against our purposes or the code quality is too low.

If possible, use our patch-tracker to transmit the patch to us. The Create Tracker Issue process describes how.

If sending patches by email, please follow the Create Tracker Issue process as far as possible, and please send files as attachments rather than inline, as mail readers tend to mess up important formatting.

For further information please to the Communication tab.

Developer Short Cuts


Shortcuts are for developers and will reflect the contents of this page, but it will also include links to items on other wikis that are not yet public. To link to this place use the link

Project: Assignment Descriptions | Iterations | Iteration 44 | Task List 44 | Reviews 44 | Releasetest 42 (testing for current stable release)| Releasetest 43| Releasetest 44| Bug1986Releasetest | Patch3.12.2Releasetest| Releasetest 45| Releasetest 46| Iteration Timesheet
Processes: Methodology | All processes | Process List | Overall Steering | Iteration Lifecycle | Tracker Issue Lifecycle
Roles: Staffing | All roles | Roles List | Proj. Leader | Module Owner | External SW | Adm. | QA | Documentation | Test | Task holder
Guidelines: Guidelines | Sun's guidelines | JavaDoc guidelines | Version Numbers | Java modifiers | Java Exceptions
Old Guidelines: Old UnitTests | Old Java Logging | Old Java Exceptions | Old KonfigurationsData | Old JSP | Old Db Impl Guidelines | Old JobGeneration
Code: SVN | Javadoc | Code Reviews | Crucible review tool
Code internal: Reports | CVS repository (password protected) | Source Xref/log | PMD-rapport | Findbugs-report (findbugs-help) | Checkstyle(maven)-report | Clover report/log/manual | Unittest exclusions | Notes about the move to SubVersion (in Danish)
Bugs: Inf. guide | Bugs | Patches | Feature requests
Manuals in progress: Quick Start Manual, Additional Tools Manual, System Design, Configuration Manual, Installation Manual, User Manual
Various Internal: Internal Calender



To follow the latest developments, go to the SVN repository, which contains latest updates of code and see the current list of bugs, patches and feature requests.

The guide for how to register a bug, a patch or a feature request can be found at Bug/Feature Request/Patch Information Guideline

But check first, that the bug or feature request has not been reported already: list of existing bugs, patches and feature requests

To see the latest releases go to registration and download

Projects in pipeline



Assignments have not yet been generally moved to from our internal wiki to this wiki, but new assignments will show up here until we get the rest moved. The assignments are divided by module.

For further description of the modules, please refer to Module description in System Design document.

For further descripttion of naming conventions of assignments, please refer to the Assignment Description Guidelines in section Guidelines & Policies.

Assignments for module Access

Assignments for module Archive

Assignments for module Common

There are currently no new assignments for the Common module.

Assignments for module Deploy

Assignments for module Harvester

Assignments for module Monitor

There are currently no new assignments for the Monitor module.

Prioritize assignments from Viena workshop

Priority made by the development group (SB/KB)

The following wishes might be too complex (rewrite of a large part of NAS's core functionality)

The following wish should be in cooperation with project “National Bitmagasin” as it is a complex task. Might not be a NAS task

The following wish is from BNF (not a priority from UDV SB/KB. Therefore not estimated ):

Old Assignments

These are only represented on the old wiki:

Requirement list

These only exist on the old Wiki as requirement list. There are in the process of being put into Feature Requests.

Current Project Information



Staffing of Roles

Role (Updated 25. August 2010)



Documentation Coordinator



External Software Coordinator



Internal Administrator



Project Leader



Quality Assurance Coordinator



Test Coordinator



Staffing of Module Ownership

Main Module (Updated 11. January 2011)

Module Owner




Quality Assurance Coordinator



Quality Assurance Coordinator



Quality Assurance Coordinator

Harvester GUI part



Harvester harvest part





Quality Assurance Coordinator

Other Module

Module Owner




Quality Assurance Coordinator



Quality Assurance Coordinator



Quality Assurance Coordinator

* Archive includes: arcrepository, batch, bitarchive (and checksum archive), bitpreservation, logicalpreservation, Indexserver.

Current Iteration

Please refer to Iteration 47

Current Iteration Task Overview

Please refer to Iteration 47 Task List

Current Reviews

Please refer to Iteration 47 Reviews

Current Release Test

Open area for Releasetest 47 (not open yet)

Closed area for Iteration 47 Release Test

Old Iterations (incl. Test, reviews)

Iteration 46: Ended February 28 2011 with the development release 3.15.0 of NetarchiveSuite

Iteration 45: Ended November 5 2010 with the stable release 3.14.0 of NetarchiveSuite

Iteration 44: Ended September 9 2010 with the development release 3.13.1 of NetarchiveSuite

Iteration 43: Ended June 15 2010 with the development release 3.13.0 of NetarchiveSuite

Iteration 42: Ended May 4 2010 with the release of NetarchiveSuite 3.12.0

Iteration 41: Ended February 18 2010 with the release of NetarchiveSuite 3.11.2

Iteration 40: Ended December 18 2009 with the release of NetarchiveSuite 3.11.0

Iteration 39: Ended November 16 2009 with the release of NetarchiveSuite 3.10.0

Iteration 38: Ended October 06 2009 with the release of NetarchiveSuite 3.9.2

Iteration 37: Ended August 10 2009 with the release of NetarchiveSuite 3.9.0

Iteration 36: Ended May 25 2009 with the release of NetarchiveSuite 3.8.0

For Iterations before 36, please refer to old iterations on old wiki (not open).

Development Methodology


The development methodology described here is inspired by CMMI ( It will be described in form of processes and roles.

The processes are either main processes or subprocesses covered by a main process. Each main process includes an overview and the processes and roles involved. Each subprocess includes a description, a purpose, the role responsible for the subprocess, the method used in form of activities, the time it takes place and its input and output.

Each role includes a description, the processes the role is responsible for, and the guidelines relevant for the role, any references to current work and backup staffing list.

To insert a new process or role description, please refer to the Guidelines for Writing a new Process or Role.


To get the page with all process descriptions in structured form, please refer to All Processes.


To get the page with descriptions of all our roles, please refer to All Roles page.

Guidelines & Policies


<There are still more sections than the below indicated sections which needs to be moved from the old to the new wiki>

New Process

Please refer to the Guidelines for writing a new process or role

Maintain Documentation

The documentation for the NetarchiveSuite software is maintained for both the current stable branch, and the development branch. The document Maintaining Documentation describes the steps necessary for transferring the development branch documentation to the stable branch, when making a stable release.

To produce PDFs, please refer to the Generate PDF from manual guideline.

Assignment Description Guidelines

Please refer to Assignment Writing

Release Policy

There are several things to do when we make a release. Please see the page on Release Procedures for further information.

Tracker (Bug/Feature-Request/Patch) registration

Please refer to the bug information guideline

Placement of log-files

Please refer to the Hints to Where to Find Log-files

Crucible Guidelines for sign-up

Crucible Guidelines for sign-up

Crucible Administration Guidelines

Crucible Administration Guidelines

Development (last edited 2012-03-28 07:15:39 by MikisSethSorensen)