agile software engineering @ sap

41
© SAP 2013 | 1 AGILE SOFTWARE ENGINEERING @ SAP [1] Asaf Saar March 5, 2013

Upload: asaf-saar

Post on 02-Jul-2015

521 views

Category:

Business


3 download

DESCRIPTION

Last week I gave the closing keynote in the Agile Dev Practices Conference that took place in Potsdam, Germany. SAP has been on the way to implement LEAN/Agile for a few years now and it has been a deep change in the organization, affecting e.g. the setup of teams (small cross-functional teams) , the way they work (scrum) and the roles and responsibilities. In this keynote I have: Explained why SAP introduced Agile, what does Agile mean for us and then. How we implemented it: * Organizational changes (scrum teams with new roles – PO; no more Q-Teams) * Introducing engineering practices by providing advanced trainings, e.g. for quality engineers, for developers, for teams, and show some key elements of those trainings and workshops. ** Customer focus – Design Thinking ** At the end I showed first where we are today and presented some results and learnings.

TRANSCRIPT

Page 1: Agile software Engineering @ SAP

© SAP 2013 | 1

AGILE  SOFTWARE  ENGINEERING  @  SAP  

[1]

Asaf  Saar  March  5,  2013  

Page 2: Agile software Engineering @ SAP

© SAP 2013 | 2

n  SAP  CPO  Product  Owner  of  So;ware  Engineering    o  Code  Quality  and  Test  AutomaDon  Process  Owner  and  network  lead  

o  Inventor,  Development  Manager  and  Chief  Product  Owner  of  various  Test  AutomaDon  and  Management  Frameworks  in  SAP    

o  Agile,  Quality  and  Requirement  Engineering  Trainer  and  Coach  

n  In  the  So;ware  Engineering  arena  since  1996  in  Israel,  USA  and  Germany  

n  Married  to  Merav  and  father  of  Tom,  Noam  and  Guy  n  Astronomy  and  fast  cars  are  my  hobbies  n  An  Israeli  in  Germany    

@saarasaf                      hRp://www.linkedin.com/in/asafsaar  

ABOUT  ME  

Page 3: Agile software Engineering @ SAP

© SAP 2013 | 3

n  183,000+  customers    n  130+  countries.    n  61,000+  employees  n  €  16  billion  annual  revenue  (2012)  n  40-­‐years  history  of  innovaDon  and  

growth.    

SAP  TODAY  MARCH  2013  

[2]

Page 4: Agile software Engineering @ SAP

© SAP 2013 | 4

SAP’S  GLOBAL  DEVELOPMENT  ORGANIZATION      18,000  DEVELOPERS  IN  12  DEVELOPMENT  LABS  

Walldorf Palo Alto India Bulgaria, China

Canada (Montreal), Israel

Israel Ra’anana North America

Palo Alto

India Bangalore

Bulgaria Sofia

Canada

Montreal

China Shanghai

Hungary Budapest

Hungary

France Levallois

Canada Vancouver

Canada (Vancouver), France

Germany Walldorf

Brazil, Ireland

Brazil Sao Leopoldo

Ireland Dublin

1980 1996 2000 2004 2005 2006 2009 2010

Page 5: Agile software Engineering @ SAP

© SAP 2013 | 5

WHY  AGILE?  

Page 6: Agile software Engineering @ SAP

© SAP 2013 | 6

ECONOMIES  OF  SCALE  

Having more employees did not help us get back to economies of scale

Source: http://www.sapannualreport.com/2011/zusaetzliche-informationen/kennzahlenvergleich.html

[8]

Page 7: Agile software Engineering @ SAP

© SAP 2013 | 7

Delivered software not used. Time to market delayed.

TYPICAL  PROBLEMS  OF  THE  SOFTWARE  MARKET  

Development  &  CorrecDon      Assembly  &  ValidaDon  

Development   Assembly  Never  used  

45%  

Rarely  19%  

SomeDmes    16%  

O;en    13%  

Always    7%  

