Un système de contraintes d'intégrité OCL pour les bases de données spatiales : application à un système d'information pour l'épandage agricole

Magali Duboisset · HAL (Le Centre pour la Communication Scientifique Directe) · 2007

(trad auto)The use of new technologies in agriculture has developed needs related to the monitoring and optimization of agricultural practices in a multi-stakeholder context. These needs have given rise to environmental applications that manipulate data specific to the agricultural sector, often geo-referenced. It is important to ensure data quality in these types of applications and thus system consistency. Also, when designing them, a constraint language can be associated with traditional modeling languages in order to formally specify the alphanumeric and/or spatial constraints that the system must respect. In terms of spatial constraints, existing formalisms are limited to the specification of topological invariants between simple geographical objects, such as, for example, a geographical object A is adjacent to a geographical object B. However, agricultural systems require the specification of more complex constraints. On the one hand, some constraints take into account both spatial criteria and conditions on alphanumeric attributes. For example, when the value of an attribute C is greater than 10, a geographic object A is adjacent to a geographic object B. On the other hand, some constraints relate to composite geometries, i.e. geometries made of several simple shapes. This is the case when a geographical object A is adjacent to 2 parts of a composite geographical object D. The purpose of this thesis was therefore to propose a language of constraints to specify the conditions that an agricultural system must meet to be coherent. This language, combined with a modelling language used to formally specify the systems, is part of an IT project management approach that takes into account the different characteristics of the agricultural sector. To do this, we have chosen to extend the constraint language associated with UML to the OCL spatial level. OCL is a textual language and its syntax is relatively accessible to non-computer users. By integrating spatial types and topological relationship specification models, the proposed extensions make it possible to describe spatial constraints from a UML class model extended to space. The different OCL extensions integrate different models for specifying topological relationships; for relationships between simple geometries, the most common models, 9IM and CBM, are found in OCL9IM and OCLCBM languages respectively. The management of topological relationships between composite geometries is possible with these two languages. To do this, simply couple them with the use of operations on OCL's standard collections to access each component of the composite geometries. However, in order to simplify the expression of constraints on this type of objects, we have also integrated topological relationship models applicable to composite geometries in OCLTRCR, OCLADV and P-OCL languages. All these OCL extension proposals were compared from an expressivity point of view, both with each other and with respect to particularly expressive models for specifying relationships between composite regions. These languages have been implemented through the extension of a code generator, OCL2SQL. From a UML class diagram and constraints specified in OCL, this tool automatically provides the SQL code that ensures compliance with alphanumeric and spatial constraints in the database. OCL2SQL extended to spatial applications has been tested at Cemagref as part of the SIGEMO project (Information System on the Management of Organic Matter Spreading), particularly with regard to spatial constraints on spreading plots. The SIGEMO project responds to a need to monitor organic matter spreading practices in France. Thus, the work carried out during this thesis led to proposals for spatial, topological and semantic constraint languages, focusing on simple or composite geometries. These languages are integrated at different levels in the process of designing an application. They may, in future work, be integrated into software engineering workshops" / L'utilisation des nouvelles technologies dans l'agriculture a développé des besoins liés au suivi et à l'optimisation des pratiques agricoles dans un contexte multi-acteur. De ces besoins, sont nées des applications environnementales qui manipulent des données propres au domaine agricole, bien souvent géoréférencées. Il est important d'assurer la qualité des données dans ce type d'applications et par là même la cohérence du système. Aussi, lors de leur conception, un langage de contraintes peut être associé aux langages de modélisation classiques afin de spécifier formellement les contraintes alphanumériques et/ou spatiales que le système devra respecter. En matière de contraintes spatiales, les formalismes existants se limitent à la spécification d'invariants topologiques entre objets géographiques simples, comme par exemple, un objet géographique A est adjacent à un objet géographique B. Or les systèmes agricoles nécessitent la spécification de contraintes plus complexes. D'une part, certaines contraintes prennent en compte à la fois des critères spatiaux et des conditions sur des attributs alphanumériques. Par exemple, lorsque la valeur d'un attribut C est supérieur à 10, un objet géographique A est adjacent à un objet géographique B. D'autre part, certaines contraintes portent sur des géométries composites, c'est-à-dire des géométries faites de plusieurs formes simples. C'est le cas lorsqu'un objet géographique A est adjacent à 2 parties d'un objet géographique composite D. Le but de cette thèse était donc de proposer un langage de contraintes pour spécifier les conditions qu'un système agricole doit respecter pour être cohérent. Ce langage, associé à un langage de modélisation permettant de réaliser formellement la spécification des systèmes, s'intègre dans une démarche de gestion de projets informatiques prenant en compte les différentes caractéristiques du domaine agricole. Pour ce faire, nous avons choisi d'étendre au niveau spatial OCL, le langage de contraintes associé à UML. OCL est un langage textuel et sa syntaxe est relativement accessible aux utilisateurs non-informaticiens. Par l'intégration de types spatiaux et de modèles de spécification de relations topologiques, les extensions proposées permettent de décrire des contraintes spatiales à partir d'un modèle de classe UML étendu au spatial. Les différentes extensions d'OCL intègrent différents modèles de spécification de relations topologiques ; pour les relations entre géométries simples, les modèles les plus répandus, 9IM et CBM, se retrouvent respectivement dans les langages OCL9IM et OCLCBM. La gestion des relations topologiques entre géométries composites est possible avec ces deux langages. Il suffit pour cela de les coupler à l'utilisation des opérations sur les collections standards d'OCL afin d'accéder à chaque composant des géométries composites. Cependant, afin de simplifier l'expression de contraintes sur ce type d'objets, nous avons également intégré des modèles de relations topologiques applicables aux géométries composites dans les langages OCLTRCR, OCLADV et P-OCL. Toutes ces propositions d'extensions d'OCL ont été comparées d'un point de vue d'expressivité, entre elles et vis-à-vis de modèles particulièrement expressifs de spécification de relations entre régions composites. Ces langages ont été implémentés à travers l'extension d'un générateur de code, OCL2SQL. A partir d'un diagramme de classe UML et de contraintes spécifiées en OCL, cet outil fournit automatiquement le code SQL qui permet d'assurer le respect des contraintes alphanumériques et spatiales dans la base de données. OCL2SQL étendu au spatial a été expérimenté au Cemagref dans le cadre du projet SIGEMO (Système d'Information sur la Gestion des Epandages de Matières Organiques), notamment pour ce qui concerne les contraintes spatiales sur les parcelles d'épandage. Le projet SIGEMO répond à une nécessité de suivi des pratiques d'épandage de matières organiques en France. Ainsi, les travaux effectués au cours de cette thèse ont abouti sur des propositions de langages de contraintes spatiales, topologiques et sémantiques, portant sur des géométries simples ou composites. Ces langages s'intègrent à différents niveaux dans la démarche de conception d'une application. Ils pourront, dans des travaux futurs, être intégrés dans des ateliers de génie logiciel.

Read the paper · More papers on PaperTik