Brevet FR3025624A1 — publié le 20160311

Méthode mise en oeuvre par ordinateur de vérification de l'intégrité d'une spécification d'un système complexe, et système de vérification associé La présente invention concerne une méthode mise en oeuvre par ordinateur de vérification de l'intégrité d'une spécification d'un système complexe, comportant les étapes suivantes : - fourniture d'une pluralité d'activités propres à être exécutées par le système complexe et d'une hiérarchie d'exécution des activités. Cette invention résulte d'un marché passé par le Ministère français de la Défense qui dispose de certains droits dessus. La méthode selon l'invention est destinée notamment à vérifier l'intégrité des spécifications d'un système technique complexe, en amont de sa réalisation. La méthode s'applique particulièrement à des systèmes techniques complexes d'une plate-forme, notamment pour définir des spécifications de conception et de fabrication du système complexe. Avantageusement, la plate-forme est un aéronef civil ou militaire, ou encore un engin volant, tel qu'un drone. En variante, la plate-forme est un engin spatial, un engin naval, ou un véhicule terrestre. La méthode s'applique également à la conception d'un système complexe défini par un ensemble de plates-formes interagissant les unes avec les autres, comme un système comportant plusieurs aéronefs et des ensembles terrestres associés. Cette méthode s'applique ainsi à des domaines variés, embarqués ou non, et à des systèmes réalisés par des logiciels ou/et par d'autres technologies. Généralement, un système complexe comporte une pluralité d'acteurs, formés par des composants individuels ou par des ensembles de composants individuels. Le système complexe doit répondre lors de sa conception à des exigences de performance définies globalement sur le système. Ces exigences de performance sont par exemple un temps d'exécution globale d'une opération, ou d'une précision de calcul. La performance globale du système dépend fortement des performances individuelles de chacun des acteurs. Un des risques encourus lors de la définition d'un système complexe reste cependant que l'union des exigences projetées sur les différents acteurs ne satisfasse pas les exigences contractuelles globales de performance du système. Ceci est particulièrement le cas lorsque que certains sous-systèmes au sein du système complexe sont conçus indépendamment les uns des autres, par exemple par des entités distinctes au sein d'une même société, ou par plusieurs sociétés différentes. 3025624 2 Si des erreurs ou des incompatibilités ont été incluses en amont dans la définition générale du système et n'ont pas été détectées suffisamment tôt, le maître d'oeuvre du système complexe peut alors se trouver dans une situation où le système dans sa globalité ne répond pas aux exigences contractuelles, bien que chacun des sous- 5 systèmes réponde aux exigences propres de ce sous-système. Ceci est le cas par exemple dans l'aéronautique, où les différents systèmes et sous-systèmes d'un aéronef sont souvent conçus par des entités très différentes et sont largement interconnectés. Dans ce cas, les conséquences peuvent être coûteuses pour le maître d'oeuvre, 10 puisqu'elles peuvent engendrer des surcoûts dans la conception et dans la fabrication et des retards conséquents entraînant à leur tour des pénalités. Pour simuler le comportement d'un système lors de sa conception, il est connu par exemple des méthodes du type « Reservation Based Timing Analysis » de définir des diagrammes d'activité présentant une hiérarchie temporelle, afin de déterminer si une 15 solution technique permettant de répondre à un besoin fonctionnel est susceptible de respecter des exigences temps réel d'un système. Une telle approche est applicable en connaissance d'une solution technique donnée, par exemple un calculateur ARINC 653. Toutefois, l'approche développée dans cet article ne donne pas entière satisfaction en ce qu'elle n'analyse pas les exigences 20 elles-mêmes, ni les relations entre les différents acteurs du système, eu égard aux exigences individuelles de chaque acteur. En outre, seul le comportement en temps est analysé, les autres exigences, par exemple fonctionnelles, n'étant pas considérées. Un but de l'invention est de fournir une méthode mise en oeuvre par ordinateur de 25 vérification de l'intégrité d'une spécification dans un système technique complexe, qui assure une vérification pertinente de certaines exigences du système technique complexe, en amont lors de la conception de ce système. À cet effet, l'invention a pour objet une méthode du type précité, caractérisée par les étapes suivantes : 30 - fourniture d'une pluralité d'acteurs fonctionnels unitaires, chaque acteur fonctionnel unitaire étant propre à exécuter au moins une activité ; - association, à chaque activité définie, d'au moins un attribut d'identification de l'acteur fonctionnel dédié à exécuter l'activité, d'au moins un attribut de caractérisation hiérarchique de l'activité dans la hiérarchie d'exécution, et d'au moins un attribut de 35 qualité de service de l'activité et/ou de qualité de service d'une donnée requise ou produite par l'activité ; 3025624 3 - vérification de l'intégrité du système complexe sur la base d'au moins un attribut associé à chaque activité à l'étape d'association. La méthode selon l'invention peut comprendre l'une ou plusieurs des caractéristiques suivantes, prise(s) isolément ou suivant toute combinaison 5 techniquement possible : - chaque acteur fonctionnel unitaire est une entité logique indépendante d'une solution technique particulière ; - l'étape de fourniture des activités comporte la fourniture d'au moins une première activité de niveau inférieur et d'au moins une deuxième activité de niveau supérieur 10 constituant une sous-activité de la première activité, l'étape d'association comprenant l'association à la première activité et à la deuxième activité d'au moins un attribut de caractérisation hiérarchique de l'activité comprenant le niveau de l'activité. - l'étape de fourniture des activités comporte la fourniture d'une pluralité d'activités de même niveau propres à être exécutées successivement, l'étape d'association 15 comprenant l'association à chaque activité successive d'au moins un attribut de caractérisation hiérarchique de l'activité comprenant un rang d'exécution de l'activité parmi les activités successives d'un même niveau. - l'étape d'association comprend l'association à chaque activité d'au moins un attribut de caractérisation hiérarchique de l'activité comportant la description d'un chemin 20 de déplacement jusqu'à l'activité donnée dans la hiérarchie d'exécution des activités. - l'étape d'association comprend l'association à chaque activité d'au moins un attribut de caractérisation hiérarchique formé par un critère de dépendance de l'activité donnée par rapport à la ou à chaque autre activité liée au sein de la hiérarchie d'exécution, le critère de dépendance étant avantageusement choisi parmi une 25 dépendance causale, une dépendance non causale, ou une composition. - l'étape d'association comprend l'association à chaque activité d'au moins un attribut de caractérisation hiérarchique comprenant une condition d'activation de l'activité au sein de la hiérarchie d'exécution, la condition d'activation étant avantageusement choisie parmi une condition d'activation spontanée, une condition d'activation sur 30 dépendance de composition, une condition d'activation sur dépendance causale, et/ou une condition d'activation sur la base d'un événement externe aux activités de la hiérarchie d'exécution. - l'étape d'association comprend l'association à chaque activité d'au moins un attribut de qualité de service comprenant un critère de qualité de service temporelle 35 propre à l'exécution de l'activité ou propre à une donnée requise ou produite par l'activité. 3025624 4 - le critère de qualité de service temporelle est choisi parmi un temps de réponse de l'activité suite à son activation, une fréquence minimale ou maximale de production d'une donnée, un vieillissement maximal d'une donnée, et/ou une loi d'occurrence. - l'étape d'association comprend l'association à chaque activité d'au moins un 5 attribut de qualité de service comprenant un critère de qualité de service fonctionnelle de l'activité, le critère de qualité de service fonctionnelle étant un critère non temporel. - le critère de qualité de service fonctionnelle est choisi parmi un domaine possible de variation fonctionnelle d'une donnée, une unité d'une donnée, une précision fonctionnelle d'une donnée, un domaine d'usage fonctionnel d'une donnée, un type de 10 repère/référentiel selon lequel est exprimé une donnée, un niveau de certification logicielle de l'activité et/ou un niveau de sécurité de l'activité ou des données produites ou requises par l'activité. - l'étape d'association comprend l'association d'au moins un attribut de définition du type d'activité, choisi notamment parmi un service, un traitement et/ou un opérateur 15 logique - l'attribut de définition du type d'activité est un service choisi parmi une commande, une demande d'information, en particulier une notification ou une publication, et une transaction. - l'étape de vérification comporte l'établissement, pour chaque acteur défini, d'une 20 liste chronologique d'activités successives exécutées par l'acteur, en utilisant les attributs d'identification d'acteur fonctionnel et les attributs de caractérisation hiérarchique associés aux activités, l'étape de vérification comportant la détermination de la compatibilité d'exécution entre les listes chronologiques. - l'étape de vérification comporte l'affichage d'un diagramme de séquence orienté 25 acteurs obtenu à partir des listes chronologiques établies. - au moins un attribut de qualité de service attribué à l'étape d'attribution est un critère de qualité de service temporelle propre à l'exécution de l'activité ou propre à une donnée requise ou produite par l'activité, l'étape de vérification comportant au moins une détermination d'une compatibilité de performance temporelle d'au moins un groupe 30 d'activités définies pour le système complexe, à partir d'au moins les critères de qualité de service temporelle associés aux activités du groupe d'activités. - la détermination de compatibilité de performance temporelle comporte le calcul d'un temps caractéristique et/ou d'une occurrence d'activation à partir des critères de qualité de service temporelle. 35 - un attribut de qualité de service attribué à l'étape d'attribution est un critère de qualité de service fonctionnelle de l'activité, le procédé comportant une étape de 3025624 5 vérification d'une cohérence de qualité de service fonctionnelle entre les activités liées entre elles d'au moins un groupe d'activités définies pour le système complexe. - l'étape de vérification comporte une phase d'aide à la conception comprenant la suggestion et/ou la modification automatique d'au moins un attribut de qualité de service. 5 L'invention a également pour objet un système de vérification de l'intégrité d'une spécification d'un système complexe, le système de vérification comportant une unité centrale de traitement comprenant une mémoire recevant : - un élément logiciel de fourniture d'une pluralité d'activités propres à être exécutées par le système complexe et d'une hiérarchie d'exécution des activités ; 10 - un élément logiciel de fourniture d'une pluralité d'acteurs fonctionnels unitaires, chaque acteur fonctionnel unitaire étant propre à exécuter au moins une activité ; - un élément logiciel d'association, à chaque activité définie, d'au moins un attribut d'identification de l'acteur fonctionnel dédié à exécuter l'activité, d'au moins un attribut de caractérisation hiérarchique de l'activité dans la hiérarchie d'exécution, et d'au moins un 15 attribut de qualité de service de l'activité et/ou de qualité de service d'une donnée requise ou produite par l'activité. - un élément logiciel de vérification de l'intégrité du système complexe sur la base d'au moins un attribut associé à chaque activité à l'étape d'association, l'unité centrale de traitement comportant un processeur propre à exécuter chaque 20 élément logiciel. L'invention sera mieux comprise à la lecture de la description qui va suivre, donnée uniquement à titre d'exemple, et faite en se référant aux dessins annexés, sur lesquels : - la figure 1 est une vue schématique d'un système de vérification de l'intégrité 25 d'une spécification d'un système technique complexe propre à mettre en oeuvre une méthode de vérification selon l'invention ; - la figure 2 est un diagramme illustrant une pluralité d'activités propres à être exécutées par le système complexe, avec une hiérarchie d'exécution des activités ; - la figure 3 est une vue illustrant une boîte représentative d'une activité et des 30 attributs caractéristiques de l'activité associés à l'activité dans le cadre de la méthode de vérification selon l'invention ; - la figure 4 est une vue d'une boîte représentant une activité de niveau supérieur comportant une pluralité d'activités de niveau inférieur, chacune présentant des attributs associés à l'activité ; 35 - la figure 5 est une vue d'un diagramme de séquence orienté acteurs obtenu par une méthode selon l'invention, le diagramme établissant une liste chronologique 3025624 6 d'activités successives exécutées par chaque acteur du système complexe pour déterminer la compatibilité d'exécution des activités successives ; - la figure 6 est une vue d'un diagramme de vérification d'une cohérence de qualité de service temporelle et fonctionnelle entre les activités d'un système complexe dans une 5 première étape d'une méthode de vérification selon l'invention ; - la figure 7 est une vue analogue à la figure 6, après correction de certaines incompatibilités. Une méthode de vérification de l'intégrité d'une spécification d'un système complexe est mise en oeuvre à l'aide d'un système de vérification 10, illustré 10 schématiquement par la figure 1. Le système complexe est avantageusement un système technique complexe d'une plate-forme, ou est un système défini par un ensemble de plates-formes interagissant les unes avec les autres. La plate-forme est par exemple un aéronef civil ou militaire, ou encore un engin 15 volant, tel qu'un drone. Dans d'autres exemples, la plate-forme est un engin spatial, un engin naval, ou un véhicule terrestre. En référence à la figure 1, le système complexe de la plate-forme est par exemple un système de pilotage de la plate-forme, un système de commande de fonctionnalités d'habitacle de la plate-forme, un système d'actionnement d'éléments mobiles de la plate- 20 forme, ou encore un système de largage d'un objet, tel qu'une arme à partir de la plate- forme, ou encore un système de communication, ou encore un capteur électromagnétique ou optique. Le système de vérification 10 selon l'invention comporte un ordinateur 12, comprenant une unité centrale de traitement 14, un écran d'affichage 16, et une interface 25 homme-machine 18, par exemple un clavier, un écran tactile, et/ou une souris. L'unité centrale 14 comporte un processeur 20 et une mémoire 22 contenant un logiciel propre à être exécuté par le processeur 20 pour la mise en oeuvre de la méthode. La mémoire 22 contient un élément logiciel 24 de fourniture d'une pluralité d'activités propres à être exécutées par le système complexe et de fourniture d'une 30 hiérarchie d'exécution des activités. La mémoire 22 contient en outre un élément logiciel 26 de fourniture d'une pluralité d'acteurs fonctionnels unitaires, chaque acteur fonctionnel unitaire étant propre à exécuter au moins une activité définie par l'élément logiciel 24. Selon l'invention, le système 10 comporte en outre un élément logiciel 28 propre à associer à chaque activité définie par l'élément logiciel 24 au moins un attribut de 35 définition du type d'activité, au moins un attribut d'identification de l'acteur fonctionnel dédié à exécuter l'activité, au moins un attribut de caractérisation hiérarchique de l'activité 3025624 7 dans la hiérarchie d'exécution, et au moins un attribut de qualité de service de l'activité et/ou d'une donnée requise ou produite par l'activité. Le système 10 comporte en outre un élément logiciel 30 de vérification de l'intégrité du système complexe sur la base d'au moins un attribut associé à chaque 5 activité par l'élément logiciel 28. Les activités sont par exemple des services décomposables de manière récursive en sous-services, des traitements au sein de chaque service et des opérateurs logiques. Un service comprend au moins une fonction pouvant être mise en oeuvre sur la base d'un contrat de service entre un client et un fournisseur. Un service peut 10 avantageusement être réutilisé dans différents contextes. Ainsi, des échanges de même nature utilisés par différents composants sont avantageusement regroupés au sein d'un même service. Le service effectue un type donné d'interaction fonctionnelle traduisant une intention fonctionnelle et non pas une solution technique, choisi notamment parmi une 15 commande, une demande d'information, en particulier une notification ou une publication, et une transaction. Une commande permet à un composant client d'ordonner l'exécution d'une action auprès d'un ou plusieurs composants serveur. Cette interaction fonctionnelle comporte au moins une donnée d'entrée, et peut comporter plusieurs données d'entrée. 20 Une demande d'information permet à un composant client de recevoir des données en provenance d'un composant serveur. Cette interaction comporte au moins une donnée de sortie, et avantageusement plusieurs données de sortie. Cette demande peut prendre plusieurs formes, par exemple : - une notification permet à un composant serveur d'informer dès que possible des 25 composants clients qu'un événement particulier s'est produit, - une publication de donnée du serveur vers plusieurs clients. Une transaction permet à un composant client de réaliser un échange complexe avec un composant serveur, ce composant serveur pouvant répondre à cette sollicitation. La forme la plus simple correspond à une requête de la part du client suivi d'une réponse 30 du serveur. La transaction est par exemple de type question/réponse. Cette interaction comporte au moins une donnée d'entrée et de sortie, et peut comporter plusieurs données d'entrée et de sortie. Le type donné d'interaction fonctionnelle effectué par le service correspond à l'intention fonctionnelle que possède l'entité émettrice de l'interaction auprès de l'entité 35 réceptrice de l'interaction. Cette définition par type donné d'interaction fonctionnelle autorise un découplage avec les mécanismes informatiques sous-jacents. 3025624 8 Les opérateurs logiques sont par exemple de type AND, OR ou XOR. Les traitements sont des activités élémentaires au sein d'un service. Les activités sont hiérarchisées en fonction de leur déroulement successif dans une hiérarchie d'exécution, comme illustré par le diagramme d'activités de la figure 2, 5 décrivant le déroulement global des activités mises en oeuvre par le système complexe. Avantageusement, chaque activité présente un niveau, et un rang sur chaque niveau définissant cette hiérarchie d'exécution. Comme illustré par la figure 2, les activités A, D de niveau inférieur peuvent comprendre des activités (B, C) ; (E, F, G, H) de niveau supérieur qui sont des sous- 10 activités d'une activité de niveau inférieur. Le niveau de l'activité est donc défini par un entier caractérisant son degré d'inclusion dans d'autres activités. Le rang d'une activité, pris sur un niveau donné, est défini par un entier caractérisant un lien de dépendance directe sur le niveau donné, dans la hiérarchie d'exécution sur le niveau donné. 15 Dans cet exemple, l'activité A et l'activité D sont de même niveau. Le rang de l'activité D est égal au rang de l'activité A plus 1. L'activité B et l'activité C sont de niveau supérieur à l'activité A. Le rang de l'activité C est égal au rang de l'activité B plus 1. Les activités sont liées entre elles suivant un ou plusieurs chemins hiérarchiques de dépendance, constitués par des liens de dépendance successifs entre deux activités 20 consécutives. Les dépendances entre les activités sont par exemple de type causal, lorsque l'activité précédente est requise pour exécuter l'activité suivante, de type non causal, lorsque l'activité précédente est toujours facultative pour exécuter l'activité suivante, ou de composition, lorsque l'activité suivante est une sous-activité de l'activité précédente. 25 L'élément logiciel de fourniture 24 est ainsi propre à permettre un utilisateur de définir et/ou de charger la pluralité d'activités propres à être exécutées par le système complexe et la hiérarchie d'exécution des activités. Comme indiqué plus haut, l'élément logiciel 26 est propre à définir et/ou à charger une pluralité d'acteurs fonctionnels unitaires propres à exécuter chacun au moins une 30 activité définie à l'aide de l'élément logiciel 24. Selon l'invention, un acteur fonctionnel unitaire est un composant élémentaire ou une pluralité de composants élémentaires, propres à exercer au moins une activité. Chaque acteur fonctionnel unitaire présente un périmètre fonctionnel à fort couplage interne. Un acteur fonctionnel n'est pas une ressource au sein d'un composant, 35 tel qu'une carte dans un calculateur, ou entre composants tel qu'un réseau. 3025624 9 Un acteur fonctionnel est une entité logique indépendante d'une solution technique particulière. Chaque acteur fonctionnel est en charge de l'exécution d'un ensemble de fonctions du système, sans présumer de la façon dont il sera matérialisé. Il est en mesure 5 d'utiliser des services fonctionnels et d'en fournir aux autres acteurs fonctionnels. Chaque acteur fonctionnel (par exemple un système de commande vol), après qu'il a été défini, est ensuite projeté sur un ou plusieurs acteurs physiques (par exemple des calculateurs, des capteurs et des actionneurs). Dans certains cas, un acteur fonctionnel de niveau inférieur comprend 10 avantageusement au moins un sous-acteur de niveau supérieur. Ainsi, lorsque l'acteur de niveau inférieur est un ensemble de composants fonctionnels, les acteurs de niveau supérieur sont les composants individuels unitaires formant l'ensemble de composants. L'élément logiciel de fourniture 26 est ainsi propre à permettre à un utilisateur de définir et/ou de charger la pluralité d'acteurs constituant le système complexe, et 15 éventuellement à fournir le niveau de chaque acteur. Comme indiqué plus haut, l'élément logiciel d'association 28, est propre à permettre à un utilisateur d'associer à chaque activité définie, au moins un attribut de définition du type d'activité, au moins un attribut d'identification de l'acteur fonctionnel dédié à exécuter l'activité définie, au moins un attribut de caractérisation hiérarchique de 20 l'activité définie dans la hiérarchie d'exécution, et au moins un attribut de qualité de service de l'activité et/ou d'une donnée requise ou produite par l'activité. Les attributs de définition du type d'activité comprennent par exemple un indicateur représentatif du type d'activité, l'activité étant par exemple un opérateur logique, un service, ou un traitement, tel que définis plus haut. 25 Les attributs de définition du type d'activité comportent en outre éventuellement un indicateur du caractère décomposable ou non de l'activité en activités de rang supérieur. Selon l'invention, l'attribut d'identification de l'acteur fonctionnel est un indicateur de l'acteur responsable de l'activité. Ainsi, chaque activité définie est associée à un acteur donné. Comme on le verra plus bas, cette association permet, lors de l'étape de 30 vérification, de déterminer pour chaque acteur, la liste d'activités successives que l'acteur doit mettre en oeuvre. Avantageusement, le niveau de l'acteur est cohérent du niveau de l'activité. Ainsi, si une activité est décomposable en plusieurs activités de rang supérieur, l'acteur est généralement décomposable en plusieurs acteurs de rang supérieur. Ceci est illustré par 35 exemple sur la figure 2, dans laquelle l'activité A de rang inférieur est associée à l'acteur 1 (par exemple un système de mission). L'activité A est décomposable en deux activités B, 3025624 10 C de rang supérieur, elles-mêmes associées chacune à un acteur de rang supérieur 1.1 (par exemple la conduite de tir air-sol) et 1.2 (par exemple la conduite de tir air-air) décomposé à partir de l'acteur 1. Les attributs de caractérisation hiérarchique de l'activité comprennent notamment 5 un chemin d'exécution jusqu'à l'activité à partir d'une source constituant l'état initial de niveau 1 et de rang 1 du diagramme d'activité. Ce chemin comporte une liste d'actions de déplacement dans le diagramme. Avantageusement, deux actions de déplacement sont possibles. Ces actions de déplacement sont respectivement un déplacement vertical (montée d'un niveau) ou un 10 déplacement horizontal (passer au rang suivant sur le même niveau). Les attributs de caractérisation hiérarchique comprennent en outre un indicateur représentatif des valeurs du niveau et du rang à la fin du chemin qui mène à l'activité. Les attributs de caractérisation hiérarchique comprennent en outre des indicateurs de spécification des dépendances entre les activités. 15 Les attributs de caractérisation hiérarchique comportent par exemple, pour chaque activité, un indicateur d'identification de la macro-activité de niveau inférieur associée, si l'activité résulte d'une décomposition d'une activité de rang inférieur. Les attributs de caractérisation hiérarchique comportent également avantageusement un indicateur d'identification de l'ensemble des autres activités de 20 même niveau requises pour mettre en oeuvre l'activité, un indicateur d'identification de l'ensemble des autres activités de même niveau toujours facultatives pour mettre en oeuvre l'activité, un indicateur de l'ensemble des autres activités de même niveau pour lesquelles l'activité est requise et/ou un indicateur de relations entre les données d'entrée et les données produites, pour identifier si l'activité est un relais ou une exploitation. 25 Dans un relais, la donnée produite par l'activité est considérée comme la donnée d'entrée vieillie de la durée de l'activité et du temps maximal entre deux occurrences de l'activité physique car la nature de la donnée n'est pas modifiée, seules ses caractéristiques pouvant être affectées (par exemple un changement d'unité). Dans le cas d'une exploitation, la donnée produite par l'activité est considérée comme une nouvelle 30 donnée de vieillissement nul, car la ou les données physiques d'entrée sont modifiées pour produire la nouvelle donnée. Ainsi, lorsque l'ensemble des autres activités requises de même niveau est vide, l'activité est une activité initiale. De même, lorsque l'ensemble des autres activités de même niveau pour lesquelles l'activité est requise est vide, l'activité est une activité 35 terminale. 3025624 11 Les attributs de caractérisation hiérarchique comportent en outre des indicateurs de conditions d'activation. Les conditions d'activation d'une activité sont par exemple spontanées et correspondent dans ce cas à une loi d'occurrence propre de l'activité. 5 En variante, les conditions d'activation sont sur dépendance de composition. Dans ce cas, l'activation d'une activité est déclenchée sur activation de l'activité associée de niveau inférieur et la fin d'une activité de rang inférieur est déterminée sur la base de la fin de toutes les activités terminales associées de rang supérieur. Avantageusement, une macroactivité de rang inférieur est active dès lors que l'une de ses sous-activités de rang 10 supérieur est active. En variante, les conditions d'activation sont sur dépendance causale. Dans ce cas, le sous-ensemble requis des activités potentiellement requises doit être terminé. Les conditions d'activation « spontanée » et d'activation sur « dépendance causale » sont combinables. Par exemple, une activité B présentant une loi propre 15 d'activation de fréquence 50 Hz peut être activée sur l'occurrence de la fin d'une activité requise B. Ceci signifie que la fin de l'activité B sera vérifiée toutes les 20 ms. Encore en variante, la condition d'activation est non définie, par exemple lorsqu'elle provient de l'activité d'un acteur externe non spécifié par l'élément logiciel de fourniture 26. 20 Selon l'invention, les attributs de qualité de service sont associés à l'activité elle- même, et/ou sont associés à chaque donnée d'entrée requise par l'activité et/ou à chaque donnée de sortie produite par l'activité. Selon l'invention, les attributs de qualité de service sont des attributs de qualité de service temporelle ou sont des attributs de qualité de service fonctionnelle et non 25 temporelle. Les attributs de qualité de service temporelle comprennent par exemple une durée maximale d'exécution de l'activité, un temps de réponse d'une activité sollicitée pour une entrée activant l'activité, une fréquence minimale ou/et maximale de production d'une donnée par une activité, un vieillissement maximal d'une donnée produite ou reçue par 30 une activité, et/ou une loi d'occurrence, par exemple le nombre maximal d'occurrences d'appel d'une activité dans une fenêtre temporelle donnée. Selon l'invention, les attributs de qualité de service fonctionnelle et non temporelle comprennent par exemple un domaine de variation fonctionnelle d'une donnée produite ou reçue par une activité, défini avantageusement par une valeur minimale et par une 35 valeur maximale, une unité d'une donnée produite ou reçue par une activité, une précision fonctionnelle d'une donnée produite ou reçue par une activité, éventuellement avec une 3025624 12 quantification statistique à n x a sigma, a étant l'écart type des données produites ou reçues, un domaine d'usage fonctionnel, délimité avantageusement par une valeur minimale et une valeur maximale des entrées reçues par une activité et pour lequel la précision d'une donnée produite par cette activité est garantie à n x a près, dans lequel n 5 est un entier, de préférence inférieure à 3. Les attributs de qualité de services fonctionnelle comprennent également avantageusement le type de repère/référentiel dans lequel est exprimée une donnée produite ou reçue par une activité, par exemple un repère d'orientation au sein de la plate-forme, tel qu'un repère WGS 84, ou un repère RGL porteur. 10 Les attributs de qualité de service fonctionnelle comprennent aussi avantageusement un indicateur du niveau de certification logicielle de l'activité, par exemple au sens de la norme D0178B pour un logiciel, ou/et un indicateur du niveau de sécurité de l'activité dans un référentiel de sécurité des systèmes d'information (SSI) ou un indicateur du niveau de sécurité de fonctionnement (SDF). 15 Un exemple d'association d'attributs à une activité A est illustré schématiquement sur la figure 3, sous forme d'une boîte graphique 50 propre à être affichée sur un écran 16 du système de vérification 10. Dans cet exemple, l'activité A est propre à recevoir des données d'entrée Dl d'une activité amont et à produire des données de sortie DO destinées à une activité aval. 20 L'activité A présente en tant que telle des attributs de qualité de service temporel tel qu'un temps de réponse minimal MRT, une précision P, un vieillissement maximum MA, et une loi d'occurrence caractérisée par une fréquence maximale MO. Les données d'entrée DO présentent des attributs de qualité de service fonctionnelle, à savoir ici un domaine de variations fonctionnelles [-A ; +B] , une unité 25 (ms), et une précision fonctionnelle (10ms). L'activité A peut être décomposée en plusieurs activités de rang supérieur, représentées schématiquement sur la figure 4 et comportant des activités 52 de type opérateur logique et des activités 54 de type service. Chaque activité 54 présente ses propres attributs, notamment ses attributs de qualité de service temporelle et fonctionnelle 30 Comme indiqué précédemment, l'élément logiciel 30 de vérification est propre à vérifier l'intégrité du système complexe sur la base d'au moins un attribut associé à une activité par l'intermédiaire de l'élément logiciel 28. L'élément logiciel 30 est propre par exemple à vérifier le respect des règles d'architecture fonctionnelle, et notamment des dépendances entre les acteurs définis par 35 l'intermédiaire de l'élément logiciel 26. 3025624 13 À cet effet, l'élément logiciel 30 est propre à déterminer, pour chaque acteur défini par l'élément logiciel 26, une liste chronologique des activités associées à cet acteur et les interactions nécessaires avec d'autres listes chronologiques d'acteurs du système pour mettre en oeuvre les différentes activités de la liste chronologique considérée. 5 À cet effet, l'élément fonctionnel 30 est propre à projeter les différentes activités sur les différents acteurs du système, en utilisant les attributs d'identification de l'acteur fonctionnel associés aux différentes activités suivant un axe chronologique, représenté vertical sur la figure 5 et à établir des connexions entre les différentes listes correspondant aux différents acteurs, sur la base notamment des attributs de 10 caractérisation hiérarchique incluant en particulier les critères de dépendances entre les activités. Ceci est illustré notamment par le diagramme de la figure 5, en relation avec l'organisation fonctionnelle illustrée par la figure 2. Ce diagramme illustre la projection des activités principales A et D, et des activités 15 de rang supérieur (B, C) et (E, F, G, H) associées respectivement aux activités A et D sur les acteurs 1 et 2 et les sous acteurs (1.1 ; 1.2) et (2.1 ; 2.1.1 ; 2.1.2) associés respectivement aux acteurs 1 et 2. Comme illustré sur cette figure, l'élément logiciel 30 est donc propre à établir que l'activité A doit être mise en oeuvre avant l'activité D et que la fourniture des données de 20 l'activité B de rang supérieur à l'activité A est nécessaire à la mise en oeuvre de l'activité C. Les données fournies par l'activité A mise en oeuvre par l'acteur 1 sont ensuite délivrées à l'acteur 2, pour lancer l'activité D qui met en oeuvre successivement l'activité E comprenant des activités de niveau supérieur F et G, avant l'activité H. Grâce à ce type de projection, l'élément logiciel 30 est propre à établir d'éventuels 25 défauts de respect de règles de dépendance entre acteurs, ou d'éventuels défauts de chronologie d'exécution d'activité entre les acteurs. Avantageusement, ce type de projection permet en outre de vérifier le respect d'exigences de type « diode fonctionnelle » selon lesquelles un acteur A est autorisé à produire des données consommées par un acteur B, mais dans lesquels la réciproque est 30 interdite, ou de vérifier le respect d'exigences de type « indépendance fonctionnelle » selon lesquelles aucune connexion directe n'est autorisée entre les activités d'un acteur A et celles d'un acteur B. Ce type d'analyse résulte avantageusement selon l'invention de l'association à chaque activité d'au moins un attribut d'identification de l'acteur, et d'au moins un attribut 35 de caractérisation hiérarchique. 3025624 14 Avantageusement, les diagrammes selon la figure 5 sont propres à être affichés sur l'écran 16 du système 10 pour être visualisés par un utilisateur du système 10. L'élément logiciel 30 est également propre à vérifier la compatibilité de l'architecture avec les exigences de performance du système complexe. 5 À cet effet, l'élément logiciel 30 est propre à calculer automatiquement au moins un temps caractéristique d'une chaîne fonctionnelle d'activités, sur la base des attributs de caractérisation hiérarchique et des attributs de qualité de service temporel des activités et/ou des données requises ou fournies par les activités. En particulier, l'élément logiciel 30 est propre à calculer par exemple le temps de 10 réponse globale entre l'occurrence d'un événement et la fin de l'activité terminale cible en mesurant le temps de traversée entre n'importe quelle paire d'activités d'une chaîne fonctionnelle à l'aide des attributs de qualité de service temporelle. L'élément logiciel 30 est propre, en variante ou en complément, à déterminer automatiquement les différents chemins entre n'importe quelle paire d'activité d'une 15 chaîne fonctionnelle et à calculer les temps de traversée en fonction du chemin emprunté, sur la base des attributs de caractérisation hiérarchique et des attributs de qualité de service temporelle associés à chaque activité du chemin. L'élément logiciel 30 est également propre à vérifier automatiquement les exigences de performance liées aux lois d'occurrence d'appel des activités. 20 Avantageusement, l'élément logiciel 30 est propre à stimuler l'assemblage des activités avec des événements d'entrée par exemple définis à l'aide d'un scénario fonctionnel, et à mesurer automatiquement les occurrences d'appel des activités au cours du temps afin de vérifier que les lois d'occurrence sont respectées, en utilisant les attributs de qualité de service temporel définissant ces lois d'occurrence. Dans le cas où les lois d'occurrence ne 25 sont pas respectées, l'élément logiciel 30 est avantageusement propre à proposer des modifications des lois d'occurrence spécifiées sur les activités. Avantageusement, l'élément logiciel 30 est également propre à identifier automatiquement les goulots d'étranglement du système complexe, suivant un critère statique ou suivant un critère dynamique. 30 Selon le critère statique, un seuil réglable d'événements activants en entrée est prédéfini, et l'élément logiciel 30 est propre à déterminer les activités présentant un nombre d'événements activants supérieur à ce seuil réglable. Selon le critère dynamique, les scénarios de stimulation précités sont mis en oeuvre, un seuil d'occurrence d'appel constant ou sous forme de pics est prédéfini, et 35 l'élément logiciel 30 est propre à déterminer les activités dont la loi d'occurrence d'appel est supérieure au seuil prédéfini. 3025624 15 L'élément logiciel 30 est en outre propre à vérifier la cohérence des qualités de service fonctionnelles dans l'assemblage des activités, sur la base des attributs de qualité de service fonctionnelle de chaque activité. En particulier, l'élément logiciel 30 est configuré pour vérifier la cohérence 5 fonctionnelle entre des données de sortie produites par une activité et destinées à être utilisées comme données d'entrée requises dans une autre activité. À cet effet, l'élément logiciel 30 est avantageusement propre à vérifier la cohérence du type de repère/référentiel déclaré au niveau de l'activité productrice d'une donnée et au niveau des activités consommatrices de la donnée, pour s'assurer que le 10 type de repère/référentiel est identique. Il est propre à émettre une alerte si le type de repère/référentiel n'est pas identique. L'élément logiciel 30 est en outre avantageusement propre à vérifier la cohérence de l'unité déclarée au niveau de l'activité productrice d'une donnée et au niveau des activités consommatrices de la donnée pour s'assurer que l'unité est identique. Il est 15 propre à émettre une alerte si l'unité n'est pas identique. L'élément logiciel 30 est avantageusement propre à vérifier également la cohérence du domaine de variation fonctionnelle déclarée au niveau de l'activité productrice d'une donnée et des activités consommatrices de la donnée, pour s'assurer que le domaine de variation fonctionnelle au niveau de l'activité productrice est égal ou 20 inclus dans le domaine de variation fonctionnelle au niveau des activités consommatrices. Il est propre à émettre une alerte si le domaine de variation fonctionnelle au niveau de l'activité productrice n'est pas égal ou inclus dans le domaine de variation fonctionnelle au niveau des activités consommatrices. L'élément logiciel 30 est propre avantageusement à vérifier la cohérence de la 25 précision déclarée au niveau de l'activité productrice d'une donnée et des activités consommatrices de la donnée pour s'assurer que la précision déclarée au niveau de l'activité productrice est égale ou est meilleure que la précision demandée au niveau des activités consommatrices. Il est propre à émettre une alarme si la précision déclarée au niveau de l'activité productrice est inférieure à la précision demandée au niveau des 30 activités consommatrices. L'élément logiciel 30 est avantageusement propre à vérifier la cohérence de niveau de sécurité de système informatique (SSI) pour s'assurer que les données produites par une activité productrice présentent un niveau de sécurité inférieur ou égal au niveau de sécurité des activités consommatrices de la donnée. Il est propre à émettre 35 une alarme si les données produites par une activité productrice présentent un niveau de sécurité supérieure au niveau de sécurité associé aux activités consommatrices. 3025624 16 L'élément logiciel 30 est en outre propre à vérifier la cohérence des niveaux de sécurité de fonctionnement et de certification logicielle entre les différentes activités. Avantageusement, l'élément logiciel 30 est propre à fournir une aide automatisée à la conception des spécifications du système complexe, en réalisant une analyse pour 5 définir/proposer automatiquement des valeurs théoriques de certains attributs, par exemple le vieillissement ou le temps de réponse. À cet effet, une valeur par défaut cohérente de l'attribut est définie sur les activités d'une chaîne fonctionnelle lorsque cet attribut n'a pas encore été renseigné, à partir de la connaissance du vieillissement/temps de réponse maximal autorisé aux bornes de la 10 chaîne complète et des vieillissement/temps de réponse déjà renseignés sur les autres activités composant cette chaîne. L'élément logiciel 30 est également propre, dans certains cas, à proposer des réglages de certains attributs d'une activité de niveau inférieur pour respecter les exigences des mêmes attributs d'activités de niveau supérieur résultant de l'activité de 15 niveau inférieur. Un exemple de mise en oeuvre d'un procédé de vérification selon l'invention va maintenant être décrit, en référence aux figures 6 et 7, qui décrivent les spécifications fonctionnelles d'un système 60 d'une plate-forme aéronautique. Le système 60 est par exemple un système simplifié de visualisation vidéo sur un 20 écran 62 dans un cockpit, sur la base d'un ralliement piloté par l'équipage de l'aéronef, à l'aide d'une commande 64 située par exemple dans le cockpit de l'aéronef. Le système 60 comprend un capteur vidéo 66 et une avionique 68 destinée à réaliser l'interface entre la commande 64, le capteur 66 et l'écran 62 de visualisation. Le procédé comprend initialement la mise en oeuvre de l'élément logiciel 24 par 25 l'utilisateur pour définir une pluralité d'activités Al à A5 mises en oeuvre par le système 60 permettant le pilotage du capteur 66 suivant une direction de ralliement et l'affichage des données vidéo capturées par le capteur 66 sur l'écran de visualisation 62. Dans l'exemple de la figure 6, l'activité Al consiste à interpréter la commande de l'équipage, et l'activité A2 consiste à commander le ralliement du capteur 66. 30 L'activité A3 consiste à exécuter la commande de ralliement, et l'activité A4 consiste à fournir la vidéo produite par le capteur 66. L'activité A5 consiste à afficher la vidéo reçue du capteur 66 sur l'écran 62. Une hiérarchie d'exécution est également définie entre les activités Al à A5. Ici, les activités Al à A3 sont effectuées consécutivement. Les activités A4 et A5 sont 35 effectuées consécutivement. 3025624 17 Le procédé comporte ensuite la mise en oeuvre de l'élément logiciel 26 par l'utilisateur pour définir une pluralité d'acteurs fonctionnels unitaires propres à exécuter les activités Al à A5. Les acteurs fonctionnels unitaires sont formés ici par le capteur 66 et par l'avionique 68. 5 Le procédé comporte alors la mise en oeuvre de l'élément logiciel 28 pour associer à chaque activité Al à A5 au moins un attribut de type d'activité, au moins un attribut d'identification de l'acteur fonctionnel dédié à exécuter l'activité définie, au moins un attribut de caractérisation hiérarchique de l'activité définie dans la hiérarchie d'exécution, et au moins un attribut de qualité de service en entrée ou/et en sortie de l'activité donnée. 10 Dans cet exemple, les activités Al à A3 sont des services de type « commande » et les activités A4 et A5 sont des services de type « publication » et les attributs de type d'activité sont définis en conséquence. Puis, les attributs d'identification de l'acteur fonctionnel dédié sont définis. Les activités A1, A2 et A5 sont attribuées à l'avionique 68 et les activités A3 et A4 sont 15 attribuées au capteur 66. Les attributs de caractérisation hiérarchique sont également définis. Les rangs successifs des activités Al à A5 sont définis, ainsi que leurs dépendances successives. Dans le cas présent, l'activité Al est requise pour effectuer l'activité A2, l'activité A2 est requise pour effectuer l'activité A3, l'activité A4 est requise pour effectuer l'activité A5. 20 Ensuite, au moins un attribut de qualité de service est défini pour chaque activité Al à A5, ainsi que pour chaque donnée produite ou requise par une activité Al à A5. Ces attributs de qualité de service sont définis par exemple sur la base des spécifications initiales de fonctionnement du capteur 66 et de l'avionique 68, tels qu'ils ont été établis avant la mise en oeuvre du procédé selon l'invention, par exemple sur la base 25 des données de construction du capteur 66, et des données de fonctionnement connues de l'avionique 68. Dans l'exemple représente sur la figure 6, un attribut de qualité de service temporelle relatif au temps de réponse maximal MRT de l'activité Al est défini à 160 ms. Des attributs de qualité de service fonctionnelle relatifs au référentiel R et à l'unité 30 U de la donnée de sortie QO de l'activité Al sont définis respectivement comme le référentiel « R1 » et l'unité « degrés ». De même, un attribut de qualité de service temporelle relatif au temps de réponse maximal MRT de l'activité A2 est défini à 1000 ms. Des attributs de qualité de service fonctionnelle relatifs au référentiel R et à l'unité U des données d'entrée de l'activité A2 35 reliée à l'activité Al sont définis respectivement comme le référentiel « R2 » et l'unité « degrés » 3025624 18 Des attributs de qualité de service fonctionnelle relatif au référentiel R, à l'unité U et au domaine D de variations fonctionnelles des données de sortie de l'activité A2 reliée à l'activité A3 sont définis respectivement comme le référentiel « R1 », l'unité « degrés », et le domaine « 360° ». 5 Un attribut de qualité de service temporelle relatif au temps de réponse maximal MRT de l'activité A3 est défini à 2000 ms. Des attributs de qualité de service fonctionnelle relatifs au référentiel R, à l'unité U et au domaine D de variations fonctionnelles des données d'entrée de l'activité A3 reliés à l'activité A2 sont définis respectivement comme le référentiel « R2 », l'unité « radians », et le domaine « 2-rr ». 10 Un attribut de qualité de service temporelle relatif au temps de réponse maximal MRT de l'activité A4 est défini à 160 ms. Des attributs de qualité de service fonctionnelle relatif à la résolution spatiale RS et à la fréquence F des données de sortie de l'activité A4 sont définis respectivement comme « 1200 x 1600 » et 50 Hz. Les attributs de qualité de service des activités A3 et A4 sont ici déterminés sur la 15 base des données de construction du capteur 66. Un attribut de qualité de service temporelle relatif au temps de réponse maximale de l'activité A5 est défini à 160 ms. Des attributs de qualité de service fonctionnelle relatifs à la résolution spatiale RS et à la fréquence F des données d'entrée de l'activité A5 reliée à l'activité A4 sont définis respectivement comme « 1024 x 768 » et « 30 Hz ou 60 Hz ». 20 Ensuite, l'élément logiciel 30 est mis en oeuvre pour vérifier l'intégrité du système complexe 60 sur la base d'au moins un attribut donné à chaque activité Al à A5 à l'étape d'attribution Dans cet exemple, un calcul automatique du temps de traversée globale du système complexe 60 entre une opération de commande d'un ralliement à l'aide de la 25 commande 64 et l'affichage des données sur l'écran 62 est calculé. Ce calcul est effectué en procédant par exemple à la somme des temps de réponse maximale entre toutes les activités le long de la chaîne A1, A2, A3 puis A4, A5. Ce temps de traversée calculé est comparé au temps de traversée souhaité pour la chaîne, ici égal à 5000 ms. Dans l'exemple représenté sur la figure 6, le temps de 30 traversée globale est supérieur au temps souhaité, notamment en raison d'un temps de réponse maximale de l'activité A2 très élevé. L'élément logiciel 30 active donc une alarme relative à cet attribut, par exemple en changeant la couleur de l'attribut sur l'affichage, ou en l'entourant, comme illustré par la figure 6. 35 Par ailleurs, l'élément logiciel 30 vérifie la cohérence des qualités de service fonctionnelles dans l'assemblage des activités Al à A5. 3025624 19 À cet effet, l'élément logiciel 30 vérifie le respect des qualités de service requises et produites par les activités Al à A5, au niveau de leurs interfaces, prises deux à deux. Entre l'activité Al et l'activité A2, les types de référentiels R sont identiques ainsi que les unités U. Aucune incohérence n'est relevée par l'élément logiciel 30. 5 Au contraire, entre l'activité A2 et l'activité A3, les référentiels R sont distincts, les unités U sont distinctes, et les domaines de variations fonctionnelles ne concordent pas. L'élément logiciel 30 émet alors une alarme en changeant la couleur de ces attributs sur un affichage, ou en les entourant comme illustré par la figure 6. De même, entre l'activité A4 et l'activité A5, les résolutions RS ne correspondent 10 pas, et les fréquences d'utilisation F sont distinctes. L'élément logiciel 30 émet alors une alarme en changeant la couleur de ces attributs sur un affichage, ou en les entourant comme illustré par la figure 6. La mise en oeuvre du procédé selon l'invention permet donc au concepteur du système complexe 60 de déterminer a priori les incohérences susceptibles d'exister dans 15 la définition globale du système complexe 60. Une telle détection est effectuée très tôt dans le cycle de développement du système 60, par une définition précise des attributs de chaque activité et des données requises ou produites par les activités. Ceci permet de traiter les problèmes éventuels d'incompatibilité très rapidement, en évitant de découvrir ces problèmes à un stade très tardif de la conception, voire même de la fabrication. 20 Il est ainsi possible de modifier la définition des activités aptes à être modifiées pour les adapter aux activités qui ne peuvent pas être modifiées du fait des acteurs mettant en oeuvre les activités. Par exemple, si le capteur 66 est fourni par un fournisseur sur étagère, sans qu'il soit modifiable, il est possible d'anticiper qu'une modification de l'avionique 68 sera nécessaire, notamment au niveau de l'activité A2 et de l'activité A5 25 pour rendre compatibles les sorties de l'avionique 68 et les entrées de l'avionique 68 avec le fonctionnement du capteur 66. Dans certains cas, compte tenu de l'impossibilité de modifier les attributs relatifs à une activité donnée, certaines incohérences demeurent et restent signalées par le système 10. 30 Éventuellement, le système 10 est propre à être mis en oeuvre pour effectuer une étape supplémentaire de correction ou de suggestion des attributs d'au moins une activité pour les rendre compatibles à la mise en oeuvre dans un système complexe 60. Une telle correction est illustrée par exemple par la figure 7. Le système 10 est ainsi propre à définir ou/et proposer automatiquement des 35 valeurs de certains attributs de qualité de service, par exemple en terme de vieillissement ou de temps de réponse. 3025624 20 Le procédé selon l'invention améliore donc grandement le processus de spécification amont des systèmes techniques complexes, en proposant une formalisation d'exigences temporelles et fonctionnelles de haut niveau pour le comportement de ces systèmes. Cette formalisation permet le développement d'outils adaptés pour aider à la 5 conception et à la vérification des spécifications système. Le procédé selon l'invention est particulièrement efficace pour faire apparaître une vérification de la cohérence des actions réalisées par chaque acteur macroscopique du système, au sein d'une vue orientée acteurs, par des diagrammes de séquences multitâches permettant de contrôler le respect des règles d'architectures fonctionnelles. 10 Le procédé selon l'invention est également apte à analyser automatiquement la cohérence entre les exigences globales du système complexe et les exigences projetées au niveau de chaque acteur du système complexe, tant sur le plan temporel que sur le plan fonctionnel. Le procédé selon l'invention contribue donc à réduire grandement le coût de 15 développement d'un système complexe 60 et le temps associé pour un tel développement, et à limiter les risques d'erreurs et d'incompatibilités techniques lors de la conception. 20 25 REVENDICATIONS1.- Méthode mise en oeuvre par ordinateur de vérification de l'intégrité d'une spécification d'un système complexe (60), la méthode comportant les étapes suivantes : - fourniture d'une pluralité d'activités (Al à A5) propres à être exécutées par le système complexe (60) et d'une hiérarchie d'exécution des activités (Al à A5) ; la méthode étant caractérisée par les étapes suivantes : - fourniture d'une pluralité d'acteurs fonctionnels (66, 68) unitaires, chaque acteur fonctionnel unitaire étant propre à exécuter au moins une activité (Al à A5) ; - association, à chaque activité définie (Al à A5), d'au moins un attribut d'identification de l'acteur fonctionnel dédié à exécuter l'activité (Al à A5), d'au moins un attribut de caractérisation hiérarchique de l'activité (Al à A5) dans la hiérarchie d'exécution, et d'au moins un attribut de qualité de service de l'activité (Al à A5) et/ou de qualité de service d'une donnée requise ou produite par l'activité (Al à A5) ; - vérification de l'intégrité du système complexe (60) sur la base d'au moins un attribut associé à chaque activité (Al à A5) à l'étape d'association. 2. - Méthode selon la revendication 1, dans laquelle l'étape de fourniture des activités (Al à A5) comporte la fourniture d'au moins une première activité de niveau inférieur et d'au moins une deuxième activité de niveau supérieur constituant une sous- activité de la première activité, l'étape d'association comprenant l'association à la première activité et à la deuxième activité d'au moins un attribut de caractérisation hiérarchique de l'activité comprenant le niveau de l'activité. 3. - Méthode selon la revendication 1 ou 2, dans laquelle l'étape de fourniture des activités (Al à A5) comporte la fourniture d'une pluralité d'activités de même niveau propres à être exécutées successivement, l'étape d'association comprenant l'association à chaque activité successive d'au moins un attribut de caractérisation hiérarchique de l'activité comprenant un rang d'exécution de l'activité parmi les activités successives d'un même niveau. 4. - Méthode selon l'une quelconque des revendications précédentes, dans laquelle l'étape d'association comprend l'association à chaque activité d'au moins un attribut de caractérisation hiérarchique de l'activité comportant la description d'un chemin de déplacement jusqu'à l'activité donnée dans la hiérarchie d'exécution des activités (Al à A5). 5. - Méthode selon l'une quelconque des revendications précédentes, dans laquelle l'étape d'association comprend l'association à chaque activité d'au moins un attribut de caractérisation hiérarchique formé par un critère de dépendance de l'activité 3025624 22 donnée par rapport à la ou à chaque autre activité liée au sein de la hiérarchie d'exécution, le critère de dépendance étant avantageusement choisi parmi une dépendance causale, une dépendance non causale, ou une composition. 6. - Méthode selon l'une quelconque des revendications précédentes, dans 5 laquelle l'étape d'association comprend l'association à chaque activité d'au moins un attribut de caractérisation hiérarchique comprenant une condition d'activation de l'activité au sein de la hiérarchie d'exécution, la condition d'activation étant avantageusement choisie parmi une condition d'activation spontanée, une condition d'activation sur dépendance de composition, une condition d'activation sur dépendance causale, et/ou 10 une condition d'activation sur la base d'un événement externe aux activités de la hiérarchie d'exécution. 7. - Méthode selon l'une quelconque des revendications précédentes, dans laquelle l'étape d'association comprend l'association à chaque activité d'au moins un attribut de qualité de service comprenant un critère de qualité de service temporelle 15 propre à l'exécution de l'activité ou propre à une donnée requise ou produite par l'activité. 8. - Méthode selon la revendication 7, dans laquelle le critère de qualité de service temporelle est choisi parmi un temps de réponse de l'activité suite à son activation, une fréquence minimale ou maximale de production d'une donnée, un vieillissement maximal d'une donnée, et/ou une loi d'occurrence. 20 9. - Méthode selon l'une quelconque des revendications précédentes, dans laquelle l'étape d'association comprend l'association à chaque activité d'au moins un attribut de qualité de service comprenant un critère de qualité de service fonctionnelle de l'activité, le critère de qualité de service fonctionnelle étant un critère non temporel. 10. - Méthode selon la revendication 9, dans laquelle le critère de qualité de 25 service fonctionnelle est choisi parmi un domaine possible de variation fonctionnelle d'une donnée, une unité d'une donnée, une précision fonctionnelle d'une donnée, un domaine d'usage fonctionnel d'une donnée, un type de repère/référentiel selon lequel est exprimé une donnée, un niveau de certification logicielle de l'activité et/ou un niveau de sécurité de l'activité ou des données produites ou requises par l'activité. 30 11. - Méthode selon l'une quelconque des revendications précédentes, dans laquelle l'étape d'association comprend l'association d'au moins un attribut de définition du type d'activité, choisi notamment parmi un service, un traitement et/ou un opérateur logique 12. - Méthode selon l'une quelconque des revendications précédentes dans 35 laquelle l'attribut de définition du type d'activité est un service choisi parmi une 3025624 23 commande, une demande d'information, en particulier une notification ou une publication, et une transaction. 13. - Méthode selon l'une quelconque des revendications précédentes, dans laquelle l'étape de vérification comporte l'établissement, pour chaque acteur défini, d'une 5 liste chronologique d'activités (Al à A5) successives exécutées par l'acteur, en utilisant les attributs d'identification d'acteur fonctionnel et les attributs de caractérisation hiérarchique associés aux activités (Al à A5), l'étape de vérification comportant la détermination de la compatibilité d'exécution entre les listes chronologiques. 14.- Méthode selon la revendication 13, dans laquelle l'étape de vérification 10 comporte l'affichage d'un diagramme de séquence orienté acteurs obtenu à partir des listes chronologiques établies. 15. - Méthode selon l'une quelconque des revendications précédentes, dans laquelle au moins un attribut de qualité de service attribué à l'étape d'attribution est un critère de qualité de service temporelle propre à l'exécution de l'activité ou propre à une 15 donnée requise ou produite par l'activité, l'étape de vérification comportant au moins une détermination d'une compatibilité de performance temporelle d'au moins un groupe d'activités définies pour le système complexe (60), à partir d'au moins les critères de qualité de service temporelle associés aux activités du groupe d'activités. 16. - Méthode selon la revendication 15, dans laquelle la détermination de 20 compatibilité de performance temporelle comporte le calcul d'un temps caractéristique et/ou d'une occurrence d'activation à partir des critères de qualité de service temporelle. 17. - Méthode selon l'une quelconque des revendications précédentes, dans laquelle un attribut de qualité de service attribué à l'étape d'attribution est un critère de qualité de service fonctionnelle de l'activité, le procédé comportant une étape de 25 vérification d'une cohérence de qualité de service fonctionnelle entre les activités liées entre elles d'au moins un groupe d'activités définies pour le système complexe (60). 18.- Méthode selon l'une quelconque des revendications précédentes dans laquelle l'étape de vérification comporte une phase d'aide à la conception comprenant la suggestion et/ou la modification automatique d'au moins un attribut de qualité de service. 30 19. - Système de vérification (10) de l'intégrité d'une spécification d'un système complexe (60), le système de vérification comportant une unité centrale de traitement (14) comprenant une mémoire (22) recevant : - un élément logiciel (24) de fourniture d'une pluralité d'activités (Al à A5) propres à être exécutées par le système complexe (60) et d'une hiérarchie d'exécution des 35 activités (Al à A5) ; 3025624 24 - un élément logiciel (26) de fourniture d'une pluralité d'acteurs fonctionnels (66, 68) unitaires, chaque acteur fonctionnel unitaire étant propre à exécuter au moins une activité ; - un élément logiciel (28) d'association, à chaque activité définie, d'au moins un 5 attribut d'identification de l'acteur fonctionnel dédié à exécuter l'activité, d'au moins un attribut de caractérisation hiérarchique de l'activité dans la hiérarchie d'exécution, et d'au moins un attribut de qualité de service de l'activité et/ou de qualité de service d'une donnée requise ou produite par l'activité. - un élément logiciel (30) de vérification de l'intégrité du système complexe (60) 10 sur la base d'au moins un attribut associé à chaque activité à l'étape d'association, l'unité centrale de traitement (14) comportant un processeur (20) propre à exécuter chaque élément logiciel (24 à 30).