Source: Usage of Features in typical systems, Standish Group, study of 2000 projects at 1000 companies

t  

~2000  

~2005  

Page 8: Agile software Engineering @ SAP

© SAP 2013 | 8

SAP’S  CHANGE  TO  AGILE  SOFTWARE  ENGINEERING      

 Develop  the  right  products…                                                  …  the  right  way  

Design  Thinking   LEAN  &  Agile  Thinking  

Page 9: Agile software Engineering @ SAP

© SAP 2013 | 9

SAP’S  LEAN  &  AGILE  APPROACH:    

ORGANIZATIONAL  CHANGES  

Page 10: Agile software Engineering @ SAP

© SAP 2013 | 10 SCRUM  IN  DEVELOPMENT  TEAMS  [3]

Page 11: Agile software Engineering @ SAP

© SAP 2013 | 11

ORGANIZATIONAL  CHANGES    INTRODUCING  SCRUM  AND  LEAN  PRINCIPLES  

Split  your  organizaPon  –  small,  cross-­‐funcDonal,  self-­‐organizing  teams  

$$$  

$  

Split  your  work  –  small  list,  ranked  together  with  customer,  effort  relaDvely  esDmated  

Review  and  update  the  plan  –  update  prioriDes  in  collaboraDon  with  the  customer,  based  on  insights  gained  by  inspecDng  the  release  a;er  each  iteraDon  

RetrospecPve  –    a;er  each  iteraDon  

Split  Pme  –  fixed  length  iteraDons  (4  weeks)  deliver  potenDally  shippable  increments,  fast  feedback  from  customer    

Jan  

April  

Decentr

alize  con

trol  

Reduce  

batch  

size  

Cadence

 -­‐  Takt  

Apply  fa

st  

Feedback

  ConPnu

ous  

improve

ment  

Page 12: Agile software Engineering @ SAP

© SAP 2013 | 12

Program  /  Produ

ct  

Team

 

Implementation Teams

QE

Archit.

Dev KM

(Team)  Product  Owner  

Scrum Master

Area Product Team

QPE

Archit.

Team product owners

Area  Product  Owner  

Scrum Master

Release  planning  

Product Team

QPA

Archit.

Delivery Manager Chief  

Product  Owner  

Program Lean

UI Designer

Sprint  planning  

Or  KANBAN  

Team

 backlog  

are  feature  stories  are  integraDon  stories  

Gradient  represents  prioriDzaDon  

Prod

uct  

backlog  

Userstory  

Epic  1  

Userstory  

Userstory  

Mini  Release  

review  review   review  Prod

uct  a

rea  

backlog  

Selected

 backlogs  

Userstory  

Epic  2  

Done    Criteria  

Done    Criteria  

Done    Criteria  

Ship  internally  

Ship  internally  

Ship  internally  

Mini  Release  

review  

Ready      Criteria  

Mini  release  

planning  

Adjusted from: (c) 2011 Dean Leffingwell, Agile software requirements

ORGANIZATIONAL  CHANGES  SCALING  SCRUM  TO  LARGE  PROJECTS    

Scale  or

ganizaPo

n    

Scale  ba

tches  -­‐  R

anked  Ba

cklog  

Early  Fe

edback  

on  

Product  

Synchron

izaPon  

of  Takt  

Page 13: Agile software Engineering @ SAP

© SAP 2013 | 13

n  Provide  needed  skills  and  competencies  in  each  team    

n  Introduce  new  roles  Product  Owner,  Scrum  Master  

n  No  more  Quality  Assurance  teams    

ORGANIZATIONAL  CHANGES  ASSEMBLE  CROSS-­‐FUNCTIONAL  TEAMS      

Page 14: Agile software Engineering @ SAP

© SAP 2013 | 14

ORGANIZATIONAL  CHANGES  CHANGE  QUALITY  PEOPLE’S  ROLE    

Old  QM  style   New  Q  Approach  

Quality  in  the  Team  Governance  and  Control  

[4] [2]

Page 15: Agile software Engineering @ SAP

