DE | EN

DNGMig

Anleitung

LERNZIEL

In dieser Anleitung lernen Sie, wie Sie ein Anforderungsdokument von DOORS 9 nach DOORS Next Generation mittels DNGMig migrieren. DNGMig ist das Freeware-Migrationswerkzeug von Individual Standard.

BIG PICTURE: MIGRATION ALS ETL-PROZESS

Die Grundidee hinter DNGMig ist, dass eine Migration immer auch eine Transformation mit sich bringt. Dabei setzen wir auf einen ETL-Prozess: Extract, Transform, Load. Die Philosophie von DNGMig ist, dass Daten weder in DOORS 9 noch in DOORS Next Generation vor- bzw. nachbereitet werden müssen.

VORBEDINGUNGEN HERSTELLEN

Laden Sie DNGMig herunter. Exportieren Sie eine ReqIF- oder migiz Datei aus DOORS 9. Migiz ist eine ReqIF-Datei, die um Backlinks zu DOORS 9 erweitert ist. DNG-Artefakte sind dann nach dem Import mit den ursprünglichen DOORS-Objekten verlinkt. Unser Migrationswerkzeug untersützt sowohl ReqIF als auch migiz. Alternativ dazu können Sie auch eine Beispieldatei herunterladen.

BEGRIFFE

Da DNGMig auf ReqIF zurückgreift, verwenden wir im Folgenden die ReqIF-Begriffswelt. Alle verwendeten englischen Begriffe entsprechen ReqIF-Konzepten. Die wichtigsten ReqIF-Konzepte sind Specifications (= Module), SpecObjects (= Objekte/Artefakt), SpecType (= Typen von Modulen und Objekten/Artefakten).

HAUPTANSICHTEN

Der Migrator besteht aus den drei Hauptansichten Specifications, SpecTypes und Attribute-/DatatypeDefinitions. Auf der rechten Seite des Tools wird die Liste der Migrationskommandos angezeigt. Im Folgenden werden diese unterschiedlichen Bereiche kurz vorgestellt.

In dieser Ansicht sehen Sie die Specifications aus der ReqIF-Datei.

Hier sehen Sie die SpecificationTypes sowie die SpecObjectTypes, inkl. Zuweisung von Attributen und Datentypen.

In diesem Bereich sehen Sie die Attribut- und Datentypdefinitionen.

Der Kommandobereich zeigt alle verfügbaren Migrationskommandos. Ein Migrationskommando bündelt einen oder mehere Transformationsschritte. Ziel ist es, eine DOORS 9 ReqIF-Datei derart zu transformieren, so dass sie optimal in DNG importiert werden kann. Optimal heißt beispielsweise, dass die modernen Features von DNG ausgenutzt werden. Optimal heißt auch, dass die ReqIF-Dateien bereits passend zu Ihrer modernisierten RE-Methodik in DNG ankommen. Dabei müssen Sie Ihre Daten weder in DOORS 9 noch in DNG vor- bzw. nachbereiten.

TRANSFORMATION MITTELS MIGRATIONSKOMMANDOS DURCHFÜHREN

Klicken Sie im Kommandobereich auf das Ordner-Icon und klicken Sie “Open…”. Wählen Sie eine reqif, reqifz oder migiz-Datei aus. Gegebenenfalls weist Sie das Tool darauf hin, dass die Datei erst vorbereitet werden muss. In diesem Fall überschreibt DNGMig automatisch die ReqIF-Datei (bzw. reqifz, migiz).

Nach dem Öffnen sehen Sie in der linken Spalte eine Baumansicht, der die Ordner und Specifications der ReqIF-Datei anzeigt. In dieser Baumansicht können Sie die Ordnerstruktur verwalten und Specifications verschieben.

In DOORS 9 werden Objekte erst gelöscht und später bereinigt. Dieser Mechanimus entspricht dem Papierkorb in Windows. DOORS 9 exportiert diese Objekte in die ReqIF-Datei. Nach dem Import in DNG werden diese gelöschten Objekte jedoch wieder im Modul angezeigt.

