How much to jump?

I was talking to a very senior exec of  US Corporation who was comparing his India Agile team with the Brazilian Agile team and I was really amazed at the way he said it. That got me writing this article as I think he is right.

Here is what he said – I ask my teams in India to Jump they ask how high. I ask my teams in Brazil to jump, they ask why?

Is this really true?

1) Are teams in India allowed to ask Why?

2) Is it a cultural thing that asking why is considered socially incorrect.

More on this thought soon? But I needed to pencil this down for now.

Request your contribution to Scrum Awareness In India

State of Scrum In India

Hello my name is Vibhu Srinivasan and some of you may know me. I am passionate about Agile practices and practice agile in everything I do from running  business to helping at home.  I am presenting on a topic called “Is Scrum For India” in the upcoming Scrum Gathering India to be held in Pune on the 26th and 27th of July 2013

In order to faciliate the session, I am trying to gather some data to really understand if scrum is working for teams in India. I feel you could help.

To do this, I  would need
1) To meet 25 scrum teams from Service and product companies alike.
2) To carry out a Survey from 200 independent practitioners in India on Scrum.

I would appreciate your response, if you are able to contribute some time of your team.

Based on your preference, I can visit your team for around 30 minutes in Hyderabad, Pune, Bangalore or Gurgaon to conduct the study. We could also do this through Skype or some other video channel.
The responses by the teams will be used only for our internal studies and the broadcast of the results will not carry your teams’ reference unless  we have your categorical permission for the same. If you so wish,  your teams’ video will be shown at the conference; if you don’t then we will not mention anything. As always I respect your organization’s privacy and will refrain from saying anything about you, your product or the customer if you choose to not expose that information

Please send an email to me with your preference for either a meeting with the team or  for the team to participate in a survey. My personal email is vibhu.srinivasan@gmail.com

Please note this is purely for benefit of the agile community and there is no commercial intent here.
There are no gifts or bribes associated with this. I am hoping you will do this because you care about the agile practices in the Indian context.

What is Velocity?

Velocity can be termed as the run rate of the team . Agile teams use this metric to measure how much work was done in a sprint so that we know how much more is left to actually make the reason.

Let take a simple example.

The team has ten stories whose total story point is 140. They pulled around 30 points of work this sprint. They finished 25 points. This 25 is their run rate.

With this the team and product owner can project how many more sprints are needed to finish the work.

We are assuming that the team is using story points here.

Some myths about velocity
1. Teams velocity keeps increasing over time.
2. A team having a better run rate is a better team
3. Since some team last year delivered at a certain velocity, this new team will also deliver at the same velocity
4 Velocity can be a predictable measure sprint after sprint even if we keep moving team members in and out.
I have seen many team members mindlessly argue over the effectiveness of velocity and end up wasting valuable time.

In fact in the beginning in 2005, as a developer, I would not see the point of such calculations. After a while, I got used to this and stopped worrying about such metrics and just focused on writing clean code.

Also, velocity as a measure only works well with teams that tend to practice Scrum and not as much with Kanban or XP teams.

Many scrum masters get into this coach mode with a single focus to help increase the velocity of the team. Instead, I would encourage ScrumMasters to look at completing the work they pulled min style, as well as help team and team members, identify waste in the system.

This metric is not as important as a number of automated unit test or number of production bug in the system.

20130114-090532.jpg

Is Scrum Agile dead in India?

To put things in perspective I am a Certifed Scrum Trainer and have been working with teams in India for three years.i am a developer that has been in this business for 18 years mostly in XP teams.

I was recently in a very interesting discussion with one of the handful of folks in India that I know of who actually understands the essence behind Agile. What we got talking was a very simple topic
Does a model like Scrum or Kanban which is widely popular elsewhere really applicable to Indian software industry.

Millions of developers code away daily in Indian organisations. More than sixty percent of Indian software industry is still service industry. By which I mean “Cheap outsourced fast software”

Put in a simpler way ” clean the mess and work on software western developers do not want to work on”. I have visited almost every large or medium service organisation in India in last three years. I am yet to see a highly motivated self directed high performance team.

I recently got into a very uncomfortable situation as a agile consultant, when the customer asked me – I want a American quality agile coach for whom I can spend 300k but for a Indian quality coach I can only pay 60 k. This is really top guy in a very big product company. Basically I was told that coaches in India suck .well most of them do ,but not every one of them.

Some of the most common fears that Indian management have to deal with

  • large fixed bid projects

Even to win a fixed bid project Indian companies have to guarantee that they will deliver all the features within a certain range.there are huge penalties for missing the cost deadline

  • thousands of new hires on a daily basis enter the system

a recent training coordinator explained to me how they filter through the low quality hires in the first six months of training
Most of the new hires have to go to a military style training program to unlearn whatever little they learnt in their engineering program’s. I saw the training Kanban board which has a day by day measure of where the new grads are in their learning curriculum. Nowhere in this new curriculum was the agile mindset.

  • after doing scrum we are stressed out

