Utilisation de bases de données orientée graphes pour l’analyse statique de code

Utilisation de bases de données orientée graphes pour l'analyse statique de code

La R&D du Groupe dans les systèmes temps réel critiques

Un des axes forts du Groupe Pacte Novation est la qualité et la sureté de programme opérationnels pour les systèmes temps réel sur lesquels nous disposons d’une forte expérience.

Dans ces systèmes les bugs sont très coûteux et la détection de fautes et de bugs de programmation est aussi extrêmement difficile.

C’est pour cela que pour développer de plus grand systèmes en toute sécurité, nous utilisons et développons toute une panoplie d’outils allant des spécifications à la vérification de programmes. Pour les très gros programmes, la détection d’erreurs statiques est un point clef : nous sommes notamment responsables du logiciel AdaControl, qui permet de vérifier au quotidien les millions de lignes des programmes de gestion en temps réel du trafic aérien européen.

Le Groupe Pacte Novation s’implique dans la R&D comprenant un plan d’action pluriannuel avec à sa tête Laurent GOUZÈNES, Directeur Scientifique du Groupe. Avec trois docteur en informatique et un boursier CIFRE, le Groupe acte pour l’innovation technologique et le progrès informatique.

Le sujet en deux mots

Notre ingénieur développement logiciel Quentin DAUPRAT effectue une thèse dans le cadre de son doctorat à l’Université de Caen Normandie, en collaboration avec le Laboratoire de recherche en sciences du numérique GREYC.

Sa thèse portant sur le sujet « Structures de données et système de requêtes optimisées » est encadrée par Novasys Ingénierie sous l’égide de notre Directeur Technique Pierre DUBOSCQ.

Par ailleurs, une partie de ses travaux abordant le langage Ada, il travaille donc en étroite collaboration avec Jean-Pierre ROSEN (Adalog) et sous la Direction Scientifique de Laurent GOUZÈNES.

Ce document traite de l’analyse statique du code. Les besoins d’analyse devenant de plus en plus complexes et les volumes de code devenant de plus en plus grands, l’évolutivité des outils d’analyse de code devient l’un des défis actuels.
Nous explorons l’utilisation de technologies récentes, comme les bases de données de graphes pour représenter le code source et les modèles pour trouver des informations dans un graphe. Nous espérons que cela réduira le temps d’analyse d’un code source et améliorera l’efficacité de l’analyse. En essayant de répondre à la même requête par rapport à AdaControl, nous avons réussi à trouver des résultats qui n’avaient pas été détectés par l’approche programmatique. Nous espérons une amélioration supplémentaire lors de futures analyses comparatives.

Nous vous proposons des solutions autour du système d’information, système expert, embarqué et édition de logiciels,  nous permettant de répondre à la plupart des exigences du marché. 

L’Intelligence Artificielle au service d’une e-Réputation écologique?

L’Intelligence Artificielle au service d’une e-Réputation écologique?

De plus en plus, l’environnement et la protection de la planète deviennent un enjeu sociétal et politique fort. Appauvrissement des ressources naturelles, pollution, perte de la biodiversité… la terre se dégrade et notre qualité de vie avec.

L’e-réputation de l'écologie : une valeur éthique indispensable

Tout d’abord, de nombreux facteurs expliquent cette dégradation : exploitation par des entreprises peu respectueuses, besoin de survie de populations locales, arrivées d’espèces invasives. En effet, les grandes entreprises, par leurs activités humaines, peuvent avoir un impact écologique fort (positif ou négatif). Celles dont l’activité aurait un impact négatif sur l’environnement se trouvent être la cible des ONGs, de la presse spécialisée et des activistes écologiques, au travers de l’écriture d’articles, de tweets, qui en l’espace de quelques lignes peuvent mettre à mal l’image de ces entreprises. 

Tout un chacun peut lire ces articles et avoir une perception de la « bonne » ou « mauvaise » réputation écologique d’une société. Mais est-ce qu’une Intelligence Artificielle pourrait avoir la même perception ?