© SAP 2013 | 15

DEVELOP  PEOPLE  FIRST,  THEN  DEVELOP  PRODUCTS  

EXCEED  OUR  CUSTOMERS’  EXPECTATIONS  

USABLE  SOFTWARE  EACH  TAKT  TO  AVOID  REWORK  AND  TO  ALLOW  FAST  FEEDBACK  CYCLES  

EXCELLENT  PROCESSES  MEETING  COMPLIANCE  STANDARDS    AND  GOVERNANCE  NEEDS  

SAP’S  LEAN  &  AGILE  QUALITY  STRATEGY  

Page 16: Agile software Engineering @ SAP

© SAP 2013 | 16

SAP’S  LEAN  &  AGILE  APPROACH:    

ENGINEERING  EXCELLENCE  

Page 17: Agile software Engineering @ SAP

© SAP 2013 | 17

UI  AutomaDon  Trainings  

ENGINEERING  EXCELLENCE  ROLE  SPECIFIC  &  TEAM  TRAININGS  

Architect

Information Developer

Product Owner

Scrum Master Quality Engineer

Developer / Software Engineer

Design    Thinking  

Agile  So;ware  Engineering  

“SAP  CerDfied  QE”  

Q-­‐Workshop  Product  Owner  

Training  

Scrum  Master  Training  

LEAN  Awareness  Training  

Line Manager LEAN  Leadership  

Program  

User  Story  Mapping  

Agile  So;ware  Engineering  

“SAP  CerDfied  QE”  

Q-­‐Workshop  

User  Story  Mapping  

UI  AutomaDon  Trainings  

Page 18: Agile software Engineering @ SAP

© SAP 2013 | 18

n  TRY  Engineering  PracDces  that  enable  teams  to  work  successfully  

n  1  week  training  with  exercises  

n  3  week  sprints  coached  by  trainer  on  own  backlog  

ENGINEERING  EXCELLENCE  AGILE  SOFTWARE  ENGINEERING  TRAINING  FOR  TEAMS  

* Scrum or any other agile / iterative process

TDD

Pair Programming

Test Isolation

Refac- toring

ATDD Retro- spectives

Unit Test

Clean Code

Continuous Integration

Planning Exploratory Testing

Team Work

Backlog Estimation

Automated UI Testing

Scrum*

“In this course I really think that we learned to build a professional high quality piece of software.”

250+ teams trained

Page 19: Agile software Engineering @ SAP

© SAP 2013 | 19

n  2  day  training  with  exercises      

n  Transfer-­‐Project  in  team    to  try  new  engineering  pracDces  

n  PresentaDon  to  the  QE  colleagues  to    build  a  community  of  pracDce  and  foster  knowledge  sharing  

ENGINEERING  EXCELLENCE  “SAP  CERTIFIED  QE”  TRAINING  

1500+ trained

“Good mixture of theory and exercises.”

Page 20: Agile software Engineering @ SAP

© SAP 2013 | 20

n  1  day  workshop  with  whole  team  

n  “Call  for  AcDon”  put  in  teams  backlog  

n  Follow  up  a;er  3  takts  to  check  sustainability  

ENGINEERING  EXCELLENCE  QUALITY  WORKSHOP  FOR  TEAMS      

Agile  TesDng  Quadrants  

150+ teams trained

“Well structured and pragmatic.”

Page 21: Agile software Engineering @ SAP

© SAP 2013 | 21

ENGINEERING  EXCELLENCE  UI  AUTOMATION  TRAINING  FOR  DEVELOPMENT  TEAMS  

n  Developers  and  QEs  are  trained  on  how  to  develop  the  right  UI  Test  AutomaDon  scenarios  

n  1-­‐3  days  training  based  on  internally  development  framework  that  are  based  on  market  leading  tools  

n  Focus  on  SAP  UI5  and  NaDve  Mobile  automaDon  

“UI Test Automation is just another layer of testing, developers should not only focus on Unit Testing.”

450+ trained

Page 22: Agile software Engineering @ SAP

