Visualisieren Sie Ihre Anforderungen (und sehen Sie sich den Vortrag auf der ReConf 2015 an)

Anforderungen erfordern einige Mühe, um sie zu lesen und zu verstehen. Aber was wäre, wenn man sie zum Leben erwecken könnte? Das ist möglich, und Sie können dies auf der diesjährigen ReConf im Science Track am Montag, den 16. März 2015 sehen. Besuchen Sie unseren Stand auf der ReConf 2015. Bitte kontaktieren Sie uns, um einen Rabattcode zu erhalten. Ganz gleich...

Anforderungen erfordern etwas Mühe beim Lesen und Verstehen. Aber was, wenn Sie sie lebendig machen könnten? Das ist möglich, und Sie können das auf der diesjährigen ReConf auf dem Wissenschafts-Track am Montag, den 16. März 2015, sehen.

Besuchen Sie uns auf der ReConf 2015. Bitte kontaktieren Sie uns, um einen Rabattcode zu erhalten.

Egal wie Anforderungen erfasst werden, es gibt normalerweise zwei Nachteile: (1) Sie sehen nicht aus wie das “echte Ding” und (2) sie sind leblos.

Das erste kann bis zu einem gewissen Grad korrigiert werden, indem einfach Bilder in Ihr Anforderungsdokument aufgenommen werden. Tatsächlich liefert die Marketingabteilung manchmal einige der Grafiken. Das zweite ist das, was wie hier beschrieben behoben werden kann und was wir auf der ReConf 2015 präsentieren werden.

Erstellung interaktiver Spezifikationen mit BMotion Studio

Auf unserem Vortrag zur ReConf werden wir ein einfaches Ampelsystem erstellen. Wir werden in weniger als einer Stunde von den Anforderungen zu einer interaktiven Visualisierung gelangen. Wir verwenden das Werkzeug Rodin, erweitert um ein paar Plugins. Alles, was Sie benötigen, ist frei verfügbar.

Lassen Sie uns mit den Anforderungen beginnen. Wir werden sie hier nicht im Detail beschreiben. Die Abbildung rechts sagt alles: Wir haben eine Straße mit Ampeln, die es Fußgängern ermöglichen, sicher über die Straße zu gehen. Wir gehen davon aus, dass die Hardware vorhanden ist und dass die Aufgabe darin besteht, die Steuerung für das System zu erstellen.

Um eine interaktive Visualisierung zu erstellen, benötigen wir ein Modell der Domäne (die Ampeln usw.) und der Anforderungen. Das ist der größte Haken an diesem Ansatz, Sie benötigen einen Experten, der dies mit einer geeigneten Modellierungssprache modellieren kann. Im Vortrag werden wir Event-B verwenden. Wie ein solches Modell im Detail aussieht, wird im Tutorial der Rodin-Handbuch.

Erstellung der Visualisierung

Jetzt wird es interessant. Das Plugin BMotion Studio (BMS) hat einen grafischen Editor. Das Bild der Ampel kann einfach importiert werden und bildet somit die Grundlage für die Visualisierung.

Damit die Visualisierung funktioniert, müssen zwei Dinge geschehen: (1) Wir müssen die Farben der Ampeln ändern und (2) wir müssen die Schaltflächen interaktiv machen. Das folgende Bild zeigt den BMS-Grafikeditor:

Sie sehen auf der rechten Seite eine Palette. Eines der verfügbaren Elemente ist eine Ellipse. Um die Farben änderbar zu machen, zeichnen wir einfach einen Kreis über jede der “Lampen” der Ampel. Die Abbildung zeigt dies. Das rote Licht ist ausgewählt, und die Steuerelemente, mit denen die Größe des Kreises geändert werden kann, werden angezeigt, um es richtig über das Bild anzupassen. In der Eigenschaftsansicht (nicht gezeigt) kann die Farbe ausgewählt werden.

Als Nächstes müssen die neu erstellten Elemente mit dem formalen Modell verbunden werden. Dies geschieht durch Rechtsklick auf den Kreis und Hinzufügen eines Beobachter.Dies öffnet den folgenden Dialog, der bereits so konfiguriert wurde, dass das Modell (über das Prädikat) mit der Visualisierung verbunden wird. Wenn das Prädikat wahr ist, wird die Hintergrundfarbe auf den angegebenen Farbwert gesetzt, der ein helles Rot darstellt.

Dieser Vorgang muss für alle Leuchten wiederholt werden. Da sich die beiden Leuchten für die Autos identisch verhalten, kann die zweite Leuchte per Kopieren und Einfügen erstellt werden.

Die Schaltflächen werden auf ähnliche Weise erstellt, außer dass sie eine auslösen Ereignis statt nur Beobachter zu sein, wie die Lichter.

Die Visualisierung ausführen

Nachdem die Visualisierung verdrahtet ist, kann sie gestartet werden. Benutzer können mit ihr interagieren, indem sie die Schaltfläche drücken und zu den Übergängen des Ampelregimes übergehen. Dies kann auch automatisiert erfolgen, und das Werkzeug kann zur Erkennung von Verstößen gegen Anforderungen oder von Deadlocks eingesetzt werden.

Entkopplung der Visualisierung von der Implementierung

Was wir hier modelliert haben, war einfach nur die Domäne, nicht die Funktionalität. Mit anderen Worten, nichts, was wir bisher getan haben, hat die Funktionalität in irgendeiner Weise eingeschränkt. Um ein extremes Beispiel zu nennen, steht es uns immer noch frei, eine Implementierung bereitzustellen, die alle Lichter gleichzeitig einschaltet.

Um die tatsächliche Ampelfunktionalität bereitzustellen, müssten wir mehr Anforderungen in das Modell aufnehmen. Insbesondere die für den Lichtmodus verantwortlichen Anforderungen. Eine Änderung der Visualisierung wäre jedoch nicht erforderlich.

In der Praxis könnte dies auch für Situationen genutzt werden, in denen die gleiche Hardware für unterschiedliche Varianten (z. B. eine Standard- und eine Luxusvariante) verwendet wird. Die gleiche Visualisierung würde dann durch zwei unterschiedliche Implementierungen angetrieben werden.

Wir hoffen, dass dieser kleine Überblick Sie neugierig gemacht hat und freuen uns auf ein Wiedersehen bei der ReConf 2015.

Ähnliche Beiträge