Skip to main content

Application web EpuKarst

| Daniel Lefebvre | EpuKarst
Il s'agit d'une application que j'ai développée. Elle permet à une communauté d'utilisateurs d'encoder des données liées à la qualité des eaux souterraines et de restituer ces données sous forme de tableaux analysables.

Le logiciel EpuKarst permet à une communauté d'utilisateurs d'encoder des données liées à la qualité des eaux souterraines et de restituer ces données sous forme de tableaux analysables.  A la demande de la Commission Wallonne d’Etudes et de Protection des Sites Souterrains, Intuisix a développé le logiciel EpuKarst en 2020 dans le cadre d'une étude éponyme, qui vise à étudier les phénomènes influençant la concentration d'agents polluants dans l'eau, tels que les nitrates, les nitrites et l'ammonium.

Contexte du logiciel

Les nappes phréatiques sont des réserves d'eaux potables, contenues dans des aquifères, roches poreuses ou fissurées enfouies sous terre.  En Wallonie, ces nappes sont la source de l'eau de distribution pour les trois régions de la Belgique.  Nombre d'entre elles sont alimentés par les rivières tranversant les grottes, elles-mêmes alimentées par les eaux venant de la surface.

Des agents polluants sont majoritairement déversés dans le sol par les épandages agricoles, mais les impacts de ces déversements sont encore largement méconnus : on constate en effet des différences importantes et inexpliquées de concentration des agents polluants dans les eaux entrant dans le sol et dans celles qui sont récupérés par les captages pour la distribution.

Partant de ces constats, l'étude EpuKarst a été initiée conjointement par la Commission Wallonne d'Etudes et de Protection des Sites Souterrains (CWEPSS), coordinatrice, et ses partenaires Sanifox, l'Institut Scientifique de Service Public (ISSeP) ainsi que de nombreux spéléologues ayant une sensibilité particulière pour la recherche et la protection du milieu souterrain.

Cinq « systèmes » souterrains, situés en provinces de Namur et de Liège, sont concernés par l'étude. Ils possèdent tous :

  • des points d'entrées : infiltrations, pertes, chantoirs par lesquelles les eaux s'introduisent dans le système ;
  • des points intermédiaires : rivières, lacs, gours, stalactites dans les grottes sur le parcours des eaux du système ;
  • des points de sortie : résurgences ou exsurgences par lesquelles les eaux ressortent du système pour retrouver l'air libre.

Tous les deux mois, des bénévoles mesurent divers paramètres à des stations de référence, qui correspondent aux points d'entrées de chaque système, aux points intermédiaires, et aux points de sortie.  Les paramètres mesurés sont les concentrations de nitrates, de nitrites, d'ammonium, d'oxygène, mais aussi le potentiel hygrogène, la conductivité électrique, le potentiel d'oxydoréduction et la température qui influence ces mesures.

L'objectif est d'arriver à analyser les conditions de fluctuations des différents paramètres et à déterminer d'éventuelles corrélations entre eux, de manière à mieux préserver la qualité des ressources en eaux potables de la Wallonie.

Fonctions du logiciel

Collaboration

EpuKarst est un outil collaboratif partagé par un serveur web.  Il peut ainsi être utilisé simultanément par plusieurs utilisateurs depuis tout lieu où une connexion internet est disponible.

Rôles des utilisateurs

Chaque utilisateur dispose d'un accès personnalisé au logiciel avec des rôles choisis parmi « observateur », « contributeur » et « gestionnaire ».  En fonction de son rôle, l'utilisateur peut respectivement visualiser les données, les encoder et les valider.

Les rôles sont attribués pour chaque utilisateur pour chaque système, mais il est également possible d'attribuer des rôles universels aux système, et aux utilisateurs.  Ainsi, par exemple, un système spécifique peut être observé ou encodé par tous les utilisateurs, ou un utilisateur spécifique peut être indiqué comme gestionnaire de tous les systèmes.

Encodage des mesures

Chaque contributeur peut encoder les mesures à l’aide de deux types de formulaires, et l'on peut généralement passer d'une méthode à l'autre :

  • soit à l'aide d'un tableau à double entrée, qui permet un encodage rapide avec une valeur pour chaque combinaison de station du système et de paramètre ;
  • soit à l'aide d'un relevé propre à une station, ce dernier offrant des possibilités d'introduction de données encore plus complètes.

Une fois le formulaire d'encodage soumis, les données sont immédiatement disponibles pour les autres utilisateurs sans qu'il soit nécessaire de s'échanger des e-mails ou de recopier des informations.

Ce procédé automatique limite non seulement le risque d'erreur de recopiage, mais aussi le risque de baser l'étude sur des versions de relevés qui ne seraient pas les dernières.

Notes et pièces jointes

Pour chaque encodage, il est possible de compléter les mesures par des remarques textuelles.

Il est, de plus, possible de joindre des documents annexes comme, par exemple, des notes manuscrites scannées ou des photos.

Rectification et validation des mesures

