Requirementsmanagement Informationstechnik für Luft- und Raumfahrt Informationstechnik für Luftund Raumfahrt Aerospace Information Technology Aerospace Information Technology Funktionale Anforderungen <-> Nicht funktionale Anforderungen Funktionale Anforderungen -> Technische Anforderungen -> Entwicklungsanforderungen Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Generische Requirements z.B. Funktionale Anforderungen: On-Board-Software muss: autonom den sicheren Betrieb des Satelliten garantieren, um die Mission zu erfüllen. Die höchste Priorität hat die Ausführung der Kommandos von der Erde. Danach folgt die autonome Überprüfung des Satellitenzustandes. Falls vorprogrammierte gefährliche Zustände erkannt werden, wird eine vorprogrammierte Rettungsmaßnahme ausgeführt (Safe-Liste). Wenn keine Konflikte mit der Kommandierung von der Erde oder andere gefährliche Zustände erkannt werden, -> dann werden Missionsziele autonom verfolgt. Z.B. nicht-funktionale Anforderungen: Die Software-Komplexität auf ein Minimum zu reduzieren (Zenrtifizierung ca 1K € Pro LOC) Sich auf das Wesentliche zu konzentrieren. Die gesamte Aufgabe wird in Module (Tasks/Applications/Building Blocks BB) aufgeteilt. Vorsicht: Nicht-Echtzeit-Leute nennen die Zeitanforderungen „nicht-funktional“ . Für mich ist das DIE Funktion! Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Generische Requirements Software & Hardware SW oder HW? Funktional oder nicht funktional? Verlässlichkeit Self-healing (self-regeneration) -> Fault Tolerance Wenig Energiebedarf Klein Hohe Rechenleistung (was ist hoch? z.b. 100 MIPS) Niedrige Rechenleistungsbedarf! Hohe Speicherkapazität (Mass memory) Niedrige Speicherbedarf! Viele verschiedene Anschlüsse (IO) Standard IO-Protokolle! und routers high software complexity behandeln Software-Uploads ermöglichen Remote diagnosis ermöglichen Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Funktional oder Technisch? Beispiel + Kunde: Funktionale Requirement Ganz Europa mit 200 Digitale Kanäle Strahlen (echter Requirement: Geld Verdienen) → Technische Requirements Antenne Attitude Orbit Sendeleistung Power Requierments → Strahler -> Satellitengrösse Nicht spezifiziert: Inhalt der 200 Kanäle? + = Requirements Management Ordnung in den Chaos von Brainstorming (für Tracebility) Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Nun... Sortieren Requirements Beispiel soll ... soll... soll.... soll nicht.... soll nicht .... R001 R002 R003 R004 R005 R006 . . . R987 ... Der Satellit soll 15 Jahren überleben Im Fall einer Anomalie soll das System in einen Safemode gehen In Safemode sollen all nicht Lebensnotwendige Systemen ausgeschaltet werden Es soll in der Lage sein den Batterie-Ladezustand zu erfassen Das Energie-Subsystem soll folgenden Sensoren haben: Spannung, Strom, Ladezustand, Temperatur .... .... Der Operator soll per Telekommando Sicherheitsgrenzen setzen können Unabhängige Anforderungen oder gibt es eine Beziehung? Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirements Beispiel R001 R002 R003 R004 R005 Der Satellit soll 15 Jahren überleben Im Fall einer Anomalie soll das System in einen Safemode gehen In Safemode sollen all nicht Lebensnotwendige Systemen ausgeschaltet werden Es soll in der Lage sein den Batterie-Ladezustand zu erfassen Das Energie-Subsystem soll folgenden Sensoren haben: Spannung, Strom, Ladezustand, Temperatur .... Und was wenn ich einen Ladezustandsensor nicht einbauen kann? Und wie soll ich erkennen was eine Anomalie ist? Unabhängige Anforderungen oder gibt es eine Beziehung? Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Functional Tree (Bus) Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Functional Tree (Mission) Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirements Network Abstracte Funktional Functional Technisch Beispiel aus AsteroidenFinder Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirements network Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirementnetwork (tool X) Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirementnetwork (tool X) Komponenten Funktionen Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirements Management Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirements Management Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Development Req. Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Development Req. Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirements Management in 3 Jahre, 40 M € Darf max 50M€ Kosten Firma X muss dabei sein Muss 50KRad überstehen Es soll Energie Liefern Es soll Temperatur regulieren Kamera ersetzbar weil... 100 MBytes Speicher weil.. Es soll Vulkanen Finden Es soll heiße Quellen Finden .... Es soll eine Thermal Kamera haben Es soll Bildverarbeitung ... Es soll interne Temperaturen messen Es soll ein Programierinterface haben Es soll möglich sein die Kamera zu ersetzen Es soll Halterung für Lastwagen..... Ein Lötkolben vor Kamera halten dann soll..... Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirements Management Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Requirements Typen Functional Requirements (Primary Software) Technical Requirements (Many Software Req) Constraints 1 Environmental constraints (radiation, temp, ...) 2 Contractual and programmatic constraints (You have to buy from company ...) 3 Operational constraints (sa & so no one is in control room) Development Requirements Design and development Requirements for verification and test Requirements for integration Logistic requirements (primary software) Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Tracebility Wo wurde es Design, Implementiert, getestet Warum wurde es gemacht? Requirements Design Aus dem Nichts Gray Box Test Extra Dinge Implementierung Extra Dinge Aus dem Nichts Black Box Test Wasserfallmodell? nix von agilies Programmieren Rapide Prototyping Spirale.. White Box Test Test Fall Test Prozedur Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Test Tracebility Matrix Req Test Case-1 r1 x r2 r3 r4 Test Case-2 Test Case-3 x x x x z.B. Test Case-1 wir drehen Richtung Sonne mit > 5 Grad/Sec dann halten wir diese Lage 20 Minuten Req: finde die Sonne Rotieren können Lage halten können Rotation bremsen können Solar Paneele sollen xxx A liefern Temperatur der Solar Paneele < 200 Grad Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Functional Requirements LEOP: Launch and Early Orbit Phase Software-Phasen Booten (Primary Booter) Laden (Auswahl und Laden der Sat-Software) Initialisieren CPU, MMU, IO, Hardware, Statische Objekte (Konstruktoren) Run-Time-System (Threads, Scheduler...) Applikationen (Application::init(), Thread::init(), ...) Threads starten (Thread::run()) Mission (zyklisch..) Kommandos ausführen Housekeepings sammeln & senden Attitude, Navigation, Guidance, Surveillance Payloads,.... Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Modes / States Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Functional Requirements LEOP: Launch and Early Orbit Phase LEOP Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Functional Requirements Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Functional Requirements Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Technische Requirements Woher soll diese „Period of time“ kommen Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Technische Requirements Und was wenn ich nur 8.5 erreiche? Soll ich 2 M investieren für die 7,5? Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Technische Requirements Warum 24? Kein link!!! Warum das? Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Technische Requirements Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Technische Requirements Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Beispiel: Technische Requirements Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Von Req. zu Design Grobe Software- Komponenten cm p G esam t P a y lo a d In te r fa c e T im e C o n tr o l R e la is C o n tr o l T e le m e tr y A p p lic a tio n In te rfa c e N a v i g a ti o n A ttitu d e C o n tr o l G r o u n d I n te r fa c e Com m ander W a tc h d o g Housekeeper R e d u n d a n c yM a n a g e r T h e r m a l C o n tr o l S u rv e illa n c e M a s s M e m o ryM a n a g e r C h a r g e C o n tr o l Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Interface zum Operating System Das Betriebssystem verwaltet Ressourcen im System: Speicher, Zeit und CPU-Zeit bildet eine Abstraktion der Hardware stellt Basisdienste zur Verfügung Unser Interface zu den Anwendungen: Framework Eine Anwendung wird ins System integriert, indem sie vom Betriebssystem Klassen erbt. Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Von Requirements zu Design Implementierungs-Tracking RoD = Review of Design Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Applications cm p G esam t P a y lo a d In te r fa c e T im e C o n tr o l R e la is C o n tr o l T e le m e tr y A p p lic a tio n In te rfa c e N a v i g a ti o n A ttitu d e C o n tr o l G r o u n d I n te r fa c e Com m ander W a tc h d o g Housekeeper R e d u n d a n c yM a n a g e r T h e r m a l C o n tr o l Guidance S u rv e illa n c e M a s s M e m o ryM a n a g e r C h a r g e C o n tr o l Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Implementation ... Natürlich mit Design :) Informationstechnik für Luft- und Raumfahrt Aerospace Information Technology Prozedural Interface (1970) OO Interface (2000) Middlware Interface (2010 .. 2015) (ich war der erste! mit viel Widerstand) Erster Versucht (Abgeschmettert) -> sat-anwendungen/053-sat-anwendungen-imp.odp (ich hoffe ich werde der erste sein, mit wenig Widerstand)