Brevet FR3122007A1 — publié le 20221021

Le déploiement d’une application multientreprises dans un environnement informatique partagé inclut la génération de multiples différentes instances d’un objet de gestion de contextes à partir d’un segment incorporé génétiquement d’une collection unique de code de programme, le code ayant été agencé pour restreindre un accès à une ou les deux parmi des caractéristiques d’application et des données d’application selon une relation marquée entre une entité demandeuse émettant une demande auprès d’une application correspondante, et un propriétaire de l’application correspondante. Par la suite, des demandes ciblant l’application correspondante sont traitées par le biais de la création d’une instance de l’objet de gestion de contextes selon une marque fournie avec chaque demande et la spécification de l’entité demandeuse et de l’application correspondante. Le segment incorporé génétiquement modère ensuite l’accès aux caractéristiques d’application et aux données d’application indépendamment de l’application correspondante. Figure pour l’abrégé : figure 1 Déploiement d’applications multientreprises dans un environnement informatique partagé Domaine technique de l’invention La présente invention concerne le domaine technique de l’informatique d’entreprise et plus particulièrement le déploiement d’une application d’entreprise dans un environnement informatique multiutilisateurs. Arrière-plan technique L’informatique traditionnelle inclut l’exécution d’un programme d’ordinateur dans la mémoire d’un ordinateur par un processeur de l’ordinateur. D’ordinaire, un utilisateur unique accède à un programme d’ordinateur unique correspondant à une heure quelconque ; toutefois, certains programmes d’ordinateur multiutilisateurs autorisent l’accès simultané du programme d’ordinateur et des données produites et accessibles dans celui-ci. Au sein d’une seule et même organisation, le support d’un programme d’ordinateur multiutilisateurs a du sens. À cet effet, au sein d’une seule et même organisation, le partage de données est autorisé et ainsi, chaque accès individuel au programme d’ordinateur multiutilisateurs peut être autorisé pour accéder aux mêmes données. De même, dans la mesure où différents utilisateurs au sein de la même organisation bénéficient de droits d’accès différents à des données différentes, l’accès à certaines parties des données pour différents utilisateurs peut être restreint. Les ressources informatiques requises pour supporter l’exécution d’une seule application sont généralement limitées et de ce fait gérables. Même pour une petite organisation, la maintenance d’une armoire minimale de ressources informatiques ne représente qu’un petit fardeau. Mais, pour supporter l’exécution de multiples programmes d’ordinateur de façon à accueillir un grand nombre d’utilisateurs simultanés au sein d’une organisation, un grand nombre de ressources informatiques sont requises. Comme tel, de nombreuses organisations choisissent d’externaliser l’hébergement de ressources informatique physiques vers un site géré distant. De même, dans la mesure où différents utilisateurs au sein d’une organisation peuvent être dispersés géographiquement, l’hébergement de multiples ressources informatiques dans un emplacement disposé centralement ou même dans de multiples emplacements différents peut revêtir une grande importance. Nonobstant, malgré les efficacités gagnées par le positionnement à distance de ses propres programmes d’ordinateur multiutilisateurs dans une grappe de serveurs hébergés, des services hébergés gérés peuvent être relativement onéreux --en particulier en termes de frais d’octroi de licences de logiciels et également en raison du fait que typiquement chaque application hébergée pour une organisation particulière est placée dans son propre conteneur d’exécution de sorte que l’exécution d’une instance d’application dans un conteneur ne peut pas influencer ou interagir avec une instance d’application d’exécution pour une organisation différente. Par conséquent, des tendances modernes dans l’informatique capitalisent sur la notion d’un environnement informatique multilocataires. Un environnement informatique multilocataires est un environnement informatique hébergé dans lequel une instance unique d’un programme d’ordinateur s’exécute dans une infrastructure informatique centralisée tout en restant accessible à de multiples utilisateurs différents à travers de multiples organisations différentes. En particulier, en comparaison avec une architecture multi-instances, dans un environnement multilocataires, chaque locataire est un groupe d’utilisateurs partageant un accès commun avec des privilèges spécifiques avec une instance unique du programme informatique. Chaque locataire bénéficie alors d’une part dédiée de l’instance unique du programme informatique, incluant des données, configuration, gestion d’utilisateurs, fonctionnalité individuelle de locataire et des propriétés non fonctionnelles correspondantes. Un avantage distinct de l’architecture à locataires multiples réside dans le fait que tous les abonnés, également appelés « locataires », reçoivent un accès à une version la plus récente d’une application à laquelle on accède couramment étant donné que l’actualisation de l’application pour un locataire signifie nécessairement l’actualisation de l’application pour tous les locataires. Toutefois, il y a un inconvénient moins évident mais tout aussi important d’un environnement multiutilisateurs dans le fait que tous les abonnés sont obligés d’utiliser une version identique d’une application étant donné que tous les abonnés accèdent à la même instance de la même application à n’importe quel moment donné. Mais dans de nombreux cas il peut être souhaitable de ségréguer différentes instances d’une application selon différents ensembles de participants à chaque application dans laquelle les différents ensembles partagent des informations dans un produit, bien que de manière exclusive. En effet, dans de nombreux cas un seul participant à une application peut interagir avec d’autres participants à travers de multiples ensembles différents de participants. Par conséquent, de multiples différentes instances de la même application doivent être maintenues pour les différents ensembles de participants avec un participant donné sachant a priori quelle instance d’application sélectionner pour une participation à un moment donné, affaiblissant de ce fait l’efficacité de l’architecture à locataires multiples. Des modes de réalisation de la présente invention concernent des lacunes techniques du métier par rapport à l’informatique à locataires multiples. À cet effet, des modes de réalisation de la présente invention fournissent un procédé novateur et non évident pour déployer des applications multientreprises dans un environnement informatique partagé. Des modes de réalisation de la présente invention fournissent également un dispositif informatique novateur et non évident adapté pour réaliser le procédé précédent. Enfin, des modes de réalisation de la présente invention fournissent un système de traitement de données novateur et non évident incorporant le dispositif précédent pour réaliser le procédé précédent. Dans un mode de réalisation de l’invention, un procédé de déploiement d’applications multientreprises dans un environnement informatique partagé inclut l’assemblage de différents ensembles de composants logiques dans différentes applications pour chacun des ensembles. Le procédé inclut également le fait de rendre chacune des différentes applications accessibles à travers un bus d’événements commun au sein d’un conteneur informatique unique géré par un seul processus d’environnement d’exécution. Le procédé inclut en outre l’assignation à chacune des applications, d’un propriétaire et d’un ou plusieurs partenaires, de telle sorte que le propriétaire est associé à un déploiement et une utilisation d’une application correspondante des différentes applications, et que chacun des partenaires est associé uniquement à l’utilisation de l’application correspondante des différentes applications. Notamment, l’environnement d’exécution génère ensuite de multiples différentes instances d’un objet de gestion de contextes à partir d’un segment incorporé génétiquement d’une collection unique de code de programme qui est agencée pour restreindre un accès à une ou les deux parmi des caractéristiques d’application et des données d’application selon une relation marquée entre une entité demandeuse émettant une demande auprès d’une application correspondante des différentes applications, et un propriétaire de l’application correspondante des différentes applications. Par la suite, l’environnement d’exécution traite des demandes issues d’entités demandeuses, chacune des demandes ciblant l’une des différentes applications afin d’accéder aux caractéristiques d’application et aux données d’application de l’une des différentes applications. À cet effet, l’environnement d’exécution traite une demande en créant une instance de l’objet de gestion de contextes selon une marque (du terme anglais « token » également appelé « jeton ») fournie avec la demande qui spécifie l’entité demandeuse et une application cible des applications. Le segment incorporé génétiquement de l’instance de l’objet de gestion de contextes modère ensuite l’accès aux caractéristiques d’application et aux données d’application indépendamment d’une application particulière des différentes applications ciblées par la demande. Dans un aspect du mode de réalisation, chaque demande est reçue dans une passerelle d’événement externe à l’environnement d’exécution et chaque demande est authentifiée avant qu’une marque soit créée au niveau de la passerelle d’événement de façon à être dotée de la demande à l’environnement d’exécution. Dans un autre aspect du mode de réalisation, l’instance créée de l’objet de gestion de contextes invoque un procédé correspondant à la demande. Dans encore un autre aspect du mode de réalisation, l’instance créée de l’objet de gestion de contextes est fournie à un gestionnaire d’événements spécifié par la demande. Dans un autre mode de réalisation de l’invention, un système de traitement de données est adapté pour déployer des applications multientreprises dans un environnement informatique partagé. Le système inclut une plate-forme informatique hôte ayant un ou plusieurs ordinateurs, chacun avec une mémoire et une ou des unités de traitement incluant un ou plusieurs cœurs de traitement. Le système inclut également un bus d’événements commun défini dans la mémoire et un conteneur informatique unique s’exécutant dans le conteneur par les cœurs de traitement et hébergeant différents ensembles de composants logiques dans différentes applications rendues accessibles par le biais du bus d’événements commun. De manière notable, chacune des applications a assigné à celles-ci un propriétaire et un ou plusieurs partenaires, le propriétaire étant associé à un déploiement et une utilisation d’une application correspondante des différentes applications, et chacun des partenaires étant associé uniquement à l’utilisation d’une application correspondante des différentes applications. De manière importante, le système inclut un environnement d’exécution. Spécifiquement, l’environnement d’exécution inclut des instructions de programme d’ordinateur activées tout en s’exécutant dans la mémoire d’au moins l’une des unités de traitement de la plate-forme informatique hôte pour générer de multiples différentes instances d’un objet de gestion de contextes à partir d’un segment incorporé génétiquement d’une collection unique de code de programme qui est agencée pour restreindre un accès à une ou les deux parmi des caractéristiques d’application et des données d’application selon une relation marquée entre une entité demandeuse émettant une demande auprès d’une application correspondante des différentes applications, et un propriétaire de l’application correspondante des différentes applications. Les instructions de programme d’ordinateur traitent également des demandes provenant d’entités demandeuses. Plus spécifiquement, chacune des demandes cible une application différente des applications, et demande un accès aux caractéristiques d’applications et aux données d’application de l’application ciblée. Les instructions de programme informatique traitent spécifiquement chaque demande en créant l’une des instances de l’objet de gestion de contextes selon une marque fournie avec chacune des demandes, la demande spécifiant l’entité demandeuse et une application ciblée des applications. Le segment incorporé génétiquement modère à son tour l’accès aux caractéristiques d’application et aux données d’application indépendamment d’une application particulière des différentes applications ciblées par la demande. De cette manière, les carences technologiques de l’environnement informatique multilocataires dans le support de multiples entreprises différentes utilisant une application commune sont surmontées en raison de l’aptitude à fournir des données d’application et une commande de fonctionnalité transparentes sur la base d’une gestion entraînée par contexte de demandes d’application au sein d’un conteneur informatique unique sans charger le demandeur avec la connaissance de l’environnement d’exploitation informatique sous-jacent traitant les demandes d’application. Des aspects additionnels de l’invention seront présentés en partie dans la description qui suit et en partie seront évidents d’après la description, ou pourront être appris par la pratique de l’invention. Les aspects de l’invention seront réalisés et atteints au moyen des éléments et combinaisons particulièrement pointés dans les revendications annexées. Il convient de comprendre qu’à la fois la description générale précédente et la description détaillée suivante sont uniquement exemplaires et explicatives et ne restreignent pas l’invention telle qu’elle est revendiquée. Brève description des figures Les dessins d’accompagnement, qui sont incorporés dans et constituent une partie de ce mémoire descriptif, illustrent des modes de réalisation de l’invention et, conjointement avec la description, servent à expliquer les principes de l’invention. Les modes de réalisation illustrés ici sont actuellement préférés, étant entendu, toutefois, que l’invention n’est pas limitée aux agencements et instrumentations précis montrés, dans lesquels : la est une illustration schématique reflétant différents aspects d’un processus de déploiement d’applications multientreprises dans un environnement informatique partagé ; la est un schéma de principe décrivant un système de traitement de données adapté pour réaliser l’un des aspects du processus de la ; et la est un organigramme illustrant l’un des aspects du processus illustré sur la . Procédé pour déployer des applications multientreprises dans un environnement informatique partagé, le procédé comprenant : l’assemblage de différents ensembles de composants logiques dans différentes applications (100) pour chacun des ensembles et le rendu de chacune des différentes applications (100) accessibles par le biais d’un bus d’événements commun (130) au sein d’un conteneur informatique unique (140) géré par un seul processus d’environnement d’exécution (120) ; l’assignation à chacune des applications, d’un propriétaire (110A) et d’un ou plusieurs partenaires (110B), le propriétaire (110A) étant associé à un déploiement et une utilisation d’une application correspondante des différentes applications (100), chacun des partenaires (110B) étant associé uniquement à l’utilisation de l’application correspondante des différentes applications ; l’environnement d’exécution (120) générant de multiples différentes instances d’un objet de gestion de contextes (160) à partir d’un segment incorporé génétiquement d’une collection unique de code de programme qui est agencée pour restreindre un accès à une ou les deux parmi des caractéristiques d’application et des données d’application selon une relation marquée entre une entité demandeuse émettant une demande auprès d’une application correspondante des différentes applications (100), et un propriétaire de l’application correspondante des différentes applications (100) ; et, le temps d’exécution (120) traitant des demandes (180) provenant d’entités demandeuses (190), chacune des demandes (180) ciblant l’une des différentes applications, pour accéder aux caractéristiques d’application et aux données d’application de l’une des différentes applications (100), en créant l’une des instances de l’objet de gestion de contextes (160) selon une marque (170) fournie avec chacune des demandes, la marque (170) spécifiant l’entité demandeuse et une application cible des applications (100), le segment incorporé génétiquement modérant l’accès aux caractéristiques d’application et aux données d’application indépendamment d’une application particulière des différentes applications ciblées par chacune des demandes. Procédé selon la revendication 1, dans lequel chacune des demandes (180) est reçue dans une passerelle d’événement (225) externe à l’environnement d’exécution (120) et authentifiée avant l’extraction de la marque (170) de l’une des demandes et la fourniture de la marque avec l’une des demandes à l’environnement d’exécution (120). Procédé selon la revendication 2, dans lequel l’instance créée des instances de l’objet de gestion de contextes (160) invoque un procédé correspondant à l’une des demandes. Procédé selon la revendication 2, dans lequel l’instance créée des instances de l’objet de gestion de contextes (160) invoque un gestionnaire d’événements (120) spécifié par l’une des demandes. Système de traitement de données pour déployer des applications multientreprises dans un environnement informatique partagé, le système comprenant : une plate-forme informatique hôte (200) comprenant un ou plusieurs ordinateurs (210), chacun avec une mémoire (220) et une ou plusieurs unités de traitement (230) incluant un ou plusieurs cœurs de traitement ; un bus d’événements commun (130) défini dans la mémoire ; un conteneur informatique unique (140) exécutant dans la plate-forme informatique hôte (200) par les cœurs de traitement et hébergeant différents ensembles de composants logiques dans différentes applications rendues accessibles par le biais du bus d’événements commun (130), chacune des applications ayant assigné à celle-ci un propriétaire et un ou plusieurs partenaires, le propriétaire étant associé à un déploiement et une utilisation d’une application correspondante des différentes applications, chacun des partenaires étant associé uniquement à l’utilisation de l’application correspondante des différentes applications ; et, un événement d’exécution (120) comprenant des instructions de programme d’ordinateur activées en s’exécutant dans la mémoire (220) d’au moins l’une des unités de traitement (230) de la plate-forme informatique hôte (200) pour réaliser : la génération de multiples différentes instances d’un objet de gestion de contextes -160) à partir d’un segment incorporé génétiquement d’une collection unique de code de programme qui est agencée pour restreindre un accès à l’une ou les deux parmi des caractéristiques d’application et des données d’application selon une relation marquée entre une entité demandeuse émettant une demande auprès d’une application correspondante des différentes applications, et un propriétaire de l’application correspondante des différentes applications ; et, le traitement de demandes (180) provenant d’entités demandeuses (190), chacune des requêtes ciblant l’une des différentes applications (100), pour accéder aux caractéristiques d’application et aux données d’application de l’une des différentes applications, en créant l’une des instances de l’objet de gestion de contextes (160) selon une marque (170) fournie avec chacune des demandes, la marque (170) spécifiant l’entité demandeuse (190) et une application ciblée des applications (100), le segment incorporé génétiquement modérant l’accès aux caractéristiques d’application et aux données d’application indépendamment d’une application particulière des différentes applications ciblées par chacune des demandes. Système selon la revendication 5, dans lequel chacune des demandes (180) est reçue dans une passerelle d’événement (225) externe à l’environnement d’application (120) et authentifiée avant l’extraction de la marque (170) de l’une des demandes (180) et fournissant à la marque l’une des demandes à l’environnement d’exécution (120). Système selon la revendication 6, dans lequel l’instance créée des instances de l’objet de gestion de contextes (160) invoque un procédé correspondant à l’une des demandes. Système selon la revendication 6, dans lequel l’instance créée des instances de l’objet de gestion de contextes (160) invoque un gestionnaire d’événements (120) spécifié par l’une des demandes. Dispositif informatique (250) comprenant un support de stockage lisible par ordinateur non transitoire ayant des instructions de programme stockées dans celui-ci, les instructions étant exécutables par au moins un cœur de traitement d’une unité de traitement pour amener l’unité de traitement à réaliser un procédé pour déployer des applications multientreprises dans un environnement informatique partagé, le procédé incluant : l’assemblage de différents ensembles de composants logiques dans différentes applications (100) pour chacun des ensembles et rendu de chacune des différentes applications accessibles par le biais d’un bus d’événements commun (130) au sein d’un conteneur informatique unique (140) géré par un seul processus d’environnement d’exécution (120) ; l’assignation à chacune des applications (100), d’un propriétaire (110A) et d’un ou plusieurs partenaires (110B), le propriétaire (110A) étant associé à un déploiement et à une utilisation d’une application correspondante des différentes applications, chacun des partenaires (110B) étant associé uniquement à l’utilisation de l’application correspondante des différentes applications (100) ; l’environnement d’exécution (120) générant de multiples différentes instances d’un objet de gestion de contextes à partir d’un segment incorporé génétiquement d’une collection unique de code de programme qui est agencée pour restreindre un accès à une ou les deux parmi des caractéristiques d’application et des données d’application selon une relation marquée entre une entité demandeuse émettant une demande auprès d’une application correspondante des différentes applications (100), et un propriétaire (110A) de l’application correspondante des différentes applications ; et, l’environnement d’exécution (120) traitant des demandes (180) provenant d’entités demandeuses (190), chacune des demandes (180) ciblant l’une des différentes applications, pour accéder aux caractéristiques d’application et aux données d’application de l’une des différentes applications, en créant l’une des instances de l’objet de gestion de contextes (160) selon une marque (170) fournie avec chacune des demandes, la marque (170) spécifiant l’entité demandeuse et une application cible des applications, le segment incorporé génétiquement modérant l’accès aux caractéristiques d’application et aux données d’application indépendamment d’une application particulière des différentes applications ciblées par chacune des demandes. Dispositif (250) selon la revendication 9, dans lequel chacune des demandes est reçue dans une passerelle d’événement (225) externe à l’environnement d’exécution (120) et authentifiée avant l’extraction de la marque (170) à partir de l’une des demandes et la fourniture de la marque (170) à l’une des demandes à l’environnement d’exécution (120). Dispositif (250) selon la revendication 10, dans lequel l’instance créée des instances de l’objet de gestion de contextes (160) invoque un procédé correspondant à l’une des demandes. Dispositif selon la revendication 10, dans lequel l’instance créée des instances de l’objet de gestion de contextes (160) invoque un gestionnaire d’événements (120) spécifié par l’une des demandes.