Les utilisateurs peuvent aisément mettre à jour ou corriger les données encodées.

Enfin, les gestionnaires d'un système peuvent valider les mesures, ce qui a pour effet d'en empêcher la modification ultérieure.

Suivi métrologique des instruments

Chaque instrument de mesure peut être renseigné, avec son historique d'étalonnage et ses dates limites d'utilisation.

Sur base de ces informations, le logiciel détecte les mesures peu fiables et en avertit l'utilisateur.

Alertes de pollutions

Au moment de l'encodage, le logiciel détecte les mesures dont les valeurs dépassent les seuils normatifs fixés.  Il enregistre automatiquement ces dépassements sous forme d'alertes, lesquelles peuvent être visualisées au travers d'une liste dédiée.

Les utilisateurs peuvent, eux aussi, introduire des alertes par une action manuelle.

Les contributeurs et gestionnaires de système peuvent ajouter toute information utile ou observation complémentaire à propos de chacune des alertes.  Le cas échéant, ils peuvent marquer les alertes comme étant clôturées.

Historique et filtrage des mesures

EpuKarst rassemble l'historique de toutes les mesures, pour toutes les stations de tous les systèmes, au sein d'un affichage unique.

A l'aide de la fonction de filtrage des mesures, il est possible de concentrer l'affichage non seulement sur des systèmes, des stations et des dates particulières, mais aussi par valeurs mesurées, en sélectionnant les paramètres voulus et une plage de valeurs attendue pour chacun.

Dans l'affichage de l'historique, le logiciel marque par des symboles visuels, les mesures qui excèdent les normes ou doivent être considérées comme douteuses.

Exportation de tableaux de mesures

L'historique des mesures peut être exporté vers un document conforme à la norme OOXML, qui est donc directement exploitable par Microsoft® Excel® ou d’autres logiciels.

Publication d'informations et d'actualités

Pour partager publiquement une présentation et des informations à propos de l'étude, le logiciel intègre une fonctionnalité « CMS léger ».

Grâce à un éditeur WYSIWIG, EpuKarst permet de rédiger des pages et de les rendre accessibles tant à partir de la barre de navigation qu'à partir de la page d'accueil, ou encore grouper plusieurs articles sur une même page à la manière d’un blog.

Il est possible de préciser la période pendant laquelle les pages seront affichées, ce qui est idéal pour faire passer tout type d’actualité pendant une période limitée.

Caractéristiques techniques

Côté serveur

Le logiciel nécessite un serveur web doté du langage PHP version 7.2 ou supérieure. Il a également besoin d'un accès à une base de données PostgreSQL.

La suite Symfony a été utilisée pour le développement, ce qui a permis de mettre en place une architecture MVC très rapidement. Les mises à jour relatives à la sécurité en sont d'autant plus facilitées.

Utilisé par Epu-arst au moyen des composants Doctrine DBAL et ORM, le moteur de bases de données PostgreSQL a été choisi parce qu'il procure la possibilité d'ajouter ultérieurement des fonctionnalités GIS (cartographie) au logiciel.  D’autres moteurs de base de données sont possibles par reconfiguration relativement simple.

Côté utilisateur

Pour l'interface utilisateur, les pages sont générées à l'aide du composant Twig du côté serveur, fournissant au navigateur web de l'utilisateur les pages et les scripts en langages HTML, CSS et JavaScript.

La bibliothèque Bootstrap a été utilisée pour le style des pages, jQuery pour les interactions avec l'utilisateur, et CKEditor permettant aux utilisateurs d'introduire des textes formatés.

Dans le futur, la bibliothèque LeafletJS pourrait éventuellement être intégrée, dans le but de localiser les différents systèmes sur une carte géographique et représenter les localisations des stations au sein de chaque système.

Logiciel libre

Licence

Conformément à la volonté de la CWEPSS de réaliser des actions d'utilité publique, le logiciel EpuKarst a été placé dans le domaine public sous licence MIT.

Vous êtes ainsi libres d'utiliser le logiciel, le copier, le modifier, le fusionner, le publier, le distribuer, le vendre et l'incorporer dans une autre licence, à la condition que vous incorporiez la notice de licence et de copyright dans toutes les copies.

Communauté

Si vous menez une étude similaire à celle d'EpuKarst et avez besoin d'un logiciel similaire, je suis intéressé de soutenir votre projet.

Nous examinerons ensemble les différences entre les fonctions nécessaires pour votre projet et ce qui existe déjà dans EpuKarst, et, si nécessaire, développer une communauté d'utilisateurs et de développeurs pour donner à ce projet un bel avenir.

Codes sources

Les codes sources du logiciel sont consultables et téléchargeables sur le dépôt EpuKarst dans GitHub, où j'ai également donné quelques indications pour installer le logiciel sur votre propre serveur.

Site web de l'étude

Envie d'en savoir plus sur l'étude, ses participants, ses résultats, et de voir le logiciel en action ? Alors, je vous donne rendez-vous, dès à présent, sur le site officiel d'EpuKarst !