XNSIO
  About   Slides   Home  

 
Managed Chaos
Naresh Jain's Random Thoughts on Software Development and Adventure Sports
     
`
 
RSS Feed
Recent Thoughts
Tags
Recent Comments

Archive for the ‘Metrics’ Category

Planning Poker and The Specializing Specialists

Sunday, December 9th, 2012

Planning Poker is certainly a fun and engaging way to do one of the most boring things on earth (STORY POINT ESTIMATION.)

If I’m not wrong, James Grenning originally came up with this idea. And my understanding is that Planning poker can best be explained by using fundamental premise of Wisdom of Crowd (Why the Many Are Smarter Than the Few). Jack Treynor’s Jelly Bean Jar Experiment is a classic example. The average guess of the group is better than the best guess of any individual.

Can we apply this concept to software estimation? May be. But there are a few small difference. In the case of the jelly bean experiment

  • Everyone in the group is taking their best guess.There isn’t much prior experience or historical data to look at.
  • There is zero consequences if they go wrong. They will not be held liable to this number.
  • Also, everyone, more are less, are equally good at the task at hand (counting.)

Now when we talk about applying the same to highly specialized software development where each skill is quite diverse and the involvement of each person is quite varied. What do we get? A complete mess IMHO!

One way to address this issue is to embrace the generalizing specialist approach. If nothing else, in the long run, these folks would become great assets to the company.

But if you don’t want to go down the generalizing specialist route, and you have people in silos with deep pockets of knowledge/skill, can planning poker work? After trying it for 3-4 years, I did not seen it working. But you should certainly give it an honest try. After all, <sarcasm>its the industry best practice.</sarcasm>

The other argument I often hear in favor of planning poker is that when the teams are doing this, they learn so much from each other. I agree 100% to this observation. Certainly getting a group of people together and asking them to estimate (commit) to something, gets them to talk to each other, share their view points and it leads to knowledge sharing. IMHO knowledge sharing is extremely important. Why not have focused meeting for just knowledge sharing? Brown-bag sessions, show-n-tell sessions, code-walk-thrus, idea-fest, scratch your personal itch days, refactoring-fest and many more. Why morph something so important under the estimation/planning meeting banner, where the priorities are different? People don’t go into a planning session saying “Wow, today all of us are going to learn something new.”

Also I would suggest reading my blog on: Story Points and Velocity: Recipe for Disaster.

Agile India 2013 Registration Trend Compared to Agile India 2012

Saturday, December 8th, 2012

Even though we have 3 more months for the Agile India 2013 conference, the registrations this time has been crazy. But how crazy is really the registration compared to Agile India 2012 Conference?

So I pulled out the stats and looked at the trend graph of what it look for 2012 vs. 2013.

Following is the comparison:

Agile India 2013 Registration Trends

Yes, as you can see, we are off to a flying start (registration openned almost 3 weeks ahead) and  the Agile India 2013 conference is almost 2 weeks later compared to Agile India 2012 conference.

Agile India 2013 – Successful Registration Funnel

Saturday, October 20th, 2012

We launched the registration system on Oct 15 at 4:00 PM. Over the last 4 days, 99 tickets have been purchased. Following is the conversion funnel.

Conversion Funnel

Currently we are at 12.09% conversion. Looking at the funnel, do you have any suggestions of how we can improve this conversion? Ideally I would like to get to 20% conversion.

Agile and Lean Group on LinkedIn has crossed 30,000 Members

Wednesday, May 30th, 2012

Started on October 15th 2007, the Agile and Lean Software Development Group on LinkedIn has now over 30,000 members. Looking at its growth over the years:

On an average, 350 new members are joining the group every week (a 7% growth.)

On an average, 13 discussions every week, but close to 300 comments each week is awesome. Shows that the group is very active. We also get a ton of promotions and jobs.

London, UK and San Francisco Bay Area seems to contributed highest number of members. Also pleasantly surprised to see Bangalore 5th on the list.

You can view all these detailed stats yourself at the group dashboard.

Is your Scrum Master Effective?

Tuesday, May 29th, 2012

How do you measure or know the effectiveness of a Scrum Master?

IMHO on a given team, in less than 6 months, an effective Scrum Master will:

  • make themselves redundant
  • make process second-nature for the team

That would be the true test for their effectiveness.

In the mean time, I would look for:

  • Has the SM been able to win the team’s trust and build credibility with the team? Does the team see the SM as an integral part of the team?
  • Apart from effectively facilitating (not enforcing) the Scrum ceremonies, is the SM helping the team understand the rationale behind those ceremonies?
  • Is the SM creating a culture of safe-fail experimentation where the team can experiment, learn and grow beyond the standard Scrum ceremonies? If the team is not evolving their practices and work culture, is the SM really doing their job?
  • Does the SM encourage System’s Thinking and uses techniques like Value Stream Maps, Five Whys, A3, etc. to identify & highlighting bottlenecks in the team?
  • Has the SM been successful at creating Self-Organized Empowered Team? Or is the team waiting for directions from the SM?
  • Is the SM able to emerge as a leaders and be the voice of the team, shielding the team from external interferences, yet creating a healthy collaborative culture?
  • Is the SM able to motivate the team and steer them towards excellence?
  • Is the SM abel to put a framework in place for the team to record and surface important and relevant data about the team’s performance? Using techniques like information radiators to build informative workspaces. Basically enabling the team to get food for improvement.
  • Is the SM proactive (instead of reactive) about resolving issues?
  • Is the SM approachable? Believes in servant-leadership?
  • Does your SM have first-hand experience working in Scrum teams? Extremely knowledgeable about processes?
  • Is the SM up-to-date with the latest trends in the industry? Keen learner and open-minded?

Ways to Deal with Technical Debt

Tuesday, May 1st, 2012

At the SDTConf, we had an interesting discussion on how to deal with technical debt. The group agreed on the following suggestions:

  • C3: Coverage, Complexity & Churn – Instead of looking at each of these parameters in isolation, we generate C3 graph using a TreeMap and use the cumulative graph to see red spots in the product. Esp. helpful to quickly raise awareness.
     
  • Slack: Every team members gets a 10-20% time every iteration to invest on things that hurt them.
  • Scratch your Personal Itch day: Every iteration each team members gets 1 day to fix unplanned issues on the project
  • Visitor from Hell: Every month have one person from other team visit you and give you feedback on various aspect of the team. Its up to the team to address these issues or not. But certainly can be used to pitch to the management for additional time to work on these issue.
  • Code Walk Throughs: Every time a team member (or pair) implements something important, they give a code walk through or a demo to the rest of the team. This usually ensures team members don’t have crappy things when they give a demo.

Check out the project rescue report, if you would like to see some examples of how we’ve used C3.

Very Insightful Reports from YouTube

Tuesday, March 13th, 2012

After uploading various videos from the Agile India 2012 conference, I was looking at some reports in YouTube. 2 Reports particularly caught my interest.

Demographics

India shows a large number of male viewers with a fairly average distribution across between age groups. While UK has a very large number of female viewers all in the 45-54 years age bracket.

(For some reasons, no demographics info are displayed for US.)

Audience retention

This reinforces my thinking that very few people watch conference videos online for more than 5 mins. (However they will enjoy the same talk if it was in-person.)

Would be interesting to find a way to distill any talk to under 5 mins.

Introducing Churn

Saturday, October 22nd, 2011

How to destroy a team by introducing various forms of churn?

  • Have the Product Management change high-level vision and priority frequently.
  • Stop the teams from collaborating with other teams, Architects and important stakeholders.
  • Make sure testing and integration is done late in the cycle.
  • As soon as a team member gains enough experience on the team move him/her out of the team to play other roles.
  • In critical areas of the system, force the team to produce a poor implementation.
  • Structure the teams architecturally to ensure there is heavy inter-dependencies between them.
  • Very closely monitor team’s commitment and ensure they feel embarrassed for estimating wrongly.
  • Ensure the first 15-30 mins of every meeting is spent on useless talk, before getting to the crux of the matter.
  • Measure Churn and put clear process in place to minimize churn 😉

Is Code Coverage, Cyclomatic Complexity or Defect Density a good Measure of Quality?

Sunday, October 9th, 2011

In Software, Quality is one of those badly abused term, which is getting harder and harder to define what it really means. I think we have a sense of quality. When we see something in a specific context, we can say its high quality or low quality, but its hard to define (and hence measure) what absolute quality really is.

You can measure somethings about quality, but don’t fool yourself to believe that IS quality.

Quality is subjective, relative and contextual.

Some might say things like code coverage, cyclomatic complexity and defect density is a good measure of quality. I would argue that those are attributes/aspects of quality, but not quality itself (symptoms not the disease itself.) Its a classic case of Fundamental Attribution Error. (If you go to France and see the first 50 Frenchmen wear glasses, you cannot conclude all Frenchmen wear glasses. Nor can you conclude that, if I wear glasses I’ll also be French.)

BTW people already differentiate between Internal/Intrinsic Quality and External/Extrinsic Quality. This is not enough to complicate things, evangelists would like to further slice and dice quality along different parameters (structural, functional, UX, etc.)

Some anecdotes:

Who is viewing this blog?

Saturday, August 6th, 2011

Pleasantly surprised to see my blog attracted 86,616 viewers from 170 countries.

Thanks to Google Analytics for helping me analyze all this info for free.

    Licensed under
Creative Commons License