Entwurfsmuster und Softwarearchitekturen für sicherheitskritische Systeme

Größe: px
Ab Seite anzeigen:

Download "Entwurfsmuster und Softwarearchitekturen für sicherheitskritische Systeme"

Transkript

1 1 Entwurfsmuster und Softwarearchitekturen für sicherheitskritische Systeme Für das Seminar Analyse, Entwurf und Implementierung zuverlässiger Software Von: Andreas Seibel Betreut durch: Dr. Holger Giese

2 Vortragsübersicht 2 Sicherheitskritische Systeme Hazard (Analyse) Architektur und Design Designprinzipien - Verschiedene Design Techniken Entwurfsmuster für zuverlässige Software - Monitor Actuator / Sanity Check - Watchdog - Safety Executive - Homogenous Redundancy / Heterogenous Redundancy Ausblick

3 Sicherheitskritische Systeme 3 Erst in Verbindung mit bestimmten Umgebungen kritisch. -Erst wenn z.b. Menschen in der nähe von Maschinen operieren, die mit toxischen Materiallien arbeiten wird ein System sicherheitskritisch. Software wird immer häufiger in Systeme eingebettet. -Wachsende Zahl sicherheitskritischer Systeme, durch ersetzen alter mechanischer Systeme. Sicherheitskritische Systeme können Hazards auslösen. Erfordern besonders sorgfälltige Analyse und Design. -Hazards können vielen Menschen das Leben kosten, falls es zum Unfall kommt.

4 Hazard (Analyse) Kontinuierlicher und iterativer Prozess. -Beginnt schon in der konzeptuellen Phase. -Wird durchgehend während des Entwicklungsprozesses evaluiert. Nachteil: Die Analyse beruht meist auf Annahmen, die nicht immer der Realität entsprechen müssen. 4 Hazard Analyse Anforderung an Software Software Nein Ja [Software entspricht den Sicherheitsanforderungen?] Zwei grundlegende Verfahren des Designs, die eigentlich nur in kombination angewendet sollten. 1. Benutzen von Standards und etablierten Code (Entwurfsmuter). 2. Benutzen der, aus der Hazard Analyse, gewonnen Informationen.

5 Architektur und Design 5 Safety switch Actuator Safety switch Actuator Sehr Fehleranfällig, da in jeder Ebene Fehler auftreten können. Diese Struktur für sicherheitskritische Software nicht verwendbar. Sicherheitskritische Funktionen sind weniger Fehleranfällig. Sehr gut verwendbar für sicherheitskritische Software.

6 Designprinzipien (Hazard elemination) 6 Vereinfache die Komplexität des System soweit wie möglich. - Überschaubarkeit, Verifizierbarkeit - Benutzen von objektorientierten Sprachen statt monolithischen Sprachen wie C. Entkopplung von Systemteilen. - Reduzuiert ungewollte Interaktionen. - Systemkritische Funktionen lassen sich so leichter eingrenzen. Eleminierung von spezifisch menschlichen Fehlern. - Wahl einer geeigneten simplen und verständlichen Programmiersprache. Reduzierung gefährlicher Bedingungen.

7 Designprinzipien (Hazard reduction) [1/2] 7 Unfälle unwahrscheinlich, je unwahrscheinlicher der dafür verantwortliche Hazard ist. Die Wahrscheinlichkeit für einen Hazard kann man senken, in dem die Bedingungen, die zu einem Hazard führen, reduziert werden. Steigerung der Kontrollierbarkeit ermöglicht Korrekturen. Einsetzen von passiven oder aktiven Safeguards. Monitoring für kritische Funktionen. - Ermöglicht frühzeitige Entdeckung kritischer Zustände. - Werden mit Hilfe von Entwurfsmustern realisiert. Lockouts erschweren den Zugang zu kritischen Prozessen oder Zuständen. Lockins erschweren das Verlassen eines sicheren Zustandes.

8 Designprinzipien (Hazard reduction) [2/2] 8 Interlocks funktionieren zum Teil wie Semaphore und können somit den gleichzeitigen Zugriff auf eine Ressource verhindern oder eine korrekte Abfolge erzwingen. Redundanz. - Nutze mehrere (unterschiedliche) Instanzen um die Stabilität zu erhöhen. - Schützt vor zufälligen Hardwarefehlern, jedoch nicht vor systematischen Fehlern. - Darum wird auch Diverse Redundancy benötigt. Wiederherstellung. -Im Falle eines Fehlers, entweder mit älteren Daten fortsetzen oder versuchen den Fehlerhaften Zustand zu reparieren um dort fortzusetzen (z.b. Self-Checking).

9 Designprinzipien (Hazard control) 9 Reduktion der Aufenthaltszeit in einem unsicheren Zustand. - Wenn es nicht anders geht, dann verlasse den sicheren Zustand so spät und so kurz wie möglich. - Stelle sicher das ausgefallene Komponenten nach einer bestimmten Zeit neu gestartet werden. Isolation und Abgeschlossenheit. - Schützen des Systems vor der Umgebung. - Isoliere riskante Materialen, Operationen oder Ausrüstung von Gegebenheiten, die zu einem Hazard führen könnten oder von Menschen. Fail-Safe-Design. - Wird ein riskanter Zustand entdeckt, wird versucht das System in einen sichereren Zustand zu bringen. - Einführen von fallback Zuständen.

10 Designprinzipien (Damage minimization) 10 Unfälle passieren ausserhalb der Systemgrenzen. Das System kann also nicht von selbst den Schaden zu diesem Zeitpunkt reduzieren. Bestimmen ab wann ein Hazard unausweichlich ist (point of no return). Treffen von Vorkehrungen zur Schadenbegrenzung. - z.b. Airbag, welcher von Software gesteuert wird.

11 Entwurfsmuster für zuverlässige Software 11 Pattern sind verallgemeinerte Lösungen für gängige Probleme. Können an bestimmte Probleme angepasst werden. Möglichkeit zur Speicherung von Designentscheidungen. Dadurch kann Wissen von erfahrenen Designern wiederverwendet werden.

