This page summarizes some guidelines about the software process adopted in the Geant4 Advanced Examples Working Group. These guidelines are expected to evolve according to the software process improvement. Feedback from developers and users for the improvement of the process is appreciated.
The adoption of the software process contributes to the quality of the software and facilitates its maintenance and evolution. Example developers are encouraged to comply to the software process guidelines.
Geant4 software process
Geant4
Coding Guidelines
RUP
(Rational Unified Process)
Please contact the Working Group Coordinator and the Release Manager for the creation of a new directory in the CVS repository for the example. DO NOT CREATE A NEW DIRECTORY in CVS without prior agreement: once created, new directories in CVS cannot be removed!
Each example directory should contain a History file, where all major developments, modifications and tags should be briefly documented, and a README file with information about the reference developer and other authors, the example code and how to run it.
Each example has a reference developer associated, who is responsible for tagging the example, submitting it to system testing and performing all the activities related to its release in Geant4. The schedule in view of a Geant4 public release is communicated to the Collaboration by the Release Manager.
Geant4 Tag & Release Policy
Geant4 Tags Database
The following is the minimal set of essential deliverables required for the release of an advanced example.
Deliverable | Notes | Where |
Vision | A brief description of the scope and objectives of
the example![]() |
documents/examples/urd/example_vision.html |
User Requirements Document | Requirements from the experimental domain associated to the example | documents/examples/urd/example_urd.html |
Software Architecture Document | A description of the architecture and design of
the example![]() |
documents/examples/design/example_sad.html |
Design Model | UML diagrams (preferably generated with Rational Rose) | documents/examples/design/example.mdl |
Test Plan | A description of how the example is tested![]() |
documents/examples/test/example_test.html |
User Documentation | Contribution to the Geant4 Application Developer
Guide Web page(s) to be linked to the Geant4 Advanced Examples web site |
Please contact the Documentation Coordinator Please contact the Working Group Coordinator |
Implementation | Source code and GNUmakefile README file with basic information and instructions how to build and run the example ![]() |
geant4/examples/advanced/example |
Results | A documentation of significant results (plots, tables etc.), demonstrating the capabilities of the simulation and its correct functioning | Please contact the Working Group Coordinator |
New examples must be accompanied by all the above deliverables to be included in a Geant4 public release.
As to existing examples, the set of essential deliverables should be completed by 30 November 2005, if any are still missing.
All new examples should be subject to peer review prior to their first release. Developers of new examples are encouraged to contact the Working Group Coordinator to arrange for peer reviews sufficiently in advance with respect to the expected release date.
Peer reviews of existing examples are organized to improve the already released software.
Peer reviews cover the design, code and documentation of the example.