As part of the collaboration between the Leibniz Institute of Vegetable and Ornamental Crops (IGZ) and the Brandenburg start-up Stenon GmbH (Stenon), Marcel Wieczorek IT-Services (WIT) further developed the fertilization optimization software “N-Expert“.
The result is a cloud-native and lightweight web / server application based on Java, Spring Boot and OpenAPI.
In the course of the “FarmLab” project, the IGZ is developing fertilization recommendations to optimize fertilization management on the basis of the solution provided by Stenon for direct measurement of relevant nutrients in the soil.
Three parties were involved in the “FarmLab” project:
- Leibniz Institute of Vegetable and Ornamental Crops (IGZ)
- Stenon GmbH (Stenon)
- Marcel Wieczorek IT-Services (WIT)
The project was funded by the European Regional Development Fund (ERDF).
The “FarmLab” project was initiated in March 2020 by the IGZ and Stenon. The aim of the project was to provide the algorithms known from N-Expert for determining fertilizer requirements via a web interface.
WIT was commissioned to analyze various possible solutions and to work out a concept. In April 2020, the scope of the project and the project milestones were determined as follows and WIT was then commissioned with the technical implementation:
- Definition and description of the necessary interfaces; suitable for integration in third-party systems by using the OpenAPI Specification (OAS) standard.
- Implementation of the backend component for calculating the fertilizer requirement according to the N-Expert algorithms.
- Implementation of the N fertilizer requirement determination according to N-Expert.
- Creation of a test environment (sandbox) for integration by Stenon.
- Implementation of the P, K, Mg fertilizer requirement determination according to N-Expert.
- Implementation of the N fertilizer requirement determination according to DüV.
- Implementation of the P fertilizer requirement determination according to DüV.
- Coordination and conception of a process for the provision of the executable application as well as its operation.
- Continuous provision of the executable artifacts.
In May 2020, the technical implementation of the “FarmLab” project by WIT started with an in-depth analysis of the N-Expert source code. Different approaches of code extraction, restructuring and refactoring were investigated in order to be able to reuse as large as possible components of the existing program logic.
Subsequently, the development of the application “Fertilizer Demand Service” (FDS) was initiated. FDS is a Java application based on Spring Boot, which exclusively uses open source libraries and represents the current state of the art.
The progress of the project and the software development were logged via Bitbucket (code management system) and Jira (ticket system).
To date, the FDS application consists of 659 files with a total of 71,907 lines of source code.
In terms of the API, a first draft was made available by WIT in August 2020 for alignment with Stenon.
By October 2020, the interface was refined in multiple iterations. At the same time, an executable test environment (sandbox) was provided by WIT.
Details of the OpenAPI interface definition can be viewed here.
Between November 2020 and February 2021, in addition to the N fertilization requirement determination according to N-Expert, the FDS application was extended by:
- P, K, Mg fertilization requirement determination according to N-Expert.
- N fertilization requirement determination according to DüV.
- P fertilization requirement determination according to DüV.
To date, the FDS application has been continuously updated and expanded in 129 iterations, while Stenon is pushing ahead with the integration into their software.
In March 2021, a concept for a continuous delivery (CD) process and the operation of the FDS application in the IGZ data center was aligned and worked out between the IGZ and WIT.
Therefore, WIT provides the IGZ with all executable artifacts via a build pipeline.
The IGZ operates and monitors the FDS application in their own data center. Spring Boot Actuator is used for the continuous monitoring of various metrics.
Stenon has integrated the N fertilization requirement determination according to N-Expert into their FarmLab web application via the FDS API. Users can choose between the fertilization recommendation according to DüV and N-Expert.
N-Expert calculates fertilizer recommendations based on scientific criteria and good professional practice. It is based on current information about the nutrient requirements (N, P, K, Mg) of all important types of vegetables and of many other types of plants that can be grown in the crop rotation with vegetables.