agile & safety - ada-europe 2016 · experiences from thales 2010 first project - hmi...

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

Upload: others

Post on 17-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

www.thalesgroup.com/germany

DB

AG

/Ch

rist

ian

Be

de

sch

insk

i

Agile Software Development

compliant to Safety Standards?

Christian Scholz

Thales Transportation Systems

Page 2: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

Content

Motivation

Agile Software Development

Research Question

Safety and Agile

Experience from Thales

2 /

Page 3: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

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?

Page 4: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

Problem of late changes 4 /

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

Page 5: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

Traditional

Time within life cycle

Co

sts

of cha

ng

e

Traditional

Agile

Time within life cycle

Co

sts

of cha

ng

e

Agile Software Development

Accept late changes

Lower the costs-of-change-curve

Reaction

Traditional

Changes late in the life cycle -

extremely costly

Avoid late changes

Build it right the first time

Big effort upfront

Many processes, detailed planning

Still need for late changes

5 /

Page 6: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

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

6 /

Page 7: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

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

7 /

Page 8: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

Incremental and iterative development

Incremental

Development split into series of partial products

Working software earlier in the project

Increasing functionality with each increment

Small V-Models

No strict sequence

Iterative

Revise strategy

Improve system

Together with customer

8 /

Page 9: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

Scrum by Jeff Sutherland and Ken Schwaber

Framework for managing software development projects

9 /

Page 10: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

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?

10 /

Page 11: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

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

11 /

Page 12: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

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

12 /

Page 13: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

Safety-related agile software process model 13 /

Page 14: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

Development Life Cycle – Example 1 14 /

Planning Phase

High level architecture

Safety concept

Sprint

Incremental and iterative development

Definition of done

Documentation created during sprints

Safety spirit and verification

Page 15: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

Development Life Cycle – Example 2 15 /

Product Increment

System integration and testing

Customer presentations

Incremental validation

Product Release

Final bug fixes

Assessment

Customer Acceptance Tests

Page 16: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

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

16 /

Page 17: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

Challenges 17 /

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

Page 18: Agile & Safety - Ada-Europe 2016 · Experiences from Thales 2010 First project - HMI development Scrum in development Success – Quality improvement Less bugs per development hour

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

18 /