Agile Software Development compliant to Safety Standards?



Similar documents
Leittechnik für Bahnsysteme mit Eclipse

Agile Software Development

Software Development Methodologies

The traditional project management uses conventional methods in software project management process.

Agile and Secure: Can We Be Both?

Lean and Agile in Safety-critical Software Development Research and Practice. Henrik Jonsson

Software Life Cycles and Configuration Management

Software Engineering

AGILE & SCRUM. Revised 9/29/2015

CSE 435 Software Engineering. Sept 16, 2015

Agile in a Safety Critical world

Life Cycle Models. V. Paúl Pauca. CSC Fall Department of Computer Science Wake Forest University. Object Oriented Software Engineering

AgileSoftwareDevelopmentandTestingApproachandChallengesinAdvancedDistributedSystems

Vragen. Software development model. Software development model. Software development model

Introduction to Agile Software Development

Agile Software Development

Comparative Study of Agile Methods and Their Comparison with Heavyweight Methods in Indian Organizations

Adapting Agile Software Development to Regulated Industry. Paul Buckley Section 706 Section Event June 16, 2015

10/4/2013. Sharif University of Technology. Session # 3. Contents. Systems Analysis and Design

Testing in Agile methodologies easier or more difficult?

When is Agile the Best Project Management Method? Lana Tylka

Agile Practitioner: PMI-ACP and ScrumMaster Aligned

Introduction to Agile and Scrum

CS435: Introduction to Software Engineering! " Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman

Scrum. SE Presentation. Anurag Dodeja Spring 2010

What does it mean to be Agile. Marek Majchrzak, Andrzej Bednarz Wrocław,

D25-2. Agile and Scrum Introduction

Agile and lean methods for managing application development process

Agile methods. Objectives

SESSION 303 Wednesday, March 25, 3:00 PM - 4:00 PM Track: Support Center Optimization

CompSci Fall 2014 Professors: Robert Duvall, Ajay Patel, Salman Azhar (rcd@cs, ajay.patel, azhar@cs)

Introduction to Agile Software Development. EECS 690 Agile Software Development

Software processes that are:

Agile SW Siemens

Topics covered. Agile methods Plan-driven and agile development Extreme programming Agile project management Scaling agile methods

Usage of SCRUM Practices within a Global Company

How to manage agile development? Rose Pruyne Jack Reed

Software Requirements and Specification

Comparative Analysis of Agile Software Development Methodologies-A Review

History of Agile Methods

Software Development Methodologies

The Role of CM in Agile Development of Safety-Critical Software

Advanced Software Engineering. Software Development Processes

Introduction to Software Engineering: Overview and Methodologies

AGILE METHODOLOGY IN SOFTWARE DEVELOPMENT

Software Development Life Cycle at SSPL. An Summary of Methodologies We Offer

TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW

Rapid software development. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 17 Slide 1

Ingegneria del Software Corso di Laurea in Informatica per il Management. Agile software development

AGILE vs. WATERFALL METHODOLOGIES

Agile SW Siemens

Agile project management: A magic bullet?

Agile Requirements Generation Model: A Soft-structured Approach to Agile Requirements Engineering. Shvetha Soundararajan

WHAT MAKES AGILE DEVELOPMENT DIFFERENT?: A CASE STUDY OF

Agile and lean methods for managing application development process

Neglecting Agile Principles and Practices: A Case Study

Agile and Secure: OWASP AppSec Seattle Oct The OWASP Foundation

Role of the Business Analyst in an Agile Project

Software Development Life Cycle (SDLC)

An Agile Project Management Model

Rapid Software Development

Introduction to Agile

Agile in Financial Services A Framework in Focus

SECC Agile Foundation Certificate Examination Handbook

A Software Project Management Innovation (SPM) Methodology: A Novel Method for Agile Software Development

Agile Development Overview

Development. Lecture 3

IT4304 Rapid Software Development (Optional)

Agile development of safety-critical software while meetings standards' requirements

International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research)

Software development. Outline. Outline. Version control. Version control. Several users work on a same project. Collaborative software development

Agile and PRINCE2 And how they integrate. enterprise.bcs.org

AGILE SOFTWARE DEVELOPMENT A TECHNIQUE

Agile Software Development. Stefan Balbo / Patrick Dolemieux

Agile Methodologies and Its Processes

SOFTWARE PROCESS MODELS

Software Development Life Cycle Models - Process Models. Week 2, Session 1

Testing in an Agile Environment

How To Plan A Project

Software Development Process

Software Development Methodologies in Industry. By: Ahmad Deeb

Scrum: A disciplined approach to product quality and project success.