12 Monitor Actuator / Sanity Check 12 Controller Monitor Channel Actuator Channel System Boundary Desired Result Desired Result Environmental Condition Actuation Is OK Life Tick Life Tick Desired Result Desired Result Environmental Condition Actuation FAULT Discrepancy Found

13 Watchdog 13 Kanäle müssen sich in gewissen Zeitabständen melden. Geschieht dies nicht, wird der Kanal zurückgesetzt. Watchdog Channel 1 Einfache Watchdogs erkennen nur Fehler beim Ausfall eines Kanals. Keine recovery Möglichkeit. Timeout Reset

14 Safety Executive 14 Safety Executive Watchdog Subsystem 1 Subsystem 2 Fail-Safe Channel Timeout Watchdog Timeout (1) Recovery Action Restart

15 15 Homogenous Redundancy / Heterogenous Redundancy Controller Channel 1 Channel 2 Channel 3 Compute Result Compute Result Compute Result Tally Votes

16 Ausblick 16 Dieser Vortrag ist nur ein kleiner Einblick den Bereich des Designs und der Architektur von sicherheitskritischen Systeme. Dies ist ein Bereich der Informatik der meiner Meinung nach auch noch in Zukunft große Relevanz haben wird, auf Grund immer steigender eingebetteter Softwaresysteme. Vielen Dank fürs zuhören!

Daniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers

Daniel Warneke warneke@upb.de 08.05.2006. Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns Daniel Warneke warneke@upb.de 08.05.2006 Ein Vortrag im Rahmen des Proseminars Software Pioneers Design Patterns 1/23 Übersicht Einleitung / Motivation Design Patterns Beispiele Rolle des

Mehr

Risiko- und Gefahrenanalyse und deren Berücksichtigung beim Entwurf von Sicherheitskritischen Systeme. Kelen-Yo Rodrigue

Risiko- und Gefahrenanalyse und deren Berücksichtigung beim Entwurf von Sicherheitskritischen Systeme. Kelen-Yo Rodrigue Risiko- und Gefahrenanalyse und deren Berücksichtigung beim Entwurf von Sicherheitskritischen Systeme Kelen-Yo Rodrigue Überblick Einleitung Präsentation des Neigemoduls des Shuttles Systemanforderungen

Mehr

IRS in virtualisierten Umgebungen

IRS in virtualisierten Umgebungen Lehrstuhl Netzarchitekturen und Netzdienste Institut für Informatik Technische Universität München IRS in virtualisierten Umgebungen Seminar: Future Internet Christian Lübben Betreuer: Nadine Herold, Stefan

Mehr

Risiko- und Gefahrenanalysen und deren Berücksichtigung beim Entwurf von Sicherheitskritischen Systeme

Risiko- und Gefahrenanalysen und deren Berücksichtigung beim Entwurf von Sicherheitskritischen Systeme Risiko- und Gefahrenanalysen und deren Berücksichtigung beim Entwurf von Sicherheitskritischen Systeme Seminararbeit im Fach Informatik im Rahmen des Seminars Sicherheitskritische Systeme an der Universität

Mehr

Kapitel 5: Das Design

Kapitel 5: Das Design Nach der Analyse kommt... Kapitel 5: Das Design SoPra 2008 Kap. 5: Das Design (1/20) Kapitel 5.1: Überblick Was ist Design? Ergebnis der Analyse: abstrakte Definitionen Objektmodell: Klassen, Assoziationen,

Mehr

CyPhyControl. Virtualisierte Ausführungsplattform für die zuverlässige Steuerung cyber-physikalischer Systeme

CyPhyControl. Virtualisierte Ausführungsplattform für die zuverlässige Steuerung cyber-physikalischer Systeme CyPhyControl Virtualisierte Ausführungsplattform für die zuverlässige Steuerung cyber-physikalischer Systeme Olaf Spinczyk Markus Buschhoff Boguslaw Jablkowski AG Eingebettete Systemsoftware Informatik

Mehr

Fehlercodes an der Maschine

Fehlercodes an der Maschine Fehlercodes an der Maschine Stand 19. Juli 2004 Copyright SIEMENS AG 2004, All Rights Reserved 1 Inhaltsverzeichnis 1 Fehlercodes an der Maschine 3 1.1 149000 = Job Execution failed 3 1.2 149001 = No Boot-Script

Mehr

Formale Verifikation von Software. 10. Juli 2013

Formale Verifikation von Software. 10. Juli 2013 Formale Verifikation von Software 10. Juli 2013 Überblick Wann ist formale Softwareverifikation sinnvoll? Welche Techniken gibt es? Was ist Model Checking und wie kann man es zur Verifikation einsetzen?

Mehr

Decorator Pattern. Analyse- und Design-Pattern CAS SWE FS14. Roland Müller Samuel Schärer

Decorator Pattern. Analyse- und Design-Pattern CAS SWE FS14. Roland Müller Samuel Schärer Decorator Pattern Analyse- und Design-Pattern CAS SWE FS14 Roland Müller Samuel Schärer Entwurfsmuster der «Gang of Four» Strukturmuster fassen Klassen und Objekte zu grösseren Strukturen zusammen Adapter

Mehr

Analyse des Neigemoduls des Shuttles

Analyse des Neigemoduls des Shuttles Analyse des Neigemoduls des Shuttles Nils Bandener Martin Hirsch Gliederung n Funktionsweise der Neigetechnik n Mögliche Hazards Ł Risk Analysis I n Fault Tree Analysis Ł Risk Analysis II n Design Vorschläge

Mehr

eps Network Services HMI-Alarme

eps Network Services HMI-Alarme 09/2005 HMI-Alarme eps Network Services HMI-Alarme Diagnoseanleitung Gültig für: Software Softwarestand eps Network Services 4.1 eps Network Services, Diagnoseanleitung (DA) - Ausgabe 09/2005 1 HMI-Alarme

Mehr

Zuverlässige Systeme Fehlertoleranz