Ainsi, rien n’existe ou n’est en partie réalisé en la matière. Si la e-Réputation est un enjeu en premier lieu pour les grands groupes, pour autant, les applications informatiques dédiées à la détection d’une mauvaise réputation, de surcroît en matière écologique, n’existent pas.

L’e-réputation : du « buzzword » à la réalité d’un enjeu

Internet a fait naître l’identité digitale de chacun et donc une prise de conscience qu’elle peut être à « charge » comme à « décharge » dans la construction d’une réputation et d’une image qui peut nous échapper. Cela a donné naissance au terme E-réputation (Chun & Davies) qui devient un « Buzzword ».

Ainsi, de nombreux grands groupes ont compris cela et ont mis en place des cellules d’expertises de gestion de de l’E-réputation, applicables à la sphère écologique, à travers le « monitoring » des publications du Web. Ainsi, il s’agit de surveiller l’ensemble des contenus mentionnant la personne, la société, la marque de produit, et estimer précisément la visibilité d’un sujet, surtout lorsque celui-ci est à « charge ». 

Par ailleurs, une célèbre chaîne de vêtements en a fait les frais en 2013. A l’époque le PDG avait déclaré que sa marque ne s’adressait pas aux personnes corpulentes. Les Tailles XL et XXL avaient été alors retirées des rayons. Quasi immédiatement sur le Web, la marque est devenue une marque pour « gens beaux » et une enquête journalistique a démontré que les vendeurs étaient choisis sur des critères physiques. Les internautes ont donc réagi en se saisissant de cette politique de recrutement discriminatoire et les mentions négatives se sont multipliées évoquant les valeurs de la marque et ses figures dirigeantes. 

La marque a été entachée entraînant une baisse de 18% de l’action et une perte nette de 6 M$ de bénéfices, avec une répercussion durable en interne. Comme quoi, dans l’écologie ou n’importe quel autre secteur, la réputation en ligne, c’est essentiel.

Comment surveiller automatiquement les indices réputationnels ?

Il existe aujourd’hui des éditeurs de plateformes permettant de réaliser des analyses quantitatives automatiques et sur-mesure comme Yext, Brand24, OBI Brand Monitor, LocalClarity, Yotpo, Djubo, Grade.us, Review Ninja, HootSuite, TalkWalker, Cision, BrandWatch, WizVille, TagBoard, Twitter Counter, Hearsay Social, BirdEye, Feefo, DialogFeed, Infegy Atlas … Mais la plupart sont des outils dont les principales fonctionnalités sont des mécanismes d’alertes d’avis et de surveillance de conversations. Or, personne ne peut maîtriser l’ensemble des conversations ou articles sur le web.

Dans le monde de l’écologie et de l’activisme environnemental, aucune des plateformes citées précédemment ne permet de détecter un risque réputationnel au regard de l’impact sur l’environnement sans analyse humaine.

Or la masse d’information est telle qu’il est quasi impossible de les analyser « à la main » et pour autant, une notation de e-réputation qu’elle soit écologique ou autre ne peut être juste que si la totalité de l’information est traitée.

C’est pourquoi l’usage de l’Intelligence Artificielle apparaît dans les projets d’automatisation de la perception d’un risque réputationnel à travers notamment des outils d’analyse de sentiments.

Analyse de sentiments des articles

Pourquoi, comment ?

L’analyse de sentiment (parfois appelée opinion mining) est la partie du text mining qui essaie de définir les opinions, sentiments et attitudes présente dans un texte ou un ensemble de texte. Développée essentiellement depuis les années 2000, elle est particulièrement utilisée en marketing pour analyser par exemple les commentaires des internautes ou les comparatifs et tests des blogueurs ou encore les réseaux sociaux. Mais elle peut également être utilisée pour sonder l’opinion publique sur un sujet, ou encore pour chercher à caractériser les relations sociales dans les forums.

