25
NOTICE: Proprietary and Confidential This material is proprietary to Centric Consulting, LLC. It contains trade secrets and information which is solely the property of Centric Consulting, LLC. This material is solely for the Clients internal use. This material shall not be used, reproduced, copied, disclosed, transmitted, in whole or in part, without the express consent of Centric Consulting, LLC. © 2014 Centric Consulting, LLC. All rights reserved Reclaiming Agile Development [email protected] 314-265-3403 Twitter: @paulholway

Reclaiming Agile Development

Embed Size (px)

Citation preview

NOTICE: Proprietary and Confidential

This material is proprietary to Centric Consulting, LLC. It contains trade secrets and information which is solely the property of Centric Consulting, LLC.

This material is solely for the Client’s internal use. This material shall not be used, reproduced, copied, disclosed, transmitted, in whole or in part, without

the express consent of Centric Consulting, LLC.

© 2014 Centric Consulting, LLC. All rights reserved

Reclaiming Agile Development

[email protected]

314-265-3403

Twitter: @paulholway

WHY GO AGILE?

1/12/2015 www.centricconsulting.com 1

Bluetooth enabled - Moxie Shower by Kohler

Why is agile adoption rising?

Version One 2013 Survey of Agile Results:

1/12/2015 www.centricconsulting.com 2

Top 5 Reasons to Adopt Agile

• Accelerate Time to Market

• Manage Changing Priorities

• Better IT/business alignment

• Increased Productivity

• Better Quality

Top 5 Benefits Realized

• Manage Changing Priorities

• Increased Productivity

• Improved Project Visibility

• Improved Team Morale

• Better Quality

Budget

Scope Time

The Real Reason

50- 70%* of Technology Solutions industry-wide fail to meet

the business user expectations

Some cited reasons:

• Lack of business involvement

• Executives find it difficult to find information**

• Features un-used

1/12/2015

•Gartner: 2012 Business Intelligence still subject to non-technical challenges

•** Business Week Research Services

Technology is changing at a rapid pace

1/12/2015

Sensors invade and expand Big Data use

http://connectedco.com/

BUSINESS AND TECHNOLOGY ARE CHANGING AT AN INCREASINGLY RAPID PACE

1/12/2015 www.centricconsulting.com 5

Back to Basics

1/12/2015 www.centricconsulting.com 6

The Agile Mindset

• Business involvement throughout the project

• Empiricism and experimentation

• Change that leads to value is encouraged

• Build working technology frequently within a short, fixed timeframe (i.e. timebox)

• Small team size

• Transparency

• Architecture is constantly tested

1/12/2015 www.centricconsulting.com 7

Agile is not only a project approach but also a mindset based on the principles of the agile manifesto. To

be successful with agile, there needs to be cultural a shift, not an imposed afterthought. Below are just

some of the paradigm shifts that take place when transitioning to agile.

1/12/2015 www.centricconsulting.com 8

Components Of a Successful Agile Execution

Today, few technology managers or developers will admit to not understanding agile. The Agile Manifesto* serves as an excellent foundation, but we know there’s more to delivering on budget, on schedule, and with real people. You need 4 things:

Companies often start

(and stall) here Processes Technology

Practices

Organizational

Interfaces

Adopting an

Agile Culture

How do we use

technology to

maintain agility?

How do our role’s

change? How do

we create an agile

organization?

How do we talk to the

rest of the

organization in a

way they

understand?

In an agile project, the first thing to getting started is establishing a cadence.

• Prioritization

• Estimation

• Learning and Adapting

• Garnering Feedback

• Releasing

• Keeping in Sync.

1/12/2015 9 www.centricconsulting.com

Establishing Cadence

Often we receive so many ideas and requirements, because users are afraid of

missing the “Feature Bus”. They will not get your attention back again. By

establishing cadence, you effectively install more stops that they can get on/off.

Why is cadence is so important?

1/12/2015 10 www.centricconsulting.com

A sample cadence

Governed By

Release Owner

Governed By

Product Owner

Governed By

Steering Committee

Portion of Release delivered to

business users.

Program Cycle Release

Each Cycle consists of:

Plan

Execute

Done

Feedback

Are releases meeting business goals

Which releases to fund

Release coherency

Release coordination

Fulfilling daily commitments

Removing Obstacles

Iteration

Daily Standup

1/12/2015 www.centricconsulting.com 11

Centric's Agile Approach – Agile Technology Practices

Many Agile transformations focus solely on the Agile process. But the technologies used to execute successful Agile delivery are equally important. Early Sprints need to define the technologies and the extent to which they will be used. Do not attempt to do this on the fly!

Organizational

Interfaces

Change

Management

Processes Technology

Practices

Components of a Successful Agile Execution

1/12/2015 www.centricconsulting.com 12

How is Agile Architecture Different - Refactoring

1/12/2015 www.centricconsulting.com 13

$postImportsStatus = $this->InteractionsLoad->postImportCSV();

// TODO: fix the comparison

// if ($importStatus && $postImportsStatus) {

// return true;

// }

return $importStatus;

Define Done

+Claim Severity()+Claim Duration Days()+Claim Processing Days()+Claim Count()+Claim Notification Days()+Claim Last Close Date()+Claim Last Complete Date()+Claim Class()+Claim Type()

-Claim Number-Loss Date-Reported Date-Current Claim Status : Claim Status-Claim State : State

Claim

+In Force Policy Count()+In Force Policy Premium()«signal»-Cancellation()«signal»-Inception()«signal»-Renewal()

-Policy Number-Current Primary Rate State : State-Company : Company-Policy Original Effective Date-Policy Segment : Policy Segment

Policy

-Payment Amount-Check : Check-Cost Center-Payment Type : Payment Type-Payment Subtype : Payment Subtype-Claim Element : Claim Feature

