Organisation of sustainable development
NEMO Consortium Agreement writes:
The purpose of this Agreement is to set up appropriate arrangements for the successful and sustainable development of the NEMO System as a well-organised, state-of-the-art ocean model code system suitable for both research and operational work.
The NEMO community includes a large variety of projects and goals including oceanic research, ocean forecasts and climate studies with a quite wide range of spatial an temporal scales.
The NEMO Consortium ensures the sustainable development of NEMO. Indeed, an institution joining the Consortium commits to dedicate a minimum of one man-year per year into the NEMO System Team, which is responsible for the development and distribution of NEMO.
The NEMO Consortium bodies are shown in figure below:
NEMO Consortium’s bodies:
NEMO System Team
A team of high-level experts in model development (natural and computer sciences).
Develop and support the NEMO platform.
The NEMO System Team (NST) is a team of highly qualified experts in all modelling sciences responsible for NEMO development and its support. Its work is focused on NEMO platform development with the following remit:
- To develop changes and improvements to NEMO in natural (ocean) and computer sciences
- To prepare for future changes by the simplification and re-design of key modules and algorithms.
- To ensure coherency of the platform and sustainability of its development
- To use sustainable development methodologies which ensure quality control and traceability
- To fix reported bugs and keep documentation (reference manual, wiki pages, code comments) up to date.
- To distribute and ensure user support the official release of the NEMO shared reference
- In coordination with the WGLs, to propose an Annual Workplan
NEMO Working Groups (NWGs)
Articulate and coordinate development objectives and plans in their area
The WGs articulate and coordinate the exploration of options for development of the NEMO Shared reference. Each WG contributes a chapter to the NDS, coordinates work to realise it, and coordinates with the NST to plan and carry out actions in the NST’s annual work-plan.
NEMO Developer’s Committee (NDC)
Maintain an up-to-date NDS and coordinate its implementation.
Maintain an up-to-date NDS : organise the NEMO Development Strategy (NDS) meetings that are held once every 5-6 years and take charge of writing the update of NEMO Development Strategy document defining strategy for the next years
Create and end the WGs required for the NDS and choose their leaders [and members][Builds the annual work plan proposal]
Annually review the of progress and plans of the NST and WGs
Examine proposals on request in order to decide if they can use the “NEMO Consortium label” : when the project includes NEMO development work in line with Development Strategy and organised within NEMO sustainable development workflow (= members of NST).
NEMO Scientific Advisory Committee (NSAC)
Purpose: Ensure NEMO remains a world-leading ocean model
Advise the NEMO Steering Committee (NSC), Developers Committee (NDC) and Science Team (NST) on:
- The priorities and opportunities for improving the current NEMO system
- The NEMO strategy and work plans
- Participation in international collaborations.
- The focus of the advice should be on a 3-5 year period.
NEMO Steering Committee
The Steering Committee is the consortium’s decision-making and arbitration body.
It must decide and agree on the strategy and the resources to ensure NEMO sustainable development.
The mid- to long-term development strategy is clearly established through a written document, regularly updated. The NEMO Steering Committee (executive group with one representative per institution of the Consortium) endorses this document.
Latest version of the NEMO Development Strategy (2018-2022)
Some areas of model development demand a best possible answer for some open scientific questions, in order to define an appropriate development action. The NEMO working groups are dealing with these aspects of the work.
A yearly work plan is elaborated each year, and approved by the NEMO Steering Committee. It identifies the development tasks and their PI within the NEMO System Team .
Experience in many modelling centres has shown that to develop model code suitable for a range of configurations requires substantially more effort than to develop code to be used in “research mode” by a single researcher or team. The development of NEMO follows a carefully defined process, which has been steadily refined over the 10 years since the NEMO consortium was initiated. Developments are supported by the NEMO System Team funded by the consortium members, whose job is to incorporate new scientific developments into the NEMO reference code and ensure that the code and its documentation are of robust quality.
The NEMO software development process consists of:
- Initial code design, reviewed by science and software experts;
- Definition of specific test cases;
- Development of code in a separate code branch, including validation and documentation by the developer;
- Run and evaluate test case(s) including the new development, write a report to demonstrate success of development;
- Full expert review of development and testing;
- The NEMO Systems Team merges all code developments (on a yearly cycle) into the main NEMO reference code.
This process has been tested and refined over a number of development cycles.
Throughout the year, collaborative work is discussed and synchronized through regular video-conferences. The developments of the year, once completed, validated, and (scientifically and technically) reviewed are merged together to build the new version of NEMO. This traditionally takes place during a dedicated week of work by the NEMO System Team who gather at one of the Consortium’s centres for the event.