developing complex solutions with...

24
1 © 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled Agile, Inc. All Rights Reserved. Developing Complex Solutions with SAFe ® V4.0.1 Alex Yakyma SAFe Fellow and Principle Consultant

Upload: others

Post on 25-Mar-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

1© 2016 Scaled Agile, Inc. All Rights Reserved.© 2016 Scaled Agile, Inc. All Rights Reserved.

Developing Complex

Solutions with SAFe®

V4.0.1

Alex YakymaSAFe Fellow and Principle Consultant

Page 2: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

2© 2016 Scaled Agile, Inc. All Rights Reserved.

Start simple and lightweight…

Expand

one level

Page 3: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

3© 2016 Scaled Agile, Inc. All Rights Reserved.

And expand to scale large Value Streams

Collapse

one level

Page 4: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

4© 2016 Scaled Agile, Inc. All Rights Reserved.

The problem of product development at large scale

Common cause: both the organization and the solution under

development are not designed for flow

Problems

discovered

too late No way to

improve

systematically

Hard to

manage

distributed

teams

Late

delivery

Too little

visibility

Poor

morale

Massive

growth in

complexity

Phase gate

SDLC isn't

helping

reduce risk

Under-

estimated

dependencies

System #1 System #2

Page 5: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

5© 2016 Scaled Agile, Inc. All Rights Reserved. 5

System #1: The Enterprise

Page 6: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

6© 2016 Scaled Agile, Inc. All Rights Reserved.

Organize around value

Align the organization around projects and product lines.

—Allen C. Ward

1. Fewer handoffs, faster value delivery

2. Easier to build in quality

3. Built-in alignment between the

business and software development

4. Optimizing the system as a whole

Result: Higher customer satisfaction

Page 7: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

7© 2016 Scaled Agile, Inc. All Rights Reserved.

Billing

Value: Order

delivered

Trigger:

Customer

order

Shipping/

TrackingCRM

Operational Value Stream (Example: Order processing)

People who operate the systems

Example 1: IT

Systems:

Page 8: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

8© 2016 Scaled Agile, Inc. All Rights Reserved.

Example 2: Solution builder

Teams that develop the systems

Sys C

Sys B

Sys A

For solution builders, operational and development

Value Streams are the same

Page 9: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

9© 2016 Scaled Agile, Inc. All Rights Reserved.

Build Agile Release Trains

A long-lived, self-organizing Team-of-Agile Teams

A virtual organization of 5–12 teams (50–125+ individuals) that plans,

commits, and executes together

Includes all functions critical to value delivery

Operates on a cadence

Aligned to a common mission via a single Program Backlog

Frequently produces valuable and evaluable system-level solutions

AGILE RELEASE TRAIN

Page 10: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

10© 2016 Scaled Agile, Inc. All Rights Reserved.

Value Streams are realized via ARTs

Multiple, smaller Value Streams can be realized by a single ART

Product 1

Product 2

Some Value Streams fit well within the limit, and can be realized by a single ART

Larger Value Streams require multiple ARTs

System

Large

solution

Page 11: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

11© 2016 Scaled Agile, Inc. All Rights Reserved.

What to organize an ART around?

ARTs can be organized around Subsystems or Capabilities

Subsystem A

Subsystem B

Subsystem C

Capabili

ty A

rea 1

Capab

ility

Are

a 2

Capabili

ty A

rea 3

For example: A train can be organized around “Customer

Enrollment” end-to-end functionality (Capability area) or

alternatively, can work on mobile and tablet clients (Subsystem)

Customer

enrollment

Mobile

applications

Solu

tion

Page 12: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

12© 2016 Scaled Agile, Inc. All Rights Reserved.

The implications of org structure

Capability

Capability

CapabilityCapability

Orthogonal to value Aligned with value

Page 13: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

13© 2016 Scaled Agile, Inc. All Rights Reserved.

Operate on aligned cadence

Establish objective governance and coordination across trains

Pro

gra

m In

cre

me

nt

Pro

gra

m In

cre

me

nt

Pro

gra

m In

cre

me

nt

Value Stream

Backlog

Page 14: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