Zuverlässige Systeme Fehlertoleranz Zuverlässige Systeme Fehlertoleranz frank@upb.de Inhalt Übersicht und Namenskonventionen Was ist Fehlertoleranz Eine Anleitung in 4 Phase Redundanz und Vielfältigkeit Hardwareseitige Fehlertoleranz Softwareseitige

Mehr

Redundanz und Replikation

Redundanz und Replikation Redundanz und Replikation Fehlertoleranz auf Systemebene Kurt Kanzenbach Friedrich Alexander Universität Erlangen-Nürnberg 25. November 2014 1 / 29 Redundanz und Replikation Replikation Replikation: Koordinierter

Mehr

Formale Verifikation von Software. 8. Juli 2015

Formale Verifikation von Software. 8. Juli 2015 Formale Verifikation von Software 8. Juli 2015 Überblick Wann ist formale Softwareverifikation sinnvoll? Welche Techniken gibt es? Was ist Model Checking und wie kann man es zur Verifikation einsetzen?

Mehr

Erstellung eines Konzepts für komplexe aufgabenorientierte User Interface Pattern dargestellt am Beispiel der Siemens Lagerverwaltungssysteme

Erstellung eines Konzepts für komplexe aufgabenorientierte User Interface Pattern dargestellt am Beispiel der Siemens Lagerverwaltungssysteme Martina Boshnakova Erstellung eines Konzepts für komplexe aufgabenorientierte User Interface Pattern dargestellt am Beispiel der Siemens Lagerverwaltungssysteme Abschlussvortrag Diplomarbeit 16.03.2010

Mehr

Lukas Klich. Projektgruppe SHUTTLE. Seminar: Entwurfsmuster Lukas Klich/Projektgruppe SHUTTLE Seite: 1. Entwurfsmuster

Lukas Klich. Projektgruppe SHUTTLE. Seminar: Entwurfsmuster Lukas Klich/Projektgruppe SHUTTLE Seite: 1. Entwurfsmuster Entwurfsmuster Lukas Klich Projektgruppe SHUTTLE Seminar: 28.11.2002 Entwurfsmuster Lukas Klich/Projektgruppe SHUTTLE Seite: 1 Motivation Die Menschheit löst Probleme, indem sie beobachtet, Beobachtungen

Mehr

Softwaretechnik 2015/2016

Softwaretechnik 2015/2016 Softwaretechnik 2015/2016 PST Lehrstuhl Prof. Dr. Matthias Hölzl HAUPT-/ BACHELOR- SEMINAR ADAPTIVE SYSTEME PST Joschka PROF. DR. Rinke WIRSING 14. JUNI 2009 VORNAME NAME AGENDA Übung 11: 14.01.2016 Schon

Mehr

Seminar: Fehlertolerante und Selbstheilende Systeme

Seminar: Fehlertolerante und Selbstheilende Systeme Seminar: Fehlertolerante und Selbstheilende Systeme Juniorprofessor Dr. Holger Giese, Stefan Henkler, Matthias Tichy FG Softwaretechnik Raum E 3.165 Tele. 60-3321 [hg,mtt,shenkler]@upb.de Fehlertoleranz

Mehr

Creational Patterns. Seminar Software-Entwurf. Thomas Liro WS 2004/05.

Creational Patterns. Seminar Software-Entwurf. Thomas Liro WS 2004/05. Creational Patterns Seminar Software-Entwurf WS 2004/05 Thomas Liro Inhaltsüberblick Einordnung des Themas Beschreibung von Design Pattern Auswahl von Design Patterns Was sind Creational

Mehr

Software-Qualität Ausgewählte Kapitel

Software-Qualität Ausgewählte Kapitel Martin Glinz Software-Qualität Ausgewählte Kapitel Kapitel 9 Verlässlichkeit 2009-2010 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen Gebrauch

Mehr

Bundling auf Softwaremärkten Eine technische Sicht

Bundling auf Softwaremärkten Eine technische Sicht Bundling auf Softwaremärkten Eine technische Sicht Michael Goedicke Institute for Computer Science and Business Information Systems University of Duisburg-Essen Campus Essen Technische Softwarenentwickler

Mehr

8 Design Patterns. Events

8 Design Patterns. Events 8 Design Patterns. Events Jörn Loviscach Versionsstand: 28. März 2015, 19:13 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work

Mehr

Entwurfsmuster und Frameworks Singleton

Entwurfsmuster und Frameworks Singleton Entwurfsmuster und Frameworks Singleton Oliver Haase Oliver Haase Emfra Singleton 1/20 Beschreibung I Klassifikation: objektbasiertes Erzeugungsmuster Zweck: sicherstellen, dass eine Klasse nur genau einmal

Mehr

Software Engineering

Software Engineering Software Engineering Gustav Pomberger, Wolfgang Pree Architektur-Design und Prozessorientierung ISBN 3-446-22429-7 Weitere Informationen oder Bestellungen unter http://www.hanser.de/3-446-22429-7 sowie

Mehr

Hochverfügbarkeit und virtualisierte Umgebungen

Hochverfügbarkeit und virtualisierte Umgebungen Hochverfügbarkeit und virtualisierte Umgebungen Hartmut Streppel Oracle Deutschland B.V. & Co. KG München Schlüsselworte Virtualisierung, Hochverfügbarkeit, Solaris Container, Solaris Zonen, Logical Domains,

Mehr

Software-Entwicklung

Software-Entwicklung Software-Entwicklung SEP 96 Geschichte der Programmierung Aufgaben von, Anforderungen an Programme mit der Zeit verändert 1 Programmierung über Lochkarten z.b. für Rechenaufgaben 2 maschinennahe Programmierung

Mehr

Unified Modeling Language (UML)

Unified Modeling Language (UML) Kirsten Berkenkötter Was ist ein Modell? Warum Modellieren? Warum UML? Viele, viele Diagramme UML am Beispiel Was ist ein Modell? Ein Modell: ist eine abstrakte Repräsentation eines Systems, bzw. ist eine

Mehr

Design Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi

