Successful utilization of ESSENCE at Munich Re Burkhard Perkens-Golomb 18

advertisement
Successful utilization of ESSENCE at Munich Re
With a grain of salt …
Burkhard Perkens-Golomb
18th June 2015, SEMAT conference, Berlin
The characteristics of the business model,
the IT applications and the AD Organisation
Business Model
Applications
Appl. Dev. Organisation
 Well established since
1880
 Transactional Systems
 ~ 1000 FTE int. + ext.
 Reporting Systems
 ~ 11,000 employees
 Mostly expert users
 ~ €28bn income in 2014
 High complexity in data
(data structures, data
relationships, data rules,
heterogeneity, quality etc.)
 Stove pipe organisation
(„Services“) with tendency
to silos
 Pure B2B
 Not many customers, not
many contracts
 High diversity w.r.t.
geography & lines of
business
 Big volume of money and
data per contract
 Complex contracts
 Multisourcing & offshoring
 In the past:
• Way of working was
strictly waterfallish &
document-focused
• Weak end2end
responsibility
 Nowadays: Moving
towards iterativincremental
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
2
And so …
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
3
The old way of working: The discipline-oriented setup
led to a strictly sequential &artefact-based approach
“Iteration”
Project
Initiate
Hand
over
Plan
Project
Manager
Quality
Gate
Quality
Gate
Specify
Service
Team
Design
Service
Team
Quality
Gate
Code
Service
Team
Test
Service
Team
Sequential activities with formal artefact-based hand-over from one service
to the next, ‘orchestrated’ by a Project Manager, each service with a
specific way-of-working focused on their own activities.
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
4
Snapshot of a discussion in the SEMSO1) group …
1) SEMSO = Software Engineering in a Multisourcing Organization
 No common
understanding of
particular work
products
 Different levels of
detail for work
products in mind
 Different work
products can be
used for the same
purpose
No common
language for the
discussion of a
way of working!
The Confusion of Tongues
by Gustave Doré (1865)
[Wikipedia]
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
5
ESSENCE’s Benefit 1: Definition of Lifecycles
A standard lifecycle
$
Stakeholders
Standard
Recognized
Opportunity
Requirements
System
Work
Team
Way of Working
Identified
Conceived
Represented
Solution Needed
Involved
Value
Established
Bounded
Principles
Established
Initiated
Approach
Selected
Prepared
Seeded
Foundation
Established
Started
Formed
In Use
Under
Control
Collaborating
In Place
Performing
Working Well
Performing
Working Well
Adjourned
Retired
Inception
Elaboration
In Agreement
Viable
Coherent
Demonstrable
Acceptable
Usable
Usable
Construction
Addressed
Satisfied for
Deployment
Addressed
Fulfilled
Ready
Ready
(Concluded)
Concluded
Transition
Satisfied in Use
Benefit Accrued
Fulfilled
Operational
Closed
Retired
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
6
ESSENCE’s Benefit 1: Definition of Lifecycles
A standard lifecycle
$
Stakeholders
Standard
Recognized
Opportunity
Requirements
System
Work
Team
Identified
Solution Needed
Involved
Value
Established
Bounded
Principles
Established
Initiated
Conceived
Represented
Approach
Selected
Way of Working
Prepared
Seeded
Foundation
Established
Started
Formed
In Use
Under
Control
Collaborating
In Place
Performing
Working Well
Performing
Working Well
Adjourned
Retired
Inception
Elaboration
In Agreement
Viable
Coherent
Demonstrable
Acceptable
Usable
Usable
Construction
Addressed
Satisfied for
Deployment
Addressed
Fulfilled
Ready
Ready
(Concluded)
Concluded
Transition
Satisfied in Use
Benefit Accrued
Fulfilled
Operational
Closed
ESSENCE’s Benefit 1: Definition of Lifecycles
Variants of lifecycles
Exploratory
Standard
Small Enhancements
Support
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
8
ESSENCE’s Benefit 1: Definition of Lifecycles
Enhancements for mandatory processes
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
9
ESSENCE’s Benefit 1: Definition of Lifecycles
Enhancements for optional topics
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
10
ESSENCE’s Benefit 2: Giving more specific guidance
with practices (activities, work products, etc.)
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
11
ESSENCE’s Benefit 3: Defining company-specific
practices
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
12
ESSENCE’s Benefit 4: Combining practices to build a
Way-of-Working
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
13
ESSENCE’s Benefit 5: Linking the way of working to
the organization
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
14
Who‘s using all the stuff? Well …
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
15
Introducing ESSENCE has challenges
Adoptioner:
Intrinsic/Extrinsic Motivation
Product:
Relevance & Attractiveness
1. Lack of self-improving culture
 „I looked at the SEMAT website –
