By attending this session, you will learn proven agile principles and techniques for developing high quality software in a faster and more cost effective way: using an offshore software development team. It is a real life experience that will show how to collect and prioritize requirements, establish ownership of requirements by a software development team, provide real-time visibility on progress and showcase other techniques such as timeboxing, awarding, workplace design and more. - See more at: http://congressarchives.pmi.org/NorthAmerica2014/TheCongress/AOF/AOFSearchResults.cfm?Action=SearchAOFs&PersonID=180#sthash.igVCZmHo.dpuf
Good Stuff Happens in 1:1 Meetings: Why you need them and how to do them well
PMI North America 2014 - orhan kalayci
1. A real life success story: Commercial
software and website developed in 9 months
Session Code: NA14CAS09
Orhan Kalayci
ZOOMtoLearn
2. Problem & Solution
Problem statement:
• As a start-up, we had to move fast and deliver a working
software and a website as soon as possible with the
least possible cost.
Solution:
• Fast delivery : Agile techniques applied.
• Reduced cost: An offshore team used.
2
3. Timeline
April 2013: A prototype has been developed in 2 weeks (200 person hours).
May, June, July 2013: Four focus group meetings with a total of 40 people for
finalizing user and business requirements.
August, September 2013: 40 product requirements, 19 website requirements, 21
content requirements. 50 user values, 1 customer persona, and 3 usage scenarios.
Prioritized requirements.
October 2013: Requirements are translated into ‘technical use cases’. Then,
offshore development team has completed the software and the website in 6 weeks
with 600 person hours.
Early November 2013: The software and the website launched.
November, December 2013: Around 700 person hours were spent to fix the
defects found in the live system. By the end of December 2013, the product and
the web site were highly stable.
3
4. Requirements vs SW
Which one takes more time?
Requirements gathering or SW development?
46%
54%
SW Requirements
4 months 5 months
4
5. SW development vs Test&Fix
SW development over SW Test & Fix = What is the ratio?
53%
47%
SW Dev SW Test & Fix
800 hours 700 hours
5
6. The seven secrets
1. Onsite customer to explain and prioritize requirements
2. Highly skilled team leader
3. Dedicated team
4. War room setting
5. Allowing development team to own the requirements
6. Time-boxing
7. Onsite customer to validate the requirements fulfilled
6
7. 1. Onsite customer to explain and
prioritize requirements
• Product owner represents our customers
• Co-located with the development team
• Feeling confident that he or she knows the customers very well in
terms of what is more important for the customers and what is a
show stopper or not.
• Customer persona and Focus groups helped a lot for
understanding our customers
• MVP – Minimum Viable Product – concept helps us to focus to the
most important features.
7
8. 1. Onsite customer to explain and
prioritize requirements
4 Focus Group Meetings with 40 people
8
9. 1. Onsite customer to explain and
prioritize requirements
Customer Persona
9
10. 1. Onsite customer to explain and
prioritize requirements
• Customer Persona
10
12. 1. Onsite customer to explain and
prioritize requirements
12
All these preparations allowed us to put a meaning and
purpose for the work to be done.
It is the best when developers understand the purpose and
the meaning of the work they are doing.
They were feeling proud of what they were producing.
One of the most important duty of the on-site customer is
to explain the meaning and the purpose of the
requirements, e.g., what value the product will create on
its users when it is delivered.
13. 1. Onsite customer to explain and
prioritize requirements
• Furthermore, he was willing to take risk by
changing, combining, canceling, postponing the
requirements according to the customers’
priorities for staying in pre-set timeboxes.
• When you know the meaning and the purpose
then you will be able to change the requirements
without changing the intended use of the
product.
13
14. The seven secrets
1. Onsite customer to explain and prioritize requirements
2. Highly skilled team leader
3. Dedicated team
4. War room setting
5. Allowing development team to own the requirements
6. Time-boxing
7. Onsite customer to validate the requirements fulfilled
14
15. 2. Highly skilled team leader
• A highly skilled team
leader is crucial for the
success of an agile
development team.
• not only have outstanding
technical skills but also
soft people skills as well
as being a leader to the
software development team.
15
16. 2. Highly skilled team leader
16
The team leader fills the missing piece in the pyramid: Middle Management
17. 2. Highly skilled team leader
• It was better for the Project Manager to focus to the
customer requirements rather than the technical side of the
project
• Having an outstanding technical team leader allowed the
project manager to fill the gap between himself and the
technical team
• The technical team leader was translating customer
requirements into technical requirements and then identity
and distribute the necessary activities to the technical team.
17
18. 2. Highly skilled team leader
18
Company Execs
Project Manager
Team Leader
Team
19. The seven secrets
1. Onsite customer to explain and prioritize requirements
2. Highly skilled team leader
3. Dedicated team
4. War room setting
5. Allowing development team to own the requirements
6. Time-boxing
7. Onsite customer to validate the requirements fulfilled
19
20. ‹#›
3. Dedicated team
• The same team has been
assigned for developing our
prototype and actual
commercial software.
• They were fully dedicated;
not interrupted by other
tasks or defect-fix not
related to our project.
21. 3. Dedicated team
• If a software developer is given two tasks from two different
projects and asked to divide her time equally into these two
tasks then the resulted efficiency will NOT be 50% for
project 1 and 50% for project 2.
• It is highly possible her productivity for these projects will be
no more than 30% each.
• Having a dedicated team is highly required for establishing
a high performing team.
21
22. 3. Dedicated team
22
Weekly Launch Outs.
Nice breaks during
the war time! :)
Soldiers always need
to feel appreciated.
Non-monetary awards
work sometimes
better the money.
Awarding is good!
23. 3. Dedicated team
23
Lots of snacks. Working brains need lots of sugar.
The best snacks are banana and nuts!
Non-
monetary
awards
24. The seven secrets
1. Onsite customer to explain and prioritize requirements
2. Highly skilled team leader
3. Dedicated team
4. War room setting
5. Allowing development team to own the requirements
6. Time-boxing
7. Onsite customer to validate the requirements fulfilled
24
25. 4. War room setting
1. Requirements
2. Features
3. Plans
4. Tasks
5. Progress
• All were visible on
the walls.
25
26. 4. War room setting
• Weekly and daily targets were set and they were visible on the
walls.
• Targets are monitored and controlled daily and weekly.
• Everyone was updating their progress on the walls.
• If someone was late. The team leader was offering help to him/
her.
• Team members were communicating with each other in terms of
targets. Targets were based on customer requirements.
• Customer requirements are also translated into technical
requirements.
26
27. 4. War room setting
• One customer
requirement may be
transformed up to ten
technical use cases.
• Each use case may
take from 10min to
several hours of work.
27
28. The seven secrets
1. Onsite customer to explain and prioritize requirements
2. Highly skilled team leader
3. Dedicated team
4. War room setting
5. Allowing development team to own the requirements
6. Time-boxing
7. Onsite customer to validate the requirements fulfilled
28
29. 5. Allowing development team to own
the requirements
• Understanding
requirements is a
prerequisite of
ownership of the
requirements.
• Requirements were
written and
grouped in a simple
fashion.
29
30. 5. Allowing development team to own
the requirements
• Number of main
features is always
kept less than 10.
• Requirements were
grouped into around
7 groups with around
7 requirements in
each group.
30
32. 5. Allowing development team to own
the requirements
32
• Effort has been spent on representing them in a well organized
manner and making requirements easy to understand.
• When software development team understood the requirements
they started making suggestions for improvements and changes
on the requirements.
• Some of their suggestions were accepted.
• They were always encouraged to make suggestions on the
requirements.
• So that they feel like they work on their own product.
33. The seven secrets
1. Onsite customer to explain and prioritize requirements
2. Highly skilled team leader
3. Dedicated team
4. War room setting
5. Allowing development team to own the requirements
6. Time-boxing
7. Onsite customer to validate the requirements fulfilled
33
35. 6. Timeboxing
• Duration and the budget were both fixed
• the only variable left to change was requirements/scope.
• By the end of the budget and time, we received a working
software so that the customer was happy since there was
a product which is up and running.
• Success of timeboxing highly depends of having an onsite
product owner who knows the customer and customer
requirements very well so that he can make decisions
what to postpone for the next release and what not to.
35
36. 6. Timeboxing
36
It is much better to focus on the meaning and the purpose or intended use of
the product.
Insisting for getting ALL the requirements will ruin everyone’s life in software
development.
37. 6. Timeboxing
37
20-80 rules work!
Start with the
most important
requirements
then you will see
your product/
system will work
without the
requirements
listed at the end
of the priority
list.
39. 6. Timeboxing
39
In product development,
the minimum viable
product (MVP) is the
product with the highest
return on investment
versus risk, what is
known in the investment
community as the Sharpe
Ratio. The term was
coined and defined by
Frank Robinson, and
popularized by Steve
Blank, and Eric Ries (for
web applications).
40. The seven secrets
1. Onsite customer to explain and prioritize requirements
2. Highly skilled team leader
3. Dedicated team
4. War room setting
5. Allowing development team to own the requirements
6. Time-boxing
7. Onsite customer to validate the requirements fulfilled
40
41. 7. Onsite customer to validate the
requirements fulfilled
• The product owner plays an
important role for validating the
product for accepting purposes.
• Transparency is a great
motivator;
• It would be great to allow the
rest of the team to see how you
validate the product.
• We used a projector to show
how customer was validating
the product
41
42. 7. Onsite customer to validate the
requirements fulfilled
42
Immediate
feedback is the
best motivator
Developers are
happy when the
customers are
happy!
43. The seven secrets
1. Onsite customer to explain and prioritize requirements
2. Highly skilled team leader
3. Dedicated team
4. War room setting
5. Allowing development team to own the requirements
6. Time-boxing
7. Onsite customer to validate the requirements fulfilled
43
45. Acknowledgements
ZOOMtoLearn™ Inc. and our first product ZOOMtoProjectManagement would not have
been possible without the kind support and help of many individuals and organizations.
We would like to extend our sincere thanks to all of them.
Joseph Wilson, Nathan Monk at MaRS , Toronto, ON, Canada
Venture Start, Mississauga, ON, Canada
Softwareord-IT, Istanbul, Turkey
Bryan Kanarens at Spark Centre, Oshawa, ON, Canada
Zeynep Aydin, Marketing Consultant, Toronto, ON, Canada
Keith Hampson, PhD, Domain Expert – eLearning, Toronto, ON, Canada & Pittsburgh,
PA, USA
JoDee Grimmett, Graphic Designer, Chicago, IL, USA
Ismail Berkan, Lean Startup/Management Consultant, Istanbul, Turkey
45