Design Pattern - Strukturmuster. CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Design Pattern - Strukturmuster CAS SWE - OOAD Marco Hunziker Klaus Imfeld Frédéric Bächler Marcel Lüthi Agenda Einleitung Strukturmuster Fassade Model View Controller Vergleich 2 Einleitung Strukturmuster

Mehr

fungen Debugging Boris Tripolskij

fungen Debugging Boris Tripolskij Werkzeuggestützte tzte Softwareprüfungen fungen Debugging Boris Tripolskij Gliederung Motivation für Debugging Aufbau des Debuggers in Eclipse Arten von Debugging Tools Fehlerarten Delta Debugging Vorführung

Mehr

5 ECTS. 4 Modulverantwortlicher Prof. Dr. Francesca Saglietti

5 ECTS. 4 Modulverantwortlicher Prof. Dr. Francesca Saglietti 1 Modulbezeichnung Konstruktives Software Engineering (Constructive Phases of Software Engineering) 2 Lehrveranstaltungen V+Ü: Konstruktive Phasen des Software Engineering (erste zwei Monate der Vorlesung

Mehr

Objektorientierte Analyse (OOA) OOA-Pattern

Objektorientierte Analyse (OOA) OOA-Pattern OOA-Muster (Architektur Pattern) Ein Pattern (Entwurfsmuster) ist ein Problem mit seiner Lösung in einem Kontext. Der Kontext enthält in der Regel Zielkonflikte, die der Designer lösen muss, z.b. Performance

Mehr

Hochschule Darmstadt Fachbereich Informatik. Softwaretechnik II. 4.1 Darstellung der Architektur

Hochschule Darmstadt Fachbereich Informatik. Softwaretechnik II. 4.1 Darstellung der Architektur Hochschule Darmstadt Fachbereich Informatik Softwaretechnik II 4.1 Darstellung der Architektur Darstellung der Architektur Was macht ein Architekt? Viele Pläne! Endkunde Elektro Bauarbeiter Sanitär Softwaretechnik

Mehr

Funktionale Sicherheit

Funktionale Sicherheit Funktionale Sicherheit Funktionale Sicherheit von Medizingeräten Medical Device Day 21. Juni 2012, Erlangen Matthias Hölzer-Klüpfel Risiko und Sicherheit Wann ist Software ein Medizinprodukt? Sicherheit

Mehr

Improving the Accuracy of GPS

Improving the Accuracy of GPS Improving the Accuracy of GPS Stephan Kopf, Thomas King, Wolfgang Effelsberg Lehrstuhl für Praktische Informatik IV Universität Mannheim Gliederung Motivation ierungsfehler von GPS Steigerung der Genauigkeit

Mehr

PA-CONTROL CANopen Fehlerliste Ab Version 5.15 Ausgabe: 06/2008 Art.-Nr.:1082211. Technische Dokumentation

PA-CONTROL CANopen Fehlerliste Ab Version 5.15 Ausgabe: 06/2008 Art.-Nr.:1082211. Technische Dokumentation Technische Dokumentation PA-CONTROL CANopen Fehlerliste Ab Version 5.15 Ausgabe: 06/2008 Art.-Nr.:1082211 IEF Werner GmbH Wendelhofstr. 6 78120 Furtwangen Tel.: 07723/925-0 Fax: 07723/925-100 www.ief-werner.de

Mehr

Probeklausur. Lenz Belzner. January 26, 2015. Lenz Belzner Probeklausur January 26, 2015 1 / 16

Probeklausur. Lenz Belzner. January 26, 2015. Lenz Belzner Probeklausur January 26, 2015 1 / 16 Probeklausur Lenz Belzner January 26, 2015 Lenz Belzner Probeklausur January 26, 2015 1 / 16 Definieren Sie Software Engineering in Abgrenzung zu Individual Programming. Ingenieursdisziplin professionelle

Mehr

ISDN. - Verbindung zur Außenwelt -

ISDN. - Verbindung zur Außenwelt - ISDN - Verbindung zur Außenwelt - Anbindungsmöglichkeiten für ISDN (X.25) lokales CAPI2.0 (nur Linux): OS4X Home Edition! RemoteCAPI für Bintec/Funkwerk Brick: OS4X Professional Edition! Kein Mischbetrieb

Mehr

ALGOL 68 im Aspekt einer modernen Programmiersprache???

ALGOL 68 im Aspekt einer modernen Programmiersprache??? ALGOL 68 im Aspekt einer modernen Programmiersprache??? General-purpose-Programmiersprache: Ein sehr wichtiges Kriterium ist die Möglichkeit, alle Algorithmen (=Lösungsverfahren) in einer Programmiersprache

Mehr

2008 Jiri Spale, Programmierung in eingebetteten Systemen 1

2008 Jiri Spale, Programmierung in eingebetteten Systemen 1 2008 Jiri Spale, Programmierung in eingebetteten Systemen 1 NetX - Einführung 2008 Jiri Spale, Programmierung in eingebetteten Systemen 2 NetX is... a highly integrated network controller with a new system

Mehr

Software Produktlinien: Einführung und Überblick

Software Produktlinien: Einführung und Überblick C A R L V O N O S S I E T Z K Y Software Produktlinien: Einführung und Überblick Johannes Diemke Vortrag im Rahmen des Seminars Software System Engineering im Wintersemester 2007/2008 Übersicht 1 Motivation

Mehr

Weiterentwicklung der EN 50128 (VDE 0831-128) 128) Umsetzung im Bahnbereich

Weiterentwicklung der EN 50128 (VDE 0831-128) 128) Umsetzung im Bahnbereich Weiterentwicklung der EN 50128 (VDE 0831-128) 128) Umsetzung im Bahnbereich Andreas Armbrecht Siemens AG Darmstadt, 01. 02. Dezember 2009 Business Unit Rail Automation Systeme der Eisenbahnautomatisierung

Mehr

Funktionale Sicherheit ISO 26262 Schwerpunkt Requirements Engineering,

Funktionale Sicherheit ISO 26262 Schwerpunkt Requirements Engineering, Funktionale Sicherheit ISO 26262 Schwerpunkt Requirements Engineering, Manfred Broy Lehrstuhl für Software & Systems Engineering Technische Universität München Institut für Informatik ISO 26262 Functional