© SAP 2013 | 22

Lean  helps  us  to  deliver  faster,    more  reliable  +  avoid  waste    

BUT  if  the  backlog  doesn’t  address    the  end-­‐users’  needs  sufficiently    

RIGHT  PRODUCTS?  

the  so;ware  will  hardly  be        desirable            or                  viable  

Page 23: Agile software Engineering @ SAP

© SAP 2013 | 23

ENGINEERING  EXCELLENCE  USER  STORY  MAPPING  WORKSHOP  FOR  TEAMS  

Backlog

n  Whole  team  understands  usage  sequence  and  personas  of  the  product  

n  1-­‐3  day  coaching  with  complete  team  

n  User  Story  Map  as  the  skeleton  for  the  Product  Backlog  

“Good method for structuring which enables us to agree on requirements cross units and with customers.”

90+ teams coached

Page 24: Agile software Engineering @ SAP

© SAP 2013 | 24

SAP’S  LEAN  &  AGILE  APPROACH:    

CUSTOMER  FOCUS  

Page 25: Agile software Engineering @ SAP

© SAP 2013 | 25

CUSTOMER  FOCUS  SAP‘S  DESIGN  THINKING  APPROACH  

Viability Feasibility

Desirability

Innovation

Understanding the needs of the customer via multiple prototypes

Page 26: Agile software Engineering @ SAP

© SAP 2013 | 26

CUSTOMER  FOCUS  OBSERVE  CUSTOMERS‘  NEEDS  NOT  THEIR  SOLUTIONS  

„…  customers  told  us  that  they  wanted  suitcases  that  were  easy  to  carry,  and  asked  us  to  make  them  lightweight.  We  did  this,  but  they  rejected  our  elegant  alloy  designs  and  bought  the  heavier  designs  of  our  compe>tors  –  the  ones  with  wheels  on  them!“  

Source:  Agile  So;ware  Requirements  by  Dean  Leffingwell  

 

SoluPon  driven    As  a  traveler  I  want  alloy  suitcases  so  that  the  suitcases  are  lighter.  

Empathizing  the  user’s  need    As  a  traveler  I  want  to  carry  less    so  that  I’m  less  exhausted.  

Page 27: Agile software Engineering @ SAP

© SAP 2013 | 27

CUSTOMER  FOCUS  OBSERVE  USERS  IN  THEIR  ENVIRONMENT    

Go  to  the  user‘s  environment  in  order  to  get inspiration

Page 28: Agile software Engineering @ SAP

© SAP 2013 | 28

CUSTOMER  FOCUS  SAP‘S  DESIGN  THINKING  PROCESS  

Problem Space Solution Space

Source:  Design  Thinking,  Understand  –  Improve  –  Apply  Editor:  Christoph  Meinel,  Larry  Leifer,  Hasso  PlaRner  

UNDERSTAND

OBSERVE

DEFINE POINT-OF-VIEW

IDEATE

PROTOTYPE

TEST

Page 29: Agile software Engineering @ SAP

© SAP 2013 | 29

CUSTOMER  FOCUS  TAKE  AN  ECONOMIC  VIEW  

Source:  Ash  Maurya  –  Running  Lean  (2013)    

Page 30: Agile software Engineering @ SAP

© SAP 2013 | 30

WHERE  ARE  WE  TODAY?  

Page 31: Agile software Engineering @ SAP

© SAP 2013 | 31

SAP'S  AGILE  SOFTWARE  ENGINEERING  PROGRAM  IN  THE  PRESS  

n  The  change  in  SAP  already  gets  noDced  outside  SAP  

Page 32: Agile software Engineering @ SAP

© SAP 2013 | 32

RESULTS  INCREASED  EMPLOYEE  SATISFACTION  &  BELIEF  IN  LEAN  

Source: Lean Survey May 2012

Page 33: Agile software Engineering @ SAP

© SAP 2013 | 33

n  >50%  of  teams  adopted  TDD  and  Pair  Programming  

n  >75%  say  Agile  So;ware  Engineering  PracDces  produce  beRer  quality  

