Geant4 Collaboration Agreement Proposal
DRAFT
Version 3.0,
Based on Outline of requirements, version 1.1
Authors: K. Amako, J. Apostolakis, M. Asai, P. Gumplinger, M. Maire, P. Nieminen, M.G. Pia, J.P. Wellisch.
1.1. What is Geant4
Geant4 is an
object-oriented software toolkit for the simulation of particle transport and
particle interactions with matter and fields in arbitrary geometries. The
development of the toolkit was proposed in 1994 and was approved as CERN
Detector Research and Development project RD44 involving scientists and
software specialists from
1.2 Scope of Geant4
Geant4 has been designed for the needs of modern high energy physics (HEP) experiments, though there is a substantial overlap between the needs for simulation toolkits in HEP, nuclear physics, space science and engineering, astrophysics, medical physics and other fields. The scope of applications and the current collaboration agreement of Geant4 includes HEP and these other fields.
1.3 Name of the collaboration
The official name of this collaboration is the 'Geant4 Collaboration'.
The purpose of this agreement is to provide a framework for the Geant4 Collaboration and formalize its goal to develop, maintain and support the Geant4 software.
This agreement of the signing parties formalizes the mission of the collaboration, its membership and structure, the relationship with users, the commitment of resources, the review mechanisms and the process of its renewal.
The goals of the Geant4 collaboration include the code and documentation maintenance, the scientific and technical development, research, as well as promotion and user support.
The specific responsibilities of the Geant4 collaboration are documented in the Collaboration Regulations.
Laboratories, institutes, organizations and individuals can become Members of the Collaboration.
Members contribute effort, money, deliverables and research expertise.
Application to become a new Member will be evaluated by the Steering Board in consultation with the Oversight Board (see section 5).
The
Oversight Committee represents institutes and organizations committing
resources to the Collaboration.
It has
the responsibility to ensure that resources that are agreed by each
institute/organization are available to the Collaboration.
It has
the responsibility to act as an advisory board concerning the overall operation
of Geant4 collaboration.
It has the
responsibility to organize external reviews, in consultation with the Steering
Board, to make recommendations to the Geant4 Collaboration.
It has the responsibility to act as (final)
arbiter in conflicts between or internal to the collaboration’s other bodies.
It is
composed of representatives of the institutes and organizations committing more
than the minimum threshold of resources into the Collaboration.
Those institutional Members contributing a minimum of
<3> FTEs are directly entitled to a seat in the Oversight Board.
Individual Members and Institutional Members contributing a number of FTEs
below the minimum threshold can choose to form groups for joint representation
in the Oversight Board, or to be represented collectively by a Small Groups
Representative
The
chairperson and the deputy of the Steering Board are ex-officio members of the
Oversight Committee.
The
Oversight Board appoints its chairperson and its deputy chairperson.
The
Steering Board is responsible for the scientific and technical goals of the
Geant4 Collaboration, and to manage the work required to reach these
goals. It is the forum where scientific
and technical matters (software and physics) and further developments are
discussed, planned and decided: the
users’ requirements (with their priorities) are reconciled with resources and
expertise by the SB to manage the work-plan.
The
Steering Board coordinates the Geant4 development, maintenance and user
support, including Geant4 training programs. It sets up an appropriate Working
Group structure to accomplish these tasks.
It is responsible for the decisions on software and computing
aspects, physics and validation/verification, development and maintenance
plans, promotion (documents, web, examples) and publications
It has
the additional responsibilities:
to integrate at a maximal
level the requirements from user groups in a decision process,
to elect its chairperson,
who is nominated the Spokesperson subject to the approval of the Oversight
Committee.
to decide about the
admission of new members to the Collaboration, and amend the MoU/CA, subject to
subsequent approval of the Oversight Committee,
to amend the regulations
governing the Collaboration activities.
To establish agreements
with third parties, where required.
The
Steering Board consists of a representative from each Working Group, and
relevant technical experts The Board may co-opt any person from the Geant4
collaboration as non-voting member, if it is considered necessary.
The
Board also can invite the following as non-voting members ex-officio [with
observer status]:
a representative from the
Oversight Committee,
The
number of board members should be limited to ensure effective operation. The maximum
number of members shall be part of the regulations.
It
nominates a Chairperson and a Deputy Chairperson.
The
chairperson, is also the spokesperson of the Geant4 collaboration.
The
deputy chairperson is also a deputy spokesperson of the Geant4 collaboration.
The
Chairperson and Deputy Chairperson are [observer] members of the
Oversight Board.
The
minutes of the meeting are open to all collaboration members.
The
Steering Board shall meet every two months.
The
Oversight Committee appoints an ex-officio member to the Steering Committee.
The
spokesperson and deputy spokesperson shall attend the Oversight Committee.
To be filled
To be
filled.
An effective support of Geant4 users is one of the main objectives of the Geant4 Collaboration.
The Geant4 Collaboration is sensitive to the simulation requirements coming from all Geant4 application domains, and strives to satisfy them at their best, compatible with the resources and scientific expertise available within the Collaboration. The Geant4 Collaboration recognizes the constructive cooperation of many users worldwide, who provide feedback on the validation of the Geant4 Toolkit and for its further improvement. The structures and processes described in the following sections, providing of well defined communication channels with particular emphasis the domains of user requirements and feedback from users, facilitate an effective communication flow, especially in the presence of a wide and geographically spread user community. The Geant4 Collaboration highly values the interactions with users characterized by mutual respect, in the collaborative and open spirit typical of scientific relationships.
Users may convey their requirements, feedback on support material and results of their validations directly to the Geant4 Steering Board.
All users may profit of the User Support tools provided by the Geant4 Collaboration: User Forum, User Requirements Form, Problem Report System, Training Courses and educational material.
Requirements are welcomed at all times. Requirements for simple fixes, improvements and changes will be undertaken directly.
Those requirements that need significant or scarce resources in order to be fulfilled will be scheduled by the collaboration utilizing the meetings and bodies below.
To collect user requirements from wide
variety of application domains, an Open User Requirement Forum will be
organized each year by the G4 collaboration. It is open to users from any
laboratory, institute, experiment group and organization in the world. This
forum is organized by the G4 collaboration through the Planning Committee which
is described in the next subsection. The mandate of the forum is to create
prioritized requirement list(s) and submit it to the G4 collaboration.
The development plan for each year will be
created by the Planning Committee which is organised by the Steering Board. The
Planning Committee accepts the prioritised requirements list(s) provided by the
Open User Requirement Forum and creates the development plan by taking into
account the expertise of the G4 collaboration at the stage and also requests
from the member institutes/laboratories/organizations. The committee consists
of all members from Steering Board and the G4 institution liaisons described in
section 6.4 below. The committee is called once per year by the Steering
Board.
Each Member Party of the Collaboration is responsible for the internal organization in support of its own user community. This responsibility includes:
Collecting and documenting
the requirements from the Institution or organization’s user community, with
proper prioritization;
Providing assistance to
their users, either directly or putting them in touch with other Collaborators
expert in specific problems;
Ensuring an effective
cooperation between their users and the Collaboration in Geant4 validation
projects;
Providing an efficient
channel to convey the feedback of users to the Geant4 Collaboration on topics
such as User Documentation, Training and Support.
Each Member Party appoints an Institution Representative, usually chosen among its Collaboration Members.
Joint Meetings between Institution Representatives and the Geant4 Steering Board will be organized to address Releases, Validation and other matters.
.
A Liaison may be appointed for a user community and the Geant4 Collaboration. A Liaison interacts closely with the associated users to facilitate the communication between them and the Geant4 Collaboration.
An individual experiment may also apply to the Geant4 Steering Board to be granted a specific Geant4 liaison; the satisfaction of the application is subject to the available resources among the Geant4 Collaboration
For accepted user communities with no participation in geant4 a liaison person can be nominated. In this case, the geant4 collaboration will make every effort to provide a geant4 member willing to act as contact person for this liaison officer
An annual Geant4 General User Workshop is organized by the Geant4 Collaboration, open to all Geant4 users. Other specialised Geant4 User Workshops may be organized in collaboration with specific user communities by those user communities.
The Geant4 Collaboration is responsible for the scientific programme of Geant4 Training Courses and for appointing lecturers/trainers. Hosting parties are responsible for providing the necessary logistic and technical facilities, as agreed with the Geant4 Collaboration. Geant4 Courses are open to any interested students.
Geant4 User Workshops and Training Courses are funded by
participating users or hosting user communities.
A detailed description of Geant4 User Support is available in a specific document (Geant4 User Support).
There are two types of reviews of the Geant4 Collaboration, external and internal.
The aim of the external review is to periodically make a thorough evaluation of the scientific, technical, and organizational aspects of the collaboration. The review board will be composed of recognized software or scientific experts, appointed by the Oversight Board <in consultation with the Steering Board> and chosen to represent the various application domains of Geant4.
The external reviews take place at regular intervals. The review board shall submit its findings and recommendations to the Oversight Board and the Steering Board.
Internal reviews will periodically audit the function of the Collaboration bodies and the Collaboration members' contributions.
Organizations and individuals forming the Geant4 Collaboration can commit resources in form of expertise, manpower or money to perform maintenance, user support, research and development of Geant4.
The initial commitments of member parties are listed in the Resources Annex.
Resources are measured in Contribution Units (CU). Manpower is measured converting one FTE into one CU. Money shall be converted into CUs based on the annual average salary in each funding agency as measure of one CU for the purpose of representation in the Boards defined in Article 5.
Individuals acknowledged by the Steering Board to provide mission critical expertise shall have their contribution converted into CUs.
Individual contributors and member institutions may choose to form groups for the purpose of representation in the Board(s) defined in Article 5.
The "Resources" Annex is updated annually by the Steering Board to reflect the possible increase or decrease of CUs. To facilitate this work, the Collaboration member parties undertake to inform promptly the Steering Board of any changes in their commitments..
Editor’s Note: This section is only preliminary.
Intellectual property of code, designs, documentation
etc.
Issues to be addressed by a license (to be defined)
Note: CLHEP (used by Geant4)
is under GPL. By default it appears that all applications using GPL should also
be under GPL.
(Work in progress)
The authorship and functionality of well-defined modular components in the Geant4 software system, such as physics models, shall be maintained, and the recognition and the publications shall be retained and undertaken by the authors. The distribution of such modular components adopted in the Geant4 system shall be managed by the Collaboration. The authors are expected to provide software that is readable, with documentation and support/maintenance.
Functionalities covering the majority of the scope of the toolkit and/or software system shall be credited to the Geant4 Collaboration.
NOTE(JPW): One process for arriving at a known legal state for geant4 is the following: We identify and/or create a legal body willing to assume the rights related with geant4. Then each collaboration member, institutional and personal, shall be asked to voluntarily transfer these rights to such a legal body. In addition, as addendum to the CA, a binding agreement can be made for new developments, keeping the future evolution of the situation well defined. In US American and Canadian (I believe also German, but would have to verify) copyright law, there exists the concept of a ‘small part’ of a product. Hence we would not need to collect all of the rights, to be able to license geant4 as a whole.
The agreement is tacitly renewed every <three> years, and membership is renewed by collaboration parties unless prior notification is undertaken.
The evolution of the Collaboration Agreement is the responsibility of the Steering Board, in consultation with the Oversight Board.
Editor’s Note: The issues currently covered by the Regulations are not a complete set, but a first set. Furthermore these draft regulations are at a less advanced state than the CA proposal, and even more revisions and changes are planned.
The specific responsibilities of the Geant4 collaboration include:
maintenance of the code
including testing, bug fixes and improvements
user support
physics validation and
verification,
documentation,
new code development,
research into new modeling
approaches, simulation and software engineering techniques,
collection and
documentation of users' requirements,
architectural and
technological evolution.
informing user
communities.
User support includes maintenance of a user forum, support for users’ validation activities, development and presentation of tutorials and the organization of user workshops.
Note(JPW): Do we want to
add technological transitions?
Institutes, organizations, laboratories and individuals can at any time apply to become a new member party of the Collaboration. The application is sent to the Chairman of the Steering Board, who without delay notifies the applicant experiment, institute, or laboratory of the receipt of the application, and forwards this both to the members of the Collaboration Institutes Board and the Technical and Scientific Board. The two Boards have 1 month [?] to comment on the application, whereupon based on the democratic opinion [simple majority?] of the Boards, the Chairman of the Steering Board will send the applicant either a letter of acceptance, a letter of refusal, or a consolidated response of the Boards asking for further clarifications to the application. In the latter case, following response to the requested clarifications, either a letter of acceptance or a letter of refusal will be sent by the secretary of the Steering board.
Individuals wishing to join the Collaboration are invited to indicate in their application the amount of contribution as measured in time or a deliverable.
The duration of the mandate of (deputy) chairperson is two years.
Each eligible member institute and organization shall nominate one
voting member of the Oversight Committee.
Nominations and selection of the (Deputy) Chairperson are decided
by ballots of the committee members.
Decisions are taken by the majority of the members.
It nominates an observer as a non voting member to the Steering
Board.
The minutes of meetings are open and shall be available to all
collaboration members within two weeks. The chair-person of the steering board
acts as secretary to the Oversight board.
The committee should meet twice a year. More frequent meetings can
be arranged by the chair person at his disgression.
A search committee will be utilized for
each officer election.
The is
responsible for the decisions on the following activities:
1.
software and computing
2. physics and
validation/verification
3. development
and maintenance plans
4. publicity
(documents, web, examples) and publications
It has
the responsibility:
to integrate at a maximal
level the requirements from user groups in a decision process,
to organize the Working Group
structure for the above activities,
to elect its chairperson,
who is nominated the Spokesperson subject to the approval of the Oversight
Committee.
to decide about the
admission of new members to the Collaboration,
to amend the MoU/CA,
subject to subsequent approval of the Oversight Committee,
to amend the regulations
governing the Collaboration activities.
NOTE: For most of the
above, decision mechanisms need to be specified.
The
duration of the mandate of each member is two years.
The
duration of the mandate of (deputy) Chairperson is two years.
Each
Working Group elects a representative as a member of the Steering Committee.
The chairperson and deputy chairperson are elected by the committee members.
Decision
are taken by the majority of the members.
The
observer members of the Board do not have right to vote.
[Further
detailed regulations of the following subjects are defined by the Board:
Appointment of
spokesperson(s),
Approval of the
organizational structure,
Appointment of referees
and auditors,
Approval of work-plans
and schedules,
Approval of budget(s) (if
any),
Approval of reports (like
an annual report of the working groups?),
Approval of regulations
and/or collective agreements,
Decision making
concerning objectives, technical and non-technical policies, programmes of
work, etc.
Control of committees in
the execution of their tasks, as the case may be.]
The Steering Board is composed of the Working Group Coordinators
and additional experts.
Each Working Group is responsible for nominating its coordinator;
a large Working Group may have two co-coordinators.
Questions:
What is the procedure for nomination and election of experts ?
What is the period of office of WG coordinators and experts?
Regular Joint Meetings between Institution Representatives and the Geant4 Steering Board will be organized to ensure a good communication flow. These will include meetings for Releases, to take place prior to every Geant4 public production release, to discuss the details of the goals, content and schedule of the coming release.
An effective communication flow is also ensured in the validation process, by means of agreed series of Validation Joint Meetings along the duration of validation projects. At the discretion of the Spokesman, Validation Joint Meetings may be extended to include relevant members of the User Organizations directly involved in the validation activities, as well as Geant4 experts selected by the working groups.
Joint Meetings between the Steering Board and Institution Representatives are called and chaired by the Spokesman.
Regulations:
External reviews will be organized once every [two] years. Not later than 2 months [?] after the end of the review.
The review report will be submitted in the form of a written review report.
This can be in the form of a review of a single Working Group, of a collaborating institute, or of the Collaboration bodies. The auditors will be recognized software or scientific experts. In the case of review of a Working Group, the auditors will be appointed by the Technical and Scientific Board, while in the case of review of a collaborating institute or the Collaboration bodies, the auditors will be appointed jointly by the Technical and Scientific Board and the Collaboration Institutes Board [?].
[Limit to the number of auditors?]
[Are auditors only the outsides of Collaboration?]
The frequency of internal reviews is in the discretion of Technical and Scientific Board, that can request such a review when considered appropriate; however as a minimum one internal review of the Collaboration bodies is conducted per year. Not later than 1 month [?] after the end of review, the auditors submit their findings and recommendations in the form of a review report to the Technical and Scientific Board and to the bodies, Working Group(s), or collaborating institutes under review.
Both the review report and the responses thereto will be made available to the Geant4 Collaboration.
No part of the collaboration will be under review more often than once per year.
The Steering Board will review the level of contribution from Institutional Members by the end of the term of this Agreement. The review results will be reported to the Oversight Board for an eventual discussion of the renewal of the Collaboration Agreement.
These commitments can be revised annually in consultation with the Steering Board, and notification to the Oversight Board. The change of area of contribution must be agreed by the member party with the Steering Board.
(Commitments can be deliverables and associated support and maintenance, a level of contribution for general collaboration activities, ..)