Mehr

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Einleitung - Th Letschert FH Gießen-Friedberg

Prof. Dr. Th. Letschert CS5001. Verteilte Systeme. Master of Science (Informatik) - Einleitung - Th Letschert FH Gießen-Friedberg Prof. Dr. Th. Letschert CS5001 Master of Science (Informatik) - - Th Letschert FH Gießen-Friedberg Modulnr.: CS5001 Verwendbar : Master of Science (Informatik) Master of Science (Wirtschaftsinformatik)

Mehr

Enterprise JavaBeans Überblick

Enterprise JavaBeans Überblick Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5. Java Persistence: Entity Manager 6.

Mehr

SOMA Reverse Engineering

SOMA Reverse Engineering SOMA Reverse Engineering Univ.Prof. Dr. Franz Wotawa Institut für Softwaretechnologie wotawa@ist.tugraz.at Inhalt Was versteht man unter Reverse Engineering? Techniken/Methoden Probleme VU Software Maintenance

Mehr

Bekannte Lösungen für bekannte Probleme benutzen. Entwurf auf höherer Abstraktionsebene als bei Programmiersprachen

Bekannte Lösungen für bekannte Probleme benutzen. Entwurf auf höherer Abstraktionsebene als bei Programmiersprachen Michael Saecker Bekannte Lösungen für bekannte Probleme benutzen Entwurf auf höherer Abstraktionsebene als bei Programmiersprachen Gemeinsames Vokabular für Designer 2 http://www.clickpix.de/sommer/architektur.jpg

Mehr

Modellbasierte Software- Entwicklung eingebetteter Systeme

Modellbasierte Software- Entwicklung eingebetteter Systeme Modellbasierte Software- Entwicklung eingebetteter Systeme Prof. Dr. Holger Schlingloff Institut für Informatik der Humboldt Universität und Fraunhofer Institut für offene Kommunikationssysteme FOKUS Folie

Mehr

Inhaltsverzeichnis. Teil I Grundlagen 1

Inhaltsverzeichnis. Teil I Grundlagen 1 xv Teil I Grundlagen 1 1 Modelle und Modellierung 3 1.1 Modelle, die uns umgeben.................................. 3 1.2 Modelltheorie........................................... 5 1.3 Ziele beim Einsatz

Mehr

Objektorientierte Softwareentwicklung

Objektorientierte Softwareentwicklung Objektorientierte Softwareentwicklung Analyse- und Designmethoden Analyse- & Designmethoden Strukturierte, traditionelle Methoden Objektorientierte Methoden Funktionsorientierte Methoden Datenorientierte

Mehr

Übung 6: Feinentwurf. Prof. Dr. Dr. h.c. Manfred Broy Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter

Übung 6: Feinentwurf. Prof. Dr. Dr. h.c. Manfred Broy Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter Prof. Dr. Dr. h.c. Manfred Broy Sommersemester Dr. Herbert Ehler, Martin Feilkas 6. Juli 2006 Bernd Spanfelner, Sebastian Winter Einführung in die Softwaretechnik Übung 6: Feinentwurf Aufgabe 17: Entwurfsmuster

Mehr

Techniken der Projektentwicklungen

Techniken der Projektentwicklungen Dynamische Modellierung 8. Termin Rückblick auf statische Modellierung Dynamische Modellierung Basiskonzepte Beispiel Erweiterungen Eigenschaften Syntax Rückblick auf statische Modellierung Dynamische

Mehr

UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert

UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert UML 2.0 als Architekturbeschreibungssprache? Seminar: Architekturbeschreibungssprachen Manuel Wickert Motivation UML 2.0 nicht als ADL im Sinne von Taylor/Medvidovic entworfen. Warum UML als ADL? weit

Mehr

Formale Grundlagen der Fehlertoleranz in verteilten Systemen

Formale Grundlagen der Fehlertoleranz in verteilten Systemen 1/27 Formale Grundlagen der Fehlertoleranz in verteilten Systemen Felix Gärtner TU Darmstadt felix@informatik.tu-darmstadt.de 2/27 Bezug zur formalen Softwareentwicklung formale SE Definitionsphase Aufsplittung

Mehr

Sicherheit bei lernenden Robotern

Sicherheit bei lernenden Robotern 15. Januar 2009 Sicherheitsbegriff Herangehensweisen Beschreibung des Begriffs Sicherheit Sicherheit ist... Schutz vor Bedrohung und Schaden Zuverlässigkeit Safety: Schutz der Umgebung (accident prevention)

Mehr

The B Method. B ist eine Methode zur Spezifikation zum Entwurf zur Implementierung von Software Systemen. Bücher zur B-Methode

The B Method. B ist eine Methode zur Spezifikation zum Entwurf zur Implementierung von Software Systemen. Bücher zur B-Methode The B Method B ist eine Methode zur Spezifikation zum Entwurf zur Implementierung von Software Systemen. Bücher zur B-Methode P. Schmitt: Formal Specification and Verification of Software p.1 The B Method

Mehr

Taxonomy of Evolution and Dependability. Integration Engineering SS 2009 Andreas Landerer

Taxonomy of Evolution and Dependability. Integration Engineering SS 2009 Andreas Landerer Taxonomy of Evolution and Dependability Integration Engineering SS 2009 Andreas Landerer Agenda Informationen über Massimo Felici Definition zentraler Begriffe Inhalt des Artikels Kernaussagen des Artikels

Mehr

backy Image-basiertes Backup für virtuelle Maschinen Christian Kauhaus Chemnitzer Linux-Tage 2016

backy Image-basiertes Backup für virtuelle Maschinen Christian Kauhaus <kc@flyingcircus.io> Chemnitzer Linux-Tage 2016 backy Image-basiertes Backup für virtuelle Maschinen Christian Kauhaus Chemnitzer Linux-Tage 2016 Einführung Wer ist Christian Kauhaus? Seit 2008 bei Flying Circus (gocept) Systems