most of the customers from counties like US and UK are misusing the term commitment . Or this could be a misinterpretation of Indian managers
The teams are expected to commit whatever they finish in a sprint.

  • To manage a manager there is a manager

due to the sheer scale and volume of Indian organisations you get promoted to a manager from a developer even before you finish compiling the first program you ever wrote. There is a person to watch every person . For all these years the managers have been herding sheep. Where do they all go if you become agile.

  • affinity to westerers

it is sad but it is true. Indians take “athithi devo bava” way too seriously. Between a average Indian guy who naturally lies, does jugaad for everything and the white male who visits India more often to take pictures of poverty . Even if the Indian guy is speaking sense the people , crowd around the white guy who has no clue what problems Indian organisations speak . While it is a meritocratic society, if you look at the speakers for agile2013.in ,Indias largest agile conference where there are only a handful speakers from India.this goes to prove that this agile thing is not really working here. When I go around Indian organisations , I am often challenged by managers that they disagree on something because Craig said so or Pete said so. I hardly see Indian managers disagree with anything visitors have to say. I never hear them say Venkat said this or Mahesh said this.

  • we are like this only

Here are some things only happening in India – sticky notes in India do not stick in the wall,Indian software teams have to deal with a group called facilities . Many a times we would put up a Kanban board in the evening only to come back in the morning that the ruthless facilities people have cleaned up the entire board. Most Indian organisations have to deal with late night calls, so they end up coming very late, then they go to many unwanted manager meetings , then have lunch ,then tea and samosas ,then get ready to do athithi devo Bhavan after 6 pm. Where is the time to code in between all this.

Things from Scrum and agile that does not work well in India

1 Daily standup – it is very tough to do this hanging in a bus as U commute,or when stuck in traffic or as I stuff Some curry in a hurry as the customer only comes online after 9 pm

2. The concept of cross functional team – not possible in really large firms . The PDI index or power distance index for India is more that 70 percent. Hierarchy in a team in expected behaviour.so unless I am told what to do, I do not do anything .

3 servant leadership – the term servant has a very different meaning in the Indian culture.hence when I say in the CSM class,people tend to look at this concept strangely.

4 scrum master – this is a county of project managers .there is a manager for everything. It is probably the largest revenue generator for PMI. Where do all these PM,s go now.

5 CMMI baggage – most of the companies are at CMM level 5 and also have lots of internal audits and procedures .case in point in one agile product company in India, you have to leave your cell phone at the gate and are not generally needed to adhere to the strict code of conduct.

6. The nature of distributed agile makes life a huge stress factor on family life often called as offshore widows .

7 . product owners not here. This is huge issue as the PO is never in India and they have to stretch a lot on their side to actually work with a team

8. Managers are not authorised to push back or say no to odd ball customer requests .because hourly rate counts, they will do anything to keep a body billing. One of the early projects I did many many years ago was a code review projects, we got paid 1 dollar a line of code. So I was needed to at Least review 300 lines a day. Better still this was code I could not even compile.

As a disclaimer there are a handful of small to medium agile organisations that do an awesome job in India

.Also all names here are fictional and do not represent anyone that is real

I really think Indian companies should not blindly follow processes not made in India. They could take whatever has been the norm for years and then come up with something that Works in India

I highly encourage a debate that I would love to facilitate with whoever is interested to debate really find something that works for the business scenarios that are very unique to this region.

Scrum In Chinese

I was recently a teaching a class of Chinese Students in Malaysia. They wrote definitions of Scrum in Chinese language. I am sharing this for general benefit.

Scrum In Chinese

What is Definition of Ready?

 

Definition of ready is a list that the product owner and team agree to. Think of it as a working agreement between the team and product owner on what readiness means. It is a Input criteria to accepting story in a sprint.

It is a way for a product owner to signal an item in the product backlog as ready to work in sprint. It is the accountability of product owner that there is a definition of ready defined. Scrum team can refuse to take an item into sprint even if definition of ready may be true.  This is not a core part of scrum. Many scrum teams follow this useful technique.

DEFINITION OF READY FOR PRODUCT BACKLOG:

  1.  Does the item have a self increment of business value?
  2.  Is this a stack rank well ordered item?
  3.   Is there well understood , simple acceptance criteria for the item?
  4.  Has the team seen this item before sprint starts and spent time talking about it?
  5. Is the acceptance criteria A5 size only?
  6. Has the team estimated the backlog item?
  7. Does the team feel comfortable taking an item into the sprint?
  8. Can this item be finished within this sprint as per defintion of done.
  9. What is the teams gut check. If they trust the PO and there is a good convesations and trust, items 1-8 may not always matter too much

Definition Of Ready

 

 

What does ScrumMaster do in Scrum?

“The servant-leader is servant first… It begins with the natural feeling that one wants to serve, to serve first. Then conscious choice brings one to aspire to lead. That person is sharply different from one who is leader first…”
– Robert K. Greenleaf

