UNSER SCHLÜSSEL FÜR DEN UMGANG MIT KOMPLEXITÄT: ZERLEGUNG IN KLEINE EINHEITEN

METHODEN

Holistischer Ansatz

Unsere Erfahrung bei Entwicklungsprojekten komplexer Systeme zeigt: Jedes Projekt erfordert seine ganz eigene Vorgehensweise. Nicht eine einzige Methode führt zum Ziel, es bedarf einer maßgeschneiderten Kombination geeigneter Ansätze und Werkzeuge – abhängig von dem zu entwickelnden Produkt, dem Kontext und der Teamkonstellation.

Wir verfolgen eine holistische Sicht auf das Produkt als Ganzes. Ausgangspunkt ist stets unser Verständnis für den Auftraggeber und seine Bedürfnisse. Zentrale Aufgabe für unseren kollaborativen Systems Engineering Ansatz ist es, ein gemeinsames Verständnis bei allen Beteiligten herzustellen – durchgängig vom Problemraum bis zum Lösungsraum und beim Test. Der Blickwinkel der Nutzer auf das System dient dabei als roter Faden für den Lösungsraum. Dies ist sowohl Grundlage für Analyse und Design also auch Ausgangspunkt für die inkrementelle Integration. Die dazugehörige Spezifikation bildet die Basis für die Definition von Systemtestfällen und die Benutzerdokumentation.

Core Modeling

Eine zentrale Frage der Systementwicklung lautet: Wie kann eine Lösung realisiert werden, die optimal zum eigentlichen Problem passt?

Dafür ist es notwendig, dass alle an der Systementwicklung beteiligten Stakeholder ein einheitliches Verständnis des zu lösenden Problems haben.
Core Modeling basiert auf dem Usage-Centered Design Ansatz, der bei der Siemens AG zu einer Methode für Modellbasiertes Systems Engineering mit Schwerpunkt Business-Analyse und Requirements Engineering ausgebaut und in verschiedenen Systems Engineering Projekten erfolgreich angewendet wurde.

Mit der Anwendung von Core Modeling erstellen die Stakeholder der Systementwicklung ein gemeinsames Modell des Problemraums. Das Modell dient als Ausgangspunkt und Orientierung für die nachfolgenden Schritte der Lösungsentwicklung (“Kernmodell”).

Was ist der Unterschied zu anderen Methoden?

Oft ist es schwer, ein „Big Picture“ des zu lösenden Problems zu erkennen. Dies führt dazu, dass Nutzer (Architekten, Entwickler, Tester, etc.) die Anforderungen tendenziell zu atomar betrachten. Dazu kommt, dass Anforderungen oft aus unterschiedlichen Quellen stammen, mit unterschiedlicher Granularität und unklarer Trennung zwischen Beschreibung des Problems und Lösungsdetails.

Core Modeling beginnt den gesamten Systems Engineering Prozess mit einer systematischen Analyse der Problemdomäne in Hinsicht auf ihre wesentlichen funktionalen und nicht-funktionalen Grundeigenschaften: Stakeholder-Aufgaben (Jobs-to-be-done) und Stakeholder-Interessen.

Diese Aspekte werden lösungsunabhängig in Modellform beschrieben und sind somit zeitstabil, für alle Stakeholder verständlich und nutzbar – ob als tracebares Modellelement, als Diagramm oder als ausgeleitetes Dokument.

Was sind die Vorteile für unsere Kunden?

Mit Core Modeling wird ein Problemraummodell erschaffen, das

  • gemeinsam erstellt wird, Silodenken aufbricht und die Kommunikation auf Basis eines einheitlichen Problemverständnisses fördert.
  • Domänenwissen aus den Köpfen einzelner Experten holt und in konsolidierter, strukturierter Form für die gesamte Organisation dauerhaft verfügbar macht.
  • diejenigen Problemeigenschaften repräsentiert, die für den Mehrwert einer Lösung besonders relevant sind.
  • eine stabile Basis für wertschöpfungsorientierte Entscheidungen bietet.
  • eine systematische Identifikation von Konflikten und Synergien im Problemraum und damit die Nutzung von Innovationspotential ermöglicht.

Das resultierende Kernmodell ist so aufgebaut, dass verschiedene Stakeholder damit arbeiten können: Product Owner, Systemarchitekten, Requirements Engineers, Usability Engineers, Entwickler, Test Engineers, Vertrieb und Handbuchautoren.

Funktionale Anatomie

Unsere Gründerin und Geschäftsführerin Herna Muñoz-Galeano lernte die Anwendung der funktionalen Anatomie von ihrem Begründer, Jack Järkvik während ihrer gemeinsamen Tätigkeit für Ericsson. Neben der Beteiligung am Aufbau der globalen Telekommunikation, führte sie die Methode erfolgreich in einer Vielzahl von Projekten in den Bereichen der Medizintechnik und der Bahnautomatisierung weiter.