Mehr

Dr. Simon Giesecke Falko Basner Dr. Jörg Friebe. Bad Honnef, 3. Mai 2010

Dr. Simon Giesecke Falko Basner Dr. Jörg Friebe. Bad Honnef, 3. Mai 2010 Architekturentscheidungen für große langlebige Softwaresysteme: Vendor-Lock-in- und Netz-Effekte Menschen beraten Menschen beraten BTC zeigt Wege auf - Sie entscheiden BTC zeigt Wege auf - Sie entscheiden

Mehr

Kernprozess zur System- und Softwareentwicklung. Logische Systemarchitektur f 1. f 2 f 3. f 4 Funktion. Technische Systemarchitektur SG 1 SG 2 SG 3

Kernprozess zur System- und Softwareentwicklung. Logische Systemarchitektur f 1. f 2 f 3. f 4 Funktion. Technische Systemarchitektur SG 1 SG 2 SG 3 Systems Engineering Systems Engineering ist die gezielte Anwendung von wissenschaftlichen und technischen Ressourcen! zur Transformation eines operationellen Bedürfnisses in die Beschreibung einer Systemkonfiguration

Mehr

Testmanagement. Full-Service

Testmanagement. Full-Service Testmanagement Full-Service Industrie 4.0 und das Internet der Dinge sind nur zwei Beispiele für die zunehmende Bedeutung von Software und die Vernetzung von Software-Systemen. Fehler in diesen Systemen

Mehr

Objektorientierte und Funktionale Programmierung SS 2014

Objektorientierte und Funktionale Programmierung SS 2014 Objektorientierte und Funktionale Programmierung SS 2014 6 Objektorientierte Entwurfsmuster 1 6 Objektorientierte Entwurfsmuster Lernziele Einige wichtige Entwurfsmuster kennen und verstehen Einsatzmöglichkeiten

Mehr

Software Engineering

Software Engineering Literatur Gliederung Software Engineering Herbert Kuchen Universität Münster Di+Fr 14:15-15:45, M2 Wintersemester 2009/2010 1 Literatur Gliederung Basis-Literatur H. Balzert: Lehrbuch der Software-Technik,

Mehr

Der Nutzen und die Entscheidung für die private Cloud. Martin Constam Rechenpower in der Private Cloud 12. Mai 2014

Der Nutzen und die Entscheidung für die private Cloud. Martin Constam Rechenpower in der Private Cloud 12. Mai 2014 Der Nutzen und die Entscheidung für die private Cloud Martin Constam Rechenpower in der Private Cloud 12. Mai 2014 1 Übersicht - Wer sind wir? - Was sind unsere Aufgaben? - Hosting - Anforderungen - Entscheidung

Mehr

Java Applet Alternativen

Java Applet Alternativen White Paper Java Applet Alternativen Version 1.0, 21.01.2014 Tobias Kellner tobias.kellner@egiz.gv.at Zusammenfassung: Aufgrund diverser Meldungen über Sicherheitslücken in Java haben in letzter Zeit Browser-Hersteller

Mehr

Software Engineering. Ariane Flug 501! Fallstudie

Software Engineering. Ariane Flug 501! Fallstudie Martin Glinz Thomas Fritz Software Engineering Fallstudie Ariane Flug 501! 2005-2013 Martin Glinz. Alle Rechte vorbehalten. Speicherung und Wiedergabe für den persönlichen, nicht kommerziellen Gebrauch

Mehr

3D Visualisierung von UML Umgebungsmodellen

3D Visualisierung von UML Umgebungsmodellen 3D Visualisierung von UML Umgebungsmodellen Vortragender: Helmer Krämer Betreuer: Dr. Holger Giese 3D Visualisierung von UML Umgebungsmodellen Krämer Seite 1 Motivation und Anforderungen Das Umgebungsmodell

Mehr

Entwurfsmuster Martin Fesser 00IN

Entwurfsmuster Martin Fesser 00IN Entwurfsmuster Martin Fesser 00IN Inhalt Was sind Entwurfsmuster? Vorteile, Nachteile Entwurfsmusterkatalog (nach GoF) Variation von Entwurfsaspekten Wie Entwurfsmuster Entwurfsprobleme lösen Beispiele

Mehr

industrial engineering Safety & Security integrierte Entwicklung www.ics-ag.de 1

industrial engineering Safety & Security integrierte Entwicklung www.ics-ag.de 1 industrial engineering Safety & Security integrierte Entwicklung 1 industrial engineering Profitieren Sie von unserer Erfahrung Sparen Sie sich teure und langwierige Ausbildungsprogramme und starten Sie

Mehr

Warum Programme Verträge schließen sollten

Warum Programme Verträge schließen sollten 1 Warum Programme Verträge schließen sollten RALF HINZE Institut für Informatik, Lehrstuhl Softwaretechnik, Universität Freiburg Georges-Köhler-Allee, Gebäude 079, 79110 Freiburg i. Br. Email: ralf@informatik.uni-bonn.de

Mehr

Antwortet der zuletzt aktive WiFi Emotion, dann wird sofort in den Fernbedienungs-Bildschrim umgeschaltet L&S. No WiFi Emotion found

Antwortet der zuletzt aktive WiFi Emotion, dann wird sofort in den Fernbedienungs-Bildschrim umgeschaltet L&S. No WiFi Emotion found 1 Navigation Dieser Punkt beschreibt die Bildschirme der App. Start-Bildschirm Wireless network is not available Zustand, wenn Mobilgerät überhaupt keine Wlan Verbindung beim Start der App hat. In diesem

Mehr

1 Der Prozess der Softwareentwicklung

1 Der Prozess der Softwareentwicklung Die Entwicklung von Softwaresystemen wird gerne verglichen mit dem Bau eines Hauses. Es gibt tatsächlich viele Parallelen: Ein Haus entsteht aus einer ersten Idee, die in Bauplänen weiterentwickelt wird.

Mehr

Langlebige Softwarearchitekturen