Par ailleurs, l’analyse de sentiment demande bien plus de compréhension de la langue que l’analyse de texte et la classification par sujet. En effet, si les algorithmes les plus simples considèrent uniquement les statistiques de fréquence d’apparition des mots, cela se révèle en général insuffisant pour définir l’opinion dominante dans un document, surtout lorsque le contenu est court comme des messages dans un forum ou des tweets.

De ce fait, l’analyse de sentiment « basique » se focalise sur une seule dimension : le sentiment général est-il positif ou négatif ? Les techniques visant à déterminer un (ou plusieurs) sentiments généraux comme l’envie, la colère, la frustration ou la joie relèvent plus d’une forme d’adaptation des méthodes de découverte de sujet ou de méthodes de classification.

L'analyse peut s'effectuer à différents niveaux :

  • Au niveau du document : détermine l’opinion générale de l’ensemble du document. Cette analyse fonctionne bien pour des documents qui présentent un point de vue précis, mais moins pour des comparaisons car elle ne fera pas la différence entre les sujets abordés.
  • Au niveau de la phrase : détermine l’opinion générale d’une phrase (positive, négative ou neutre). Cette analyse peut donner une mesure de la « neutralité » d’un texte. Les méthodes utilisées sont celle de l’analyse de subjectivité.
  • Au niveau des aspects (aussi appelé Feature level) : au lieu de déterminer les entités à analyser en fonction de critère structuraux (phrase, paragraphe, document) ces méthodes se basent sur une analyse de corrélation entre l’opinion émise et la cible de cette opinion. Par exemple, la phrase « Le sujet du cours me passionne mais le professeur est ennuyeux. » présente deux sentiments sur l’entité « cours » : le sujet qui est perçu comme positif et le professeur, qui est perçu comme négatif. Ce niveau d’analyse permet de différencier les aspects qui sont aimés ou non par les auteurs des textes et ainsi permet plus facilement de déterminer des remédiations possibles. En revanche il est très difficile à mettre en place car extrêmement complexe, notamment la mise en relation des entités mentionnées.

Aujourd’hui des solutions d’Intelligence Artificielle existent et progressent considérablement en la matière. Pour autant, aucune IA n’est encore capable de comprendre l’ironie ou les sous-entendus !

Nous vous proposons des solutions logicielles autour des problématiques en intelligence artificielle & BRMS nous permettant de répondre à la plupart des exigences du marché. 

Critères d’éligibilité d’un BRMS

Critères d’éligibilité d’un BRMS

Aux origines du BRMS (moteur de règles)

La technologie des moteurs de règles / BRMS ne date pas d’hier. Née sous l’impulsion des américains dans les années 70 avec notamment la conception et de l’algorithme de RETE, elle a connu ses premières gloires début des années 80 sous l’appellation des systèmes experts. Le moteur de règle est une technologie ayant considérablement évolué, en traversant des années plus creuses (les années 90) avant de rebondir, au début de la bulle Internet, en solution technologique de Business Rules Management System (BRMS).

Ainsi, aujourd’hui, une vingtaine d’éditeurs postulent sur ce segment technologique, pour la plupart américains. Pour autant, il s’agit pour les clients d’apprécier la pertinence ou non de l’usage d’un BRMS pour répondre à la problématique métier qui est la leur.

Alors, comment apprécier cette pertinence ?

Le BRMS en quelques mots

Tout d’abord, il s’agit de transposer la logique métier, historiquement codée dans le patrimoine informatique des entreprises ou issue de l’expertise humaine, en règles communément appelées règles SI ALORS. Néanmoins, le SI contient les conditions qui doivent être évaluées à VRAI pour que la règle soit éligible au déclenchement. Une règle éligible s’exécute, c’est-à-dire que le moteur de règles exécute les actions contenues dans la partie ALORS de la règle. Une règle exécutée peut permettre potentiellement qu’une autre règle devienne éligible et ainsi de suite.

Ainsi, un raisonnement logique apparait par le déclenchement successif des règles éligibles.

