Génie logiciel et ontologies Ivan Maffezzini1 Résumé - La description en langue naturelle est l'artefact permettant de débuter un processus d'automatisation. La tâche principale de l'ingénieur du logiciel, c'est de combler le clivage entre langue naturelle et langue de la machine. Après avoir présenté quelques ontologies définies pour les processus d'automatisation, quelques pour et quelques contre l'emploi d'ontologies dans le génie logiciel sont présentées. Des indications pour dépasser cette simple opposition sont ensuite décrites. Des évaluations sur le réductionnisme dans les ontologies en ce qui concerne les possibles interactions entre humains, machines et réalité muette terminent la présentation. AbstRAct - The natural language description is the artefact at the beginning of the automation process. To fill the gap between natural language and the machine language is the software engineer's main task. After the presentation of some ontologies defined for the automatization process, we describe some pros and cons for having recourse to ontologies in software engineering. A direction to get past this simple opposition is presented. The final part presents a qualitative measure of the ontology's reductionism needed for the interaction between humans, machines and wordless reality. La quantification d'attributs qui étaient auparavant considérés comme dichotomiques est une des conséquences du progrès de la science. [...] Pour nous la dichotomie de base de chaque ensemble d'objets ce n'est pas celle entre individus et ensemble, mais celle entre objets physiques et objets conceptuels (Mario Bunge, Treatise on basic philosophy. Ontology I). [1] Ivan Maffezzini a été professeur d'informatique à l'UQAM et consultant en génie logiciel à Hydro-Québec. Il a écrit sur les thèmes les plus variés (informatique, littérature, philosophie, etc.) et a réalisé des gros projets d'automatisation. Cet article est une révision/refonte de deux articles publiés en 2003 et 2004 dans la revue Génie logiciel. [Article xx] -EM-Metascience@art Maffezzini@Kms.indd 9 12/11/2019 10:32 Le texte complet est disponible aux Éditions Matériologiques. https://materiologiques.com/fr/metascience-discours-generalscientifique/298-mario-bunge-penseur-de-la-materialite.html Mεtascience n° 1, 2019 10 [La nature est] une machine en laquelle il n'y a rien du tout à considérer que les figures et les mouvements de ses parties (René Descartes, Principes de philosophie). 1] Introduction 1.1] Captatio benevolentiae Nous faisons appel à l'indulgence des lecteurs pour qu'ils considèrent le biais que notre profession (ingénierie du logiciel) apporte à nos considérations sur l'« ontologie » que nous allons observer par le trou de la serrure de notre prison professionnelle. Il faut ajouter que depuis des années, bien des gens qui, comme nous, réfléchissent sur les mécanismes d'automatisation, se sont transformés en « ontologistes ». Même si nous n'avons pas la prétention d'ajouter quoi que ce soit de nouveau à cet immense thème, nous souhaitons que le regard que nous lançons sur « ontologies et génie logiciel » puisse déclencher quelques réflexions ayant droit de cité pas seulement dans notre contrée. Malheureusement, un danger nous guette, c'est de se sentir, pour paraphraser Musil, « grand parce que l'on est debout sur le dos d'un éléphant ». Notre éléphant, l'ontologie2, est tellement polysémique et tellement historiquement chargé qu'il est impossible de dire quoi que ce soit de sensé et de compréhensible sans donner une foule d'indications qui en limitent la portée. 1.2] Terminologie AutomAtisAtion. Nous parlons de processus d'automatisation plutôt que d'informatisation pour souligner que le résultat du processus d'informatisation est une interaction automatique entre les interfaces matérielles de l'ordinateur et ce qui reste du domaine après l'oblitération de la langue naturelle. intelligence synthétique. Nous préférons employer le syntagme « intelligence synthétique » plutôt que le syntagme « intelligence artificielle » qui tient actuellement le haut du pavé dans tous les médias. [2] On écrira toujours ici ontologie avec un o minuscule même si la suggestion de Guarino d'écrire Ontologie avec un O majuscule pour indiquer les ontologies générales (ou communes) est loin d'être inintéressante. -EM-Metascience@art Maffezzini@Kms.indd 10 12/11/2019 10:32 Ivan Maffezzini • Génie logiciel et ontologies 29 4] Conclusion teintée de philosophie On n'échappe pas à facilement à 2 400 ans de philosophie, surtout si on ne veut pas renoncer à penser. Si, comme l'affirme Saussure, le langage est un système différentiel d'opposition, et non un système référentiel, alors l'ontologie gruberienne, et la construction de machines par particularisation des modèles qui en découle (ce que l'on appelle model-driven development), sont saussuriennes. Le web sémantique, lieu privilégié d'application des ontologies gruberiennes de nos jours, est sémantique dans le sens de Saussure : « Il n'y a aucune raison d'attendre que les termes s'appliquent complètement ou même très incomplètement à des objets définis ou autres. [...] Il n'y a dans la langue ni signes, ni significations, mais des DIFFÉRENCES de signes et des DIFFÉRENCES de significations » (cité in Rastier 2003). Mais, lorsqu'on pousse l'automatisation dans ses derniers retranchements (en la faisant sortir d'un monde de simples concepts comme le web sémantique), elle redevient aristotélicienne : elle est dans le monde et elle modifie le monde sans aucune possibilité d'interprétation (de sa part). Références Bunge M. (1977), Treatise on Basic Philosophy : Ontology I, the Furniture of the World, vol. 3, Reidel. Gangemi A., Catenacci C., Ciaramita M. & Lehmann J. (2006), « Modelling Ontology Evaluation and Validation », in Y. Sure & J. Domingue (eds), The Semantic Web : Research and Applications, Springer, p. 140-154. Gómez-Pérez A., Fernández-López M. & Corcho O. (2004), Ontological Engineering : With Examples from the Areas of Knowledge Management, e-Commerce and the Semantic Web, Springer-Verlag. Gruber T. (1992), « What Is an Ontology ? », ksl.stanford.edu/kst/what-is-an-ontology.html. Guarino N. (1997), « Understanding, Building and Using Ontologies », Padova, Italie, LADSEB-CNR. Guarino N. (1998), « Formal Ontology and Information Systems », Padova, Italie, LADSEB-CNR. IEEE Standard Glossary of Software Engineering Terminology (1990), IEEE Std 610.12-1990. Knowledge Based Systems, Inc. (2019), « IDEF5 - Ontology description capture method », idef.com/idef5-ontology-description-capture-method. Mizoguchi R. & Ikeda M. (1996), « Towards Ontology Engineering », Technical Report AI-TR-96-1\I.S.I.R. Platon (1998), Cratyle, Flammarion, traduit par C. Dalimier. Rastier F. (2003), « Le silence de Saussure ou l'ontologie refusée », in S. Bouquet (dir.), Saussure, « Cahier de L'Herne », vol. 76, Éditions de l'Herne. Smith B. (2006), « Ontology », in L. Floridi (ed.), The Blackwell Guide to the Philosophy of Computing and Information, Blackwell, p. 153-166. -EM-Metascience@art Maffezzini@Kms.indd 29 12/11/2019 10:32 Mεtascience n° 1, 2019 30 Sowa J.F. (2000), Knowledge Representation : Logical, Philosophical, and Computational Foundations, Brooks/Cole. -EM-Metascience@art Maffezzini@Kms.indd 30 12/11/2019 10:32 Ivan Maffezzini • Génie logiciel et ontologies 31 -EM-Metascience@art Maffezzini@Kms.indd 31 12/11/2019 10:32 Mεtascience n° 1, 2019 32 -EM-Metascience@art Maffezzini@Kms.indd 32 12/11/2019 10: