At the MSST 2015 conference on 31 May 2015, we reran Upstream Training focusing on the agile team development.
Here is the abstract:
With over 1000 developers from 130 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions. These can significantly slow down the speed at which changes by newcomers are integrated in the OpenStack project.
We've designed a training program to accelerate the speed at which new OpenStack developers are successful at integrating their own roadmap into that of the OpenStack project. We have taken a slice of the two day OpenStack Upstream Training program and broken out the session dealing with development interaction. This 4 hour live class teaches students to navigate the intricacies of a project's technical teams and social interactions using Legos. It is a lot fun and very informative to the way upstream development teams, companies, and individual technical contributors behave and react to milestones.
Understanding Open Source Development through Lego City Building
1. The Upstream Game
Understanding the Development Community
through Legos
Sean Roberts @sarob
David Lenwell @davidlenwell
Rama Puranam @puranamr
2. What is Open Source Development
With over 3,300+ developers from 230+ different
companies worldwide, OpenStack is one of the largest
collaborative software-development projects. Because of its
size, it is characterized by a huge diversity in social norms
and technical conventions.
These can significantly slow down the speed at which
changes by newcomers are integrated in the OpenStack
project.
3. What is Open Source Development
We've designed a training program to
accelerate the speed at which new OpenStack
developers are successful at integrating their
own ideas into that of an OpenStack project.
4. What is Open Source Development
We have taken a slice of the two day
OpenStack Upstream Training program from
https://wiki.openstack.org/wiki/OpenStack_Upstream_Training
and broken out the session dealing with
development interaction.
6. What is Open Source Development
This live class teaches students to navigate the
intricacies of a project's technical teams and
social interactions using Legos. It is a lot fun
and very informative to the way upstream
development teams, companies, and individual
technical contributors behave and react to
delivery dates.
7. Materials
● Few example Lego buildings (source
projects)
● Lots of Legos
○ about a 1 lb per person
○ interconnects (APIs)
○ base plates (community infrastructure)
○ random pieces (source code)
8. Roles
three major roles
● upstream people (7-8 people) green, red
● company people (7-8 people) yellow, blue
● individual contributors (7-8 people) grey
9. Purpose
● each team will have the same task: to
expand the city block the way they want
○ this will be your team’s project, whether you’re
playing the company or upstream role.
○ individual contributors will set their own purpose, for
example: decorate all in pink, cut all the trees, build
something, be for hire… anything
10. Rules of the Game
● Select CEOs from individual contributor
group
● Upstream teams elect their own leader
● Company and Upstream pick their objective
in the first planning session
● Offer them to write an Epic
11. Purpose (contd.)
● purpose is not to complete the building but
the collaboration in expanding the city
● each group will start with a completed
building with room for expansion
● extra: plan for final result to be compatible
with the other large team
13. Facilitator's Role
facilitators are there to smooth out the process
● lead the conversation
● help with the planning process
● discovery of how other teams were working
● focus on creating communication
● help participants to identify social
mechanisms that work or don’t
14. Before We Start
15 minutes, Design Preparation
● to design your project
● pick your name
● write the epic on the whiteboard
15. Four Milestones
four cycles
● 5 planning
● 20 execution
● 5 review
visible countdown and audible sound
keep on the timing
16. Milestones 1-3
● Complete Features per milestone
● Identify Bugs during review
● Facilitators will help keep teams on track to
bigger issues like compatibility with existing
buildings, collaboration with other teams
17. Feature Freeze
● Last cycle should be focused on Bug fixes
● Work on making Features already
implemented work
18. Release Review
Each team speaks to
● Their team name
● Their objectives
● Their accomplishments
● What they learned