Voici un exemple :

Par ailleurs, certains éditeurs fournissent en réalité 3 représentations possibles de la logique métier : les règles, les tables de décision (qui s’apparentent à une table de feuille Excel) et des arbres de décision.

Au final, l’objectif d’une technologie BRMS est bien d’améliorer la lisibilité de la logique métier répartie dans les applicatifs du SI et de permettre ainsi une meilleure maintenabilité de cette logique en créant une indépendance entre le contenu d’un ensemble de règles (service de règles) et la manière dont on le consomme au sein du SI.

Comment évaluer la pertinence ou non d’un BRMS ?

Malgré les avantages énoncés du BRMS, son usage n’est pas systématiquement pertinent au regard du contexte et de la problématique des entreprises qui se poseraient la question de l’utiliser.

De ce fait, il s’agit de vérifier un certain nombre de critères d’appréciation qui sont résumés ici :

La démarche de Pacte Novation est axée autour de la réalisation d’ateliers avec les différents acteurs partie prenante dans le futur projet, l’analyse et la retranscription des éléments recueillis durant ces ateliers, la rédaction de notes, et la restitution/présentation des conclusions aux instances de décision du client.

En tout état de cause, la clé du succès d’un projet BRMS est d’abord et avant tout, l’adhésion à cette technologie de toutes les parties prenantes du projet.

Nous vous proposons des solutions autour du système d’information, système expert, embarqué et édition de logiciels,  nous permettant de répondre à la plupart des exigences du marché. 

Qu’est-ce que l’ERTMS ?

Qu’est-ce que l’ERTMS ?

Dans un monde hyper connecté, le secteur des transports connaît lui aussi son lot de nouvelles technologies intelligentes. Pour survivre et rester dans la course de la performance, l’industrie des chemins de fer doit s’adapter au changement. Avez-vous entendu parler de l’ERTMS ? C’est un système Européen de gestion du trafic ferroviaire (European Rail Traffic Management System) qui s’inscrit dans une logique d’efficacité et de développement durable, mais pourquoi est-il essentiel de respecter les normes Européennes dans le domaine ferroviaire ?

Moderniser le système d’exploitation de circulation

L’ambition Européenne est d’accélérer la transformation industrielle vers le réseau du futur. Grâce à la norme ERTMS, les serveurs informatiques communiquent entre eux via un réseau de télécommunications dédié à la voie ferrée. Ce concept innovant améliore la conduite des trains à grande vitesse et augmente la fréquence des lignes. Le voyageur bénéficie ainsi d’un service de qualité et d’une information en temps réel.

Harmoniser la signalisation des chemins de fer Européens

Au-delà des frontières, le réseau national est mieux connecté au réseau ferré Européen. Le système nouvelle génération se généralise à tous les pays de l’Union Européenne et permet ainsi d’homogénéiser la circulation entre les villes et de fluidifier les échanges frontaliers. Ce système d’exploitation des infrastructures ferroviaires apporte une meilleure maîtrise du temps et de l’espace.

Sécuriser la circulation sur les rails

Le réseau digital du futur est connecté 24h/24 et permet de garantir une sécurité maximale sur les chemins de fer. La technologie ERTMS contrôle la distance de sécurité entre les machines, transmet en temps réel les consignes de conduite, et signale les incidents. Cette solution novatrice apporte réactivité et souplesse, c’est l’assistant technologique rêvé des conducteurs et aiguilleurs du rail. La normalisation dépasse son objectif avec en prime une réduction des coûts de maintenance.

Avec cette méthode agile de régulation des trains, les défis de performance et d’innovation sont relevés. Tous les feux de signalisation passent au vert : sécurité, fiabilité, et ponctualité !

Certaines peuvent être de haut niveau et abstraites, lorsqu’une personne utilise par exemple une remarque sarcastique pour transmettre une information. Pour bien saisir le langage humain, il faut comprendre non seulement les mots, mais aussi comment les concepts sont reliés pour transmettre le message souhaité.