Das Kommando Remove deleted SpecObjects entfernt die Objekte aus der ReqIF-Datei. Alternativ können Sie auch das Kommando Extract deleted SpecObjects into new Specification(s) ausführen. Dieses fügt die gelöschten Objekte in neue Module ein.

Ein wesentlicher Unterschied zwischen DOORS 9 und DNG ist, dass DOORS 9 modulorientiert und DNG artefaktorientiert ist (siehe Youtube-Tutorial). Modulorientierung bedeutet, dass DOORS 9 Objekte nur innerhalb eines Moduls existieren können. Artefaktorientierung bedeutet, dass DNG Artefakte freie Datenbankelemente sind, die mehreren Modulen zugewiesen werden können.

Aus Typdefinitionssicht bedeutet das, dass in der Modulorientierung Typdefinitionen im Kontext des Moduls gelten. Bei Artefaktorientierung gelten Typdefinitionen im Kontext des Projektbereichs. Dies führt beispielsweise dazu, dass in DOORS 9 die Objekte in jedem Modul ein eigenes Prio-Attribut (Duplikat) besitzen – während in DNG alle Artefakte (in mehreren Modulen) dasselbe Prio-Attribut besitzen.

Das Kommando Set SAME-AS URI setzt für alle Typdefinitionen mit gleichem Namen eine URI (1). Dabei können Inkonsistenzen auftreten – beispielsweise, wenn Enumerationen nicht die gleichen Werte haben (2). Mit dem Kommando Harmonize EnumValues werden Enum-Inkonsistenzen automatisch behoben (3). Sobald in den beiden „Inconsistent...“-Listen keine Einträge mehr vorhanden sind, sind alle Inkonsistenzen aufgelöst.

In DOORS 9 haben Objekte keine expliziten Objekttypen. Als Workaround hat sich etabliert, die Typen implizit über ein Enumeration-Attribut festzulegen. Beispielsweise ist häufig ein Attribut „Objekttyp“ mit den Werten „Überschrift“, „Information“ und „Anforderung“ anzutreffen.

Das Kommando Extract spec object type(s) erzeugt auf der Grundlage eines Attributs „Objekttyp“ explizite Typen und weist den entsprechenden SpecObjects die neuen Typen zu.

In DOORS 9 sind Module oft monolithisch – sie haben ziemlich oft mehrere 100 Seiten. Ein Grund dafür ist die Modulorientierung von DOORS 9. DNG bietet wegen der Artefaktorientierung die Möglichkeit, monolithische Module in kleinere Einheiten aufzuteilen. Klicken Sie im Kommandobereich auf Extract bricks um monolithische Module aufzutrennen.

Wählen Sie im Wizard zunächst die Specification aus, die sie auftrennen möchten. Wählen Sie nachfolgend die Kapitel aus, die Sie extrahieren möchten (z.B. alle Unterkapitel des Kapitels „Funktionen“). Geben Sie im nächsten Schritt den Typ an, den die neuen Specifications haben sollen (z.B. „Funktion“). Im nächsten Schritt können Sie den Ordner angeben, in den die Bricks gespeichert werden (z.B. „2_Bausteine“). Abschließend müssen Sie noch einen Ordner angeben, in den die SpecObjects der Bricks verschoben werden (z.B. „1_Einzelartefakte“). Klicken Sie auf „Finish“.

Das Kommando hat die Bricks extrahiert und mit der Ursprungsstelle verlinkt. Die generelle Idee ist, dass Lastenhefte durch das Brick-Konzept Klammern für wiederverwendete Bricks sind.

Neben den vorgestellten Kommandos gibt es noch weitere interessante Transformationen, die Sie bei der Migration von DOORS 9 nach DOORS Next Generation unterstützen. DNGMig bietet Ihnen jederzeit die Möglichkeit, einen Report zu generieren. Dieser dokumentiert alle bislang durchgeführten Transformationen.

Speichern Sie abschließend die ReqIF-Datei (bzw. ReqIFZ, migiz) und importieren Sie sie in DNG.