Agile principles, Lean principles, Scrum values, XP values…
Anyone who wants to guide and motivate a software development team seems to come up with his own set of standard values or principles. But I believe that every project is different, and every team need its own customized value system.
I hereby give you the Do-It-Yourself Team Values Kit. Now you can create your own set of values. The idea is simple, and it works like this:
Print the Big List of 50 Virtues (see below) and give a copy to each of your development team members. (Note: the “standard” agile/lean/Scrum/XP values are printed in bold letters.)
Tell your team that, together, they must select five virtues from this list. These must be the virtues that they consider to be the most important, given their current project, situation, and personalities. They can be five standard agile values, but they can also select some other ones.
Do exactly the same with the stakeholders outside the team (functional managers, users, etc.). Get a representative number of them together and select five items that the stakeholders think would be the most important values for the project.
Then get together with the team and compare the two lists, which must have been created independently. You should now have a list of values selected by the system (the team), and a list of values selected by the environment (the stakeholders).
Most selected virtues will probably be different, but some choices could be the same, or very similar. It is likely that the environment and the system itself have different views on what’s important. Talk about the mutual expectations, until you reach consensus on a merged list of five to nine values (“seven plus or minus two”).
You now have agreed on the final team values. Make them clear to all team members and stakeholders, by displaying them on posters, mugs, task boards, coffee machines, screen savers, and lunch menus.
The Big List of 50 Virtues (seven traditional agile values are printed bold)
The Big List of 50 Virtues was extracted from the Wisdom Commonsweb site, where you can find many more virtues, applicable to everyday work and life. Of course, teams are free to augment the list with other virtues that they consider essential.
A good list of team values originates from the team and its environment. Many initiatives for “company values” fail because they are devised by top management and imposed on the work floor, and because they do not take into account that different teams may need different values. For example: a creative team may need some more decisiveness, while a pragmatic team could be in need of a bit more cleanliness.
The Big List of 50 Virtues also gives people a chance to introduce some items that are often forgotten by the standard agile value lists, like the values for craftsmanship (excellence, skill, and self-discipline).
Each team must practice their self-organizing capability by devising their own method to reach consensus on their five values. As a manager you should not tell them how to do it. Only communicate that you expect them to agree on their final set of five virtues. Then close the door, and wait…
And consensus with management (the environment) on the merged list is vital. The team is embedded in an organization, and therefore it much reach consensus with the organization on the final set of team values.
Finally, teams change, projects change, and organizations change. This could necessitate that you re-do this exercise once in a while. Teams cannot focus on too many team values at the same time. After having practiced certain values for some time, it might be wise to re-focus on other ones.
Note: When you’ve tried this approach and came up with your own value system, please share the results with the readers of this blog. Tell us about your experiences!