den sicherheitskritischen Bereich Christoph Schmiedinger Frankfurter Entwicklertag 2015 24.02.2015

Ähnliche Dokumente
Wir erledigen alles sofort. Warum Qualität, Risikomanagement, Gebrauchstauglichkeit und Dokumentation nach jeder Iteration fertig sind.

Agile Software-Entwicklung im Kontext der EN50128 Wege zum Erfolg

Taking RM Agile. Erfahrungen aus dem Übergang von traditioneller Entwicklung zu Scrum

Agiles Design. Dr.-Ing. Uwe Doetzkies Gesellschaft für Informatik mail:

Agile Prozessverbesserung. Im Sprint zu besseren Prozessen

Unser verflixtes 7. Jahr im Testmanagement. Bernd Schindelasch 26. Juni 2013

IT-Basics 2. DI Gerhard Fließ. Vorgehensmodelle

Scrum for Management Praxis versus Theorie oder Praxis dank Theorie. ALM Day 26.Oktober 2011 Urs Böhm

Was Sie über SCRUM wissen sollten...

Warum sich das Management nicht für agile Softwareentwicklung interessieren sollte - aber für Agilität

Agile Software Development

SCRUM. Vertragsgestaltung & Vertragsorientierte Projektdurchführung. Katharina Vierheilig Vorlesung: Juristisches IT-Projektmanagement

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

AGILE APPLICATION LIFECYCLE MANAGEMENT IM ATLASSIAN ECOSYSTEM

Agile Systemadministration (ASA)

Sollten folgende drei Fragen durch das Team positiv beantwortet werden, sind wichtige SCRUM-Elemente in Ihrem Team erfolgreich installiert.

SCRUM. Legalisierung der Hackerei? GI Regionalgruppe Dortmund Dipl.-Inform. (FH) Dirk Prüter.

Einführung in das Scrum Framework & welche 10 Praktiken helfen, Scrum wirklich gut zu machen


Führung von agilen verteilten Teams

Agile Entwicklung nach Scrum

Soft Skills als Erfolgsfaktoren im anforderungsorientierten, agilen Projektmanagement am Beispiel der IT- Softwareentwicklung

Agiles Testmanagement am Beispiel Scrum

SCRUM Agile Entwicklungsmethoden für die Automobilindustrie. Dr. Sascha Riexinger , TechDay Kirchentellinsfurt

Agile Embedded Projekte mit Scrum & Kanban. Embedded Computing Conference 2012 Urs Böhm

Requirements-Management Ein praktisches Beispiel

Functional Safety. Systems Engineering als Schlüsseldisziplin in Projekten mit funktionaler Sicherheit

Umfrage zum Informationsbedarf im Requirements Engineering

Unsere Kunden erzählen keine Geschichten. Ursula Meseberg microtool GmbH Berlin

Regulatorische Anforderungen an die Entwicklung von Medizinprodukten

Agile Programmierung - Theorie II SCRUM

Agile Softwareentwicklung mit Scrum

Scrum. Übung 3. Grundlagen des Software Engineerings. Asim Abdulkhaleq 20 November 2014

Scrum mit User Stories

Robert Hartmann Public v1.0 (Feb 2015) Architektur & Agilität - Praxisbericht

Andrea Grass & Dr. Marcus Winteroll oose Innovative Informatik GmbH. Geschäftsprozessmanagement und Agilität geht das zusammen?

Extreme Programming: Überblick

Meetings in SCRUM. Leitfaden. Stand:

Agilität selbst erfahren. Agile Softwareentwicklung in der Praxis: Jetzt bewerben für das erste Agile Code Camp 2013!

Agile Management Einführung in agiles Management

Erfahrungsbericht Agile Entwicklung einer BI Anwendung für das Meldewesen

AGILES Software Engineering in der COUNT IT. Testautomatisierung in der agilen Softwareentwicklung

BILFINGER INDUSTRIAL MAINTENANCE DAS NEUE BILFINGER MAINTENANCE CONCEPT BMC

Softwarequalität. TÜV SÜD Product Service GmbH. Damit Ihre Softwareprodukte sicher ins Ziel kommen.

OUTSOURCING ADVISOR. Analyse von SW-Anwendungen und IT-Dienstleistungen auf ihre Global Sourcing Eignung. Bewertung von Dienstleistern und Standorten

07. November, Zürich-Oerlikon

Requirements-Traceability in der industriellen Praxis Ziele und Einsatz

StuPro-Seminar Dokumentation in der Software-Wartung. StuPro-Seminar Probleme und Schwierigkeiten in der Software-Wartung.

