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.
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”).
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.
Mit Core Modeling wird ein Problemraummodell erschaffen, das
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.
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.
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:
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:
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.