Payment

0..1 0..*

1

0..*

-First Name-Last Name

Adjuster

-State Code-State Name-Country Code

State

-Feature Loss Type Code-Feature Loss Type Description

Feature Loss Type

0..10..*

-Claim Status : Claim Status-Claim Status Date-Claim : Claim

Claim Status History

1

1..*

-Claim Status Type-Claim Status Description

Claim Status1

0..*

1

0..*

-Feature Status : Feature Status-Feature Status Date-Feature : Claim Feature

Feature Status History

11..*

-Feature Status Type-Feature Status

Feature Status1

0..*

1

0..*

1

0..*

-Check Number-Check Payee

Check

1 1..*

-Payment Type Description-Payment Subtype Code-Payment Subtype Description

Payment Type

1

1..*

+Feature Severity()+Feature Duration Days()+Feature Duration Weeks()+Feature Processing Days()+Feature Count()+Feature Original Open Date()+Feature Last Close Date()+Net Loss Reserve()+Gross Loss Payments()+Gross Loss Reserve Change Avg()+Gross Loss Reserve Change Count()+Gross Loss Reserve Change()«signal»-Open()«signal»-Close()«signal»-Reopen()

-Current Feature Status : Feature Status-Feature Loss Type : Feature Loss Type-Claim : Claim-Coverage : Coverage-Loss Reserve

Claim Feature

0..1

0..*

-Adjuster Effective Date-Adjuster Expiration Date-Primary Adjuster Flag-Adjuster : Adjuster-Feature : Claim Feature

Feature Adjuster History

1 0..* 0..10..*

1

1..*

1/12/2015 www.centricconsulting.com 14

Visualizing Increments

Show current

iteration against

the vision.

Organizational

Interfaces

Stories,

individually, may

not clearly

demonstrate the

big picture of

how the solution

builds.

1/12/2015 Centric Consulting, LLC 15

Understand more than your application

1/12/2015 www.centricconsulting.com 16

Agile does not mean faster or with less quality. In fact, quality takes a larger role in agile.

-Quality is a first class citizen in the conversation. -Testing is included in the iteration

-Is this testable? How?

How will we perform regression as time goes by? The push for automation. Lack of automation is a major source of agile failure.

Build Quality In

1/12/2015 www.centricconsulting.com 17

Automate Everything

From Continuous Integration to Continuous Deployment…

1/12/2015 www.centricconsulting.com 18

Adopting an Agile Culture

Agile is very different than traditional development approaches – different roles, different interactions, different

reporting structures. We see similar concerns on across many different engagements when taking on an Agile

approach. Types of concerns and reasons for them differ by role.

Technology

Practices

Organizational

Interfaces

Processes

Components of a Successful Agile Execution

Adopting An

Agile Culture

1/12/2015 www.centricconsulting.com 19

Centric’s Agile Approach – Organizational Change Management

Managers Non-managers

Loss of power and control Lack of understanding around the vision and need for change

Overload of current tasks, pressures of daily activities and

limited resources

Comfort with the status quo and fear of the unknown

Lack of skills and experience needed to manage the change

effectively

Corporate history and culture

Fear of job loss Opposition to the new technologies, requirements and

processes introduced by the change

Disagreement with the new way or skepticism about the need

for change

Fear of job loss

Common reasons for being concerned about moving to an agile development approach.

Role Concerns About Agile

Business Analyst "A big requirements document is no longer my focus, what is?”

Developer "Agile changes how projects are planned, but shouldn't impact how I write code, right?”

Quality Analyst "Why do I need to be involved so early in the process? What do I do?”

Resource Manager "If developers are fully allocated to a single team and are self-organizing to tasks, what role do I

play?”

"Do performance evaluations need to be different now?”

PMO Lead “Why shouldn't we have agile teams follow the same phase gates as the other projects?”

Stakeholder "They have new questions for me every other day. Why not spend a week at the start of the project

and talk all of this out?”

Common concerns when going from a traditional approach to an agile approach.

January

12, 2015

www.centricconsulting.com 20

Traditional approaches often ignores two important factors. Organization inertia makes it difficult to change budgets, resource allocation and executive willpower needed to kick-off data governance.

Challenge of Traditional Approach

Program Cost

Benefit

Year 1 Year 2 Year 3

Exe

cuti

ve T

ime C

om

mit

men

t

ENGAGEMENT

FRUSTRATION

DISILLISIONMENT

DISENGAGEMENT Pro

gra

m E

nd

s INSTALLING AN TOOL!

January

12, 2015

www.centricconsulting.com 21

Agile Approach

Year 1 Year 2 Year 3

Exe

cuti

ve T

ime C

om

mit

men

t

INSTALLING AN TOOL!

Program Cost

LIMITED ENGAGEMENT

AWARE OF VALUE

WILLNG TO INVEST

FULLY ENGAGED

Benefit

User Story

This approach may technically be less efficient

but it is much more likely to succeed.

EXPANDING SCOPE

1/12/2015 www.centricconsulting.com 22

What we are after…

1/12/2015 www.centricconsulting.com 23

What to do next?

Do not:

• Focus on Process only

• Let the simplicity of the philosophy

be misinterpreted

• Code for the demo

• Say, “we do that”

Do:

• Pick a pilot team/project and learn

what works for your org

• Get a coach

• Embrace architecture

• Start from the team, not

management

• Invest in testing

• Invest in automated builds / deploys

• Run retrospectives

Processes Technology

Practices

Organizational

Interfaces

Adopting an

Agile Culture

Questions?

Follow @paulholway Follow @centric Stop by Centric’s booth Make sure to visit talks this afternoon by : Bill Klos – Micro-locating with Beacons Joseph Ours – Thinking Fast and Slow

1/12/2015 www.centricconsulting.com 24