ScrumMaster is a ideally a full time role. Good ScrumMasters are people personalities, do not fear doing weird things, saying what is true . The main responsibilities
are

  1. Keeper of Scrum Process – Teams and organizations have very less patience, They try anything for a few days or weeks and then there is pressure to do the routine stuff.There is a lot of pressure on the ScrumMaster to change the process too. Example, a manager will ask the ScrumMaster for metrics like Utilization, how each member of team is doing and micromanage. Good ScrumMasters like coaches do not give up easily. They keep doing Scrum by the book.
  2. They are change agents.
  3. Expose the mess and make teams impediments visible. – A scrum team, product owner and organization would have to work in unison to create great product. But they often work in three different directions. Good ScrumMaster protect the team by helping them not fear from the system and say anything that is an impediment.
  4. Coach the product owner on “Working well as a product owner”
  5. Coach the managers in an organization on “Leading well as an Agile Manager”
  6. Coach the teams to become self organizing teams.
  7. They keep the team together for years and fight off folks who want to steal team members
  8. They are generally asleep when things are going well, but the first ones to arrive when things go wrong or people need help
  9. There is saying that ScrumMaster is like the “Mom  of the house” – A thanks less job, yet it take a good patient mom to keep the house running
  10. ScrumMaster facilitate Scrum Meeting
  11. They are accountable that the Daily Scrum happens but they do not have to be always there
  12. They maintain a impediment chart for the team in the team room
  13. They set up a good task board, team room , burn down
  14. They find a way for a distributed team to have the best possible collaboration tools
  15. They sit where bulk of team sits and are aware of the team dynamics and issues in the team
  16. They let the team fail and help them learn from these mistakes in retrospectives
  17. Take the management along the journey. Many ScrumMaster do not work with management well enough. You need their support to succeed.
  18. Be open to suggestions and feedback – even if this feedback is against your beliefs. Remember its not about you

More important than what they should do is what they should not do:

  1. Do not be the star of the team. Let them shine. You are just the polish
  2. Do not make decisions for the team
  3. Do not become the teams bottleneck
  4. Do not put pressure on the team.
  5. Do not measure how much time they are spending per task. Yes this is true. Time is the worst possible productivity measure

What is a Product Backlog?

Product BacklogProduct Backlog is one the artifacts of Scrum. The product owner writes the product backlog. It is an ordered list.

This is a list like grocery list. Each item in the product backlog is called a product backlog item (PBI) . The product owner orders into one order based on business value , risk  and technical input

It is just an excel list. Typical columns in a product backlog are

  1. Item Number
  2. Story Description
  3. Size ( also called as estimate by team)
  4. Order – This is one number. 1, 2, 3, 4 and so on
  5. Business Value – The PO is accountable to get the correct business value working with customer, stakeholders and rest of the organization.
  6. Definition of ready – Is this item sprint ready – yes or no
  7. Team name – the team that is working on an item
  8. Sprint number
  9. Release number
  10. Acceptance Criteria. – More details on the requirement

Here is an example image on mountain goat sofware

What does Product Owner do in Scrum?

Product Owner
Product Owner

The essence of Scrum is “Business Drives Development”

The role called Product Owner meets this scrum essence.

The product owner with his or her vision works with all the stakeholders , other business groups and creates a product road map for the product.

They also answer all the questions teams have with regards to the requirements of the product.

At the end of the sprint when the team shows a potential shippable product increment, the PO accepts the product and gives feedback.

Most of their time is spent in writing the product backlog and breaking big requirements into smaller items as shown by the funnel in the picture.

The product owner as they break down requirements order the product backlog in terms of business value, risk, technical input from teams.

Product owner in scrum is one person, not a group or committee.

This way of breaking down product backlog items from big to small items is called Progressive elaboration.

They also keep maintain the release burn-up chart.

As they accept item in the product backlog, they can decide to call the release and they are responsible  to maintain the ROI of the product,

What is Scrum?

Scrum in 10 linesA Hand Drawn Sketch

    1. Scrum is a framework to manage complex projects based on empirical process control mechanisms.
    2. Scrum is based on inspection, adaption, timebox and transparency.
    3. Scrum is based on five values – openness, respect, courage, commitment and focus
    4. Scrum teams do work in timeboxes called Sprint which is either 1, 2, 3, or 4 weeks.
    5. There are three roles Product Owner, Team and ScrumMaster
    6. ScrumMaster is a leadership role who facilitates scrum ceremonies, keeps the team together, coaches team on Scrum and agile and makes impediments visible.
    7. Product Owner is the customer representative or customer who specifies what needs to be done in a an order and accepts work when done.
    8. Team has 5- 9 people that does the work for the product owner and shows an increment of work each iteration.
    9. Scrum Ceremonies are Sprint Planning, Daily Scrum, Sprint Review and Retrospective.
    10. Scrum can apply to any kind of work that can be planned for at least a week.