FR2773242A1 - METHOD FOR IDENTIFYING AND MONITORING EVOLUTIONS OF A SET OF SOFTWARE COMPONENTS - Google Patents

METHOD FOR IDENTIFYING AND MONITORING EVOLUTIONS OF A SET OF SOFTWARE COMPONENTS Download PDF

Info

Publication number
FR2773242A1
FR2773242A1 FR9716700A FR9716700A FR2773242A1 FR 2773242 A1 FR2773242 A1 FR 2773242A1 FR 9716700 A FR9716700 A FR 9716700A FR 9716700 A FR9716700 A FR 9716700A FR 2773242 A1 FR2773242 A1 FR 2773242A1
Authority
FR
France
Prior art keywords
domain
software components
version
software
index
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR9716700A
Other languages
French (fr)
Inventor
Denis Chauvalon
Bernard Cheval
Mones Del Pujol Amelie De
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bull SA
Original Assignee
Bull SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Bull SA filed Critical Bull SA
Priority to FR9716700A priority Critical patent/FR2773242A1/en
Priority to PCT/FR1998/002887 priority patent/WO1999035566A1/en
Priority to EP98963637A priority patent/EP0961969A1/en
Publication of FR2773242A1 publication Critical patent/FR2773242A1/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

The invention concerns a method for identifying and monitoring the evolution of an set of software components (4), each component (#1 to N) being marked by a name and a version identifier, and each set of software components (4) being linked to a first subset (5) comprising an identifier (50, 51) of the software set and its version. The modifications brought to the software components (#1 to N) are marked by a correction package index which is incremented when a new correction package is applied. A second subset (6) is provided comprising an identifier (60) of the software set (4) and of the correction package, and of an evolution version number (61) comprising at least the correction package index. Said second subset (6) is associated (l2) with a file (7') describing the name of the software components (#3, #5) of the correction package and their versions.

Description

PROCEDE D'IDENTIFICATION ET DE SUIVI DES EVOLUTIONS
D'UN ENSEMBLE DE COMPOSANTS LOGICIELS
La présente invention concerne un procédé d'identification et de suivi des évolutions d'un ensemble de composants logiciels.
METHOD FOR IDENTIFYING AND MONITORING EVOLUTIONS
A SET OF SOFTWARE COMPONENTS
The present invention relates to a method for identifying and monitoring changes in a set of software components.

Un produit logiciel est habituellement formé d'un ensemble de composants unitaires parfaitement identifiés par une série d'informations, telles que la date de création, estampille du type de version, etc., ce qui permet de suivre leurs évolutions. A software product is usually made up of a set of unitary components that are perfectly identified by a series of information, such as the date of creation, stamp of the type of version, etc., which makes it possible to follow their evolutions.

Cependant il n'existe généralement pas d'identification non ambiguë portant sur le produit logiciel considéré dans sa globalité et permettant de suivre l'évolution de chacun de ses composants. However, there is generally no unambiguous identification of the software product considered in its entirety and for monitoring the evolution of each of its components.

En outre, lorsqu'on s'intéresse à une solution logicielle qui est composée d'un ensemble de produits logiciels, qui plus est peuvent être hétérogènes et multifournisseurs, il n'existe aucun moyen d'identifier globalement cet ensemble, ni surtout de suivre son évolution. In addition, when one is interested in a software solution that consists of a set of software products, which moreover can be heterogeneous and multivendor, there is no way to globally identify this set, or especially to follow his evolution.

Or, la maîtrise de l'état de chaque composant unitaire d'une solution logicielle, qui consiste à s'assurer qu'il se trouve bien à un niveau donné (c'est-à-dire à une version donnée), est le seul moyen de garantir son intégrité. However, the control of the state of each unit component of a software solution, which consists in ensuring that it is at a given level (ie a given version), is the only way to guarantee its integrity.

Ce problème se pose déjà avec une certaine acuité pour les petits systèmes (micro-ordinateurs) et les systèmes moyens ("mini-ordinateurs ou ordinateurs dits "départemen taux"), ce d'autant plus que la puissance de ces systèmes augmentent régulièrement. On conçoit aisément que le problème évoqué se pose avec encore plus d'acuité pour les très gros systèmes ou "mainframe", selon la terminologie anglo-saxonne. This problem already arises with some acuteness for the small systems (microcomputers) and the average systems ("minicomputers or computers said" departemen rate "), all the more that the power of these systems increase regularly. It is easy to understand that the problem raised is even more acute for very large systems or "mainframe", according to the English terminology.

Aussi, le procédé de l'invention concerne plus particulièrement les systèmes de ce type et on va en rappeler brièvement les caractéristiques principales. Also, the method of the invention relates more particularly to systems of this type and will briefly recall the main features.

Ces systèmes, très complexes, intègrent de très nombreux sous-systèmes, tant matériels que logiciels qui coopèrent entre eux. I1 n'est pas rare que des produits logiciels constituants de ces systèmes, comportent des centaines de milliers, voire des millions de lignes de code. These systems, very complex, integrate many subsystems, both hardware and software that cooperate with each other. It is not uncommon for software products constituting these systems to have hundreds of thousands or even millions of lines of code.

Dans ce contexte, un des problèmes les plus difficiles à résoudre est d'obtenir la cohérence et la compatibilité entre les différents composants, notamment lorsqu'vils doivent être mis à jour (passage à des versions plus récentes, ajout de modules ou de fonctions, etc.).  In this context, one of the most difficult problems to solve is to obtain coherence and compatibility between the various components, especially when they need to be updated (change to newer versions, add modules or functions, etc.).

En effet, outre la complexité intrinsèque rappelée, on doit également tenir compte du fait que les différents produits composant le système ont des provenances disparates, que ce soit en interne (même si des règles de développement communes sont en vigueur) ou en externe (produits disponibles sur le marché). Indeed, in addition to the intrinsic complexity recalled, it must also be taken into account that the different products making up the system have disparate origins, whether internally (even if common development rules are in force) or externally (products available on the market).

Dans l'état de la technique, il existe deux types principaux d'architectures. In the state of the art, there are two main types of architectures.

Une première architecture appartient au type dit "propriétaire". Sous ce vocable, on désigne des systèmes dont l'architecture est conçue par le constructeur de matériel informatique. A first architecture belongs to the type called "owner". Under this term, we designate systems whose architecture is designed by the hardware manufacturer.

L'architecture se caractérise essentiellement par une intégration poussée et se présente sous la forme d'un système monolithique. The architecture is essentially characterized by a strong integration and is in the form of a monolithic system.

Dans ce système, tous les composants de l'ensemble sont pris en compte lors de l'installation initiale et lors des mises à jour ultérieures (changement de version du système). Dans ce type d'environnement, la cohérence du système est obtenue par la validation globale des interfaces entre tous les composants. Pour l'utilisateur, ces dispositions garantissent une grande robustesse du système indépendamment de ses évolutions. En outre, elles permettent un suivi simplifié des versions successives du système. In this system, all components of the set are taken into account during the initial installation and during subsequent updates (system version change). In this type of environment, the coherence of the system is obtained by the global validation of the interfaces between all the components. For the user, these provisions guarantee a great robustness of the system independently of its evolutions. In addition, they allow simplified monitoring of successive versions of the system.

Enfin, elles assurent une disponibilité maximale et une grande sécurité de fonctionnement, puisque les risques de dysfonctionnement sont réduits au minimum.Finally, they ensure maximum availability and high operational safety, since the risks of malfunction are reduced to a minimum.

Cependant, il existe en contrepartie des contraintes et des inconvénients sérieux. However, there are in return serious constraints and disadvantages.

Ceux-ci trouvent leur origine dans le fait que les systèmes sont monolithiques. Quel que soit le composant à changer et/ou la fonction à ajouter, il est nécessaire de faire évoluer tout le système. La mise à jour ne peut être que globale. These originate in the fact that the systems are monolithic. Whatever the component to be changed and / or the function to be added, it is necessary to change the whole system. The update can only be global.

Enfin, la mise à jour entraîne une indisponibilité importante du système de traitement de données, couramment plusieurs jours pour de très gros systèmes. Finally, the update results in a significant unavailability of the data processing system, usually several days for very large systems.

Il s'ensuit que ce type d'architecture a relativement peu de souplesse et présente des possibilités d'évolution limitées. It follows that this type of architecture has relatively little flexibility and presents limited possibilities of evolution.

Une seconde architecture appartient au type dit "ouvert". Sous ce vocable, on désigne des systèmes dont l'architecture n'est pas définie par un seul constructeur. A second architecture belongs to the so-called "open" type. Under this term, we designate systems whose architecture is not defined by a single manufacturer.

Ces systèmes sont apparus, notamment, avec l'émergence des systèmes d'exploitation du type "UNIX" (marque déposée) ou similaires, par exemple "AIX" (marque déposée).These systems have appeared, in particular, with the emergence of operating systems of the "UNIX" (registered trademark) or similar type, for example "AIX" (registered trademark).

I1 est clair que ce type d'architecture est très attractif, car il permet de faire appel à des logiciels hétérogènes, c'est-à-dire d'origines diverses1 coexistant sur une même machine.  It is clear that this type of architecture is very attractive because it allows to use heterogeneous software, that is to say, of different origins coexisting on the same machine.

Pour ce type d'architecture, l'installation et/ou la mise à jour d'un logiciel ne concernent que le produit luimême, et non le système dans sa globalité. For this type of architecture, the installation and / or update of a software concern only the product itself, and not the system as a whole.

Puisque des composants de base peuvent être installés ou mis à jour à tout moment, une architecture "ouverte" offre donc une très grande souplesse et des facilités d'évolution importantes, du moins en théorie. Since basic components can be installed or updated at any time, an "open" architecture therefore offers great flexibility and ease of evolution, at least in theory.

En effet, ce type d'architecture n'est pas non plus exempt d'inconvénients. En particulier, il n'offre aucune garantie de bon fonctionnement avec les autres composants logiciels : possibilités d'incompatibilité diverses, etc. Indeed, this type of architecture is not free of disadvantages. In particular, it offers no guarantee of correct operation with the other software components: various incompatibility possibilities, etc.

Or, malgré les inconvénients qui lui sont inhérents, un système à architecture ouverte reste très séduisant pour les utilisateurs. However, despite the disadvantages inherent in it, an open architecture system remains very attractive to users.

En effet, il permet de satisfaire, tout ou partie, des besoins des utilisateurs de systèmes informatiques qui se font actuellement sentir, parmi lesquels
- autonomie, c'est-à-dire la possibilité de faire évoluer un ou plusieurs produits du système, indépendamment du reste du système
- parallélisme, c'est-à-dire la possibilité de faire tourner plusieurs versions du même produit simultanément
- compatibilité, c'est-à-dire pouvoir compter sur une garantie de compatibilité ascendante des produits et des interfaces entre produits
- mise à jour pendant l'exploitation courante du système, c'est-à-dire pouvoir changer de version d'un produit sans arrêt de l'exploitation ou, pour le moins, avec un arrêt minimum
- retour en arrière, c'est-à-dire la possibilité de revenir à une version antérieure d'un produit en cas de problème, sans arrêt de l'exploitation
- maîtrise des évolutions, c'est-à-dire la possibilité de rester maître du processus d'évolution par la mise en oeuvre de procédures automatisées et simplifiées
- et rapidité des évolutions et de la maintenance, c'est-à-dire pouvoir compter sur un délai minimum entre une demande d'évolution ou de correction, et son installation effective sur site.
Indeed, it makes it possible to satisfy all or part of the needs of users of computer systems that are currently being felt, among which
- autonomy, that is to say the possibility of changing one or more products of the system, independently of the rest of the system
- parallelism, that is to say the possibility of running several versions of the same product simultaneously
- compatibility, that is to say, to be able to count on a guarantee of ascending compatibility of products and interfaces between products
- update during the current operation of the system, that is to say, be able to change version of a product without stopping the operation or, at the very least, with a minimum stop
- backtracking, that is to say the possibility of returning to an earlier version of a product in case of a problem, without stopping the operation
- control of evolutions, that is to say the possibility of remaining in control of the evolution process by the implementation of automated and simplified procedures
- and rapid evolutions and maintenance, that is to say, to be able to count on a minimum delay between a request for evolution or correction, and its actual installation on site.

Pour pallier les inconvénients des deux types d'architectures précités, tout en conservant les avantages de chacun, la Demanderesse a proposé, dans une demande de brevet français N" 97 08332, déposée le 2 juillet 1997 et intitulée "Architecture de système de traitement de l'information", une solution visant à répondre pleinement aux besoins des utilisateurs qui viennent d'être rappelés. To overcome the disadvantages of the two types of architectures mentioned above, while retaining the advantages of each, the Applicant has proposed, in a French patent application No. 97 08332, filed on July 2, 1997, entitled "Architecture of the treatment system of information ", a solution to fully meet the needs of users who have just been recalled.

Pour ce faire, le système de traitement de l'information présente une architecture en domaines. To do this, the information processing system has an architecture in domains.

Un domaine est défini comme regroupant un ensemble de fonctionnalités offertes par des composants logiciels du système. Il a des caractéristiques propres et évolue de façon indépendante. Le système est alors composé d'un ensemble de domaines ayant un minimum d'interdépendances, ce qui garantit la cohérence globale. A domain is defined as a set of features offered by system software components. It has its own characteristics and evolves independently. The system is then composed of a set of domains with a minimum of interdependencies, which guarantees overall consistency.

En d'autres termes, la souplesse d'installation et la mise à jour sont introduites à un niveau macroscopique qui reste maîtrisable, c1 est-à-dire le domaine au sein duquel la cohérence reste assurée. In other words, the installation flexibility and the update are introduced at a macroscopic level which remains controllable, that is to say the domain in which the coherence remains ensured.

Chaque domaine, quel qu'il soit, est "vu" de façon identique par l'utilisateur, grâce notamment à des attributs qui lui sont affectés et un descripteur. Each domain, whatever it may be, is "seen" identically by the user, thanks in particular to the attributes assigned to it and a descriptor.

La figure 1 annexée à la présente description illustre schématiquement une telle architecture dite en '1domaines".  Figure 1 attached to this description schematically illustrates such architecture called "domains".

Le système 1 comprend une plate-forme matérielle 10. The system 1 comprises a hardware platform 10.

Selon une caractéristique importante de la demande de brevet précitée, l'ensemble des logiciels et progiciels est scindé en domaines, 11 à 13. De façon plus particulière, il existe un ensemble de domaines, D1, D2 ..., Dj, ... ,Dn, regroupés sous la référence générale 12, et deux domaines spécifiques, 11 et 13. Ces deux derniers domaines sont, respectivement, le domaine 11 fournissant le système d'exploitation (ou "OS") et les logiciels de base associés du système, et le domaine 13 fournissant le moniteur d'exploitation du système 1. Le système 1 comprend donc au minimum ces deux domaines, 11 et 13, en sus de la plate-forme matérielle 10.According to an important feature of the aforementioned patent application, all the software and firmware is divided into domains, 11 to 13. More particularly, there is a set of domains, D1, D2 ..., Dj, .. ., Dn, regrouped under the general reference 12, and two specific domains, 11 and 13. The latter two domains are, respectively, the domain 11 providing the operating system (or "OS") and the associated basic software of the system, and the domain 13 providing the operating monitor system 1. The system 1 therefore comprises at least these two areas, 11 and 13, in addition to the hardware platform 10.

C'est la version du domaine 13, moniteur d'exploitation du système, qui identifie complètement l'ensemble du système 1 et de ses composants de base, c'est-à-dire les différents domaines et les fonctionnalités qu'ils offrent.This is the version of Domain 13, the system's operating monitor, which fully identifies the entire system 1 and its basic components, ie the different domains and the functionalities they offer.

Les indices j et n repérant les domaines sont purement arbitraires, j étant un indice intermédiaire et n le nombre maximal de domaines (non compris les domaines spécifiques il et 13), du moins dans un état de configuration donné du système. The indices j and n identifying the domains are purely arbitrary, j being an intermediate index and n being the maximum number of domains (not including the specific domains il and 13), at least in a given configuration state of the system.

Les autres domaines, 12, sont optionnels et sont sélectionnés par l'utilisateur en fonction de ses besoins précis et de l'application considérée. On peut appeler ces domaines "domaines banalisés", en ce sens qu'ils sont "vus" de façon semblable par le système, même si leur contenu est différent. Le système 1 est donc entièrement modulaire au niveau des domaines. The other domains, 12, are optional and are selected by the user according to his specific needs and the application in question. These domains may be called "unmarked domains" in the sense that they are similarly "seen" by the system, even if their content is different. System 1 is therefore fully modular at the domain level.

Pour fixer les idées, les domaines suivants peuvent être implémentés dans le système : fonctions d'administration du système, fonctions de traitement par lots, fonctions de gestion de bases de données, fonction de sécurité, fonctions de gestion des processus transactionnels et fonctions dinteropérabilité.  For the sake of clarity, the following areas can be implemented in the system: system administration functions, batch functions, database management functions, security function, transactional process management functions, and interoperability functions.

Un système déterminé 1, répondant aux besoins de l'utilisateur, est installé dans un état donné. En d'autres termes, la configuration et les versions des domaines sont précisément définies. A determined system 1, meeting the needs of the user, is installed in a given state. In other words, the configuration and domain versions are precisely defined.

Cette installation peut être obtenue de deux façons
- Il s'agit tout d'abord de l'installation initiale proprement dite, que l'on peut appeler "clés en mains", c'est-à-dire d'une pré-configuration réalisée en usine.
This installation can be obtained in two ways
- This is first of all the initial installation itself, which can be called "turnkey", that is to say, a pre-configuration performed in the factory.

- Il peut s'agir aussi d'une mise à jour incrémentale de la machine sur site d'exploitation. Les mises à jour concernent alors un ou plusieurs domaines, selon les besoins. Mais il n'est jamais nécessaire, contrairement aux systèmes de type "propriétaire" de l'art connu, de modifier tout le système 1. - It can also be an incremental update of the machine on the operating site. The updates then relate to one or more domains, as needed. But it is never necessary, unlike "proprietary" type systems of the prior art, to modify the entire system 1.

Il existe en réalité deux types principaux de mise à jour
- La mise à jour proprement dite (ou "update" selon la terminologie anglo-saxonne) : un domaine donné, Dj, ayant fait l'objet d'une installation initiale, il s'agit d'en installer une version plus récente pour y incorporer, soit des nouvelles fonctionnalités, soit des corrections. Cette opération entraîne notamment le changement de la version du domaine.
There are actually two main types of update
- The actual update (or "update" according to the English terminology): a given domain, Dj, having been the subject of an initial installation, it is a matter of installing a newer version for incorporate either new features or corrections. This operation involves changing the version of the domain.

- Ajout (ou "add-on" selon la terminologie anglosaxonne) : il s'agit de l'ajout pur et simple d'un domaine particulier, par exemple Dn, qui n'avait pas été installé initialement. - Added (or "add-on" according to the English terminology): it is the pure and simple addition of a particular domain, for example Dn, which had not been initially installed.

Il doit être clair également que un ou plusieurs domaines peu (ven) t être supprimé(s). It must also be clear that one or more domains can be deleted.

Tous les domaines, 11 à 13, coopèrent avec la plateforme matérielle 10, directement ou via le domaine de base ou système 11. De même, tous les domaines "banalisés" 12 coopèrent avec les domaines spécifiques, 11 et 13. Des liens verticaux (sur la figure 1) illustrent ce mode de fonctionnement.
il est avantageux que les domaines 12 présentent la plus grande indépendance les uns vis-à-vis des autres. En d'autres termes, il est important que les interactions entre ces domaines soient minimisées. Généralement, il existe cependant des relations entre certains des domaines D1 à Dn.
All domains, 11 to 13, cooperate with the hardware platform 10, directly or via the base domain or system 11. Similarly, all the "unmarked" domains 12 cooperate with the specific domains, 11 and 13. Vertical links ( in Figure 1) illustrate this mode of operation.
it is advantageous for the domains 12 to have the greatest independence from one another. In other words, it is important that the interactions between these domains be minimized. Generally, however, there are relationships between some of the domains D1 to Dn.

Ces relations ont été figurées par des liens horizontaux (sur la figure 1).These relationships have been represented by horizontal links (in Figure 1).

Bien que le nombre de domaines ne soit pas, a priori, limité, dans la pratique, le nombre raisonnable de domaines est préférentiellement inférieur à dix et, en tout cas, devrait se situer dans la gamme de dix à vingt au maximum. Although the number of domains is not, a priori, limited, in practice, the reasonable number of domains is preferably less than ten and, in any case, should be in the range of ten to twenty at most.

Dans le cas contraire, la complexité augmente de façon très importante : fonction en x(x-1)/2, avec x nombre total de domaines. Les avantages apportés par l'architecture selon l'invention s'en trouvent alors largement amoindris. In the opposite case, the complexity increases very importantly: function in x (x-1) / 2, with x total number of domains. The advantages provided by the architecture according to the invention are then greatly reduced.

En résumé, l'architecture en domaines qui vient d'être rappelée permet de cumuler les avantages des architectures de type "propriétaire" et de type "ouvert" robustesse, disponibilité, sécurité, souplesse et évolutivité. In summary, the domain architecture that has just been recalled allows to combine the advantages of "owner" and "open" architectures robustness, availability, security, flexibility and scalability.

Elle présente donc de nombreux avantages, mais il subsiste cependant un inconvénient qui va être explicité ciaprès. It therefore has many advantages, but there remains however a drawback which will be explained below.

Comme il a été précédemment indiqué, les architectures selon l'art connu ne permettent, pour la plupart, que la seule identification de chaque composant unitaire, ce qui rend très difficile de suivre son évolution et de connaître son état par rapport à une référence dûment qualifiée.  As previously indicated, the architectures according to the known art allow, for the most part, only the identification of each unitary component, which makes it very difficult to follow its evolution and to know its state with respect to a duly referred reference. qualified.

Par contre, l'architecture en domaines permet de bien caractériser l'état initial d'un domaine, c'est-à-dire d'un ensemble logiciel comprenant plusieurs composants, mais ne permet pas l'identification et le suivi des évolutions de cet ensemble logiciel. On the other hand, the architecture in domains makes it possible to characterize well the initial state of a domain, that is to say of a software set comprising several components, but does not allow the identification and the follow-up of the evolutions of this software package.

En cela, malgré ses avantages certains, l'architecture en domaines laisse donc subsister un inconvénient commun aux autres architectures. In this respect, despite its certain advantages, domain architecture therefore leaves a disadvantage common to other architectures.

L'invention vise à pallier les inconvénients des procédés de l'art connu. The aim of the invention is to overcome the disadvantages of the methods of the prior art.

Elle se fixe pour buts
- d'identifier l'état d'un ensemble de produits logiciels
- de vérifier la cohérence de cet ensemble par rapport à une référence
- et de suivre l'évolution de cet ensemble.
She sets for goals
- to identify the state of a set of software products
to check the coherence of this set with respect to a reference
- and to follow the evolution of this set.

Pour ce faire, le procédé selon l'invention consiste à prévoir une structure autorisant la gestion et le suivi de l'évolution d'un ensemble logiciel cohérent. To do this, the method according to the invention consists in providing a structure allowing the management and monitoring of the evolution of a coherent software package.

Cette structure comprend un composant unitaire consistant en un enregistrement lié à l'ensemble logiciel précité et parfaitement identifiable par le système, dont la configuration sera détaillée ci-après. On rattache notamment à ce composant un ensemble de fichiers autorisant le suivi des évolutions et un fichier de référence contenant les identifications unitaires de chaque composant modifié. This structure comprises a unitary component consisting of a record related to the aforementioned software package and perfectly identifiable by the system, whose configuration will be detailed below. In particular, this component is linked to a set of files allowing the tracking of evolutions and a reference file containing the unitary identifications of each modified component.

Bien que le procédé selon l'invention s'applique de façon préférentielle à une architecture en domaines telle qu'elle vient hêtre rappelée, il ne saurait être limité à ce seul type d'architecture.  Although the method according to the invention applies preferentially to an architecture in domains as it comes beech remembered, it can not be limited to this type of architecture.

Cependant, pour fixer les idées, le procédé de l'invention sera décrit ci-après dans le cadre de cette application préférée, sauf mention contraire. However, to fix the ideas, the method of the invention will be described below in the context of this preferred application, unless otherwise indicated.

L'invention a donc pour objet un procédé d'identification et de suivi des évolutions d'un ensemble de composants logiciels déterminé dans un système de traitement de l'information, chaque composant étant repéré par un nom et un identifiant de version, et chaque ensemble de composants logiciels étant lié à un premier sous-ensemble comprenant un identifiant dudit ensemble logiciel et de sa version, caractérisé en ce que les modifications apportées à tout ou partie desdits composants d'un ensemble de composants logiciels déterminé sont repérées par un indice dit de lot de corrections, en ce que l'ensemble de composants logiciels déterminé est associé à un second sousensemble comprenant un identifiant dudit ensemble de composants logiciel déterminé et dudit lot de corrections et d'un identifiant de version d'évolution, cet identifiant de version d'évolution comprenant au moins ledit indice de lot de correction, et en ce que ledit second sous-ensemble est lié à au moins une première suite d'enregistrements décrivant les noms des composants dudit lot de corrections et leurs versions. The subject of the invention is therefore a method for identifying and monitoring changes in a set of software components determined in an information processing system, each component being identified by a name and a version identifier, and each set of software components being linked to a first subset comprising an identifier of said software set and its version, characterized in that the modifications made to all or part of said components of a set of determined software components are identified by an index called a set of corrections, in that the determined set of software components is associated with a second subset comprising an identifier of said determined set of software components and said set of corrections and an evolution version identifier, this version identifier of evolution comprising at least said correction batch index, and that said second subset is linked to at least a first sequence of records describing the names of the components of said batch of corrections and their versions.

L'invention sera mieux comprise et d'autres caractéristiques et avantages apparaîtront à la lecture de la description qui suit en référence aux figures annexées, parmi lesquelles
- la figure 1 illustre schématiquement une architecture de système de traitement de l'information en domaines
- la figure 2 illustre schématiquement la structure d'un domaine, élément constitutif de base de l'architecture de la figure 1
- la figure 3 illustre un exemple d'organisation hiérarchique des domaines
- la figure 4 illustre un domaine particulier et ses relations avec les autres domaines du système
- les figures 5a à 5c illustre schématiquement le procédé conforme à l'invention.
The invention will be better understood and other features and advantages will appear on reading the following description with reference to the appended figures, among which:
FIG. 1 schematically illustrates an architecture of information processing system in domains
FIG. 2 schematically illustrates the structure of a domain, a basic constituent element of the architecture of FIG. 1
- Figure 3 illustrates an example of hierarchical organization of domains
- Figure 4 illustrates a particular area and its relationship to other areas of the system
FIGS. 5a to 5c schematically illustrate the method according to the invention.

Le procédé selon l'invention va être décrit, comme il a été indiqué dans le cadre de l'application préférée de l'invention, c'est-à-dire dans le cadre d'un système de traitement de l'information à architecture en domaines. The method according to the invention will be described, as indicated in the context of the preferred application of the invention, that is to say in the context of an architectural information processing system. in domains.

Aussi, il apparaît tout d'abord utile de décrire, de façon plus détaillée, par référence à la figure 2, une unité élémentaire que constitue un domaine, Dj, d'indice arbitraire j. Also, it appears first of all useful to describe, in greater detail, with reference to FIG. 2, an elementary unit that constitutes a domain, Dj, of arbitrary index j.

On peut définir un domaine Dj comme étant une unité indépendante d'intégration, d'installation et de mise à jour. Elle comprend un ou plusieurs logiciels ou progiciels de provenances diverses : interne ou externe, que l'on appellera produits. Par "interne", on entend des applications de type "propriétaire". Par "externe", on entend des applications disponibles sur le marché. A Dj domain can be defined as an independent integration, installation, and update unit. It includes one or more software or packages of various origins: internal or external, which will be called products. By "internal" is meant "owner" type applications. By "external" is meant applications available on the market.

De façon plus précise, un domaine comprend deux parties principales. More specifically, a domain comprises two main parts.

Une première partie 3 est constituée des différents produits offrant des fonctionnalités propres à un domaine, repérées 30 à 32. A titre d'exemple, un domaine de traitement par lot offrira au moins les fonctions suivantes : gestions des impressions et des sauvegardes. A first part 3 consists of the various products offering domain-specific features, labeled 30 to 32. For example, a batch processing domain will offer at least the following functions: print management and backups.

La seconde partie 2 constitue une interface particulière du domaine Dj, que l'on peut appeler "descripteur qui donne accès à des données décrivant le domaine et ses propriétés. The second part 2 constitutes a particular interface of the domain Dj, which can be called a descriptor which gives access to data describing the domain and its properties.

Les fonctionnalités fournies par les domaines Dj sont supportées par des produits qui se caractérisent, entre autres, par la manière dont ils sont intégrés dans le système 1, par la façon dont ils s'installent et s'exécutent et par les autres produits (c'est-à-dire les autres domaines) dont ils dépendent éventuellement. The functionalities provided by the Dj domains are supported by products that are characterized, among other things, by the way they are integrated into the system 1, by the way they are installed and run, and by the other products (c that is to say the other domains) on which they depend eventually.

La partie 2 ou descripteur doit donc donner accès à des informations caractérisant un domaine particulier Dj, notamment à un identifiant concernant son nom et sa version, et à une liste de ses composants. En outre, un domaine Dj est caractérisé par un certain nombre d'attributs, comme il a été indiqué. Toutes ces informations sont nécessaires pour pouvoir réaliser les opérations de base susmentionnées installation et mise à jour des domaines. Elles décrivent aussi le mode de fonctionnement des produits composant le domaine. Part 2 or descriptor must therefore provide access to information characterizing a particular domain Dj, including an identifier concerning its name and version, and a list of its components. In addition, a domain Dj is characterized by a number of attributes, as indicated. All of this information is necessary to perform the above basic installation and updating of domains. They also describe the mode of operation of the products composing the domain.

Dans un mode de réalisation préféré, les attributs sont au nombre de trois, à savoir le niveau d'insertion, le type d'occurrence et les dépendances. In a preferred embodiment, the attributes are three in number, namely the insertion level, the type of occurrence and the dependencies.

On va maintenant décrire de façon détaillée un exemple d'organisation pratique d'un domaine Dj, par référence à la figure 3. An example of practical organization of a domain Dj will now be described in detail, with reference to FIG.

Dans cet exemple pratique, le domaine est organisé selon une hiérarchie d'objets. In this practical example, the domain is organized according to a hierarchy of objects.

On va considérer ci-après, pour des raisons de simplification, un domaine Dj ne contenant qu'un seul produit Pi, étant entendu que ces dispositions s'appliquent tout aussi bien à des domaines comprenant plusieurs produits. Il est en effet clair que la structure de base d'un domaine est le produit, un domaine comprenant un ou plusieurs produits. For the sake of simplification, a domain Dj containing only a single product Pi will be considered below, it being understood that these provisions apply equally well to domains comprising several products. It is clear that the basic structure of a domain is the product, a domain comprising one or more products.

On peut cependant distinguer une structure hiérarchique à quatre niveaux, dans un mode de réalisation avantageux.  However, a four-level hierarchical structure can be distinguished in an advantageous embodiment.

Le premier niveau est le produit Pi proprement dit. The first level is the product Pi itself.

C'est un ensemble homogène offrant une fonctionnalité donnée. Le produit est constitué d'un ensemble de modules
Mil à Mi3 (trois dans l'exemple décrit sur la figure 3) ou "packages", qui constituent le deuxième niveau hiérarchique.
It is a homogeneous whole offering a given functionality. The product consists of a set of modules
Mil to Mi3 (three in the example described in Figure 3) or "packages", which constitute the second hierarchical level.

Le deuxième niveau regroupe donc les modules Mil à Mi3. Un module Mil à Mi3, est un sous-ensemble fonctionnel homogène d'un produit Pi. Il est constitué d'un ensemble de jeux de fichiers ou "filesets" FSil, FSi2 et FSi31 et FSi32 (dans l'exemple décrit sur la figure 3). The second level therefore groups the Mil modules to Mi3. A Mil module Mi3 is a homogeneous functional subset of a product Pi. It consists of a set of filesets FSil, FSi2 and FSi31 and FSi32 (in the example described in FIG. 3).

Ces deux niveaux constituent un premier niveau de visibilité externe, NVe, c'est-à-dire "visible" par l'utilisateur pour une mise à jour du domaine Dj et/ou son installation initiale. These two levels constitute a first level of external visibility, NVe, that is to say "visible" by the user for an update of the domain Dj and / or its initial installation.

Il est ainsi possible d'installer tout ou partie des produits d'un domaine Dj, ainsi que tout ou partie des modules les composant, en tenant compte naturellement de contraintes de cohérence liées à ces produits. It is thus possible to install all or part of the products of a Dj domain, as well as all or part of the modules composing them, naturally taking into account consistency constraints related to these products.

Le troisième niveau regroupe les jeux de fichiers
FSil, FSi2 et FSi3l et FSi32. Un jeu de fichiers est un ensemble de fichiers contribuant à la réalisation de tout ou partie des fonctionnalités offertes par un module. Un module, par exemple les modules Mil et Mi2, peut ne comprendre qu'un seul jeu de fichiers, FSil et FSi2, respectivement. Au contraire, un module peut comprendre deux jeux de fichiers ou plus. C'est le cas du module Mi3 qui comprend deux jeux de fichiers, FSi3l et FSi32.
The third level groups the filesets
FSil, FSi2 and FSi31 and FSi32. A set of files is a set of files contributing to the realization of all or part of the functionalities offered by a module. A module, for example the modules Mil and Mi2, may comprise only one set of files, FSil and FSi2, respectively. On the contrary, a module may comprise two or more sets of files. This is the case of the Mi3 module which includes two sets of files, FSi3l and FSi32.

Le quatrième niveau est constitué par les fichiers eux-mêmes, Fill, Fi12 Fui211 Fi22 Fui311 Fi321 et Fi322
Chaque jeu de fichiers peut comprendre un ou plusieurs fichiers.
The fourth level is constituted by the files themselves, Fill, Fi12 Fui211 Fi22 Fui311 Fi321 and Fi322
Each set of files may include one or more files.

Les troisième et quatrième niveaux constituent un niveau de visibilité interne NVi, non visible par l'utilisateur en utilisation normale. Cependant, les mises à jour concernent ce niveau. The third and fourth levels constitute a level of internal visibility NVi, not visible to the user in normal use. However, the updates are for this level.

Un domaine Dj est donc un ensemble de produits et de modules. Il comprend toujours, au minimum, un module et un jeu de fichiers spécifiques décrivant le domaine Dj. Ce jeu de fichiers spécifiques comprend, au moins, un fichier également spécifique contenant la liste, c'est-à-dire le nom et le numéro de version, de tous les autres jeux de fichiers du domaine Dj. Outre son rôle de conteneur, ce fichier particulier sert à assurer la cohérence du domaine Dj. En effet, tous les autres jeux de fichiers du domaine Dj sont déclarés dépendants du jeu de fichiers spécifiques. A Dj domain is therefore a set of products and modules. It always includes, at a minimum, a module and a set of specific files describing the Dj domain. This set of specific files includes, at least, a specific file containing the list, that is, the name and version number, of all the other file sets of the domain Dj. In addition to its container role, this particular file serves to ensure the consistency of the domain Dj. Indeed, all the other file sets of the domain Dj are declared dependent on the set of specific files.

L'installation ou la mise à jour d'un jeu de fichiers quelconque, appartenant au domaine Dj, n'est possible que si la version du domaine le permet, du moins en ce qui concerne les produits contrôlés ou intégrés, c'est-à-dire d'un niveau d'insertion suffisamment élevé.The installation or update of any set of files belonging to the domain Dj is only possible if the version of the domain allows it, at least as far as the controlled or integrated products are concerned. that is, a sufficiently high insertion level.

Enfin, dans un mode de réalisation particulier d'une architecture en domaine, illustré schématiquement par la figure 4, le système 1 peut comprendre un troisième domaine spécifique, 14, que l'on peut appeler domaine de service ou domaine "outils".  Finally, in a particular embodiment of a domain architecture, illustrated schematically in FIG. 4, the system 1 may comprise a third specific domain, 14, which may be called a service domain or a "tools" domain.

Ce domaine comprend, notamment, des produits logiciels ou des utilitaires, également spécifiques, permettant l'installation et/ou la mise à jour de tout ou partie des domaines, D1 à Dn, et dans chaque domaine, de tout ou partie des produits, qu'ils soient d'origine interne, c'est-à-dire a priori entièrement intégrés aux domaines, ou externe, ces produits externes étant contrôlés ou non, selon le niveau d'insertion associé au domaine. This domain includes, in particular, software products or utilities, also specific, allowing the installation and / or updating of all or part of the domains, D1 to Dn, and in each domain, of all or part of the products, they are of internal origin, that is to say a priori fully integrated domains, or external, these external products are controlled or not, depending on the level of insertion associated with the domain.

Naturellement, les outils, ou "moteurs", d'installation et de mise à jour présents dans ce domaine sont en interaction avec les domaines, D1 à Dn, ainsi qu'avec le domaine de base 11, et le domaine moniteur d'exploitation 13, et plus particulièrement avec leurs ensembles descripteurs 2. Les installations s'effectuent selon des règles enregistrées dans le domaine 14 et/ou les ensembles descripteurs 2.Naturally, the tools, or "engines", of installation and updating present in this field interact with the domains, D1 to Dn, as well as with the base domain 11, and the operating monitor domain. 13, and more particularly with their descriptor sets 2. The installations are performed according to rules recorded in the domain 14 and / or the descriptor sets 2.

Si on se reporte de nouveau àla figure 2, ce qui a été appelé descripteur 2 donne accès à, au moins, un enregistrement 20, contenant le nom et la version du domaine Dj, à un enregistrement 21, décrivant les attributs associés à ce domaine et à un enregistrement 22, de description du contenu du domaine et à un jeu de règles d'installation et de mise à jour du domaine et des produits le composant. Comme il a été décrit en regard de la figure 3, chaque domaine Dj comporte un jeu de fichiers spécifique contenant la liste des autres jeux de fichiers, c'est-à-dire au moins leurs noms et leurs numéros de version. On peut également compléter ces informations par des scripts et des règles d'installation et de mise à jour des produits externes au domaine. Referring again to FIG. 2, what has been called descriptor 2 gives access to at least one record 20, containing the name and version of the domain Dj, to a record 21 describing the attributes associated with this domain. and a record 22, description of the content of the domain and a set of rules for installing and updating the domain and products component. As described with reference to FIG. 3, each Dj domain has a specific set of files containing the list of other file sets, i.e., at least their names and version numbers. This information can also be supplemented by scripts and rules for installing and updating products outside the domain.

Bien que les informations rappelées ci-dessus puissent être réparties à l'intérieur d'un domaine donné, celui-ci est "vu" de l'extérieur de façon identique, via l'ensemble descripteur 2 qui constitue une interface standard pour tous les domaines, même si le contenu de l'information accédée diffère d'un domaine à l'autre. Although the information recalled above can be distributed within a given domain, it is "seen" from the outside in the same way, via the descriptor set 2 which constitutes a standard interface for all domains, even if the content of the information accessed differs from one domain to another.

On va maintenant décrire le procédé selon l'invention par référence aux figures 5a à 5c. The method according to the invention will now be described with reference to FIGS. 5a to 5c.

En résumé de ce qui vient d'être rappelé en relation avec une architecture en domaines, on constate que chaque domaine Dj possède une structure qui permet de l'identifier et d'identifier ses composants logiciels : nom du domaine, numéro de version, fichier de référence descriptif des composants unitaires du domaine. C'est le rôle joué par le descriptif 2 (figure 2), plus particulièrement des enregistrements 20 (nom et version du domaine) et 22 (description du contenu du domaine), ainsi que du jeu de fichiers spécifique contenant la liste des autres fichiers (noms et numéros de version).  In summary of what has been recalled in relation to a domain architecture, we see that each Dj domain has a structure that allows to identify and identify its software components: domain name, version number, file descriptive reference of the unitary components of the domain. This is the role played by the description 2 (Figure 2), more particularly records 20 (name and version of the domain) and 22 (description of the content of the domain), as well as the specific set of files containing the list of other files (names and version numbers).

A titre d'exemple pratique, le numéro de version est associé à différents indices structurés qui peuvent se présenter sous la forme suivante : "v.r.m". "v" est un indice concernant la version livrée du domaine Dj. "r" est un indice dit de "release", c'est-à-dire de mise à disposition. Cet indice "r" indique des versions améliorées, mais sans changement fonctionnel majeur. L'indice "m" est relatif à la re-livraison de tout élément du domaine, fonctionnel ou non. Il est incrémenté à cette occasion, en général à partir de la valeur zéro (état initial)
Toutes ces dispositions permettent de bien caractériser l'état initial d'un domaine particulier Dj, avec tous ses composants, ce qui constitue un avantage par rapport aux autre architectures.
As a practical example, the version number is associated with different structured indices which can be in the form of "vrm". "v" is a clue to the delivered version of the Dj domain. "r" is an index called "release", that is to say, provision. This index "r" indicates improved versions, but without major functional change. The index "m" is relative to the re-delivery of any element of the domain, functional or not. It is incremented on this occasion, usually from the value zero (initial state)
All these provisions allow to characterize the initial state of a particular domain Dj, with all its components, which is an advantage over other architectures.

Par contre, elles ne permettent pas de réaliser correctement le suivi des évolutions de ce domaine particulier Dj. On the other hand, they do not allow to correctly follow the evolution of this particular domain Dj.

Aussi, selon une première caractéristique importante de l'invention, on ajoute à la structure existante un composant unitaire supplémentaire qui va permettre ce suivi, qui constitue un sous-ensemble du domaine. Also, according to a first important feature of the invention, there is added to the existing structure an additional unitary component that will allow this tracking, which constitutes a subset of the domain.

Selon une deuxième caractéristique importante de l'invention on utilise un indice supplémentaire représentatif des évolutions du domaine Dj, que l'on appellera ci-après indice "f" et qui est relatif aux lots de correction des domaines. Cet indice peut être avantageusement numérique, ce qui permet de le modifier simplement par incrémentation. According to a second important characteristic of the invention, an additional index representative of the evolutions of the domain Dj, which will be called hereinafter "f" index and which relates to the correction lots of the domains, is used. This index can be advantageously numerical, which makes it possible to modify it simply by incrementation.

Sur la figure 5a, on a représenté un des domaines présents dans le système 1 de la figure 1 : le domaine Dj, d'indice arbitraire j. On suppose qu'il s'agit de l'état initial du domaine Dj, c'est-à-dire l'état dans lequel il a été livré pour sa première installation sur le système 1 (figure 1).  FIG. 5a shows one of the domains present in the system 1 of FIG. 1: the domain Dj, of arbitrary index j. It is assumed that this is the initial state of the domain Dj, that is, the state in which it was delivered for its first installation on the system 1 (Figure 1).

On suppose que le domaine Dj comprend N composants de diverses natures, référencés sur la figure 5a "composant 41" à "composant &num; N". Ces composants sont associés à des indices de version qui peuvent être de structures diverses date, numéros de version conformes à la structure précitée, à laquelle on a ajouté un quatrième indice (ce qui conduit à une structure similaire à "v.r.m.f") ou tout autre mode d'identification de version. À titre d'exemple, la version des composants "41" et " "&num; 2" est repérée par une suite structurée du type "v.r.m.f" ("1.1.5.3" et "5.4.2.0", respectivement), le composant "#3" par une date et les composants #4" et "#5" par de simples numéros ("32.104" et "12", respectivement) . Le composant numéro "#N" par un mode non explicitement précisé (référencé " < ident > "). A priori, il n'y a pas de règles formelles pour identifier la version des composants. Toutes méthodes d'identification n'introduisant pas d'ambiguïté peut être utilisée. It is assumed that the domain Dj comprises N components of various types, referenced in Figure 5a "component 41" to "component &num; N". These components are associated with version indices that may be of various date structures, version numbers conforming to the above structure, to which a fourth index has been added (which leads to a structure similar to "vrmf") or any other version identification mode. For example, the version of the components "41" and "" &num; 2 "is identified by a structured sequence of the type" vrmf "(" 1.1.5.3 "and" 5.4.2.0 ", respectively), the component" # 3 "by a date and the components # 4" and "# 5" by simple numbers ("32.104" and "12", respectively). The component number "#N" by a mode not explicitly specified (referenced "<ident>"). In principle, there are no formal rules to identify the version of the components. Any identification methods that do not introduce ambiguity can be used.

L'ensemble des composants "composant #1" à "composant #N", repéré 4 sur la figure 5a, constitue un ensemble logiciel dont on veut suivre l'évolution dans le temps, pour en garantir la cohérence par rapport à une référence donnée. The set of components "component # 1" to "component #N", marked 4 in FIG. 5a, constitutes a software package whose evolution is to be followed over time, to guarantee consistency with a given reference. .

Dans le cas d'une architecture en domaines, qui constitue une architecture préférentielle, l'ensemble logiciel 4 peut être assimilé à la partie 3 (figure 2) d'un domaine Dj. In the case of a domain architecture, which constitutes a preferred architecture, the software set 4 can be likened to the part 3 (FIG. 2) of a domain Dj.

On associe (lien figuré par un trait plein 11) à l'ensemble logiciel proprement dit 4, un premier composant ou sous-ensemble 5 identifiant cet ensemble logiciel, par exemple le domaine Dj. Ce composant est un e " < nom~domaine > " est un nom de domaine arbitraire et "saga Id" un suffixe permettant d'identifier un objet de type domaine, et de façon plus générale l'appartenance à un type d'entité logicielle déterminée. We associate (link represented by a solid line 11) to the software set itself 4, a first component or subset 5 identifying this software set, for example the domain Dj. This component is an e "<domain name>" is an arbitrary domain name and "saga Id" a suffix to identify an object of type domain, and more generally belonging to a type of software entity determined.

Le numéro de version 51 aura avantageusement une structure similaire à la structure "v.r.m.f" précitée. A priori, le quatrième indice élémentaire est égal à zéro. The version number 51 will advantageously have a similar structure to the structure "v.r.m.f" above. A priori, the fourth elementary index is equal to zero.

Dans l'exemple illustré, le numéro de version du domaine 51 est s3.2.1.0". In the example shown, the version number of domain 51 is s3.2.1.0 ".

Un deuxième composant ou sous-ensemble 6 est associé à l'ensemble logiciel 4, il s'agit d'un composant entièrement spécifique à l'invention. Ce composant 6 est un enregistrement identifiant l'évolution de l'ensemble logiciel 4. La structure de ce composant est similaire à celle du composant 5. Elle comprend une partie "nom" 60 et une partie "numéro de version d'évolution" 61, cette dernière étant conforme à la structure "v.r.m.f" précitée. A second component or subset 6 is associated with the software assembly 4, it is a component entirely specific to the invention. This component 6 is a record identifying the evolution of the software set 4. The structure of this component is similar to that of the component 5. It comprises a "name" part 60 and a "evolution version number" part 61 , the latter being in accordance with the aforementioned "vrmf" structure.

L'indice partiel principal, caractéristique de cette structure, est l'indice supplémentaire "f" indiquant le numéro du lot de correction. La partie nom 60 permet de lier l'enregistrement à un ensemble logiciel donné 4, notamment à un domaine dans l'application préférée. Elle a la structure suivante : nom domaine > . < label > ", dans laquelle " < nom~domaine," est le nom du domaine, et plus généralement le nom de l'ensemble logiciel, et " < label > " un suffixe qui permet d'identifier le composant supplémentaire, ctest-à- dire le type d'enregistrement 6.The main partial index, characteristic of this structure, is the supplementary index "f" indicating the number of the correction batch. The name part 60 makes it possible to link the recording to a given software set 4, in particular to a domain in the preferred application. It has the following structure: domain name>. <label> ", where" <domain-name, "is the name of the domain, and more generally the name of the software package, and" <label> "a suffix that identifies the additional component, that is, ie the type of registration 6.

A priori, à l'état initial, c'est-à-dire l'état représenté sur la figure 5a, l'indice élémentaire "f" (numéro du lot de correction) est égal à zéro et le "numéro de version d'évolution" 61 est identique au numéro de version de domaine 51, soit "3.2.1.0" dans l'exemple illustré. In principle, in the initial state, that is to say the state represented in FIG. 5a, the elementary index "f" (number of the correction batch) is equal to zero and the "version number d "evolution" 61 is identical to the domain version number 51, ie "3.2.1.0" in the illustrated example.

On a représenté sous la référence 8, l'état courant de la machine, et plus particulièrement de la composition de chaque ensemble logiciel 4. Cet état courant comprend au moins des entrées identifiant les composants élémentaires "composant #1" à "composant #N", ainsi que leurs numéros de version. Dans le cas d'une architecture en domaines, qui constitue l'architecture préférentielle, si on se reporte de nouveau à la figure 4, l'état courant de la machine est géré, a priori, par le moniteur d'exploitation 13. Dans une architecture autre que l'architecture en domaine, cet état de la machine est géré par une entité similaire ou par le système d'exploitation. Is represented under the reference 8, the current state of the machine, and more particularly the composition of each set of software 4. This current state comprises at least entries identifying the elementary components "component # 1" to "component #N ", as well as their version numbers. In the case of an architecture in domains, which constitutes the preferred architecture, if one refers again to FIG. 4, the current state of the machine is managed, a priori, by the operating monitor 13. an architecture other than the domain architecture, this state of the machine is managed by a similar entity or by the operating system.

On va maintenant illustrer le processus d'identification et de suivi des corrections apportées aux composants du domaine Dj, qui porte le nom arbitraire de "nom domaine", par référence plus particulière aux exemples illustrés par les figures 5b et 5c. Le numéro du lot de corrections (version courante) est repéré par l'indice f = 1 (cas de la première version de lot de correction figure 5b). We will now illustrate the process of identifying and monitoring the corrections made to the components of the domain Dj, which has the arbitrary name of "domain name", with particular reference to the examples illustrated in FIGS. 5b and 5c. The number of the correction batch (current version) is indicated by the index f = 1 (case of the first version of correction batch figure 5b).

Dans un premier temps, on suppose que les composants numéros "#3" et "45" sont modifiés, c'est-à-dire mis à jour. First, it is assumed that the numbered components "# 3" and "45" are modified, that is, updated.

Le composant "#3", dont l'identifiant de version est une date (anciennement "25/06/96" dans l'exemple décrit), a été mis à jour. La date de la nouvelle version est la suivante "28/11/97". The component "# 3", whose version identifier is a date (formerly "25/06/96" in the example described), has been updated. The date of the new version is "28/11/97".

Le composant "#5" dont l'identifiant de version est un simple numéro de version (anciennement "12") a été également mis à jour et son nouveau numéro de version est "15". The component "# 5" whose version identifier is a simple version number (formerly "12") has also been updated and its new version number is "15".

L'enregistrement 5 n'évolue pas, car le nombre et la répartition des composants de l'ensemble logiciel 4 n'ont pas été modifiés, seules les versions de tout ou partie des composants ont été changées (en l'occurrence les composants "43" et "45")
Par contre l'identifiant d'évolution, c'est-à-dire l'enregistrement identifiant les corrections apportées à l'ensemble logiciel 4, référencé désormais 6' (avec ses deux parties 60' et 61'), va être mis à jour et notamment l'indice "f" précité (numéro de lot de corrections) va être incrémenté d'une unité. Le numéro de version d'évolution 61' devient donc "3.2.1.1", dans l'exemple décrit.
The record 5 does not evolve, because the number and distribution of the components of the software package 4 have not been modified, only the versions of all or part of the components have been changed (in this case the components " 43 "and" 45 ")
By against the evolution identifier, that is to say the record identifying the corrections made to the software set 4, now referenced 6 '(with its two parts 60' and 61 '), will be set to day and in particular the index "f" supra (batch number of corrections) will be incremented by one unit. The evolution version number 61 'thus becomes "3.2.1.1", in the example described.

Selon une caractéristique supplémentaire de l'invention, un lot de corrections donné (repéré par l'indice ft précité) est accompagné d'un fichier 7', ou suite d'enregistrements, qui identifie les noms des composants du lot de corrections apporté et leur version. According to a further feature of the invention, a given batch of corrections (indicated by the above-mentioned index ft) is accompanied by a file 7 ', or a series of records, which identifies the names of the components of the set of corrections made and their version.

En outre, de façon avantageuse, à chaque modification de l'enregistrement 6, correspond un fichier 7' différent, ce qui permet de conserver l'historique des corrections apportées aux composants de l'ensemble logiciel 4, c'est-à-dire son évolution dans le temps depuis son état initial (figure 5a) . Ces fichiers seront référencés 7' (figure 5b), 7" (figure 5c), etc. In addition, advantageously, each modification of the record 6 corresponds to a different file 7 ', which makes it possible to keep the history of the corrections made to the components of the software set 4, that is to say its evolution in time since its initial state (Figure 5a). These files will be referenced 7 '(Figure 5b), 7 "(Figure 5c), etc.

Un lien 12 (trait plein) symbolise la mise à jour du composant 6 (et notamment de la partie 61') et la création d'un fichier 7' associé au composant 6'. A link 12 (solid line) symbolizes the update of the component 6 (and in particular of the part 61 ') and the creation of a file 7' associated with the component 6 '.

Dans le cas du lot de corrections d'indice f = 1, illustré par la figure 5b, le fichier 7' comprend des entrées pour les composants &num;3 et &num;5, qui seuls ont été modifiés par rapport à l'état initial de l'ensemble logiciel 4. Les composants mis à jour, &num;3 et #5, voient leur identifiant de version mis en concordance avec le nouvel état atteint : une nouvelle date de version pour le composant " # et un nouveau numéro de version pour le composant "45".  In the case of the set of corrections of index f = 1, illustrated by FIG. 5b, the file 7 'comprises entries for the components &num; 3 and &num; 5, which alone have been modified with respect to the initial state of the software package 4. The updated components, &num; 3 and # 5, have their version identifier matched to the new state reached: a new version date for the component "#" and a new version number for component "45".

Au nouvel enregistrement 6', va correspondre aussi une mise à jour de l'état 8' de l'ensemble logiciel 4.  At the new record 6 ', will also correspond to an update of the state 8' of the software set 4.

La figure 5c illustre une nouvelle modification de tout ou partie des composants de l'ensemble logiciel 4 (lot de corrections f = 2), en l'occurrence les composants "#lux et, de nouveau, le composant "#5". Le composant "#1" passe du numéro de version "1.1.5.3" au numéro de version "1.2.0.0" et le composant "#5" du numéro de version "15" au numéro de version "16". FIG. 5c illustrates a new modification of all or part of the components of the software set 4 (correction set f = 2), in this case the "#lux" components and, again, the "# 5" component. component "# 1" changes from version number "1.1.5.3" to version number "1.2.0.0" and component "# 5" from version number "15" to version number "16".

Comme précédemment, l'enregistrement 5 reste inchangé et conserve le numéro de version d'ensemble logiciel "3.1.2.0" dans l'exemple décrit. As before, the record 5 remains unchanged and retains the software set version number "3.1.2.0" in the example described.

L'enregistrement identifiant l'évolution devient 6" (avec ses deux parties 60" et 61"), l'indice "f" étant de nouveau incrémenté d'une unité. Le numéro d'identifiant d'évolution 61" devient "3.2.1.2 dans l'exemple décrit. The record identifying the evolution becomes 6 "(with its two parts 60" and 61 "), the index" f "being incremented by one again, the evolution identifier number 61" becomes "3.2 .1.2 in the example described.

De même, on créé un nouveau fichier 7" qui identifie les noms des composants du lot de corrections apporté (indice f = 2) et leurs versions. Dans le cas illustré par la figure 5c, les composants mis à jour étant "#1" et "45", le fichier 7" comprend des entrées pour ces deux composants, qui seuls ont évolués par rapport à la modification précédente (figure 5b : indice f = 1). Likewise, a new file 7 "is created which identifies the names of the components of the set of corrections (index f = 2) and their versions, in the case illustrated by FIG. 5c, the updated components being" # 1 " and "45", the file 7 "comprises entries for these two components, which alone have evolved compared to the previous modification (FIG. 5b: index f = 1).

Comme précédemment, au nouvel enregistrement 6", va correspondre aussi une mise à jour de l'état 8" de l'ensemble logiciel 4. As previously, at the new record 6 ", will also correspond to an update of the state 8" of the software set 4.

En résumé, lors de l'installation d'un ensemble logiciel 4 (plus particulièrement, dans l'application préférée, lors de l'installation d'un domaine Dj), le composant supplémentaire 6 conforme à l'invention est implémenté en même temps que cet ensemble logiciel. In summary, when installing a software package 4 (more particularly, in the preferred application, during the installation of a domain Dj), the additional component 6 according to the invention is implemented at the same time than this software package.

Ensuite, chaque ensemble cohérent de modifications (lots de corrections f = x, avec x = 1, 2, etc.) est décrit dans un ensemble de fichiers 7', 7", etc., chacun étant attaché à une nouvelle version du composant spécifique à l'invention, c'est-à-dire les enregistrements 6', 6", etc. Then, each coherent set of modifications (lots of corrections f = x, with x = 1, 2, etc.) is described in a set of files 7 ', 7 ", etc., each being attached to a new version of the component specific to the invention, that is, the 6 ', 6 "recordings, etc.

Les fichiers 7', 7", etc., comprennent des enregistrements avec les noms des composants du lot de corrections et leurs versions.The files 7 ', 7 ", etc., include records with the names of the patch batch components and their versions.

La première version des modifications est identifiée par un numéro d'évolution de version "v.r.m.l" (la version initiale étant "v.r.m.0") et les suivantes par incrémentation de "f" (f=2, 3, 4, etc.).  The first version of the changes is identified by a version upgrade number "v.r.m.l" (the initial version being "v.r.m.0") and the subsequent ones by incrementing "f" (f = 2, 3, 4, etc.).

L'application sur site d'un ensemble cohérent de modifications (lot de corrections) sur un système 1 (figure 1) est toujours accompagnée d'une nouvelle version de l'enregistrement 6, et plus particulièrement de la partie 61 (l'indice "f" étant incrémenté d'une unité), ce qui constitue une signature électronique de la modification apportée. The on-site application of a coherent set of modifications (batch of corrections) on a system 1 (FIG. 1) is always accompanied by a new version of the record 6, and more particularly by the part 61 (the index "f" being incremented by one unit), which constitutes an electronic signature of the modification made.

Tous les ensembles de modifications sont disjoints les uns des autres : la version "f+1" d'un ensemble de corrections ne contient pas les corrections de la version précédente "f". All the sets of changes are disjoint from each other: the "f + 1" version of a set of corrections does not contain the corrections from the previous version "f".

Chaque ensemble de corrections possède son propre ensemble de fichiers descriptifs, 7', 7", etc. Ainsi l'historique complet des différentes évolutions restent tracées sur le site client. En d'autres termes tous les fichiers intermédiaires restent disponibles et permettent de reconstituer l'évolution complète de l'ensemble logiciel. Each set of corrections has its own set of descriptive files, 7 ', 7 ", etc. Thus the complete history of the various evolutions remains traced on the client site In other words, all the intermediate files remain available and make it possible to reconstitute the complete evolution of the software package.

Enfin, jusqu'à présent, on a considéré, au moins implicitement, que les fichiers successifs 7', 7", etc. ne contenaient que des informations sur les noms de composants et sur les versions successives de ceux-ci. Finally, so far, it has been considered, at least implicitly, that the successive files 7 ', 7 ", etc. contained only information on the component names and the successive versions thereof.

Dans une variante préférée de l'invention, ces fichiers sont complétés avantageusement par des fichiers en mode texte (non représentés) documentant chacune des modifications apportées aux composants.  In a preferred variant of the invention, these files are advantageously supplemented by text mode files (not shown) documenting each of the modifications made to the components.

Les opérations de comparaison de l'état courant, 8'ou 8", de l'ensemble logiciel 4 présent sur le système 1 (selon le niveau d'évolution atteint par l'ensemble logiciel 4 et déterminé par l'indice "f") par rapport au fichier de référence joint à chaque nouvel ensemble de corrections (fichier correspondant à l'indice "f+1") peuvent être simplifiées en faisant appel à des outils d'administration spécialisés externes ou internes au système 1. En particulier, ces outils peuvent faire partie avantageusement du domaine spécifique 14, illustré par la figure 4, ou domaine de service (dans la mesure où ce domaine existe sur le système 1). Dans une variante supplémentaire, les opérations peuvent être laissées sous le contrôle du domaine de base, ou système d'exploitation ("OS") 11 (figure 1), qui existe sur toute machine. The comparison operations of the current state, 8'or 8 ", of the software set 4 present on the system 1 (according to the level of evolution reached by the software set 4 and determined by the index" f " ) relative to the reference file attached to each new set of corrections (file corresponding to the index "f + 1") can be simplified by using specialized external management tools or internal to the system 1. In particular, these tools may advantageously be part of the specific domain 14, illustrated in FIG. 4, or service domain (insofar as this domain exists on the system 1). In a further variant, the operations may be left under the control of the domain basic, or operating system ("OS") 11 (Figure 1), which exists on any machine.

Le procédé selon l'invention permet de suivre également les évolutions d'un nouveau domaine (ou de façon plus générale d'un nouvel ensemble logiciel). En effet, le composant supplémentaire 6 étant lié à un domaine particulier, si on ajoute un domaine, par exemple un domaine Dp (avec p arbitraire), ce composant 6 est implémenté en même temps que le nouveau domaine Dp. On considère qu'il s'agit d'un état initial et l'indice "f" prend la valeur zéro lors de la création du domaine Dp. The method according to the invention also makes it possible to follow the evolutions of a new domain (or, more generally, of a new software package). Indeed, the additional component 6 being linked to a particular domain, if one adds a domain, for example a domain Dp (with arbitrary p), this component 6 is implemented at the same time as the new domain Dp. It is considered to be an initial state and the index "f" takes the value zero when creating the domain Dp.

Lors des évolutions éventuelles ultérieures du domaine, le processus détaillé ci-dessus est réalisé et il est inutile de le redécrire. In the eventual subsequent evolutions of the domain, the process detailed above is realized and it is useless to redefine it.

De même la suppression d'un domaine quelconque (ou de façon plus générale d'un ensemble logiciel), par exemple le domaine Dp précité, ne pose pas de problèmes de suivi non plus, toujours pour les mêmes raisons. Le composant supplémentaire 6 étant lié à ce domaine Dp, il disparaît avec ce domaine. Toutefois, les fichiers successifs 7', 7", etc., peuvent rester enregistrés dans le système 1, à titre d'historique.  Similarly, the deletion of any domain (or more generally of a software package), for example the aforementioned Dp domain, does not raise tracking problems either, for the same reasons. The additional component 6 being linked to this domain Dp, it disappears with this domain. However, the successive files 7 ', 7 ", etc., can remain recorded in the system 1, as history.

Dans les deux cas, c'est le moniteur d'exploitation, c'est-à-dire le domaine 13, pour l'architecture en domaines de la figure 1 qui identifie complètement l'ensemble du système 1 et ses composants de base, c'est-à-dire les domaines D1 à Dn. In both cases, it is the operating monitor, that is to say the domain 13, for the domain architecture of FIG. 1 which completely identifies the entire system 1 and its basic components, that is, domains D1 to Dn.

Enfin, lorsque la composition de l'un des domaines (ou de façon plus générale d'un ensemble logiciel), par exemple le domaine Dj, est modifiée, non pas par simple correction ou changement de version d'un composant, mais par ajout ou suppression d'un ou plusieurs composants, il est nécessaire de faire évoluer la version du domaine numéro de version du domaine 51, de l'enregistrement 5. Finally, when the composition of one of the domains (or more generally of a software package), for example the domain Dj, is modified, not by simple correction or change of version of a component, but by adding or removal of one or more components, it is necessary to upgrade the domain version version number of domain 51, record 5.

A la lecture de ce qui précède, on constate aisément que l'invention atteint bien les buts qu'elle s'est fixés. From the foregoing, it is easy to see that the invention achieves the goals it has set for itself.

Il doit être clair cependant que l'invention n'est pas limitée aux seuls exemples de réalisations explicitement décrits, notamment en relation avec les figures 5a à 5c. It should be clear, however, that the invention is not limited to the only examples of embodiments explicitly described, particularly in relation to FIGS. 5a to 5c.

En particulier, la numérotation des versions des composants, des domaines et des évolutions peut être réalisée de diverses façons. Seul l'indice élémentaire, qui a été appelé de façon arbitraire "f" concerne directement le procédé de l'invention, car identifiant le niveau d'évolution des corrections apportées aux composants de l'ensemble logiciel. Il peut cependant être remplacé par un moyen similaire permettant de refléter des états successifs, que ce moyen soit purement logiciel (octet, etc.) ou matériel (compteur incrémenté). De même, s'il est usuel de forcer l'indice précité ou son équivalent à la valeur zéro pour identifier un état initial, cette convention est purement arbitraire et d'autres conventions peuvent être adoptées sans sortir du cadre de l'invention. On pourrait notamment utiliser les lettres de l'alphabet, au lieu d'un indice numérique ou tout autre convention établissant une relation biunivoque entre l'indice utilisé et le lot de correction.  In particular, the numbering of component versions, domains and evolutions can be done in various ways. Only the elementary index, which has been arbitrarily called "f" directly relates to the method of the invention, because identifying the level of evolution of the corrections made to the components of the software package. It can, however, be replaced by a similar means for reflecting successive states, whether this means is purely software (byte, etc.) or hardware (incremented counter). Similarly, if it is customary to force the aforementioned index or its equivalent to zero to identify an initial state, this convention is purely arbitrary and other conventions can be adopted without departing from the scope of the invention. One could use the letters of the alphabet, instead of a numerical index or any other convention establishing a one-to-one relationship between the index used and the correction batch.

Il doit être clair aussi que, bien que particulièrement adaptée à une architecture de système en domaines telle qu'elle a été définie dans la présente description, on ne saurait cantonner l'invention à ce seul type d'architecture. Elle s'applique au suivi de tout ensemble logiciel multicomposants.  It should also be clear that, although particularly suited to a system architecture in domains as defined in the present description, the invention can not be confined to this type of architecture alone. It applies to the tracking of any multicomponent software package.

Claims (11)

REVENDICATIONS 1. Procédé d'identification et de suivi des évolutions d'un ensemble de composants logiciels déterminé (4) dans un système de traitement de l'information (1), chaque composant (#1 à #N) étant repéré par un nom et un identifiant de version, et chaque ensemble de composants logiciels (4) étant lié (11) à un premier sous-ensemble (5) comprenant un identifiant (50, 51) dudit ensemble logiciel et de sa version, caractérisé en ce que les modifications apportées à tout ou partie desdits composants (#1 à #N) d'un ensemble de composants logiciels déterminé (4) sont repérées par un indice dit de lot de corrections, en ce que l'ensemble de composants logiciels déterminé (4) est associé à un second sous-ensemble (6, 6', 6") comprenant un identifiant (60, 60', 60") dudit ensemble de composants logiciel déterminé (4) et dudit lot de corrections et d'un identifiant de version d'évolution (61, 61, 61"), cet identifiant de version d'évolution (61, 61', 61") comprenant au moins ledit indice de lot de correction, et en ce que ledit second sous-ensemble (6', 6") est lié (12) à au moins une première suite d'enregistrements (7', 7") décrivant les noms des composants dudit lot de corrections (#3-#5, #1-#5) et leurs versions. A method for identifying and tracking changes in a set of software components determined (4) in an information processing system (1), each component (# 1 to #N) being identified by a name and a version identifier, and each set of software components (4) being linked (11) to a first subset (5) comprising an identifier (50, 51) of said software set and its version, characterized in that the modifications provided to all or some of said components (# 1 to #N) of a set of determined software components (4) are identified by a so-called correction set index, in that the determined set of software components (4) is associated with a second subset (6, 6 ', 6 ") comprising an identifier (60, 60', 60") of said determined set of software components (4) and said set of patches and a version identifier d evolution (61, 61, 61 "), this evolution version identifier (61, 61 ', 61") comprising at least least said correction lot index, and in that said second subset (6 ', 6 ") is linked (12) to at least a first sequence of records (7', 7") describing the component names said batch of corrections (# 3- # 5, # 1- # 5) and their versions. 2. Procédé selon la revendication 1, caractérisé en ce que, lors de l'implantation d'un nouveau ensemble de composants logiciels (4) sur ledit système de traitement de l'information (1), ledit second sous-ensemble associé (6) est implanté en même temps que celui-ci, et en ce que, ledit indice de lot de corrections étant un indice numérique, l'état initial dudit ensemble de composants logiciels déterminé (4) est repéré par la mise à la valeur zéro de cet indice.  2. Method according to claim 1, characterized in that, during the implementation of a new set of software components (4) on said information processing system (1), said second subset associated (6 ) is implanted at the same time as the latter, and in that, said correction batch index being a numerical index, the initial state of said set of determined software components (4) is identified by setting the zero value of this index. 3. Procédé selon la revendication 2, caractérisé en ce que ledit indice de lot de corrections est incrémenté d'une unité lors de la mise en place d'un nouveau lot de corrections modifiant tout ou partie desdits composants logiciels (#1 à #N).  3. Method according to claim 2, characterized in that said correction batch index is incremented by one unit when setting up a new batch of corrections modifying all or part of said software components (# 1 to #N ). 4. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que, pour chaque série de modifications de tout ou partie desdits composants logiciels (#1 à #N) correspondant à un nouveau lot de corrections, ledit identifiant de version d'évolution (61, 61") de ce dernier est modifié. 4. Method according to any one of the preceding claims, characterized in that, for each series of modifications of all or part of said software components (# 1 to #N) corresponding to a new batch of corrections, said version identifier of evolution (61, 61 ") of the latter is modified. 5. Procédé selon la revendication 4, caractérisé en ce que, pour chaque série de modifications de tout ou partie desdits composants (#1 à #N) correspondant à un nouveau lot de corrections, il est créé une nouvelle première suite d'enregistrements (7', 7"), associée audit second sous-ensemble modifié (6', 6") et identifiant lesdits composants logiciels modifiés et leurs nouvelles versions, cette nouvelle première suite d'enregistrements (7', 7") étant disjointe des versions précédentes. 5. Method according to claim 4, characterized in that, for each series of modifications of all or part of said components (# 1 to #N) corresponding to a new batch of corrections, a new first series of recordings is created ( 7 ', 7 "), associated with said modified second subset (6', 6") and identifying said modified software components and their new versions, this new first series of recordings (7 ', 7 ") being disjoint versions preceding. 6. Procédé selon la revendication 5, caractérisé en ce que toutes lesdites suites d'enregistrements créées (7', 7g) restent stockées sur ledit système de traitement d'informations (1), de manière à constituer un historique des lots de corrections successivement appliqués audit ensemble de composants logiciels déterminé (4). 6. Method according to claim 5, characterized in that all said series of created records (7 ', 7g) remain stored on said information processing system (1), so as to constitute a history of correction batches successively applied to said determined set of software components (4). 7. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que ladite première suite d'enregistrements (7', 7") est associée à une seconde suite d'enregistrements comprenant des données informationnelles sur lesdites corrections appliquées par lesdits lots de corrections. 7. Method according to any one of the preceding claims, characterized in that said first sequence of records (7 ', 7 ") is associated with a second series of records comprising informational data on said corrections applied by said batches of corrections. 8. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que ledit identifiant (60, 60', 60") de l'ensemble de composants logiciels déterminé (4) et du lot de corrections dudit second sousensemble (6, 6', 6") est structuré de la façon suivante < nom > . < label > , structure dans laquelle < nom > identifie le nom dudit ensemble de composants logiciels (4) et label un suffixe indiquant l'appartenance dudit second sousensemble (6') à un type d'entité logicielle déterminée. 8. Method according to any one of the preceding claims, characterized in that said identifier (60, 60 ', 60 ") of the determined set of software components (4) and the set of corrections of said second subset (6, 6 ', 6 ") is structured as <name>. <label>, structure in which <name> identifies the name of said set of software components (4) and labels a suffix indicating the membership of said second subset (6 ') to a given type of software entity. 9. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que ledit numéro de version d'évolution comprend un numéro de version dudit ensemble de composants logiciels déterminé (4) complété par ledit indice de lot de corrections. 9. Method according to any one of the preceding claims, characterized in that said evolution version number comprises a version number of said determined set of software components (4) supplemented by said correction batch index. 10. Procédé selon l'une quelconque des revendications précédentes, caractérisé en ce que lesdits ensembles de composants logiciels (4) sont constitués d'entités dites domaines (Dj) comprenant chacune au moins un desdits composants logiciels, en ce que chaque domaine (11-14) contient un sous-ensemble dit descripteur (2) donnant accès à des informations spécifiques déterminees (20-22), lesdites informations comprenant au moins un identifiant (20) du domaine et des données (22) décrivant lesdits composants, l'installation et/ou la mise à jour desdits domaines (11-14) étant réalisées à partir de règles prédéterminées et desdites informations spécifiques déterminées (20-22) , et en ce que lesdits seconds sousensembles (6', 6") identifient lesdits domaines (Dj) auxquels ils sont liés et la version du lot de corrections courante appliquée à ces domaines (Dj).  10. Method according to any one of the preceding claims, characterized in that said sets of software components (4) consist of so-called domain entities (Dj) each comprising at least one of said software components, in that each domain (11) -14) contains a subset said descriptor (2) giving access to specific information determined (20-22), said information comprising at least one identifier (20) of the domain and data (22) describing said components, the installing and / or updating said domains (11-14) being performed from predetermined rules and said specific determined information (20-22), and in that said second subsets (6 ', 6 ") identify said domains (Dj) to which they are linked and the version of the current batch of corrections applied to these domains (Dj). 11. Procédé selon la revendication 10, caractérisé en ce que ledit identifiant (20) comprend au moins des informations de nom et de version de domaine (Dj).  11. The method of claim 10, characterized in that said identifier (20) comprises at least domain name and version information (Dj).
FR9716700A 1997-12-30 1997-12-30 METHOD FOR IDENTIFYING AND MONITORING EVOLUTIONS OF A SET OF SOFTWARE COMPONENTS Pending FR2773242A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FR9716700A FR2773242A1 (en) 1997-12-30 1997-12-30 METHOD FOR IDENTIFYING AND MONITORING EVOLUTIONS OF A SET OF SOFTWARE COMPONENTS
PCT/FR1998/002887 WO1999035566A1 (en) 1997-12-30 1998-12-28 Method for identifying and monitoring evolution of a set of software components
EP98963637A EP0961969A1 (en) 1997-12-30 1998-12-28 Method for identifying and monitoring evolution of a set of software components

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR9716700A FR2773242A1 (en) 1997-12-30 1997-12-30 METHOD FOR IDENTIFYING AND MONITORING EVOLUTIONS OF A SET OF SOFTWARE COMPONENTS

Publications (1)

Publication Number Publication Date
FR2773242A1 true FR2773242A1 (en) 1999-07-02

Family

ID=9515296

Family Applications (1)

Application Number Title Priority Date Filing Date
FR9716700A Pending FR2773242A1 (en) 1997-12-30 1997-12-30 METHOD FOR IDENTIFYING AND MONITORING EVOLUTIONS OF A SET OF SOFTWARE COMPONENTS

Country Status (3)

Country Link
EP (1) EP0961969A1 (en)
FR (1) FR2773242A1 (en)
WO (1) WO1999035566A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2846766A1 (en) * 2002-10-31 2004-05-07 Jdv Configuration management identifying procedure for use in industrial process, involves modifying packet of constituents in configuration and marking generated state with new configuration
US20210406225A1 (en) * 2020-06-24 2021-12-30 Citrix Systems, Inc. File source tracking

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100388486B1 (en) * 2000-12-14 2003-06-25 한국전자통신연구원 Method and apparatus for identifying software components using object relationships and object usages in use cases
CN1322420C (en) * 2004-01-18 2007-06-20 北京大学 Method for on-line increasing new function for member software system
WO2007068091A1 (en) * 2005-12-12 2007-06-21 Audiokinetic Inc. Method and system for multi-version digital authoring

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69230452T2 (en) * 1991-08-19 2000-08-24 Sun Microsystems Inc Change control method and apparatus in multiple development environments
US5649200A (en) * 1993-01-08 1997-07-15 Atria Software, Inc. Dynamic rule-based version control system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2846766A1 (en) * 2002-10-31 2004-05-07 Jdv Configuration management identifying procedure for use in industrial process, involves modifying packet of constituents in configuration and marking generated state with new configuration
US20210406225A1 (en) * 2020-06-24 2021-12-30 Citrix Systems, Inc. File source tracking
US11544233B2 (en) * 2020-06-24 2023-01-03 Citrix Systems, Inc. File source tracking

Also Published As

Publication number Publication date
EP0961969A1 (en) 1999-12-08
WO1999035566A1 (en) 1999-07-15

Similar Documents

Publication Publication Date Title
EP0889399B1 (en) Information processing system architecture
US7664834B2 (en) Distributed operating system management
US6757696B2 (en) Management server for synchronization system
EP0793171B1 (en) System for configuration of preconfigured software programs on networked open systems in a distributed environment and method to operate this system
US6671757B1 (en) Data transfer and synchronization system
US20090144718A1 (en) Systems and methods for updating software appliances
US7877735B2 (en) Application cloning
CA2102538A1 (en) Information processing device for managing a computer resource by means of an administration system
FR2722015A1 (en) INFORMATION PROCESSING SYSTEM
FR2844370A1 (en) Electronic document for describing a communication network server service, comprises transformation to first part describing messages and second part containing information on formats and protocols
FR2877458A1 (en) SYSTEM AND METHOD FOR IMAGE NETWORK COMMUNICATION INFORMATION PROCESSING SYSTEM
FR3001313A1 (en) METHOD FOR VERIFYING AT LEAST ONE METADATA OF A DIGITAL DATA BLOCK
FR2800889A1 (en) COMMON DATA MODEL INCLUDING ZONE INTERDEPENDENCIES
FR2773242A1 (en) METHOD FOR IDENTIFYING AND MONITORING EVOLUTIONS OF A SET OF SOFTWARE COMPONENTS
FR2964813A1 (en) USER ACCOUNT MANAGEMENT DEVICE SUITABLE FOR COOPERATING WITH A SINGLE SIGNATURE DEVICE
EP0755001A1 (en) Architecture for wrapping applications running on a data processing platform
EP0604311B1 (en) File managing method, recording medium and computer system incorporating it
EP1054332A1 (en) System and method for managing attributes in an object-oriented environment
EP0919914B1 (en) Architecture for managing vital data in a multi-modular machine and method for operating such an architecture
WO2018234656A1 (en) Management of the uniqueness of identifiers of communication modules in a communication network
FR2830634A1 (en) Security provision method for computer application, involves sharing missing group of instructions stored in server, between user computer and server
EP1774774A1 (en) Method for updating resident software in different appliances and appliances adapted to be updated by same
EP1902363A1 (en) Method for automatic integration and persistent storage of a priori volatile personalizing parameters
FR2809511A1 (en) Method for accessing a directory stored in memory using Enterprise Java Beans components by supplying transactional functionality using an EJB server to manage access to the directory
FR2943155A1 (en) METHOD AND COLLABORATIVE SYSTEM FOR MODIFICATIONS OF DIGITAL NETWORK APPLICATIONS