Inhaltsverzeichnis. Ralf Wirdemann. Scrum mit User Stories ISBN: Weitere Informationen oder Bestellungen unter

Kapitel 10: Dokumentation

Praktische Erfahrungen beim Einsatz des Vorgehensmodells "SCRUM" bei AGFA HealthCare

Projektmanagement Vorlesung 14/ 15: Wiederholung ausgewählter Themen zur Klausurvorbereitung. Prof. Adrian Müller, PMP, PSM-1, CSM FH Kaiserslautern

your engineering partner boost your development

Software-Entwicklungsprozesse zertifizieren

Informationssystemanalyse Problemstellung 2 1. Trotz aller Methoden, Techniken usw. zeigen Untersuchungen sehr negative Ergebnisse:

Konsolidierung und Neuimplementierung von VIT. Aufgabenbeschreibung für das Software Engineering Praktikum an der TU Darmstadt

Agiles Requirements Engineering mit Scrum. Rainer Fetscher Neuss, 16. November 2010

Praxisbericht und Demo-Projektabwicklung mit der ATLASSIAN Toolchain und Continuous Integration. Markus Stollenwerk, Noser Engineering AG

Gelebtes Scrum. Weg vom Management hin zur Führung

Scrum. Agile Software Entwicklung mit. Agile Software Entwicklung mit. Scrum. Raffael Schweitzer 18. November 2003

Kurzfassung der Studienarbeit

Agile Softwareentwicklung

Die Welt der SW-Qualität Ein Streifzug in 30 Minuten! Johannes Bergsmann Eigentümer

Qualitätsmanagement mit Continuous Integration Untersuchung anhand einer Machbarkeitsstudie in der Praxis. Abschlußpräsentation zur Studienarbeit

SSI WHITE PAPER Design einer mobilen App in wenigen Stunden

Benötigen wir einen Certified Maintainer?

How to Survive an Audit with Real-Time Traceability and Gap Analysis. Martin Kochloefl, Software Solutions Consultant Seapine Software

Scaling Scrum Nexus professionell umsetzen

Agile Werkzeuge für den Produktmanagementzyklus vom Konzept bis zur Auslieferung

teischl.com Software Design & Services e.u. office@teischl.com

Requirements Engineering für die agile Softwareentwicklung

The big picture: Prince2 featuring SCRUM. Bernd Lehmann, Prince2-Tag Köln, 12. Mai 2011

Water-Scrum-Fall Ein Entwicklungsprozess mit Zukunft? Bernhard Fischer

Projektsteuerung Projekte effizient steuern. Welche Steuerungsinstrumente werden eingesetzt?

Value Delivery and Customer Feedback

Qualitätserlebnis statt Qualitätssicherung. Eine Mehrfachfallstudie agiler Teams

SCRUM. Software Development Process

Hilfe, mein SCRUM-Team ist nicht agil!

ERP-Evaluation systematisch und sicher zum optimalen ERP-System

Entwurf. Anwendungsbeginn E DIN EN (VDE ): Anwendungsbeginn dieser Norm ist...

SPI-Seminar : Interview mit einem Softwaremanager

Hauptseminar Entwicklung von Informationssystemen

Inhaltsverzeichnis. Ralf Wirdemann. Scrum mit User Stories ISBN: Weitere Informationen oder Bestellungen unter

Trotz Agilität nicht ins Abseits geraten Modellierung in einem agilen Umfeld. Susanne Mühlbauer, Philip Stolz, HOOD GmbH MID Insight 2012

CONTINUOUS LEARNING. Agile Anforderungsanalyse mit Impact Mapping

Requirements Engineering für IT Systeme

Agile Softwareentwicklung Scrum vs. Kanban

High Speed Projects. Gedanken zum Bauprojektmanagement unter besonderen Anforderungen

Maschinenrichtlinie 2006/42/EG 150 Fragen und Antworten zum Selbststudium

1 Einführung Im Nebel nach Turkmenistan Warum Projekte scheitern (können) Wie am Schnürchen Wie Projekte ablaufen (sollten)...

Free your work. Free your work. Wir wollen Ihnen die Freiheit geben, sich auf Ihr Geschäft zu konzentrieren.

Geyer & Weinig: Service Level Management in neuer Qualität.

Risikoanalyse mit der OCTAVE-Methode

.. für Ihre Business-Lösung

Hochschule Darmstadt Fachbereich Informatik

Checkliste zur qualitativen Nutzenbewertung

Klassisches Projektmanagement und agil

Neue Funktionalität in mobidas 1.3. erp Serie

