📜 ⬆️ ⬇️

Depth in Agile: Shodan Adherence Metrics

image
There are several metrics to determine the depth of immersion in your team’s Agile practices. The first method of measurement that we will consider is Shodan Adherence Metrics - the Shodan level metric (Shodan - first dan - first master's degree in Japanese martial arts).

This metric was proposed by Bill Kerbs in 2003 (data differ, somewhere indicates 2002, and somewhere 2004). Krebs developed a questionnaire that all members of the agile team at each retrospective meeting must fill out anonymously. Mike Cohn, one of the major figures in the field of Scrum and Agile, does not recommend conducting a survey so often. In his opinion, the survey should be conducted every six months or a quarter. In my opinion, this should be done after each major release.

The essence of this questionnaire is the degree of immersion of the team in XP practices (eXtreme Programming). The survey results give a certain total percentage of immersion, on which the team should work to increase. A bare dive percentage does not give direct information about what to do. The team should analyze the components of this coefficient and work out a solution to correct the situation (well, or Agile Coach should do it for them).

The questionnaire itself:
PracticeWeightDescription
Automatic unit testing40To what extent do you use automated unit tests?
Customer Acceptance Tests20How important are customer acceptance tests in your development process?
Development through testing20What percentage of your time does development through testing take?
Pair programming80What percentage of your work (design, analysis, coding) was done using pair work?
Refactoring70How often do you spend time cleaning the code without changing the functionality?
Release Planning38Do you allow changes to the release plan or requirements after each iteration (based on customer feedback or current implementation)?
Work with the customer32Do you always manage to interact with the customer when it is required?
Quick releases40How close are you to getting releases every 6 months when working with iterations in a couple of weeks?
Daily meetingsfiveDoes your team hold stand-up meetings daily?
Continuous integration60How often (on average) does your team synchronize and integrate code into a version control system? (10 = 3 times a day, 8 = once a day)
Coding standardthirtyDo you have a coding standard, how often do you follow it?
Collective ownership50Can people edit someone else's code, and how often do they do it?
Constant pacethirtyHow well do you manage to keep working rhythm? (10 - I constantly manage to keep pace. 5 - I work not as much as I would like, but I manage to produce results at the right pace, though at the cost of a small burnout at work. 2 - I work far from the right rhythm and burn out much, my result work is not always of proper quality)
Simple architecture55How often do you manage to stick to the rule: “Make your code simple”?
Metaphor35How often, from your point of view, metaphors are embodied in the system that you develop?
Lessons learned6Does the team conduct a retrospective of its activities after each release?
Growth6Do you study new working methods and tools? If you do not study, you are behind!
Morality6How often can you say that you enjoy your work?
Reducing the number of artifacts7How much can you: reduce the number of reviews of the code (pair programming), reduce the volume of project documentation (development through testing), simplify comments / internal documentation to the code (simple architecture, refactoring)?
Comments

Disclaimer: In the internet there are supplemented questionnaires or with converted scales, I didn’t particularly bother about which one is more true.
')
In order to complete the questionnaire, it is necessary to evaluate the use of practice in your team by scores from 0 to 10. In order to make it easier to evaluate, there is a hint:

EvaluationCompliance Level
tenFanatically (100%)
9Always (90%)
eightRegularly (80%)
7Often (70%)
6We use more often than not use (60%)
five50/50 (50%)
fourWe do not use more often than we use (40%)
3Sometimes (30%)
2Rarely (20%)
oneIt happens (10%)
0Disagree with this practice (0%)


So, how is the result:
  1. Calculate the arithmetic average for each indicator from the team
  2. Multiply each indicator by its weight.
  3. Sum all scores
  4. Divide the amount received by 630 (this is the maximum value) in order to get a percentage of your immersion in practice.


Well, at the end of the links to the materials:

Behind this all. If it works, it will be continued.

Source: https://habr.com/ru/post/146019/


All Articles