14© 2016 Scaled Agile, Inc. All Rights Reserved.

SAFe structure, 10,000 ft view

Page 15: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

15© 2016 Scaled Agile, Inc. All Rights Reserved. 15

System #2: The Solution

Page 16: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

16© 2016 Scaled Agile, Inc. All Rights Reserved.

Enable Flow and Agility with Architecture

Otherwise you will likely encounter:

Unmanageable dependencies across teams

Unsustainable enterprise velocity

Inability to quickly respond to change

Poor quality, deployability and maintainability of solutions

A r c h i t e c t u r e

Page 17: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

17© 2016 Scaled Agile, Inc. All Rights Reserved.

Emergent design and intentional architecture

Every team deserves to see the bigger picture. Every team

is empowered to design their part.

Emergent design ‒ teams grow the

system design as user stories require

Intentional architecture ‒ fosters team

alignment and defines Architectural

Runway

A balance between emergent design and intentional architecture is

required for speed of development and maintainability of the Solution

Page 18: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

18© 2016 Scaled Agile, Inc. All Rights Reserved.

Architectural Runway

Architectural Runway—existing code, hardware components, etc.

that technically enable near-term business features

Enablers build up the runway

Features consume it

Architectural Runway must be

continuously maintained

Architectural capacity allocation

supports building runway

Example: A new, fuzzy search algorithm will enable a variety of future features

that can accept potentially erroneous user input

Architectural Runway

… to support

future features

Implemented now …

FeatureFeature

Feature

Enabler

Page 19: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

19© 2016 Scaled Agile, Inc. All Rights Reserved.

Build and Validate Incrementally

Test architectural assumptions early and often to prevent waste

Validate the runway by building thin slices of value on top of it

Design for Testability

Implement a part of

Arch Feature

Validate by implementing a

“steel thread”: a small user story

✔✔

Architectural Feature

Page 20: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

20© 2016 Scaled Agile, Inc. All Rights Reserved.

Facilitate Flow with an Architectural Kanban

Business

Epic

Business

EpicArch.

Epic

FUNNEL REVIEW ANALYSIS BACKLOG IMPLEMENTING

NFRs

All ideas are

welcome

Roughly

prioritized

epics

Deeper

analysis;

Go/no-go

decision

Prioritized

and ready for

implementation

Agile Release Trains

collaboratively

implement epics

Kanban systems enhance the visibility of workflow

Limits excess WIP, enhances throughput

Supports realistic forecasting

WIP Limits

Page 21: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

21© 2016 Scaled Agile, Inc. All Rights Reserved.

SAFe realizes a set of connected Kanban systems

Value Stream

Kanban

Program Kanban

Portfolio KanbanEpic

Enabler

VS Epic

EnablerCapability

Enabler

Pr. Epic

EnablerFeature

Enabler

Team KanbanStory

StoryEnabl.

Page 22: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

22© 2016 Scaled Agile, Inc. All Rights Reserved.

Evolve Architecture to Facilitate Flow

Reduce the gap with contemporary design paradigms

Domain-Driven Design

Micro-services architecture

SOA

Good-old, use-case oriented OO: SOLID, CCP, SDP, CRP

Features can then be contained …

Capability

Orthogonal… Aligned…

CapabilityCapability

Capability

Page 23: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

23© 2016 Scaled Agile, Inc. All Rights Reserved.

Learn more…

- SAFe website: www.scaledagileframework.com

- Agile Architecture

- Architectural Runway

- Architecture Kanban System

- System/Enterprise Architect

- Preview of the next version:

www.preview.scaledagileframework.com

- Enabling Flow and Agility with Architecture in SAFe:

www.youtube.com/watch?v=yz3x4i8LYFQ

- Contact: [email protected]

Page 24: Developing Complex Solutions with SAFe8wriz40sy4t1ph08pf5vo1dp-wpengine.netdna-ssl.com/wp-content/uploads/2015/12/Alex...© 2016 Scaled Agile, Inc. All Rights Reserved. © 2016 Scaled

24© 2016 Scaled Agile, Inc. All Rights Reserved. 24

Questions?