Wir organisieren Ihre Sicherheit

Transkript:

Agile Methoden als Diagnose-Tool für den sicherheitskritischen Bereich Christoph Schmiedinger Frankfurter Entwicklertag 2015 24.02.2015

Über mich Berufliche Erfahrung 3 Jahre Projektabwicklung 2 Jahre Product Owner >1 Jahr Consulting Agile Schwerpunkte Enterprise Applications Safety-critical Applications

Agenda

Agenda

Agile Methoden? Status Quo Agile 2014 Status Quo Agile 2014 - Ergebnisbericht http://www.hs-koblenz.de/rmc/fachbereiche/wirtschaft/forschung-projekte/forschungsprojekte/status-quo-agile/

Agile Methoden! Populärste Methodik ist Scrum Erprobte Vorteile Direkte Kommunikation der involvierten Mitarbeiter Kurze Entwicklungszyklen in Iterationen Kontinuierliche Lieferung eines potentiell nutzbaren Produkts

Sicherheitskritscher Bereich? Produkt hat im Fehlerfall ein großes Risiko hinsichtlich der Gefährdung von Mensch, Eigentum und/oder Umwelt Typische Branchen sind Luft- und Raumfahrt Automotive Medizintechnik Automatisation

Agenda

Aktuelle Herausforderungen Erhöhter Wettbewerb und damit verbundener Kostendruck Qualität & Sicherheit genießen weiterhin höchste Priorität werden aber zunehmend als vorausgesetzt angesehen Stärkerer Fokus auf funktionale Anforderungen Oft hohe Risikoaversion bezüglich neuer Technologien

Agenda

Die Vorurteile Agile Prinzipien und sicherheitskritische Entwicklung Das passt so definitiv nicht, weil Missverständnis des agilen Manifests Widerspruch in der Priorisierung der Werte Schlechte Beispiele von Scrum Implementierungen Vorherrschendes Chaos Missinterpretation der Normenkonformität Verbot von agilen Vorgehensweisen

Das Agile Manifest (2001) Wir erschließen bessere Wege, Software zu entwickeln, indem wir es selbst tun und anderen dabei helfen. Durch diese Tätigkeit haben wir diese Werte zu schätzen gelernt: Individuen und Interaktionen mehr als Prozesse und Werkzeuge Funktionierende Software mehr als umfassende Dokumentation Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung Reagieren auf Veränderung mehr als das Befolgen eines Plans Das heißt, obwohl wir die Werte auf der rechten Seite wichtig finden, schätzen wir die Werte auf der linken Seite höher ein.

Das Agile Manifest (2001) Wir erschließen bessere Wege, Software zu entwickeln, indem wir es selbst tun und anderen dabei helfen. Durch diese Tätigkeit haben wir diese Werte zu schätzen gelernt: Individuen und Interaktionen mehr als Prozesse und Werkzeuge Funktionierende Software mehr als umfassende Dokumentation Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung Reagieren auf Veränderung mehr als das Befolgen eines Plans Das heißt, obwohl wir die Werte auf der rechten Seite wichtig finden, Zentrale schätzen wir die Werte auf der linken Seite höher ein. Prinzipien von Safety

Das Agile Manifest (2001) Wir erschließen bessere Wege, Software zu entwickeln, indem wir es selbst tun und anderen dabei helfen. Durch diese Tätigkeit haben wir diese Werte zu schätzen gelernt: Individuen und Interaktionen mehr als Prozesse und Werkzeuge Funktionierende Software mehr als umfassende Dokumentation Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung Reagieren auf Veränderung mehr als das Befolgen eines Plans Das heißt, obwohl wir die Werte auf der rechten Seite wichtig finden, schätzen wir die Werte Erfolgsfaktoren auf der linken Seite höher ein. jeder Entwicklung

Bedeutung der Normen Unterschiedlichste Normen Branchenspezifisch EN 61508 EN 50128 ISO 26262 IEC 62304 DO-178C Meist keine Vorschrift der Entwicklungsmethodik Vorschrift eines festgesetzten & definierten Prozess ABER: Anforderungen an den Entwicklungsprozess orientieren sich an den traditionellen Phasen