I don‘t get the idea.“
2. In some areas very basic software
engineering issues revealed
3. „We’re too busy to improve“
4. No external driver for a more rigid
approach
 „All methodology stuff is boring!“
 „Not relevant for me – it’s too
sophisticated“
 „ ESSENCE makes projects look
mechanical – but projects aren’t.“
 „As an occasional user, using the tools
is hard.“
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
16
Who‘s using all the stuff? Well …
Adoptioner:
Intrinsic/Extrinsic Motivation People in
the Big
1. Lack of self-improving culturePicture?
2. In some areas very basic
software
Stuff must
engineering issues revealed
be visually
pleasing!
3. „We’re too busy to improve“
4. No external driver for a more
rigid
„ESSENCE
approach
from the
trenches“?
Product:
Relevance & Attractiveness
Sales Big
Picture?
 „I looked at the SEMAT website –
I don‘t get it.“
 „All methodology stuff is boring!“
 „Not relevant for me – that’s too
sophisticated“
 „ESSENCE makes projects look
mechanical – but projects aren’t.“
 „As an occasional user, using the tools
is hard.“
HIGH
usability of
tools
Successful utilization of ESSENCE at Munich Re – Burkhard Perkens-Golomb
22.06.2015
17
Thank You for Your Attention.
Do You have any Questions ?
Munich RE
Essentials
MR Essentials:
Standard Application Development Lifecycle – v 2.0
Customer
Solution
Endeavor
$
Preparation
The aim of this phase is to identify the business need for the
project, and secure funding to start it. For complex, risky, or novel
projects, more detailed work may be need to be done for funding to
be obtained.
Stakeholders
Opportunity
Recognized
Identified
Represented
Involved
Inception
A short phase (usually only one quick iteration) to get the delivery
team up and running, and the initial plans in place. Ideally a proofof-concept is produced to show understanding of the problem and
technology.
Elaboration
The purpose of this phase is to address the technical risks facing the
project and produce a baseline plan with committed dates and costs.
To do this the project risks must be brought down to an acceptable
level by increasing the understanding of the requirements and
proving the architecture by implementing critical parts of the system.
This may take many iterations.
Solution Needed
Value Established
Funding
Sized
Requirements
Software System
Work
Team
Principles Established
Conceived
Estimated
Bounded
Approved
(Coherent)
Way of Working
Architecture Selected
Initiated
Seeded
Foundation Established
Formed
In Use
(Collaborating)
In Place
(Performing)
(Working Well)
(Adjourned)
(Retired)
Prepared
Started
Coherent
Demonstrable
In Agreement
Viable
Confirmed
Acceptable
(Usable)
Under Control
Usable
Construction
The longest phase of the project where the system is built iteratively
and incrementally, addressing the customer's requirements in
whatever order the customer requires. A usable, production quality
system is maintained at all times.
Satisfied
for Deployment
Transition
Addressed
Addressed
(Ready)
Fulfilled
Ready
During this phase the system is accepted by the customer and goes
live. Information critical to the running and maintenance of the
system is handed over. Historical data and lessons learned are
recorded to improve future projects.
(Concluded)
Concluded
(Satisfied in Use)
(Benefit Accrued)
Closed
Fulfilled
Operational
Closed
Legend:
Mandatory State
(Recommended State)
Version 2.0 – 28th Sep. 2014
Planning Baseline
Application
Development
Lifecycle – v2.0
Inception
Stakeholders
This is the default lifecycle for projects in
Application Development at Munich RE.
Opportunity
Preparation
Invovlved
Supporting Information: identifies architectural drivers and captures key
concepts
(important use cases Story Structure
Understood) all others Goal Established
Use Case {1..n}
(Use-Case Narrative: outlines the most important use cases)
Software System
Architecture Selected
A candidate architecture has been selected from the
initial understanding of the requirements.
This
architecture will be tested and evolved through the
whole lifecycle.
(Design Model: identifies critical components to be developed / changed)
Use-Case Model: reflects the agreed scope
Use-Case Model: complete for release
(Use-Case Model: kept up to date)
Supporting Information: reflects the agreed scope defining all terms used in
the use cases
Supporting Information: complete for release
(Supporting Information: kept up to date)
Initiated
There is a shared understanding of the project
purpose, and some of the key challenges facing it.
(Use-Case Realization: to describe critical collaborations)
the most important Scoped
scope-related possibly Requested
Change {n}
Software System
Architecture Selected
Design Model: clarifies the critical components to be developed / changed
(Build: for a prototype or proof-of-concept)
(Test Strategy: scopes the extent of testing)
Candidate Solution Identified
Architecture
Component {1..n}
Test {1..n}
(critical components
Responsibilities Assigned)
(to prove the architecture Specified
to test the proof of concept Evaluated)
Bug {n}
(for reused components Identified)
Work
Started
Schedule: defines internal and customer-facing milestones, and outlines
the phases and iterations
Backlog: set up and bounded
Project Status Report {n}: updated to include all known technical risks
Use Case {1..n}
Sufficient Stories Fulfilled (All Stories Fulfilled)
Sufficient Stories Fulfilled (All Stories Fulfilled)
Use-Case Narrative: describe all in scope use cases
Use-Case Narrative: describes architecturally significant use cases
(Test Case {n}: to verify the most important slices)
Iteration {1..n}
Risk {n}
last Inception Closed
1st Elaboration Objectives Agreed
business risks Addressed
top 10 Assessed
Team
Project Charter: defines the desired outcomes
Formed
Use-Case Narrative: describe all in scope use cases
Use-Case Realization: describes the impact of the architecturally
significant use-case slices
Use-Case Realization: describe the impact of all in scope use cases
Use-Case Realization: describe the impact of all in scope use cases
Test Case {n}: prove the architectural aspects of the system
Test Case {n}: prove the system meets the requirements
Test Case {n}: prove the system meets the requirements
architecturally significant Verified
all others Scoped
Use-Case Slice {1..n}
all Assessed
those accepted Specified
Change {n}
Software System
Demonstrable (Usable)
Design Model: describes “skinny” system
Build {n}: for the architectural spikes
(Test Strategy: describes the testing approach for the architectural
aspects of the system)
Established
Architecture
key components’ critical operations
Component {1..n}
Verified
Test {1..n}
Bug {n}
those that prove the architecture Evaluated
all open defects Assessed
those compromising the architecture Closed
Work
Under Control
Use-Case Slice {1..n}
all included in release Verified
all Assessed
those accepted Verified
Change {n}
Software System
Ready
Design Model: describes the entire system
Build: for the complete solution
(Test Strategy: describes the testing approach for the complete solution)
Validated
Architecture
all Verified
Component {1..n}
all (incl. regression, integration and system tests)
Test {1..n}
Evaluated
Bug {n}
those compromising the release Closed
all others Assessed
Work
Under Control (Concluded)
all included in release Verified
Use-Case Slice {1..n}
all Assessed
those accepted Verified
Change {n}
Software System
Operational
(Design Model: kept up tp date)
(Build: kept up to date)
(Test Strategy: describes the testing approach for hotfixes and further
small enhancements during maintenance)
Validated
Architecture
all Released
Component {1..n}
all affected by change Evaluated
those for 3rd-part integration and acceptance Evaluated
Test {1..n}
Bug {n}
those compromising the release Closed
all others Assessed
Work
Closed
Schedule: timeline and dates updated to reflect actual progress and
revised estimates
Schedule: timeline and dates updated to reflect actual progress and
revised estimates
Backlog: tracks and prioritizes the release contents
Backlog: demonstrates the release's scope
(Backlog: kept up to date)
Project Status Report {n}: provides snapshot of project health
Project Status Report {n}: provides snapshot of project health
Project Evaluation Report: captures the achievements of the project,
customer sign-off, historical data, and final costs
Way of Working
Seeded
There is agreement of what the team is to achieve, and
what structure would be suitable for that goal.
Human Resource Plan: outlines the desired team structure for the
planning baseline phase (Inception and Elaboration)
The aim of this phase is to identify the business need
for the project, and secure funding to start it. For
complex, risky, or novel projects, more detailed work
may be need to be done for funding to be obtained.
Iteration {1..n}
Risk {n}
Team
last Elaboration Closed
1st Construction Objectives Agreed
technical risks Addressed
top 10 Assessed
Formed (Performing)
Human Resource Plan: describes the team structure for the construction
phase
Human Resource Plan: identifies the roles and individuals
(Risk Register: initial project risks identified)
Team
architecturally significant Simplest Story Fulfilled
Use-Case Narrative: describe the most important use cases
Use-Case Slice {1..n}
Use Case {1..n}
Use Case {1..n}
Schedule: shows the history of the project
Scope Statement: states agreed scope of the project
Candidate Solution Identified
Work
Fulfilled
Supporting Information: supports the use-case model in describing the system
(Test Strategy: scopes the extent of testing)
Architecture
Requirements
Fulfilled
In Use
Project Management Plan: describes the recommended approach
A short phase (usually only one quick iteration) to get
the delivery team up and running, and the initial plans
in place. Ideally a proof-of-concept is produced to show
understanding of the problem and technology.
Way of Working
Iteration {1..n}
Risk {n}
Team
logistical risks Addressed
top 10 Assessed
last Acceptance Closed
Iteration {1..n}
Risk {n}
customer acceptance risks Addressed
remaining risks Assessed
Team
Formed (Performing
Human Resource Plan: describes the team structure for the transition
phase
Way of Working
In Place (Working Well)
Project Management Plan: describes the approach to be used for
Construction
last Construction Closed
1st Transition Objectives Agreed
In Place (Working Well)
Project Management Plan: tuned to reflect lessons learned
The purpose of this phase is to address the technical
The longest phase of the project where the system is
risks facing the project and produce a baseline plan with
built iteratively and incrementally, addressing the
committed dates and costs. To do this the project risks
customer's requirements in whatever order the
must be brought down to an acceptable level by
customer requires. A usable, production quality system
increasing the understanding of the requirements and
is maintained at all times.
proving the architecture by implementing critical parts of
the system. This may take many iterations.
Version 2.0 – 28th Sep. 2014
Formed (Adjourned)
(Human Resource Plan: shows the recent team structure)
Way of Working
In Place (Retired)
Project Management Plan: documents a successful approach
During this phase the system is accepted by the
customer and goes live. Information critical to the
running and maintenance of the system is handed over.
Historical data and lessons learned are recorded to
improve future projects.
Solution Delivered / Solution In Use
Feature List: captures the capabilities, services or qualities that the
customers most desire from this release of the system
Use-Case Model: shows the extent and value of the new system
(Cost Sheet: reflects any revised estimates)
Business Ready / Complete Useable Solution Available
Bounded (Coherent)
The stakeholders have a common understanding of
the scope of the proposed solution and its value to the
business.
(Cost Sheet: reflects any revised estimates)
Use-Case Model: shows the extent and value of the new system
Commitment Confirmed / Solution Approach Proven
Requirements
Closed
(Investment Approval: authorizes any additional spend needed to
complete the project)
Feature List: complete for release
Project Commitment Established / (Proof of Concept Demonstrated)
Investment Approval: authorizes the spend for the planning baseline phase
(Inception and Elaboration)
Need for Budget: states the expected cost of the project
Statement of Feasibility: shows that the project is feasible from a resource
and portfolio point of view
Confirmed
Feature List: complete for release
Story Structure Understood
Business Commitment Established / Solution Constraints Understood
Approved
Addressed (Benefit Accrued)
Funding
(Investment Approval: authorizes any additional spend needed to
complete the project)
Requirements
Acceptable
Opportunity
Feature List: prioritizes the release's content
Use Case {1..n}
The value of addressing the opportunity has been
quantified either in absolute terms or in returns or
savings per time period (e.g. per annum).
The expected total cost of the project has been
estimated, and funding has been approved for the
implementation project.
Bounded (Coherent)
Stakeholders
Satisfied for Deployment (Satisfied in Use)
Addressed
Funding
Confirmed
Requirements
Transition
Satisfied for Deployment
Opportunity
Viable
Investment Approval: provides approval to execute authorizing the spend for
Construction and Transition
Cost Sheet: replaces the need for budget with new estimate to complete
Feature List: scopes the release
Value Established
Stakeholders
In Agreement
Funding
Approved
Closing
Construction
Opportunity
Value Established
Requirements
The stakeholders representatives are actively involved
in the work and fulfilling their responsibilities.
Funding
Stakeholders
(Investment Approval: authorizes any additional spend needed to
complete Elaboration)
Entry Criteria & Essential Inputs
Opportunity
Elaboration
Invovlved
Funding
Stakeholders
Executing
Download