Date post: | 20-Aug-2015 |
Category: |
Technology |
Upload: | sureskills |
View: | 763 times |
Download: | 5 times |
27th November, 2013 Copyright © SureSkills
27th November, 2013 Copyright © SureSkills
Agile
– Making it Work
27th November, 2013 Copyright © SureSkills
Agenda
Time Agenda Speaker
0800 Welcome Ruaidhri McSharry
0800 – 0815 SureSkills Introduction to Agile Bill Heffernan,
SureSkills
0815 – 0910 Agile – Making it Work in a Real Environment Cameron O Connor,
SQS/SureSkills
0910 – 0950 Concepts & Practices behind Agile
Requirements
Colm O'hEocha, Agile
Innovation
0950 – 1020 Real Word Case Study - Rolling Out Agile in
Paddy Power
Paul Hayes, Paddy
Power
1020 – 1030 Q&A & Event Close Event Panel
27th November, 2013 Copyright © SureSkills
Global
Delivery EMEA
AJP
USA
Project
Management Program & Project Management Practices
Project office, PMO, Portfolio
Management, Resource Placement:
Program Managers & Project Managers
Education
Development Instructor Led & E-Learning Development
Rapid 2
SureSkills Connect
Service
Management Gap Analysis – Best practice
frameworks & Standards – ITIL®,
ISO20000
Steering – Continual Service
Improvement Programs
LaaS Social Learning
E-Learning
Virtual Labs Capability
Social
Media Social Media for Business
Digital Marketing
Search Engine
Optimization
Business
Analysis Business Analysis Operations
Assess & Recommend: Business
processes
Business Process Modelling
Managed
Services Service Desk Outsourcing
Application Management and
Deployment
Vendor SLA Management
Private Tailored Customized Courses
On site/off site
Groups
1-1
Public Schedule Microsoft
VMware
ITIL
PRINCE2
Business Skills
SQL
Business Analysis
Support Pro-Active Monitoring and Alerting
IT Administration (MAC service)
Remote and On-Site Hands On
Response
Technical
Consulting Data management solutions
Storage solutions
Virtualisation solutions
27th November, 2013 Copyright © SureSkills
Introduction to Agile
Bill Heffernan
27th November, 2013 Copyright © SureSkills
Agile Overview
1. Origins
2. What is Agile?
3. Agile Principles
4. Agile Approaches
5. Why Adopt Agile
6. Challenges
7. Pitfalls
8. Myths
9. Q&A Acknowledgement:
A significant proportion of content in this presentation is based upon content from the “Agile for Dummies” e-book publish by IBM.
27th November, 2013 Copyright © SureSkills
Origins of Agile
Traditional “Waterfall”
“Code-and-Fix” Requirements
Design
Development
Integration
Testing
Deployment
Challenges Schedule Risk
Limited Flexibility
Reduced Customer Involvement
1988
“Spiral”
Incremental
Regularly deliver
working code in
small chunks
Iterative
Learn from
feedback on
deliveries and set
aside time to use
this feedback to
improve
1990’s
“RAD” (Rapid Application
Development)
SCRUM
XP
2001
“Agile Manifesto”
27th November, 2013 Copyright © SureSkills
What is Agile?
Manifesto We are uncovering better ways of developing software by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on the right, we value the items on the left more.
* Agile Manifesto Copyright 2001: Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern,
Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas. This declaration may be freely copied in any form, but only in its entirety through this notice.
27th November, 2013 Copyright © SureSkills
Agile Principles
1. The highest priority is to satisfy the customer through early and continuous delivery of valuable software.
2. Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.
3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
4. Business people and developers must work together daily throughout the project.
5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.
6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
7. Working software is the primary measure of progress.
8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
9. Continuous attention to technical excellence and good design enhances agility.
10. Simplicity — the art of maximizing the amount of work not done — is essential.
11. The best architectures, requirements, and designs emerge from self-organizing teams.
12. At regular intervals, the team reflects on how to become more effective and then tunes and adjusts its behaviour accordingly.
27th November, 2013 Copyright © SureSkills
Agile Approaches
SCRUM Adjustments made on experience not theory
Product backlog, sprint backlog, burn down charts, shippable functionality
XP Deliver requirements when as requested by customer
Lean Programming The lean software development principles are eliminate waste, build in quality, create
knowledge, defer commitment, deliver quickly, respect people, and optimize the whole.
Kanban Visualise the workflow and limit work in progress
Agile Modeling Values, principles, and practices for modeling software that can be applied on a software
development project in an effective and lightweight manner.
Agile Model Driven Development (AMDD) approach - do just enough high-level modeling at the beginning to understand the scope and potential architecture. During construction iterations do modeling as part of iteration planning activities, then take a JIT model storming approach where you model
Unified Process Iterative and incremental approaches within a set life cycle. Focuses on collaborative nature
of software development and works with tools in a low-ceremony way.
Disciplined Agile Delivery (DAD) – Agile Framework
27th November, 2013 Copyright © SureSkills
Why Adopt Agile?
Faster time to market
Early ROI
Feedback from real customers
Build the right product
Early risk reduction
Better Quality
Culture & morale
Efficiency
Customer satisfaction
Alignment / Integrated Teams
Emergent Outcomes
Predictability
27th November, 2013 Copyright © SureSkills
Challenges
Scale
Large Teams
Distributed Teams
Compliance
Domain Complexity &
Technical Complexity
Organization Distribution
& Complexity
Enterprise Discipline
27th November, 2013 Copyright © SureSkills
Pitfalls
27th November, 2013 Copyright © SureSkills
Some (of many) Myths
Myths
Is not disciplined
Do not plan
No Documentation
Unsuitable for regulated
environments Doesn’t scale
We don’t know what will be delivered
A team can be agile
27th November, 2013 Copyright © SureSkills
Q&A
27th November, 2013 Copyright © SureSkills
Agile – Making it Work in a Real
Environment
Cameron O’Connor
27th November, 2013 Copyright © SureSkills
…or is it?
27th November, 2013 Copyright © SureSkills
In the beginning there was Change
27th November, 2013 Copyright © SureSkills
Traditionally we used this
27th November, 2013 Copyright © SureSkills
To do this….
27th November, 2013 Copyright © SureSkills
However, these days, this is important….
27th November, 2013 Copyright © SureSkills
and so is this…
27th November, 2013 Copyright © SureSkills
and especially this …
27th November, 2013 Copyright © SureSkills
We have redesigned our workspace
27th November, 2013 Copyright © SureSkills
And how we meet
27th November, 2013 Copyright © SureSkills
We call this the Agile Approach
27th November, 2013 Copyright © SureSkills
Top 9 Reasons to go Agile (VERSIONONE Annual State of Agile Report 2013)
1. Manage Changing Requirements
2. Productivity
3. Project Visibility
4. Team Morale
5. Quality
6. Faster Time to Market
7. Better alignment between IT & Business Objectives
8. Simplify Development Process
27th November, 2013 Copyright © SureSkills
Agile Methods & Practices
0%
10%
20%
30%
40%
50%
60%
% of Agile methodologies being used
27th November, 2013 Copyright © SureSkills
What Agile techniques are being used on projects?
0%10%20%30%40%50%60%70%80%90%
% of Agile techniques employed
% of Agile techniquesemployed
27th November, 2013 Copyright © SureSkills
Leading causes of failed Agile projects
Company philosophy at odds with core Agile values
Pressure to follow traditional Waterfall processes
General organisational communications problems
Lack of experience with Agile methods
Unwillingness of team to follow Agile
Lack of Management support
Insufficient training
27th November, 2013 Copyright © SureSkills
Top 5 ‘Must Haves’ to adopting and scaling Agile
1.Executive Support
2.Training Program
3.Implementation of a common tool
4.Internal support group
5.Reference books/ guides
27th November, 2013 Copyright © SureSkills
Top 10 Agile Tools
1. Excel
2. MS Project
3. Version One
4. Jira/ Greenhooper
5. HP Quality Centre
6. MS TFS
7. Bugzilla
8. Homegrown
9. Google Docs
10.Vendor Y
11. IBM Clearcase
12.Rational
27th November, 2013 Copyright © SureSkills
Agile is a mind set
27th November, 2013 Copyright © SureSkills
Adoption of Agile ideas depends on organizational cultural
27th November, 2013 Copyright © SureSkills
Don’t worry, we were all born Agile!
27th November, 2013 Copyright © SureSkills
Concepts & Practices behind
Agile Requirements
Colm O'hEocha
27th November, 2013 Copyright © SureSkills
What’s Wrong with ‘Requirement Specifications’?
– ‘Requirements’ -> Mandatory, Fixed
• Ignore ‘Emergent Learning’, Hard to Change
– ‘Specifications’ -> Feature Centric rather than
Value Centric
– Reflect Problem Space, not Solution Space
– Inhibit Collaboration/Innovation
– Low fidelity, low richness, expensive
38
27th November, 2013 Copyright © SureSkills
What are ‘User Stories’
• User Centric – what’s important to your customer
• Story – The Power of Narrative
– We pay much more attention to stories than facts
– Stories drives generation of tacit, contextual knowledge
– “A story paints a picture, and a picture tells a thousand
words”
• User Stories Define
– The Actor/Persona/Role (Who)
– The Action/Functionality (What)
– The Result/Benefit/Goal (Why)
Copyright © 2012 AgileInnovation
39
A brief statement of intent that describes something
the system needs to do for the user
• What its not: – A Use Case
– Requirements Document
– Feature Specification
27th November, 2013 Copyright © SureSkills
Two way conversation is the best way to
reduce ambiguity and mis-understanding…
A wife asks her husband, a software engineer; "Could you please
go shopping for me and buy one carton of milk, and if they have
eggs, get six!" A short time later the husband comes back with six
cartons of milk. The wife asks him, "Why the hell did you buy six
cartons of milk?" He replied, "They had eggs."
Eats, shoots, and leaves.
Eats shoots and leaves.
“Entrée comes with choice of soup or salad
and bread.”
Say again?
40
27th November, 2013 Copyright © SureSkills
Specification 41
27th November, 2013 Copyright © SureSkills
User Story
As a Home Owner, I want to regularly trim my lawn so its neat and tidy.
27th November, 2013 Copyright © SureSkills
Problem
Space Customers
End Users
Domain Experts
Solution
Space Developers
Architects
UI/UX Designers
Innovation
Space Uncertainty
Ambiguity
Conversation
Social Objects
User Stories & Innovation
As a <role>
so that <benefit>
I want to <action>
27th November, 2013 Copyright © SureSkills
Lean Thinking
User Stories & Late Elaboration
Plan More Thoroughly, Earlier Late Elaboration, Keep Options
Open
Need to Make
Project
Commitments
Most
Information
Available to
Make Good
Decisions
Plan-
Driven
Approach:
Plan the
Work,
Work the
Plan
Lean/Agile
Approach:
Make
Better
Decisions,
Later
Time
Defer Decisions Buy Information Early
Project
Start
Project
End
27th November, 2013 Copyright © SureSkills
User Stories & Incremental Value
27th November, 2013 Copyright © SureSkills
CCC
As a <role> I need <functionality> so that <benefit> OR In order to <benefit> As a <role> I want to <functionality> OR Given <context> when <event> then <result>
Card
As a customer I search for users so that I can view their details
Value: Med Risk: Low
Estimate: 3 pts
Conversation
Confirmation •Works where first or
last name is blank •Returns registered and
guest users •I can view a list of all
matching users •….
27th November, 2013 Copyright © SureSkills
User Story – Sample
Email Attachments. As a premium user I want emails
with attachments to go faster so I
can get on with my work
Confirmation:
• Premium users notice
emails with attachments
don’t slow down the
application
• Works with attachments
up to 10MB
• Works with up to 100
attachments
CONVERSATION:
• Is the speed of
sending/receiving the
problem, or just that it
delays your getting on
with other work?
• Are we talking about
only sending, or
receiving attachments
also?
• What is an acceptable
delay?
• Will you want to store
received attachments?
• Would up to 100
attachments be
enough?
• What about regular
users?
27th November, 2013 Copyright © SureSkills
27th November, 2013 Copyright © SureSkills
Using User Stories
• Describes Scope, but not Specification
– Used for Planning, not Building
• Uses Language Common to Business & IT
• Facilitates Prioritisation & De-Scoping
• Input to Analysis/Specification, NOT the Output
• Drives Definition of Acceptance Criteria
– These represent the ‘Requirements’
• Supports ‘pull’ of information as its needed
49
27th November, 2013 Copyright © SureSkills
Some Bad Stories
1. ‘As a developer I want to call the
cfg_adm API so that I can get/set
compression cfg values’
2. ‘As an architect I want to refactor the
iOS client APIs so they provide a
cleaner interface’
3. ‘As a stock controller I want to
control the stock so that the stock is
controlled’
50
27th November, 2013 Copyright © SureSkills
51
Story Taxonomy
Product Backlog
Item (PBI)
User Story
Tasks
Other Work
Item
Acceptance
Tests Unit Tests
Key and
edge
Examples
Other
Criteria
Implemented By
1 1..*
1 1
1..* 0..*
0..* 1..* Done when Passes
Is One of
Is One or More of
NFR Constrained By
1 0..*
27th November, 2013 Copyright © SureSkills
27th November, 2013 Copyright © SureSkills
Real Word Case Study - Rolling
Out Agile in Paddy Power
Paul Hayes
27/11/2013
27/11/2013 55
Rolling out Agile
in Paddy Power
27/11/2013
56 Paddy Power
What you might already know
• Formed in 1988
• Over 3500 employees worldwide
• 2012 Turnover €5.7 billion
• 2012 Operating Profit €136 million
– UK €81.7 million
– Australia €30.8 million
– Ireland & R.O.W. €23.5 million
• Over 75% of profits from Online
• Market leader in mobile
– First betting app in Appstore (2010)
– Over 30% of online revenues
27/11/2013
57 Paddy Power
What you might not know
27/11/2013
58 Paddy Power
Product Development
•Web Development
•Mobile Development
•Java Development
•Scripting
•Reporting
Paddy Power
Development Teams
• Betting Platform
• Games Developers
• Casino, Poker, Bingo software
Product Vendors
• Outsourced Development
• Outsourced Testing services
Development Partners
27/11/2013
59 Why move to agile?
Scaling organisation
27/11/2013
60 Why move to agile?
Scaling organisation
• Long delivery times for new projects
• Difficult to adapt to UX research findings
• Difficult interaction between BA & IT teams
– Long, detailed specs
– Lengthy review & estimation process
– High cost of change
• Communications overhead
– Escalation meetings
27/11/2013
61 Why move to agile?
• Stakeholder engagement
• Agreeing roles & responsibilities
• Agile framework selection
• Define training needs
• Agree cross-functional teams
• Proof – of – concept :
– 2 teams
– Q4 2012
27/11/2013
62 Preparing for agile
Approach
• Have the people in the team that you need to produce
releasable software
• Release at the end of sprints
• Flexibility – inspect & adapt
• Improve visibility
27/11/2013
63 Preparing for agile
Guiding principles
• 1 day workshop for whole team
• Engaged with external coach
• “Training from the back of the room” –
discussions & exercises e.g. ‘best project’,
‘previous agile experiences’
• User story focus
• Happiness door
27/11/2013
64 Preparing for agile
Initial training
• Teams agreed on 3 week sprints
• Unanimous adoption of Story Points &
Planning Poker
• Used Kanban to ‘protect’ sprints
27/11/2013
65 Executing the transition
Kick-off and planning
• User stories / Spec by Example
• Test automation
• Continuous delivery
• Co-located teams
• Continuous improvement led by teams
• CSM & CPO training for people in those roles
27/11/2013
66 Executing the transition
Changing other work practices
67 Executing the transition
Phased transition
10/10/201
3
T1 Scrum Scrum Scrum Scrum Scrum Scrum Scrum Scrum
T2 Scrum Scrum Scrum Scrum Scrum Scrum Scrum Scrum
T3 Recruit Recruit InTeam Scrum Scrum Scrum
x2 Scrum
x2 Scrum
x2
T4 Recruit Recruit InTeam InTeam InTeam Scrum Scrum Scrum
T5 Inflight Inflight Inflight InTeam InTeam InTeam Scrum Scrum
T6 Recruit Inflight Inflight Inflight Inflight InTeam InTeam Scrum
2013 Jan Feb Mar Apr May
• Same transition planning steps as with internal teams
• Principles
– Releasable code at end of sprints
– Open communications & transparency
– Fixed length sprints
– Shared commitment to continuous improvement
– One team
• Mixed teams
– PP : Product Owner role. BA & QA within teams
– External: Scrummaster role. Dev & QA within teams
27/11/2013
68 Executing the transition
External teams
• 10 cross-functional agile teams up and running
• Improved morale of teams
• Better interaction between business & IT teams
• Shortened delivery times??
• Reduces delivery risk
• Facilitates small changes
27/11/2013
69 Agile – the story so far
Results
• Preparing the organisation is key
• Outside coach is a great help
• Important that whole team & stakeholders train together
• Agree the principles, don’t dictate the details
• Teams all adopted story points & converged on 3 week
sprints
27/11/2013
70 Agile – the story so far
What we have learned
• Interaction with UX & Design teams
• Integrating Infrastructure / devops
• Alignment with budgets / annual plans
• Building guilds, tribes & continuing the evolution along
with other PP development areas
27/11/2013
71 Agile – the story so far
Still working on…
27th November, 2013 Copyright © SureSkills
Join The Debate on LinkedIn
SureSkills Service Management & Project Management Group
27th November, 2013 Copyright © SureSkills
Dublin: 14 Fitzwilliam Place, Dublin 2, Ireland
Belfast: Callender House, 58-60 Upper Arthur Street, Belfast BT1 4GJ, Northern Ireland
Austin: 7000 N. Mopac Expressway, Suite 200, Austin, TX 78731, USA
www.sureskills.com
Phone: +353-1-240-2222 Email: [email protected]