Designmodelle zur Implementierung nutzen
Wenn es darum geht, die Systemarchitektur zu verstehen, Entwurfsentscheidungen sichtbar zu machen und Änderungsbedarf zu lokalisieren, dann beweist der Systementwurf aus Designmodellen seine Stärke. Damit genau das gebaut wird, was Sie entworfen haben, können Sie mit objectiF RPM noch einen Schritt weitergehen: Sie können Designmodelle – speziell Blockdiagramme – dazu nutzen, Quellcode zu erzeugen und mit einem Klick aus dem Kontext des Entwurfs in den Code-Editor zu wechseln.
objectiF RPM ist mit JavaScript, Node.js und Visual Studio Code zu einer durchgängigen Entwicklungsumgebung integriert. Die Versionsverwaltung für den Quellcode übernimmt dabei auch objectiF RPM. Diese Lösung ist sofort einsetzbar. Sie zeigt darüber hinaus aber exemplarisch, wie Sie objectiF RPM auf Ihre spezifischen Technologie-Stacks zuschneiden können.
Und das lohnt sich: Denn die leichtgewichtige Form der modellgetriebenen Entwicklung –MDD – mit Entwurfsmustern und automatisierten Implementierungsschritten sichert die Einhaltung des gewählten Architekturstils über alle Releases eines Systems hinweg.
Entwicklung nachvollziehen – von den Anforderungen bis zum Code
Viele Fragen bestimmen den Projektalltag, z.B. die nach den Auswirkungen von Anforderungsänderungen. Sie geht gleich in zwei Richtungen: Für welche Stakeholder ist eine Änderung relevant? Und: Welche entworfenen oder schon realisierten Komponenten und welche Testfälle müssen angepasst werden? Eine andere häufig gestellte Frage lautet: Was wurde aufgrund einer User Story eigentlich am Code geändert, vom wem und wann?
In objectiF RPM sind die Antworten auf Fragen wie diese immer nur wenige Mausklicks entfernt.
Denn objectiF RPM unterstützt Sie u.a. mit:
- konfigurierbaren und filterbaren Echtzeit-Abfragen des Repository.
Aus jeder Abfrage heraus können Sie direkt zu den betroffenen Elementen navigieren. - der Abbildung der Beziehungen von Anforderungen und Architekturelementen in Designmodellen.
Von jedem Diagrammelement können Sie zu weiteren Diagrammen und ergänzenden Informationen verzweigen. - dem Führen der Historie aller Ergebnisse im Projekt.
Innerhalb der Historie können Sie ältere Entwicklungsstände öffnen mit Formularen, wie sie damals verwendet wurden, und beliebige Versionen vergleichen.
Besonders hilfreich sind hier
- das Anforderungsdiagramm.
Es macht den Weg von den Stakeholdern und ihren Anforderungen bis zu Testfällen und den Systemelementen sichtbar, die die Anforderungen realisieren. - das Blockdiagramm.
Es ermöglicht, die Traceability der Anforderungen zu den Systemkomponenten und darüber hinaus bis zum Code sicherzustellen.
Bereitstellung mit Microservices in der Cloud
Um hohe Agilität zu erreichen, entscheiden sich viele Unternehmen dafür, eine DevOps-Kultur zu etablieren. Sie führen also zwei Fähigkeiten in ihren Teams zusammen: die zur Entwicklung und die zur kontinuierlichen Bereitstellung von Lösungen. Architekturen aus Microservices, d.h. aus kleinen entkoppelten Diensten, die über definierte APIs kommunizieren und von unabhängigen Teams entwickelt werden, sind dafür besonders geeignet. objectiF RPM unterstützt die Entwicklung von Microservices mit
- Mustern für die einfache Gliederung der Fachlichkeit in Domänen,
- Backlogs pro Domäne und Team für die unabhängige Entwicklung,
- Funktionen für API-Definition, Entwurf und Implementierung.
Ein zentraler Vorteil von serviceorientierten Architekturen ist die Möglichkeit, neue und verbesserte Microservices jederzeit in einer Cloud für den Betrieb bereitzustellen. objectiF RPM bringt exemplarisch Deployment-Funktionen für einen Technologie-Stack aus JavaScript, Node.js, Visual Studio Code und Amazon Elastic Cloud mit. Diese Lösung ist in Form von Erweiterungsfunktionen zu objectiF RPM implementiert. Der Quellcode der Erweiterungsfunktionen steht Ihnen als Vorlage zur Verfügung, wenn Sie objectiF RPM an Ihren spezifischen Technologie-Stack anpassen wollen.
Das zahlt sich für Ihre Organisation garantiert aus: Denn Deployment mit objectiF RPM direkt in eine Cloud hilft Ihren Teams, Bereitstellungszyklen zu verkürzen, Innovation schneller verfügbar zu machen und Systeme leichter zu skalieren.
Diagrammtypen für den Systementwurf