agile capability analysis - how much agility does my company context allow?
TRANSCRIPT
© Fraunhofer IESE
1
Philipp Diebold
AGILE CAPABILITY ANALYSISHOW MUCH AGILITY DOES MY COMPANY CONTEXT ALLOW?
@p_diebold
Fraunfurt, 15.07.2015
© Fraunhofer
The Fraunhofer-Gesellschaft at a Glance
The Fraunhofer-Gesellschaft undertakes applied research of direct utility to private and public enterprise and of wide benefit to society.
Nearly 24,000staff
More than 70% is derived from contracts with industry and from publicly financed research projects,
Almost 30% is contributed by German federal and Ländergovernments.
66 institutes andresearch units
Fin
anci
al V
olu
me
€2 billion
2014
Co
ntr
act
Res
earc
h
€1.7 billion
Major infrastructure capital expenditureand defense research
© Fraunhofer IESE
Fraunhofer IESE The research institution for software and systems engineering methods
Founded in 1996, headquartered in Kaiserslautern
approx. 240 employees
Our solutions can be scaled flexibly and are suitable for companies of any size
Our most important business areas:
3
Automotive and Transportation Systems
Automation and Plant Engineering
Health Care
Information Systems
Energy Management
E-Government
© Fraunhofer IESE
Our Competencies – for Your Benefit
4
SOFTWARE-ENABLED INNOVATIONS
forinnovative
systems
© Fraunhofer IESE
Our Competencies – for Your Benefit
5
SOFTWARE-ENABLED INNOVATIONS
IS/MobileES/CPS Smart Ecosystems
© Fraunhofer IESE
6
Agile Potenzialanalyse
Process Engineering Department
Systems / SW Engineering
Processes
Process Improvement/ Optimization
Agile Processes
Assessment/ Retrospectives/
Audits
Process Tailoring /
Process-Lines
(Multi-) Standard
Compliance
Process Modelling
© Fraunhofer IESE
7
Motivation
© Fraunhofer IESE
8
MotivationContradiction with Agile?
© Fraunhofer IESE
9
Regulations, Rules, Standards, Laws, and Guidelines define the possible „Degree of Agility“ for your company, by
defining mandatory elements, e.g. roles, activities, work products, milestones, etc.
requirements on these elements
requiring specific methods
providing best practices
templates, examples
MotivationNo Contradiction with Agile, but…
… build the frame / border
© Fraunhofer IESE
10
Agile Software Development
What exactly is „Agile“?Different Agile Elements and their relations
Agile Methods(Scrum, XP, Kanban, Crystal, FDD, …)
[P. Diebold, T. Zehler, “Find the Right Degree of Agility in Rich Processes”, Springer, 2015.]
Agile Practices(Simple Design, Continuous Integration, Collective Ownership, Pair Programming, Coding Standards,
Refactoring, Testing, ...)
Agile Manifesto
Agile Principles(Early and continuous delivery of valuable software, Business people and developers must work together, Welcome changing requirements, Self-organization of the team, Working software is the primary measure of
progress, …)
Core Values (Individuals and interactions, Working software, Customer collaboration, Responding to change)
© Fraunhofer IESE
11
How to define the „Degree of Agility“?
“Degree of Agility”
Number of UsedAgile Practices
(#Agile Practices)
Number of FulfilledAgile Principles
(#Agile Principles)
© Fraunhofer IESE
12
Appropriate „Degree of Agility“ depends on your context
What is the appropriate „Degree of Agility“ for your Company (and its context)?
Necessity of a method that helps identifying the appropriate „Agility“ according to the context!
Agile Capability Analysis
© Fraunhofer IESE
13
Agile Capability AnalysisPurpose
The purpose of the Agile Capability Analysis
is to identify the capabilityof extending the current development process
with Agile Practices in terms of the context,
including all regulatory requirements.[P. Diebold, “Software Process Improvement using Agile Practices”, XP2015 (Poster).]
© Fraunhofer IESE
14
Agile Capability AnalysisIdea and Concept
Set of Agile Practices used for
extending the process
Input OutputSteps
Improvement Goal(s)
Current development
process
Context information
The approach is based on: a set-wise restriction the suitability to current process the impact of the individual agile practices
Agile Capability Analysis
© Fraunhofer IESE
15
Agile Capability AnalysisInput: Improvement Goals
Improvement Goal(s)
1..n improvement goal(s)
Prioritization of goals
Similar goals in many companies,examples:
Increase maintainability
Faster time to market
Impact Characteristics
Development timeDevelopment costsProductivityQuality
Customer
Product
ProcessPredictability...
ISO 25010 CharacteristicsInterfaces
TransparencyDocumentation
Involvement / CollaborationSatisfaction / AcceptanceCommunication
OrganizationCultureHuman and social factsInternal collaborationRoles, responsibilities, and skillsOrganizational structureKnowledge management
Infrastructure Risks
What is/are your improvement goal(s)?
connected
© Fraunhofer IESE
16
Agile Capability AnalysisInput: Current Development Process
Current Process(es)
One process or several processes for different project types process line?
Process description / representation
Graphical vs. (Structured) Text vs. Table
Degree of formality: formal vs. informal
Process elements: artefacts / work products, activities / tasks / steps, roles, inputs / outputs, templates, …
What kind of “process description” does your company have?
PROCESS
© Fraunhofer IESE
17
Agile Capability AnalysisInput: Context Information
Contextual Information
Company strategy
Company structure
Team aspects
Team size
Team structure
Roles
Hierarchies
Environment
Tools
Development paradigm
Project specifics
Size
Type
Domain characteristics
Regulations
What are your context information?
© Fraunhofer IESE
18
Regulations
Topic of Regulations
“What”: Life-Cycle / Process
“How”: More specific, e.g. Functional Safety
Scope of Regulations
Generic
Domain Specific
Agile Capability AnalysisInput: Regulations
…
…
Examples
Generic (System vs. SW)
ISO 15288 / 12207
CMMI
SPICE (ISO 15504)
V-Modell® XT
Domain specific
AutomotiveSPICE®
Medi SPICE
IEC 62304
DO-178B
ISO 26262
Which regulations affect you?
© Fraunhofer IESE
19
Agile Capability AnalysisCore
Agile Practices Repository
Description Schema
Classification / grouping according to ISO 12207
Contains all (or common) Agile Practices
[P. Diebold, T. Zehler, “The Agile Practices Impact Model – Idea, Concept, and Application Scenario”, ICSSP2015.]
Agile Practice synonymes
precondition
postcondition
purpose
description
role
variation parameter
life cycle process
tool
source
10..*
0..*
1
1
1..*
0..*
1..*
0..*
1
Agile Practices Repository
TDD
SimpleDesign
Daily Stand-Up
Burn-Down Chart
Retrospective
© Fraunhofer IESE
20
Agile Capability AnalysisCore
Quality
Pair Programming
+
Costs
Time
Test-Driven Development
–
+
Code Reviews
+
Burn-Down Chart+
––
+
[P. Diebold, T. Zehler, “The Agile Practices Impact Model – Idea, Concept, and Application Scenario”, ICSSP2015.]
ImpAct´151st International Workshop on the
Impact of Agile Practices
24th August 2015, Tallinn
Agile Practices Repository
Agile Practices Impact Model
Connections between Agile Practices and their influence on Impact Characteristics
Different kind of impacts:
Direction: positive vs. negative
Distribution: single point, interval, probability distribution
© Fraunhofer IESE
21
Quality
Pair Programming
+
Costs
Time
Test-Driven Development
–
+
Code Reviews
+
Burn-Down Chart+
––
+
Quality
Pair Programming
+
Costs
Time
Test-Driven Development
–
+
Code Reviews
+
Burn-Down Chart+
––
Improving the product quality
Reducing time to market
+
Quality
Pair Programming
+
Costs
Time
Test-Driven Development
–
+
Code Reviews
+
Burn-Down Chart+
––
Improving the product quality
Reducing time to market
Functional Safety
Automotive SPICE
Influences from
interfaces
Manage-ment
decision
recommendsexcludes
allows
included
included
+
Agile Capability AnalysisStep(s)
1. Improvement Goals and their alignment with Impact Characteristics
2. Restriction based on Regulations and other Constraints
3. Influence of Contextual Information and Current Process
[P. Diebold, T. Zehler, “The Agile Practices Impact Model – Idea, Concept, and Application Scenario”, ICSSP2015.]
Quality
Pair Programming
+
Costs
Time
Test-Driven Development
–
+
Code Reviews
+
Burn-Down Chart+
––
–
Improving the product quality
Reducing time to market
Functional Safety
Automotive SPICE
Influences from
interfaces
Manage-ment
decision
recommendsexcludes
allows
included
included
–+
+
+
+
© Fraunhofer IESE
22
Agile Capability AnalysisOutput
Set of possible Agile Practices for improving / extending the current software development process
(Subjective) Impact of each of the possible Agile Practices
Set of Agile Practice
TDDDaily Stand-Up
Burn-Down Chart
Retrospective
Discussion about
improvement activities
prioritization of practices
selection of practices
Change Management
© Fraunhofer IESE
23
Evaluation Partner
© Fraunhofer IESE
Interested in Agile Development and finding the appropriate “Degree of Agility” for your companies context?
Interested in performing the Agile Capability Analysis?
We are looking for you as Evaluation Partners
© Fraunhofer IESE
24
Questions?Thankyou
Philipp DieboldM. Sc.
Process Management
Dep. Process Engineering
Fraunhofer IESEFraunhofer-Platz 1 | D-67663 Kaiserslautern
Phone: +49 (0) 631-6800-2183Fax: +49 (0) 631-6800-9-2183Email: [email protected]