Bedeutung der Normen Aus der Norm EN 61508 EN 50128 ISO 26262 IEC 62304 DO-178C Diese Norm schreibt dem Hersteller keine Organisationsstruktur vor oder welcher Teil der Organisation welchen Prozess, welche Aktivität oder welche Aufgabe durchführen soll. Diese Norm fordert nur, dass der Prozess, die Aktivität oder die Aufgabe durchgeführt wird, um die Einhaltung dieser Norm nachzuweisen. Diese Norm macht keine Vorgaben für die Bezeichnung, das Format oder den expliziten Inhalt der Dokumentation, die zu erstellen ist. Diese Norm erfordert eine Dokumentation der Aufgaben, aber die Entscheidung, wie diese Dokumentation gestaltet wird, wird dem Benutzer der Norm überlassen. Diese Norm schreibt kein spezifisches Lebenszyklus-Modell vor. Die Anwender dieser Norm sind verantwortlich für die Auswahl eines Lebenszyklus-Modells für das Software-Projekt und für das Abbilden der Prozesse, Aktivitäten und Aufgaben dieser Norm auf dieses Modell. IEC 62304

Beispiel: Mapping Anforderung XY Meeting Artefakt Dokument Rolle

Agenda

Agenda

Individuen, Interaktion und Zusammenarbeit Die User Story als ein Versprechen für ein Gespräch

Agenda

Experten in die Teams Cross-funktional: Entwicklungsteam besitzt alle für die Lieferung benötigten Skills Integration der Qualitäts- & Safety Experten Vorteile Stärkere Identifizierung mit dem Produkt Schaffen eines Sicherheitsbewusstseins im ganzen Team

Motivation der Betroffenen Verstehen der Anforderungen Warum werden diverse Analysen benötigt? Leben eines Qualitäts- und Sicherheitsbewusstseins anstatt sturer Abarbeitung der Vorschriften

Agenda

Integration in Sprintzyklen Integration der Anforderungen sicherheitskritischer Systeme in die Sprintzyklen Fokus auf kontinuierliche Aktualisierung Auswirkung auf die Velocity

Diagnose-Tool Sicherung von geprüften Lieferungen durch eine geeignete Definition of Done

Definition of Done Kriterien für abgeschlossene User Stories Nachhaltige Sicherung der Qualität Inhalt: Vorgaben und freiwillige Zusagen Vorgaben: Unternehmensrichtlinien, Kundenanforderungen, rechtliche Aspekte, Freiwillige Zusagen sind vom Entwicklungsteam Überprüfte Lieferung am Ende eines Sprints Nur fertige User Stories werden im Review vorgestellt

Beispiel: Definition of Done Software für Flugsicherung Dokumentation der User Stories (Requirements) in Tool XY Durchführung und Dokumentation der Impact Analyse Durchführung und Dokumentation der Software Hazard Analyse Durchführung und Dokumentation der Fault Tree Analyse auf betroffenen Modulen Aktualisierung des System Design Dokuments (Optionale) Aktualisierung des Interface Design Dokuments Implementierung der Unit Tests und Sicherstellung Traceability zu User Story Implementierung des Quellcodes und Sicherstellung Traceability zu User Story (Optionale) Aktualisierung der Installationsroutinen Identifizierung von geeigneten Akzeptanztests und Überprüfung auf Automatisierbarkeit Durchführung und Dokumentation der Akzeptanztests plus Freetests ( Brechen der Software ) Dokumentation der Änderungen für die Benutzerdokumentation

Diagnose-Tool Sicherung von geprüften Lieferungen durch eine geeignete Definition of Done Verbesserte Fortschrittsmessung des Projektes durch Konsolidierung der diversen Arbeitsprodukte auf Funktionalitäten

Fortschrittsmessung Traditionell Requirements Dokument Safety Requirements Dokument System Design Dokument Risikoanalyse FMEA Safetyanalyse FTA Implementierung Quellcode Agil Funktionalitäten/User Stories

Diagnose-Tool Sicherung von geprüften Lieferungen durch eine geeignete Definition of Done Verbesserte Fortschrittsmessung des Projektes durch Konsolidierung der diversen Arbeitsprodukte auf Funktionalitäten Kontinuierliche Verifikation der Funktionstüchtigkeit durch flächendeckende automatisierte Tests

Testautomatisierung Absicherung der Software Ermöglichung kontinuierlicher Weiterentwicklung Agile Software Engineering Praktiken Test-Driven Development Automatisierte Acceptance Tests Continuous Integration Reduzierung des manuellen Aufwands für umfassende Tests vor Auslieferung

Agenda

Conclusio Agile Methoden im sicherheitskritischen Bereich sind möglich & sinnvoll Voraussetzung sind ein definierter Entwicklungsprozess und Disziplin Alle Experten müssen in das Entwicklungsteam eingebunden werden Jeder Sprint dient als Diagnose für den Fortschritt der geprüften Lieferung