agile tales of creative customer collaboration
DESCRIPTION
A tale of agility, effective communication, deliberate creativityTRANSCRIPT
Claudio Perrone
Most IT projects failWill yours?
“ Software development productivity would skyrocket...
--- Neal Ford
…if the least effective 30% were fired tomorrow“
How do you get results?
Sir, I urge you to revisit your process
Darling, people matter too!
Dude, check this technology out
Once upon a time I was a successful software developer…
My technical skills made me feel invincible
Until one day…
…I entered a world of deception
It was Hell from day 1
What would you do?
I choked
…but then, I decided to fight back
This is what I tried:
Agility
Effective Communication
DeliberateCreativity1
23
Agility1
I made a choice:
from predictive...
...to adaptive
Fixed time-boxes help focus...
Can you focus for
48 minutes?
Short iterations enable everything
Creativity
Motivation
Reflection
Prioritization
Feedback
almost
How do you express requirements?
Card Conversation Confirmation(acceptance
criteria)
The 3 Cs of a User Story
Card: role, feature, benefit
Customer withdraws cash
As a customer,I want to withdraw cash from an ATM,so that I don’t have to wait in line at the bank.
Ref: http://dannorth.net/introducing-bdd
How do you know you are done?
Define an acceptance criteria (BDD)
Then [ensure some outcomes]
[Scenario title]
Given [some initial context]
When [an event occurs]
Ref: http://dannorth.net/introducing-bdd
Acceptance criteria example: context
Scenario 1: Account is in credit
Given the account is in credit
And the card is valid
And the dispenser contains cash
Acceptance criteria example: event
When the customer requests cash
Acceptance criteria example: outcomes
Then ensure the account is debited
And ensure cash is dispensed
And ensure the card is returned
A little twist: Scenarios can be parsed…
…and then “automated”!
In Ruby:
Given “the account is in credit” do# ...
End
In .NET:
.Given(“the account is in credit”)()
{...}
Early success brought confidence…
…but the project was still at risk
Effective Communication
2
First… SHUT UP!
ListenDon’t just hear
Find their greatest need
Commit to a ubiquitous language
Establish trust
Build a sense of ownership
Keep your enemies closer
--- Anonymous Proverb“We see things not as they are, but as we are.
plantCreativity
co-ordinatorDirection
resource investigator
Resources
teamworkerTeam
monitor-evaluatorCriticality
shaperShaping
completer/specialist
Detail
implementerTask
Roles and perceptions
How could we get smarter
Deliberate Creativity
3
Unlocking creativity: From what and how to “what if”
Explorer
The creativity process
Artist
Judge
Warrior
Extract Concept (1/2)
You have identified a concrete idea that addresses a given objective...
Extract Concept (2/2)
Extract a broader concept to facilitate the creation of alternatives.
Therefore
Connect all dots with 4 straight lines
Connect all dots with 4 straight lines
How about 3 straight lines?
1 line?
Reverse assumptions (1/2)
You want to generate alternative ideas by challenging your current assumptions…
Reverse assumptions (2/2)
List your assumptionsWrite the opposite of those assumptionsTry to identify how to accomplish each reversal
Therefore
Parallel Thinking
Six thinking hats
So, what happened to the project?
Amazingly, it succeeded
Lessons learned...
“We moved from the Flintstones era to the future.--- an end user
“I was part of something. I belonged.--- a developer