Discipline, Discipline and some more discipline
Thank you for your attention!
Customer Tests
We had some, not enough.
Mostly examples, on ho to use
Were not used integrally in or process
Small Releases
once per quarter
New functionality
Each sprint
bug-fixes,
minor improvement
Collective Ownership
Sustainable Pace
Anyone could change anything,
When bugs were detected they were just fixed on the spot
We didn't work hard (enough?)
We did work overtime
on need, for short periods of time
Refactoring
Constant refactoring
during TDD cycle
preperation for new feature
Each success gave us more courage
to do more
Mistakes were made
Test Driven Development
eXtreme
Programming
No dedictaed QA
All new features were covered by automated tests
Test were were written first
Level of testing were mixed
Simple Design
We did our best
Simplicitly was valued
No formal design process
My Personal Story
Lior Friedman
Blooger: http://imistaken.blogspot.co.il/
Twittter: @imistaken
Some Context
The company
Single Team (3-8)
Developing Testing tools
.NET/C#
My Role
Dev Manager
Join very early
Knew agile - first experience
All code work was done in pairs
Except:
Support (bug investigation)
Research (spikes)
Pair Programming
Full integration cycle each commit
No Branching
Developers were committing several times per day
Continuous Integration
No formal coding standart
Most code was similar
Coding Standard
Metaphor
We were one team
No dedicated QA
Everyone was involved
We were domain experts
Whole Team
Retrospect
Used scrum like planning
Sprints
backlog, tasks
Skipped Release plans
Business was changing
rapidly
What went good
Planning Game
- We had a profitable product
- it was a great place to work in.
To try next time
need to improve
- Establish a proper release cycle
- Better backlog
- Release plan
- Measure velocity
- Have clear distinction between testing levels
- Bring formal QA knowledge
- Have the real PO work with the team
- Eliminate fear from the code early on
- We struggled with support
- We still had trivial critical problems escaping
- We lacked long term planning
- We failed at creating new products