n  84%  thereof  say  we  produce  beRer  quality  without  speed  loss  or  even  speed  gain  

RESULTS  IMPROVED  QUALITY  THROUGH  ENGINEERING  PRACTICES  

Source: Agile Software engineering Practice Survey 2012

"The customer gave us a 9 out of 10 quality rating after customer validation."

The product has a 10x reduction in defect-per-customer after implementing Agile Software Engineering practices.

Page 34: Agile software Engineering @ SAP

© SAP 2013 | 34

RESULTS  DEFECTS  FOUND  EARLIER  

0% 20% 40% 60% 80% 100%# of detected errors (normalized)

Development Correction Assembly  &  Validation

Before  Agile  

Agile  Mode  

Page 35: Agile software Engineering @ SAP

© SAP 2013 | 35

RESULTS  FASTER  GO  TO  MARKET  

Development    Assembly  &  ValidaDon   Before  Agile  

Agile  Mode  

Page 36: Agile software Engineering @ SAP

© SAP 2013 | 36

n  Work  with  complete  teams  to  drive  adopDon  

n  Coach  towards  Engineering  Excellence  

n  Focus  on  Customer  through  Design  Thinking  

RESULTS  KEY  FACTORS  FOR  SUCCESS  

SCRUM  IN  DEVELOPMENT  TEAMS  

[6]

Page 37: Agile software Engineering @ SAP

© SAP 2013 | 37

AGILE  SOFTWARE  ENGINEERING  @  SAP  

Deliver  INNOVATION                            with  ENGINEERING  EXCELLENCE    

[7] © Dykstra

Page 38: Agile software Engineering @ SAP

© SAP 2013 | 38

Asaf Saar Product Owner Software Engineering Chief Process Office [email protected] SAP AG Dietmar-Hopp-Allee 16, 69190 Walldorf, Tel.: +49 6227 7-47474

Please  evaluate  my  presenta>on  by  using  the  evalua>on  booklets  which  you  can  find  in  your  conference  bag.      THANK  YOU!    

AGILE  SOFTWARE  ENGINEERING  @  SAP  

Page 39: Agile software Engineering @ SAP

No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice.

Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.

Microsoft, Windows, Excel, Outlook, PowerPoint, Silverlight, and Visual Studio are registered trademarks of Microsoft Corporation.

IBM, DB2, DB2 Universal Database, System i, System i5, System p, System p5, System x, System z, System z10, z10, z/VM, z/OS, OS/390, zEnterprise, PowerVM, Power Architecture, Power Systems, POWER7, POWER6+, POWER6, POWER, PowerHA, pureScale, PowerPC, BladeCenter, System Storage, Storwize, XIV, GPFS, HACMP, RETAIN, DB2 Connect, RACF, Redbooks, OS/2, AIX, Intelligent Miner, WebSphere, Tivoli, Informix, and Smarter Planet are trademarks or registered trademarks of IBM Corporation.

Linux is the registered trademark of Linus Torvalds in the United States and other countries.

Adobe, the Adobe logo, Acrobat, PostScript, and Reader are trademarks or registered trademarks of Adobe Systems Incorporated in the United States and other countries.

Oracle and Java are registered trademarks of Oracle and its affiliates.

UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.

Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems Inc.

HTML, XML, XHTML, and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology.

Apple, App Store, iBooks, iPad, iPhone, iPhoto, iPod, iTunes, Multi-Touch, Objective-C, Retina, Safari, Siri, and Xcode are trademarks or registered trademarks of Apple Inc.

IOS is a registered trademark of Cisco Systems Inc.

RIM, BlackBerry, BBM, BlackBerry Curve, BlackBerry Bold, BlackBerry Pearl, BlackBerry Torch, BlackBerry Storm, BlackBerry Storm2, BlackBerry PlayBook, and BlackBerry App World are trademarks or registered trademarks of Research in Motion Limited.

©  2013  SAP  AG.  All  rights  reserved.  