Die Funktionale Anatomie beschreibt und strukturiert das Produkt aus der Sicht des Benutzers: Was soll das System leisten? Wie soll es verwendet werden? Die Methode beruht auf einem Top-Down-Ansatz aus der Sicht funktionaler Ebenen. Es ermöglicht die Definition der Funktionen, die Darstellung der Abhängigkeit zwischen verschiedenen Funktionen und gibt Aufschluss darüber, welche Funktionen keine Zusammenhänge aufweisen.

Die Funktionale Anatomie ermöglicht es somit, allen Projektbeteiligten in kurzer Zeit ein einheitliches Bild über die Projektanforderungen und ein gemeinsames Verständnis für die Aufgaben zu erhalten.

Was ist der Unterschied zu anderen Methoden?

In traditionellen Methoden werden komplexe Aufgaben in kleinere Einheiten aufgeteilt und unabhängig voneinander entwickelt. Dies birgt bei der Systemintegration und dem -test große Risiken in sich und führt schnell zu einer signifikanten Verspätung und Kostensteigerung. Im Gegensatz hierzu verfolgt die Funktionale Anatomie einen inkrementellen Entwicklungs- und schrittweisen Integrationsansatz, um ein Entwicklungsprojekt planungssicher und kosteneffizient durchzuführen.

Die Kernphilosophie besteht darin, das System in der gleichen Reihenfolge zu planen und zu verifizieren, in der es realisiert wird.

 

Der Prozess umfasst 7 Schritte:

  1. Definition des Systems gemeinsam mit unseren Kunden auf der Grundlage von Use-Cases.
  2. Erstellung eines ‘Funktionsbaums’ und Identifizierung der Abhängigkeiten.
  3. Festlegung der Architektur durch Zuordnung von Funktionen, Use-Cases und der Implementierungsansicht.
  4. Definition der Integration, um zunächst ein funktionierendes Basissystem zu erhalten.
  5. Erstellung eines Integrationsplans (Bottom-Up).
  6. Definition des inkrementellen Tests und die Verifizierung, um die definierte Funktionalität und Stabilität zu erhalten.
  7. Definition des Lieferplans und Kontrolle des Entwicklungsfortschritts durch Visualisierungen und Diagramme, um eine Vertrauensbasis für Kundenlieferungen zu schaffen.
Was sind die Vorteile für unsere Kunden?

Die besten Ergebnisse lassen sich erzielen, wenn die Methode der Funktionalen Anatomie bereits bei der Systemspezifikation und als übergreifendes Projektplanungs- und Kontrollinstrument eingesetzt wird.

Häufig werden wir um Unterstützung bei der Anwendung unserer Methode konsultiert, wenn die termingerechte Fertigstellung des Projekts aufgrund dessen Komplexität gefährdet ist.

Unsere Kunden schätzen unsere Arbeit mit der Methode der Funktionalen Anatomie aus den folgenden Gründen:

  • Die Funktionale Anatomie bietet ein transparentes Verständnis der Systemabhängigkeiten und Funktionen.
  • Der ‘Funktionsbaum’ zeigt alle notwendigen Aufgaben und Anwendungsfälle auf einer Seite. Somit bildet er die ideale Plattform für Diskussionen und Grundlage für die Verständlichkeit des gesamten Systems.
  • Die Möglichkeit, parallel und kontrolliert zu entwickeln und zu testen, spart Zeit.
  • Systemfehler können frühzeitig erkannt werden.
  • Inkrementelles Testen und Verifizieren sorgt für Systemstabilität.
  • Inkrementelle Integration ermöglicht ein stetig funktionierendes System.
  • Der Fortschritt des Projekts ist jederzeit bekannt und bildet eine sichere Grundlage für Entscheidungen.
  • Der Beitrag eines jeden Stakeholders wird transparent.

Modellbasierter Test

Entwicklungsergebnisse müssen darauf geprüft werden, ob sie ihren Zweck erfüllen – d.h. ob sie die Anforderungen korrekt umsetzen. Um zu entscheiden, was, wo, wann und wie getestet werden soll, brauchen alle Beteiligten eine Vorstellung des Systemverhaltens, die unabhängig von der Sicht der Architekt’innen und Entwickler’innen ist: Das Testmodell.

Wenn das Systemverhalten konsequent von Problemraum zu Lösungsraum in Form von Use-Cases modelliert wird, können viele Synergien genutzt und damit der Aufwand für die Testmodellierung signifikant reduziert werden.