FR2864285A1 - Procede de remontee automatique des exigences de modeles uml et de leur mise a jour - Google Patents
Procede de remontee automatique des exigences de modeles uml et de leur mise a jour Download PDFInfo
- Publication number
- FR2864285A1 FR2864285A1 FR0315036A FR0315036A FR2864285A1 FR 2864285 A1 FR2864285 A1 FR 2864285A1 FR 0315036 A FR0315036 A FR 0315036A FR 0315036 A FR0315036 A FR 0315036A FR 2864285 A1 FR2864285 A1 FR 2864285A1
- Authority
- FR
- France
- Prior art keywords
- uml
- requirements
- module
- doors
- model
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Stored Programmes (AREA)
Abstract
La présente invention est relative à un procédé de remontée automatique des exigences de modèles UML et de leur mise à jour, et selon une caractéristique de l'invention, on crée les exigences lors de la création des éléments du modèle UML, que, lorsque le modèle est stabilisé, on l'exporte vers l'outil de gestion d'exigences, on crée ainsi, automatiquement, un module de navigation contenant tous les objets UML pointés par au moins une exigence et un module d'exigences de niveau n pouvant lui-même être lié par la suite à d'autres modules d'exigences. En particulier le lien avec le module d'exigence amont de niveau n+1 pourra être automatisé grâce l'utilitaire DOORS TREK « Create links by key ... ».
Description
PROCEDE DE REMONTEE AUTOMATIQUE DES EXIGENCES DE
MODELES UML ET DE LEUR MISE A JOUR
La présente invention se rapporte à un procédé de remontée automatique des exigences de modèles UML créés par un outil de modélisation, et de leur mise à jour.
Lorsque l'on modélise un projet, quel qu'il soit, on utilise actuellement, de façon préférentielle le langage UML, mis en oeuvre dans un outil de modélisation, tel que RHAPSODY de la société I-LOGIX. La modélisation nécessite la prise en compte d'exigences, et à cet effet, on dispose d'un outil de gestion d'exigences tel que DOORS de la société TELELOGIC. Toutefois, il n'existe aucun moyen permettant d'assurer la traçabilité des informations du modèle pour en informer l'outil de gestion d'exigences.
La présente invention a pour objet un procédé de remontée automatique des exigences de modèles UML vers un outil de gestion d'exigences pour permettre leur mise à jour, et ce, sans limitation sur la pose d'exigences et leur nombre.
Le procédé conforme à l'invention est caractérisé en ce que l'on crée les exigences lors de la création des éléments du modèle UML, qu'une fois le modèle stabilisé, on exporte vers l'outil de gestion d'exigences les exigences saisies dans le modèle et l'on crée automatiquement un module de navigation contenant tous les objets UML pointés par au moins une exigence et un module d'exigences de niveau n. Avantageusement, on lie le module d'exigences de niveau n à un autre module d'exigences amont de niveau n+l défini précédemment.
La présente invention sera mieux comprise à la lecture de la description détaillée d'un mode de réalisation, pris à titre d'exemple non limitatif et illustré par 25 le dessin annexé, sur lequel: la figure 1 est un blocdiagramme simplifié d'un exemple de mise en oeuvre du procédé de l'invention, la figure 2 est un diagramme illustrant la première importation d'un modèle UML dans un gestionnaire d'exigences, selon le procédé de 30 l'invention, la figure 3 est un diagramme illustrant une nouvelle importation, dans les mêmes conditions (import niveau 1) qu'en figure 2, la figure 4 est un diagramme illustrant une nouvelle importation d'un modèle UML, mais à un niveau différent (niveau 2) de celui de la figure 3, - la figure 5 est un diagramme illustrant la pose automatique de liens 5 de traçabilité depuis le module vers d'autres modules DOORS selon le procédé de l'invention, la figure 6 est un diagramme en quatre étapes, illustrant les opérations successives intervenant lors d'une nouvelle itération d'import d'un modèle UML dans un gestionnaire d'exigences, selon le procédé de l'invention, et les figures 7 et 8 sont des diagrammes montrant deux états d'un module d'Exigences du gestionnaire d'exigences, respectivement avant et après une nouvelle importation, selon le procédé de l'invention.
On a représenté en figure 1 les principaux éléments de l'architecture du système mettant en oeuvre l'invention. Ces éléments sont: un modeleur UML (1), qui est, de préférence, l'outil RHAPSODY , un outil (2) de gestion d'Exigences UML, qui est, dans le cas présent, l'outil DOORS, un atelier d'utilitaires (3), qui est ici DOORS Custom de la société THALES AVIONICS et un connecteur universel de connexion inter-outils (4) PAPEETE (faisant l'objet d'une demande de brevet de la société THALES). L'importation de modèles UML dans l'outil DOORS depuis l'outil RHAPSODY se fait de la manière suivante.
Lors de la première importation d'un modèle UML de RHAPSODY vers DOORS (voir figure 2), il y a création de deux modules dans DOORS: Un module (5) d'Exigences UML_DOORS correspondant au niveau de spécification (niveau 1 pour l'exemple représenté). Ce module de DOORS contient l'ensemble des Exigences UML_DOORS qui représentent les Exigences UML stéréotypées avec le niveau de spécification choisi lors de l'importation. Ce module 5 contient ici les exigences de niveau 1 du modèle.
Ces exigences sont, pour cet exemple: HLR_0l, LLR 01 et HLR 03.
Un Module de navigation UML (Surrogate Module UML) (6) : ce module de DOORS contient une représentation de l'ensemble des éléments UML du modèle créé dans RHAPSODY. Cette représentation est sous forme de référence vers les éléments UML. Ce module a comme objectif de permettre la navigation entre RHAPSODY et DOORS (comme exposé dans le manuel DOORS Custom User Guide ).
Les importations suivantes du même modèle UML peuvent être de deux types différents. Soit, comme représenté sur l'exemple de la figure 3, il s'agit du même niveau de spécification que précédemment (niveau 1 en l'occurrence). Dans ce cas, à la fois le Module d'Exigences UML_DOORS et le Module de navigation UML sont mis à jour en fonction des modifications apportées au modèle UML. Soit, comme représenté en figure 4, ils portent sur un niveau de spécification différent (niveau 2 en l'occurrence, pour lequel il s'agit des exigences HLR 02 et LLR 02) . Dans ce cas, il y a création d'un module d'Exigences UML_DOORS correspondant au niveau de spécification sélectionné (niveau 2) lors de l'importation et mise à jour du Module de navigation UML en fonction des modifications apportées au modèle.
Les liens entre une Exigence UML-DOORS et sa représentation dans le Module de navigation UML sont créés automatiquement lors de l'importation du modèle UML sous DOORS. Ces liens permettent la navigation entre les deux outils RHAPSODY et DOORS.
La création de liens vers d'autres modules d'exigences DOORS est réalisée de la façon suivante. Après avoir effectué une importation d'un modèle RHAPSODY dans DOORS, il est possible de créer automatiquement les liens entre des Exigences du module crée automatiquement et des Exigences d'un autre module DOORS ou celles d'un autre module crée automatiquement antérieurement. Cette création automatique de liens est effectuée avec l'utilitaire DOORS TREK Create links by key... . Ainsi, comme représenté en figure 5, lors de l'importation du niveau de spécification X, on crée des liens de traçabilité entre le module d'Exigences de niveau X et, d'une part, le module d'exigences de niveau X-1, et d'autre part un module de niveau de spécification d'exigences tout à fait autre (SSS dans ce cas) . La gestion des modifications apportées aux exigences relatives au modèle UML est réalisée de la façon suivante.
La gestion des modifications des exigences sous-entend la capacité de naviguer entre l'outil RHAPSODY et l'outil DOORS. En effet, il faut être capable d'analyser rapidement l'impact de modifications des exigences amont sur le modèle UML afin d'appliquer les modifications adéquates sur les éléments mis en cause par cet impact et inversement.
Pour réaliser la modification d'Exigences UML DOORS, il ne faut pas modifier sous DOORS les attributs des Exigences UML_DOORS spécifiées dans les Exigences UML (comme expliqué dans le Guide de modélisation UML des exigences). Ces modifications ne doivent être effectuées que dans le modèle UML sous RHAPSODY.
A la suite d'une modification d'Exigences DOORS, il faut pour chaque Exigence UML-DOORS qui la raffine (comme expliqué dans le Guide DOORS) : 15 1. naviguer, à l'aide de l'outil de navigation DOORS/RHAPSODY, vers l'Exigence UML associée, 2. analyser l'impact sur la modélisation de la modification à effectuer, 3. mettre à jour le modèle 4. mettre à jour l'Exigence UML dans le modèle, 5. importer le modèle modifié sous DOORS, 6. mettre à jour les attributs de gestion des exigences sous DOORS, Toute modification de modèle doit être effectuée en prenant en compte les Exigences UML qui ont une répercussion sur les éléments modifiés de manière à maintenir la cohérence entre les Exigences UML et le modèle UML.
Pour ce faire, il faut consulter pour chaque élément UML modifié l'ensemble des Exigences UML qui ont une répercussion sur lui, pour vérifier que ces exigences sont toujours cohérentes avec la modification effectuée sur l'élément.
Pour gérer les évolutions d'un modèle se traduisant par des modifications successives, on examine d'abord le mécanisme d'importations successives.
L'importation d'un modèle UML sous DOORS est effectuée en plusieurs étapes. Ces étapes sont invisibles pour l'utilisateur, car elles sont effectuées en une seule fois lors de l'importation. On a illustré en figure 6 les principales étapes de ce mécanisme d'importations successives. Cette figure comporte quatre diagrammes (référencés 1 à 4).
A l'état initial (1), on a, dans DOORS, un module Exigences UML_DOORS lié à un module de navigation UML (par des liens de navigation), ces modules générés automatiquement lors d'un import antérieur sont qualifiés d < anciens .
Lorsqu'arrive une demande d'importation du modèle UML visant une mise à jour de ces deux modules, les actions suivantes sont engagées: - création de deux nouveaux modules (2): o un Module Exigences UML_DOORS contenant l'ensemble des Exigences UML_DOORS correspondant à toutes les Exigences UML contenues dans le nouveau modèle UML importé, o un module de navigation UML représentant le nouveau modèle UML, suppression de l'ancien module de navigation UML et de tous les éléments 15 DOORS le concernant. (3), - analyse des mises à jour à effectuer entre les deux Modules Exigences UML DOORS, mise à jour de l'ancien Module Exigences UML_DOORS (4), - suppression du nouveau Module Exigences UML_DOORS (4), création des liens de navigation entre l'ancien Module Exigences UML DOORS et le nouveau Module de navigation UML.
L'utilisateur doit ensuite mettre à jour les liens de traçabilité avec les exigences amont. Cette étape n'est pas incluse dans l'importation du modèle UML, mais doit être effectuée séparément après chaque importation à l'aide de l'utilitaire DOORS TREK Create links by key... .
La gestion des évolutions peut concerner ensuite l'ajout d'exigences. Si l'on ajoute une Exigence UML dans le modèle, il y aura, lors de l'importation suivante, pour un même niveau de spécification, et un même modèle UML, création d'un nouvel objet DOORS dans le Module de navigation UML et dans le Module de navigation UML correspondants.
A titre d'exemple simplifié, on a représenté en figure 7 l'état du Module Exigences UML_DOORS avant une nouvelle importation, et qui comporte les Exigences EXI01 à EXI_04 (en version vl). On a représenté en figure 8 l'état de ce Module après une nouvelle importation, EXI_02 étant modifiée (versions vl et v2 coexistantes), et avec une nouvelle Exigence EXI_05 (version v2).
De même, si une Exigence UML déjà importée lors d'une précédente importation est supprimée dans le modèle, lors de l'importation suivante, l'Exigence UMLDOORS correspondant à l'Exigence UML, ne sera pas supprimée du Module Exigences UML DOORS, mais prendra le statut OBSOLETE et tous ses liens DOORS seront détruits.
Si une Exigence UML déjà importée lors d'une précédente importation est modifiée dans le modèle, il y aura, lors de l'importation suivante, : création d'une nouvelle Exigence UML-DOORS correspondant à l'Exigence UML - création d'un lien entre l'ancienne et la nouvelle Exigence UML-DOORS transfert des liens entrants et sortants de l'ancienne vers la nouvelle Exigence
UML-DOORS
mise à jour du numéro de version sur la nouvelle Exigence UML-DOORS par rapport à l'ancienne.
On obtient ainsi un historique des modifications d'exigences.
En conclusion, le procédé de l'invention permet de remonter automatiquement sous DOORS toutes les informations de traçabilité rentrées dans le modèle UML. Il organise automatiquement sous DOORS tout le processus nécessaire à la navigation entre les deux outils via le connecteur PAPEETE ou un lien XML (ou équivalent) . Enfin il organise automatiquement toute la mise à jour des modules lors des différentes évolutions du modèle UML.
Claims (6)
1. Procédé de remontée automatique des exigences de modèles UML créées par un outil de modélisation, et de leur mise à jour, caractérisé en ce que l'on crée les exigences lors de la création des éléments du modèle UML, que, lorsque le modèle est stabilisé, on exporte vers l'outil de gestion d'exigences les exigences saisies dans le modèle, et que l'on crée, automatiquement, un module de navigation contenant tous les objets UML pointés par au moins une exigence et un module d'exigences de niveau n.
2. Procédé selon la revendication 1, caractérisé en ce qu'on lie le module d'exigences de niveau n à un autre module d'exigences amont de niveau n+l défini précédemment.
3. Procédé selon la revendication 1 ou 2, caractérisé en ce que, lors de modifications d'exigences, on effectue ces modifications dans le modèle UML, avec l'outil de modélisation.
4. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'outil de modélisation est RHAPSODY et que l'outil de gestion des exigences est DOORS .
5. Procédé selon la revendication 4, caractérisé en ce que lors d'importations successives, on réalise les étapes suivantes: - création de deux nouveaux modules: ^ un Module Exigences UML_DOORS contenant l'ensemble des Exigences UML DOORS correspondant à toutes les Exigences UML contenues dans le modèle UML importé, ^ un module de navigation UML représentant le nouveau modèle UML, suppression de l'ancien module de navigation UML et de tous les éléments DOORS le concernant, - analyse des mises à jour à effectuer entre les deux Modules Exigences UML DOORS, mise à jour de l'ancien Module Exigences UML DOORS, - suppression du nouveau Module Exigences UML DOORS, - création des liens de navigation entre l'ancien Module Exigences UML DOORS et le nouveau Module de navigation UML.
6. Procédé selon la revendication 4 ou 5, caractérisé en ce que si une Exigence UML déjà importée lors d'une précédente importation est modifiée dans le modèle, il y aura, lors de l'importation suivante, : o création d'une nouvelle Exigence UML-DOORS correspondant à l'Exigence UML o création d'un lien entre l'ancienne et la nouvelle Exigence UMLDOORS o transfert des liens entrants et sortants de l'ancienne vers la nouvelle 15 Exigence UML-DOORS o mise à jour du numéro de version sur la nouvelle Exigence UMLDOORS par rapport à l'ancienne.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0315036A FR2864285A1 (fr) | 2003-12-19 | 2003-12-19 | Procede de remontee automatique des exigences de modeles uml et de leur mise a jour |
PCT/EP2004/053341 WO2005069127A2 (fr) | 2003-12-19 | 2004-12-08 | Procede de remontee automatique des exigences de modeles uml et de leur mise a jour |
US10/583,367 US20070168921A1 (en) | 2003-12-19 | 2004-12-08 | Method for automatic recovery of uml model requirements and updating thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0315036A FR2864285A1 (fr) | 2003-12-19 | 2003-12-19 | Procede de remontee automatique des exigences de modeles uml et de leur mise a jour |
Publications (1)
Publication Number | Publication Date |
---|---|
FR2864285A1 true FR2864285A1 (fr) | 2005-06-24 |
Family
ID=34630367
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
FR0315036A Withdrawn FR2864285A1 (fr) | 2003-12-19 | 2003-12-19 | Procede de remontee automatique des exigences de modeles uml et de leur mise a jour |
Country Status (3)
Country | Link |
---|---|
US (1) | US20070168921A1 (fr) |
FR (1) | FR2864285A1 (fr) |
WO (1) | WO2005069127A2 (fr) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2863386A1 (fr) | 2003-12-09 | 2005-06-10 | Thales Sa | Procede de generation de code c a partir de specifications uml |
FR2864284B1 (fr) * | 2003-12-19 | 2006-04-21 | Thales Sa | Procede de verification de regles sur les modeles uml |
US7908583B2 (en) * | 2005-12-29 | 2011-03-15 | International Business Machines Corporation | Evidentiary enrichment of traceability links between software specification requirements |
US8245182B2 (en) * | 2008-04-14 | 2012-08-14 | International Business Machines Corporation | Class selectable design sharing |
US9176937B2 (en) * | 2012-04-05 | 2015-11-03 | International Business Machines Corporation | Ensuring user interface specification accurately describes user interface after updates to user interface |
US10579340B2 (en) * | 2012-06-06 | 2020-03-03 | International Business Machines Corporation | Model element characteristic preservation in modeling environments |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2353613A (en) * | 1999-08-24 | 2001-02-28 | Quality Systems & Software Ltd | Information processor stores information objects and associated attributes |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000194539A (ja) * | 1998-12-24 | 2000-07-14 | Nec Corp | ソフトウェアインストールシステムおよびソフトウェアインストール方法 |
EP1205841A1 (fr) * | 2000-10-26 | 2002-05-15 | Ebeon Research & Development Limited | Procédé pour le développement du logiciel |
US8479189B2 (en) * | 2000-11-17 | 2013-07-02 | Hewlett-Packard Development Company, L.P. | Pattern detection preprocessor in an electronic device update generation system |
US7480893B2 (en) * | 2002-10-04 | 2009-01-20 | Siemens Corporate Research, Inc. | Rule-based system and method for checking compliance of architectural analysis and design models |
US7003534B2 (en) * | 2002-11-18 | 2006-02-21 | Innopath Software, Inc. | Generating difference files using module information of embedded software components |
US7546575B1 (en) * | 2003-06-09 | 2009-06-09 | Dillman Frederick J | System and method for using blueprints to provide a software solution for an enterprise |
US20050091642A1 (en) * | 2003-10-28 | 2005-04-28 | Miller William L. | Method and systems for learning model-based lifecycle diagnostics |
US20050166178A1 (en) * | 2004-01-23 | 2005-07-28 | Masticola Stephen P. | Process for global software development |
-
2003
- 2003-12-19 FR FR0315036A patent/FR2864285A1/fr not_active Withdrawn
-
2004
- 2004-12-08 WO PCT/EP2004/053341 patent/WO2005069127A2/fr active Application Filing
- 2004-12-08 US US10/583,367 patent/US20070168921A1/en not_active Abandoned
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2353613A (en) * | 1999-08-24 | 2001-02-28 | Quality Systems & Software Ltd | Information processor stores information objects and associated attributes |
Non-Patent Citations (3)
Title |
---|
"I-Logix, Inc. - Rhapsody Overview", INTERNET, 23 August 2000 (2000-08-23), XP002972804 * |
EDER K ET AL: "Requirements engineering in development of automotive and aeronautical systems", ELEKTRONIK (GERMANY), ELEKTRONIK, 23 JULY 2002, WEKA-FACHZEITSCHRIFTEN, GERMANY, vol. 51, no. 15, 23 July 2002 (2002-07-23), pages 74 - 77, XP002293367, ISSN: 0013-5658 * |
RICHARD WATSON: "Smarter Requirements Managment with Intelligent Traceability", 31 July 2003 (2003-07-31), pages 1 - 16, XP002293366, Retrieved from the Internet <URL:http://www.telelogic.com/download/paper/Intelligent_Traceability_White_Paper.pdf?CFID=8181463&CFTOKEN=19802674fe2fd9da-441DFD22-3477-99FC-6EC39F28241538A1> [retrieved on 20040819] * |
Also Published As
Publication number | Publication date |
---|---|
WO2005069127A3 (fr) | 2006-08-24 |
WO2005069127A2 (fr) | 2005-07-28 |
US20070168921A1 (en) | 2007-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9348857B2 (en) | Probabilistically finding the connected components of an undirected graph | |
US10877846B2 (en) | Performing a closure merge operation | |
EP1387304A1 (fr) | Procédé de vérification fonctionnelle d'un modèle de circuit intégré pour constituer une plate-forme de vérification, équipement émulateur et plate-forme de vérification | |
Hagino | Practical Node-RED Programming: Learn powerful visual programming techniques and best practices for the web and IoT | |
FR2864285A1 (fr) | Procede de remontee automatique des exigences de modeles uml et de leur mise a jour | |
Verona | Practical DevOps: Implement DevOps in your organization by effectively building, deploying, testing, and monitoring code | |
US9916155B2 (en) | Projects browser for development environments | |
FR3021769A1 (fr) | Dispositif et procede de generation d'au moins un fichier informatique pour la realisation d'une interface graphique d'un equipement electronique, et produit programme d'ordinateur associe | |
FR2931272A1 (fr) | Procede d'import export de donnees d'une base de donnees | |
EP3881515B1 (fr) | Système de supervision formelle de communications | |
Hoffman | Building Microservices with ASP. NET Core: Develop, Test, and Deploy Cross-platform Services in the Cloud | |
EP3171284A1 (fr) | Procédé de mise à jour d'un enregistrement dans une base de données par un dispositif de traitement de données | |
EP3874368B1 (fr) | Executer des portions de code sur des ressources d´execution | |
WO2004059617A1 (fr) | Production automatique d'interfaces de reconnaissance vocale pour un domaine d'application | |
WO2010119208A1 (fr) | Procede d'assistance au developpement ou a l'utilisation d'un systeme complexe | |
FR2825491A1 (fr) | Procede d'implementation d'un pluralite d'interfaces d'objets | |
Mistry | Expert AWS Development: Efficiently develop, deploy, and manage your enterprise apps on the Amazon Web Services platform | |
EP3475847A1 (fr) | Serveur de statistiques pour optimisation de requêtes client-serveur | |
EP1158394A1 (fr) | Interface graphique permettant des associations entre éléments graphiques | |
EP3411821A1 (fr) | Procédé de stockage de contenus, procédé de consultation de contenus, procédé de gestion de contenus et lecteurs de contenus | |
FR3024788A1 (fr) | Procede de verification de tracabilite de premieres instructions en un langage de programmation procedurale generees a partir de secondes instructions en un langage de modelisation | |
Stetcko | Rework of a Legacy Application for Telecommunication Equipment Data Collection | |
FR3118815A1 (fr) | Estimation de la progression de l'exécution d'une tâche logicielle | |
Hagemann | Component-based Rails applications: large domains under control | |
WO2012149977A1 (fr) | Procede et systeme correspondant de generation d'une application logicielle manipulant des donnees structurees. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ST | Notification of lapse |
Effective date: 20120831 |