Google App Engine, Google Apps, Google Checkout, Google Data API, Google Maps, Google Mobile Ads, Google Mobile Updater, Google Mobile, Google Store, Google Sync, Google Updater, Google Voice, Google Mail, Gmail, YouTube, Dalvik and Android are trademarks or registered trademarks of Google Inc.

INTERMEC is a registered trademark of Intermec Technologies Corporation.

Wi-Fi is a registered trademark of Wi-Fi Alliance.

Bluetooth is a registered trademark of Bluetooth SIG Inc.

Motorola is a registered trademark of Motorola Trademark Holdings LLC.

Computop is a registered trademark of Computop Wirtschaftsinformatik GmbH.

SAP, R/3, SAP NetWeaver, Duet, PartnerEdge, ByDesign, SAP BusinessObjects Explorer, StreamWork, SAP HANA, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and other countries.

Business Objects and the Business Objects logo, BusinessObjects, Crystal Reports, Crystal Decisions, Web Intelligence, Xcelsius, and other Business Objects products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Business Objects Software Ltd. Business Objects is an SAP company.

Sybase and Adaptive Server, iAnywhere, Sybase 365, SQL Anywhere, and other Sybase products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of Sybase Inc. Sybase is an SAP company.

Crossgate, m@gic EDDY, B2B 360°, and B2B 360° Services are registered trademarks of Crossgate AG in Germany and other countries. Crossgate is an SAP company.

All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary.

The information in this document is proprietary to SAP. No part of this document may be reproduced, copied, or transmitted in any form or for any purpose without the express prior written permission of SAP AG.

Page 40: Agile software Engineering @ SAP

Disclaimer  

This  presenta>on  outlines  our  general  product  &  process  direc>on  and  should  not  be  relied  on  in  making  a  purchase  decision.  This  presenta>on  is  not  subject  to  your  license  agreement  or  any  other  agreement  with  SAP.  SAP  has  no  obliga>on  to  pursue  any  course  of  business  outlined  in  this  presenta>on  or  to  develop  or  release  any  func>onality  men>oned  in  this  presenta>on.  This  presenta>on  and  SAP's  strategy  and  possible  future  developments  are  subject  to  change  and  may  be  changed  by  SAP  at  any  >me  for  any  reason  without  no>ce.  This  document  is  provided  without  a  warranty  of  any  kind,  either  express  or  implied,  including  but  not  limited  to,  the  implied  warran>es  of  merchantability,  fitness  for  a  par>cular  purpose,  or  non-­‐infringement.  SAP  assumes  no  responsibility  for  errors  or  omissions  in  this  document,  except  if  such  damages  were  caused  by  SAP  inten>onally  or  grossly  negligent.  

Page 41: Agile software Engineering @ SAP

© SAP 2013 | 41

[1]  The  Siberian  Solar  Radio  Telescope:  hRp://www.fotopedia.com/items/flickr-­‐3706850931  (CC*  BY  2.0)  

[2]  Several:  hRps://www.sapbrandtools.com/content/home.php  >  SAP  EMEA/APJ  

[3]  Scrum  hRp://www.flickr.com/photos/tprzechlewski/3648102134  (CC*  BY  2.0)  

[4]  Police  man  hRp://office.microso;.com/en-­‐us/images/results.aspx?qu=police%20man&ex=2#ai:MP900400393|    

[5]  Team    hRps://www.sapbrandtools.com/content/home.php  >  SAP  EMEA/APJ  

[6]  SAP  extreme  sail  hRp://www.sap-­‐tv.com/video/#/7882/  

[7]  Sailing  Container  ship  hRp://www.treehugger.com/wind-­‐technology/hybrid-­‐container-­‐ship-­‐wind-­‐driven-­‐with-­‐automaDc-­‐sails.html  

[8]  Container  ship:  hRps://www.sapbrandtools.com/content/home.php  >  SAP  EMEA/APJ  

 

PICTURE  LIST  (LAST  VISITED  2.  MARCH  2013)  

* http://creativecommons.org/licenses/