Langlebige Softwarearchitekturen Langlebige Softwarearchitekturen Dr. Carola Lilienthal Carola.Lilienthal@wps.de www.wps.de //// Hans-Henny-Jahnn-Weg 29 //// 22085 HAMBURG Die zwei Architekturziele für diesen Vortrag Architekturziel 1:

Mehr

Grundlagen Software Engineering

Grundlagen Software Engineering Grundlagen Software Engineering Rational Unified Process () GSE: Prof. Dr. Liggesmeyer, 1 Rational Unified Process () Software Entwicklungsprozess Anpassbares und erweiterbares Grundgerüst Sprache der

Mehr

Band M, Kapitel 5: Server

Band M, Kapitel 5: Server Bundesamt für Sicherheit in der Informationstechnik Postfach 20 03 63 53133 Bonn Tel.: +49 22899 9582-0 E-Mail: Hochverfuegbarkeit@bsi.bund.de Internet: https://www.bsi.bund.de Bundesamt für Sicherheit

Mehr

- - CodE 11 CodE 0 0 0 0 0 0 0 0 2.o C 1 10.0 C 2 off 3 3.0 4 2.0 5 off 6 1 8 20.0 9 60 C 7 4.0 10 80 C 1 38 C 12 8 k 13 on 14 30.0 15 10 16 - - CodE 11 CodE 0 0 0 0 0 0 0 0 2.o C 1 10.0 C 2

Mehr

Autonomic Computing. Veronica Garcia, Lukas Knauer, Christopher Suter. 18. Mai 2006 Seminar Communication Systems IFI, UniZH

Autonomic Computing. Veronica Garcia, Lukas Knauer, Christopher Suter. 18. Mai 2006 Seminar Communication Systems IFI, UniZH Autonomic Computing Veronica Garcia, Lukas Knauer, Christopher Suter 18. Mai 2006 Seminar Communication Systems IFI, UniZH Agenda Warum Autonomic Computing? Was ist Autonomic Computing? Level der Evolution

Mehr

TÜV NORD. DIN EN 16001:2009 Energiemanagementsysteme Hintergründe und Anforderungen mit Anleitung zur Anwendung. Energiearena OWL 04.

TÜV NORD. DIN EN 16001:2009 Energiemanagementsysteme Hintergründe und Anforderungen mit Anleitung zur Anwendung. Energiearena OWL 04. TÜV NORD DIN EN 16001:2009 Energiemanagementsysteme Hintergründe und Anforderungen mit Anleitung zur Anwendung Energiearena OWL 04. November 2010 B. Eng. Oliver Fink Produktmanager - Energieeffizienz TÜV

Mehr

PITSS.CON Oracle Forms 11g - Lower your IT Costs

PITSS.CON Oracle Forms 11g - Lower your IT Costs PITSS.CON Oracle Forms 11g - Lower your IT Costs Die Basis für eine moderne Softwarearchitekture Andreas Gaede PITSS GmbH Agenda 09:00 Registrierung und Frühstück 09:25 Begrüßung 09:30 Executive Keynote

Mehr

11 Security Engineering

11 Security Engineering 11 Security Engineering d.h. sichere Entwicklung sicherer Software (safe) (secure) oder sicherheitsbewusste Softwaretechnik ITS-11.1 1 Bei traditionellen Phasenmodellen: Anforderungsermittlung/Systemspezifikation

Mehr

4.5 Nassi-Schneidermann Diagramm

4.5 Nassi-Schneidermann Diagramm 4.5 Nassi-Schneidermann Diagramm Nassi-Schneidermann-Diagramme, die auch Struktogramme genannt werden, sind graphische Hilfsmittel zum Entwurf und zur Darstellung von Programmsystemen. Sie sind beim Detailentwurf

Mehr

Vorlesung Donnerstags, 10.00 bis 11.30 Uhr, HS12 Übung Dienstags, 14.00 bis 15.30 Uhr 4-5 ÜbungsbläMer (Programmieraufgaben)

Vorlesung Donnerstags, 10.00 bis 11.30 Uhr, HS12 Übung Dienstags, 14.00 bis 15.30 Uhr 4-5 ÜbungsbläMer (Programmieraufgaben) Komponenten Einführung Organisatorisches 2+1 SWS Vorlesung Donnerstags, 10.00 bis 11.30 Uhr, HS12 Übung Dienstags, 14.00 bis 15.30 Uhr 4-5 ÜbungsbläMer (Programmieraufgaben) Klausur 28. Februar 2013 Unterlagen

Mehr

Sicherheit / Sicherung - unterschiedliche Begriffsbestimmung, gemeinsame Fachaspekte