Tamanna Assistant Professor Chandigarh University Gharuan, Mohali,India

Model-Based Conceptual Design through to system implementation Lessons from a structured yet agile approach

Models of Software Development

Agile Project Management By Mark C. Layton

Agile Engineering Introduction of a new Management Concept

SCRUM BODY OF KNOWLEDGE (SBOK Guide)

Agile Software Development Methodologies and Its Quality Assurance

LEAN AGILE POCKET GUIDE

Scrum and Testing The end of the test role Bryan Bakker 20 maart 2012

Capstone Agile Model (CAM)

A Review of Agile Software Development Methodologies

Agile Software Development Methodologies & Correlation with Employability Skills

Agile Project Management

Software Engineering I (02161)

Transcription:

DB AG/Christian Bedeschinski www.thalesgroup.com/germany Agile Software Development compliant to Safety Standards? Christian Scholz Thales Transportation Systems

2 / Content Motivation Agile Software Development Research Question Safety and Agile Experience from Thales

3 / Motivation Thales Software Development for railway applications Traditional development: Waterfall, V-shaped model Requirements fixed Plan created Sequential phases Problems Projects exceed budget and time Software Development too costly Market pressure How to improve?

4 / Problem of late changes Problem: Customer does not know or can t explain its requirements Vague, no precise and unstable requirements Developed something the customer did not want Result: Changes late in the life cycle Plan does not work More costs and time

Costs of change Costs of change 5 / Reaction Traditional Changes late in the life cycle - extremely costly Avoid late changes Build it right the first time Big effort upfront Traditional Traditional Agile Many processes, detailed planning Still need for late changes Time within life cycle Agile Software Development Accept late changes Lower the costs-of-change-curve

6 / Agile Software Development Experience and best practices Industry experts and practitioners Different agile methodologies Scrum, extreme Programming (XP), Crystal, and more Also roots in lean manufacturing and development 2001 Agile Alliance set term Agile Software Development Manifesto for Agile Software Development

7 / Manifesto for Agile Software Development Individuals and interactions over processes and tools People centric: Adapt process to people Light process Management style: Leadership-and-collaboration Working software over comprehensive documentation Priority on the value adding activities Customer collaboration over contract negotiation Closer customer collaboration Responding to change over following a plan Refine and extend requirements

8 / Incremental and iterative development Incremental Development split into series of partial products Working software earlier in the project Increasing functionality with each increment Iterative Revise strategy Improve system Together with customer Small V-Models No strict sequence

9 / Scrum by Jeff Sutherland and Ken Schwaber Framework for managing software development projects

10 / Research question Master Thesis Agile Software Development could help Thales Attacks existing problems Success stories from other organizations But, Safety-critical development for railway applications CENELEC standards Prerequisite for certification Assumption: Standard asks for traditional V-Model Agile Software Development CENELEC?

11 / Detailed study of CENELEC EN 50128 Goal of the standard Reduce systematic errors down to a tolerable level By setting standards on the process Requires mandatory development phases Strict sequence is impractical Accommodates refinement, prototyping or incremental approaches Additional software assurance activities Verification, Validation and Assessment Obey rules of interdependency Two pairs of eyes are better than one

12 / Results Standard and Agile analogue objectives Aim for quality Big focus on testing Agile s incremental and iterative approach allowed Simple agile approach needs enhancements Additional assurance activities More documentation Agile methodologies are highly adaptable Define own process life cycle model

13 / Safety-related agile software process model

14 / Development Life Cycle Example 1 Planning Phase Sprint High level architecture Safety concept Incremental and iterative development Definition of done Documentation created during sprints Safety spirit and verification

15 / Development Life Cycle Example 2 Product Increment System integration and testing Customer presentations Incremental validation Product Release Final bug fixes Assessment Customer Acceptance Tests

16 / Experiences from Thales 2010 First project - HMI development Scrum in development Success Quality improvement Less bugs per development hour Stabilisation phase shortened dramatically Shortened bug fix period Efficiency gain High team spirit Tester within the team Still lots of documents Work on automatic generation Successful certification with CENELEC 2014 Scrum in all HMI development teams

17 / Challenges Agile in large projects Synchronize on system level after each sprint Mixture of traditional and agile teams Distributed development Advantage - early integration Introducing in a traditional organisation More responsibility to the team Less authority of project manager Change of culture and mind-sets

18 / Summary and Outlook No disagreement Use Agile Software Development In line with the safety standard First successful projects experience Improvements in cost, quality and time Further introduction strategy for Thales Expand introduction to more development teams Include system level Involve customer closer Learn from the experiences Create customized trainings