Sicherheit / Sicherung - unterschiedliche Begriffsbestimmung, gemeinsame Fachaspekte Sicherheit / Sicherung - unterschiedliche Begriffsbestimmung, gemeinsame Fachaspekte F. Seidel, BfS Salzgitter (Juli 2002) 1) Begriffsbestimmung (Vergleich unter Nutzung nationaler und internationaler

Mehr

Update auf ImmoTop 4.60 (Ein- und Mehrplatz) mit Internet-Download

Update auf ImmoTop 4.60 (Ein- und Mehrplatz) mit Internet-Download Update auf ImmoTop 4.60 (Ein- und Mehrplatz) mit Internet-Download A Wichtige Hinweise Beachten Sie bitte vor dem Beginn der Installation folgende Punkte: Für den Updateprozess von ImmoTop benötigen Sie

Mehr

Objektorientierte Entwurfsmuster

Objektorientierte Entwurfsmuster Objektorientierte Entwurfsmuster Claus Lewerentz Brandenburgische Technische Universität Cottbus Fraunhofer FIRST/SWQlab Cottbus Fraunhofer Institut Rechnerarchitektur und Softwaretechnik 12.05.2005, Software-Systemtechnik,

Mehr

Wie

Wie drag to move object Was Das Pattern drag to move object bietet die Möglichkeit, ein UI-Element in einer Touch- Bedienoberfläche zu verschieben. Wie Aktion des Benutzers Der Benutzer berührt das UI-Element

Mehr

Anleitung für das MS Project Professional 2003 (Deutsche Version)

Anleitung für das MS Project Professional 2003 (Deutsche Version) Anleitung für das MS Project Professional 2003 (Deutsche Version) Erstes Starten... 2 Tutorial... 3 Hilfe... 4 Critical Path / Kritischer Weg... 5 Der Critical Path / Kritischer Weg wird nicht korrekt

Mehr

Softwarewiederverwendung und Patterns

Softwarewiederverwendung und Patterns Begrifflichkeiten und Beschreibungssystematik Begriffe Literatur zu Patterns Übersicht über die behandelten Konzepte Beschreibungsschema 97 Begriffe Glossar Patterns (Muster) sind ein Mittel der Wiederverwendung

Mehr

Zusicherungen und Laufzeit Überwachungen in der modellbasierten Software Entwicklung

Zusicherungen und Laufzeit Überwachungen in der modellbasierten Software Entwicklung Zusicherungen und Laufzeit Überwachungen in der modellbasierten Software Entwicklung Methoden Design Integration STZ Softwaretechnik Andreas Rau STZ Softwaretechnik Im Gaugenmaier 20 73730 Esslingen Email:

Mehr

Entwurf eines FPGA-Cores zur Simulationsbeschleunigung zeitkontinuierlicher Modelle im HiL Kontext

Entwurf eines FPGA-Cores zur Simulationsbeschleunigung zeitkontinuierlicher Modelle im HiL Kontext Entwurf eines FPGA-Cores zur Simulationsbeschleunigung zeitkontinuierlicher Modelle im HiL Kontext Till Fischer 03.11.2011 FZI Forschungszentrum Informatik Embedded Systems & Sensors Engineering (ESS)

Mehr

Softwareentwicklungspraktikum Sommersemester 2007. Grobentwurf

Softwareentwicklungspraktikum Sommersemester 2007. Grobentwurf Softwareentwicklungspraktikum Sommersemester 2007 Grobentwurf Auftraggeber Technische Universität Braunschweig

Mehr

1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge

1.4! Einführung. Systemmodellierung. Methoden und Werkzeuge Einführung. Vorbemerkungen und Überblick. Die elektronischen e des Fahrzeugs. Prozesse in der Fahrzeugentwicklung im Überblick,.4 Grundlagen. Steuerungs- und regelungstechnische e (Prof. Schumacher). Diskrete

Mehr

Big Data zwischen Hype und Realität Perspektiven im Gesundheitswesen. Dr. Peter Grolimund, Senior Industry Consultant Life Sciences 26-Januar-2015

Big Data zwischen Hype und Realität Perspektiven im Gesundheitswesen. Dr. Peter Grolimund, Senior Industry Consultant Life Sciences 26-Januar-2015 Big Data zwischen Hype und Realität Perspektiven im Gesundheitswesen Dr. Peter Grolimund, Senior Industry Consultant Life Sciences 26-Januar-2015 Zur Diskussion DATEN Spenden kann Leben retten Analysieren

Mehr

Mobile Application Framework auf der Baustelle

Mobile Application Framework auf der Baustelle Mobile Application Framework auf der Baustelle Marcus Hammer virtual7 GmbH Karlsruhe Schlüsselworte Mobile Application Framework, REST, A-Team Mobile Persistence Accellerator Einleitung Die Firmengruppe

Mehr

3-Tier-Architecture und J2EE

3-Tier-Architecture und J2EE 3-Tier-Architecture und J2EE Oliver Müller Seminar Software-Entwurf WS 2004/05 3-Tier, was war das noch gleich? NEIN, das nicht!!! 2 Die Lage - Applikationen laufen

Mehr

ACX GmbH DO-178C. Eine Einführung

ACX GmbH DO-178C. Eine Einführung ACX GmbH DO-178C Eine Einführung Inhalt Hintergrund... 2 Software Level... 2 Entwicklungsprozesse... 3 Weitere Techniken... 5 Partioning... 6 Multiple-Version Dissimilar Software... 6 Safety Monitoring...

Mehr

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider

Wissenschaftliche Vertiefung Web Services. Esslingen, 22. Januar 2016 Simon Schneider Wissenschaftliche Vertiefung Web Services Esslingen, 22. Januar 2016 Agenda 1. Einführung 2. Serviceorientierte Architektur 3. SOAP Web Service 4. Standards und Protokolle von SOAP Web Services 5. Bewertung

Mehr

Nebenläufige Programmierung

Nebenläufige Programmierung Nebenläufige Programmierung Perspektiven der Informatik 27. Januar 2003 Gert Smolka Telefon-Szenario Eine Telefonzelle Mehrere Personen wollen telefonieren Immer nur eine Person kann telefonieren Ressource

Mehr

Log xmllog textlog Log() start(filename) add(message) end() instance() Abbildung 7-10: Die Protokollierungs-API mit einer einfachen Fassade

Log xmllog textlog Log() start(filename) add(message) end() instance() Abbildung 7-10: Die Protokollierungs-API mit einer einfachen Fassade HACK #76 Hack APIs mit dem Façade-Muster vereinfachen Durch die Verwendung des Façade-Entwurfsmusters können Sie die anderen Programmierern zugängliche API vereinfachen. #76 Dies ist ein Muster, von dem

Mehr

Verteilte Systeme. Einführung. Prof. Dr. Oliver Haase

Verteilte Systeme. Einführung. Prof. Dr. Oliver Haase Verteilte Systeme Einführung Prof. Dr. Oliver Haase 1 Definition A distributed system is a collection of independent computers that appears to its users as a single coherent system. - Andrew Tanenbaum

Mehr

Software Defined Networking. und seine Anwendbarkeit für die Steuerung von Videodaten im Internet

Software Defined Networking. und seine Anwendbarkeit für die Steuerung von Videodaten im Internet und seine Anwendbarkeit für die Steuerung von Videodaten im Internet FACHBEREICH FB5 Stefan Königs ISE Seminar 22.10.2012 1 Agenda o Einführung o Software Defined Networking o Ansatz/Prinzip o o Vergleich

Mehr