ShipIt

Gamifying Agile Adoption – An Experiment – Part 2

Gamifying Agile Adoption – An Experiment – Part 1

Gamification is now in place for over two and a half months at IDeaS and the data is looking better.

Iteration Burn Down

The game was introduced on the second day of Iteration 8. The iteration burn down data started looking better since then. Stories got planned well, they started getting accepted earlier in the iteration. Iteration 11 and 12 data is not looking as good because of holidays and 5th ShipIt day that was scheduled on 1st two days of iteration 12.

Iteration Burndown

Velocity Chart

Velocity Chart is also showing better data starting iteration 8. In-iteration story acceptance has increased. Due to holidays, the velocity data is not up to the mark for iteration 11 and 12.

Velocity-Updated

 

Behavioral Changes

We saw some interesting behavioral changes

  • The team members started following processes well.
  • There was more interaction and collaboration between SD, QA, Product Owners and Product Managers.
  • The negative points started bothering the team members and they became a bit risk averse.
  • Some members started pushing product owners and product managers for early story acceptance to get additional bonus stars at the cost of quality.

Enhancements to the game

  • Now -ve stars do not impacts the total stars that are already credited. -ve stars give you Devil Badges.
  • Earlier “Badges” is now called as “Levels”.
  • Introduced “Badges” –
    • Badges give specific feedback on the contributions done in a specific area.
    • Different departments can have different badges.
      • Badges have three levels
        • Bronze
        • Silver
        • Gold
      • Different badges can have different star count to reach a level within the badge.
    • There are Angel and Devil badges.
      • The goal is to earn Angel badges.
      • Devil badges represents activities that one should not be performing.
    • new-badge-list
  • Leader Board now has a left panel that shows Badge Leader board.
    • new-leader-board
  • Self User Profile
    • Clicking on the user name on the right top corner brings the user on the User Profile page. The user profile page also two sections
      • Left Panel shows
        • User section
          • Total number of stars earned so far.
          • All the badges earned by the user. The color represents the badge level.
          • Appreciate someone by clicking on thumbs up icon.
          • Create new mission by clicking on the bulls eye icon.
        • Department Section
          • List all the users in the department in descending order of the number of stars received.
          • Appreciate the individual using the thumbs up icon.
      • Right Panel
        • Accordion shows all the badges that the user has received.
        • Progress bar shows the number of stars received for a given badge and the number of stars to achieve to reach to the next level of the badge.
        • Photos
          • The middle photo is of the self user.
          • The left hand side photo represents the user who is just ahead of the self user.
          • The right hand side photo represents the user who is just behind the self user.
    • new-user-profile
  • User Details
    • Click on any image on any screen and you would land up on the user details screen. The screen shows all the badges earned by the particular user.
    • Hover on the badge and you will see the reason why the user received stars for the concerned badge.
    • new-user-details

IDeaS Rock Stars is now opensource!!!

You can now download IDeaS Rock Star application war and use it in your organization. The source code and configuration help is available at Github.

Download Bots

 

 

Advertisement

My first public talk

I still remember the day during my engineering days, when I was standing in front of my college classmates and professors to give a seminar on my favorite topic at that time, “Kidding with .exe and .com files”. The talk was about how you can hack and edit binary files to change the conditional logic! Though I was very passionate about the topic and prepared with the content, I had immense stage fright, I was trembling and sweating a lot, there were two fans blowing air on me to cool me down, friends were cheering and supporting me, but somehow my thinking ability had vanished and I was at loss of words. The very fact that so many people were looking at me, was killing me. I just couldn’t talk. I had failed myself and my friends.

Heck, that was 15 years ago…

I wanted to get over my stage fright and I was looking for opportunities. I started with conducting small training sessions at IDeaS.

My first big opportunity came in year 2006 when “Unknown Waters” had organized “Expressions”, a theme based cultural competition for IT companies in Pune, in which I got a chance to play two small roles. I was determined to get over my stage fright. Since we all were new to acting, our director Mukund Wangikar creatively created smaller roles for everyone. That worked very well for us. We practiced hard and with fantastic team work we managed to get 2nd Prize in this competition.

We were high on confidence and in 2007 I got my second big opportunity to play the character of a “ghost”. This was a bigger role. Both these plays where hosted in big auditoriums in Pune “Bharat Natya Mandir” and “Yashwantrao Chavan Natyagruha” respectively.

A glimpse of our performance for year 2007 is available at https://www.youtube.com/watch?v=LMmpPPirZ1k

Participating in a drama and facing a large set of audience was a mind blowing experience.

In the mean time, at IDeaS, I kept getting opportunities of conducting training sessions and giving presentations to smaller audience. The ShipIt program gave a nice platform for all of us to face audience and to present our ideas in about 5 to 10 minutes. This platform gives us good practice to work on our “Elevator Pitch” skills.

On 4th and 5th Sept 2014, I attended Selenium Conf 2014. In this conference, two of my colleagues gave a talk on “Selenium DeTox for Achieving the Right Testing Pyramid” along with Naresh Jain. To me, though I was just part of the audience, it was a fascinating experience. I thought conferences are such a nice platform to share your thoughts, experiences and learn more. I wished to be there on the stage to share my thoughts…

Naresh had seen my work “On a quest of reducing Jenkins build time.” He suggested me if I can share my experience at Agile Pune 2014 as he thought it would make a nice topic. So there I went, I wrote my first proposal “Techniques to Speed Up your Build Pipeline for Faster Feedback.” and my wish came true as the proposal got accepted for Agile Pune 2014. I was so happy, I had got what I wished. This was going to be my first public talk! But now I was nervous, I had not given a public talk before.

I admire TED talks and TED speakers. They simply fascinate me. As I started thinking about my talk and the opportunity that I had got, I wanted to give the best of me. To my luck, I came across a book “Talk Like TED: The 9 Public-Speaking Secrets of the World’s Top Minds“, which changed the way I thought about giving presentations/talk. I believe that all those who aspire to give talks, presentations, this book is a must read!

I started working on my presentation for this talk based on the concepts I learnt. Naresh helped in giving the finishing touches and also gladly agreed to be my co-presenter. I spent a lot of time in front of the mirror rehearsing my presentation. Ravi Bahl and Suman Nair gave me very valuable feedback which helped me improve on my presentation skills. Before the actual talk, I got a chance to practice on my presentation skills at TechJam.

TechJam is a non-profit initiative to build a community of techies, who are interested in learning and exploring new technologies and is currently hosted by IDeaS Pune, courtesy Naresh Jain.

On the day of conference, 22nd Nov 2014, I was a bit tense as I wanted to give my best shot. As the session approached, I started getting little butterflies in my stomach. The prior presentation got over a bit early which bought me enough time to setup and be ready for our presentation well before time. Before the actual talk started, Naresh Jain, being a seasoned player, helped me getting calm and comfortable by cracking jokes and making me laugh and simile while we were standing on the stage and facing the audience that was slowly gathering. It helped me a lot in giving my very first talk. This time, I was not trembling, the butterflies and the goose bumps had vanished, my thinking ability was with me and the words were flowing well. I think it went really well.

Video –

Slides – http://www.slideshare.net/AshishParkhi/techniques-to-speed-up-your-build-pipeline

I am looking forward for many more opportunities to share and learn. I have now got an opportunity to give two talks at Agile India 2015 Conference. I am looking forward for my talks on

Gamifying Agile Adoption – An Experiment

Techniques to Speed Up your Build Pipeline for Faster Feedback.

 

Gamifying Agile Adoption – An Experiment

While having a chat with Naresh Jain, he suggested me to go through the Ted Talk – “Gaming can make a better world” by Jane McGonigal. I found the title very weird and was wondering how is that possible? After going through the talk though, I was amazed. I started wondering if I can use the gamification technique in Agile Adoption, in our Products, in Performance Management Systems, in Employee Engagement Programs?

Dhaval Dalal introduced me to Prof. Kevin Werbach’s definition of Gamification – “The use of game elements and game design techniques in non-game contexts.

For our 4th ShipIt Day, organized on 25th/26th Sept 2014 at IDeaS, I decided to explore the idea of using game elements and game design techniques in the context of Agile Adoption. The idea was to create a gaming system which will automatically collect data, i.e. without explicit user intervention,  from multiple sources like Jenkins, Rally and manually from individuals and offer Star’s for positive behavior and deduct Star’s otherwise.

The aim was to help the team get continuous visual feedback on how they are doingadopt agile practices, visualize sense of accountability, visualize sense of achievementdrive positive behavior, create healthy competitioncreate a culture of appreciationhelp performance tracking and create transparency.

We are moving from traditional water fall model of development to Agile way of development. We use Jenkins for continuous integration and Rally to track our stories.

Jenkins had some part of gamification techniques already available via The Continuous Integration Game plugin. Below are the rules of the Jenkins CI game

  • -10 points for breaking a build
  • 0 points for breaking a build that already was broken
  • +1 points for doing a build with no failures (unstable builds gives no points)
  • -1 points for each new test failures
  • +1 points for each new test that passes

In Rally, we do story mapping. We follow certain processes like

  • Every story in the iteration should have story level planned estimates.
  • Every story in the iteration should have tasks.
  • One should update the Actual and TODO for the Rally task they are working on every day.
  • The stories should be completed and accepted within the iteration.
  • Story spill overs into next iteration should be low.

It was not possible to work on this idea alone and I am glad and thankful that I got support from Umesh Kale – who helped with the UX, Vishal Gokhale – who helped with the Jenkins Plugin. Paresh Dahiwal – who helped with the Rally plugin and Sameer Shah – who helped with QA.

I am glad to present the game “IDeaS Rock Stars“.

The web-app has two sections

  • A departmental leader board – that shows
    1. Star of the Day ( Top three individuals, who earned most stars in a day. )
    2. Star of the Week.
    3. Star of the Month.
    4. Most Appreciated ( Top three individuals who have earned most stars so far. )
    5. Most Appreciative ( Individuals who appreciate other’s contribution. Encourages individuals to recognize other’s contributions. )
    6. Open Missions ( Open missions/quests are visible across departments. Quests help in creating the culture of taking initiatives, being pro-active; helps in earning more Stars. Encourages cross department collaboration in addressing issues.)

Leader Board

  • Self-Board – that shows
    1. Stars that I have got ( Show off your stars with pride. )
    2. My Department ( Where do I stand with respect to others in my department? instant feedback on how hard I have to work to earn stars. )
    3. Who is getting Stars? ( Why are others getting stars? how can I earn more stars. )
    4. Why are my stars are getting added or deducted ( Instant and specific feedback, encourages positive behavior.)

My Screen

  • Self-Board – Appreciate Someone
    • encourages the culture of appreciation.
    • individual can give +1 star per appreciation.
    • managers can give or deduct more than 1 stars.

Appreciate Someone

  • Self-Board – Create Mission
    • Managers can create additional missions.
    • Missions/Quests are a nice way of earning more Stars.
    • Missions/Quests are visible across departments. Other department may be in a better position to solve your problems! Encourages cross department collaboration.

Create New Mission

  • Badges
    • Show off your badges as you earn Stars.

badges

Jenkins Plugin – an extension of The Continuous Integration Game plugin which sends out stars to the IDeaS Rock Star game. It also sends stars for the downstream builds.

Rally Plugin – custom standalone java program that scans Rally and sends out stars to the IDeaS Rock Star game based on the rules that we have defined.

Based on our teams values and processes, below list shows how to earn Star’s. Other teams/departments can choose to have their own structure of earning Stars.

Reason Stars Behavior
for breaking a build that already was broken. 0 discourages developers from checking in code when the build is already broken. Encourages them to fix a broken build.
for doing a build with no failures. unstable builds gives no stars. 1 encourages developers to produce good builds. Encourages developers to check in more frequently to collect more stars. More frequent check-in leads to faster code integration.
for each new test that passes. 1 encourages developers to add new test scenarios with every check in. More quality, automated test scenarios, lesser effort required on manual testing. Aids quick feedback.
for updating actual and todo in rally every day. 1 encourages developers to follow standard process which helps in getting correct velocity.
for setting planned estimates at story/defect level. Stars given to story owners, story task owners. 1 encourages developers to follow standard process which helps in getting correct velocity/burn down.
for completing the story within the iteration. Stars given to story owners, story task owners. 10 encourages team work, encourages developers/qa/product owners to better slice the story and finish the story in one iteration.
for getting the story accepted in the same iteration. Stars given to story owners, story task owners. 10 encourages team work, encourages developers/qa/product owners to better slice the story, finish and get the story accepted within iteration.
for giving internal training, presentations; knowledge sharing. you have to claim these stars from your manager 30 encourages and enhances presentation skills, knowledge sharing, encourages continuous dialogue with managers.
for participating and presenting your idea in ShipIt. you have to claim these stars from your manager. 50 encourages innovation, initiative, proactivness.
for writing technical blogs, articles, answering stack overflow questions etc. you have to claim these stars from your manager. 50 encourages knowledge sharing, community contribution and expression of thoughts.
for open source contribution. you have to claim these stars from your manager. 75 encourages community contribution.
for becoming ShipIt Innovator. you have to claim these stars from your manager. 100 encourages innovation, initiative, proactivness.
for giving presentations in technology conferences. you have to claim these stars from your manager. 200 encourages developers/qa to participate in conferences, knowledge sharing, branding.
Wild Card – other tangible/intangible value addition/creation. You have to claim these stars from your managers. These stars are discretionary; based on perceived value addition. * encourages going above and beyond your responsibilities. Encourages continuous dialog with managers.
for each new test failures -1 discourages bugs, encourages fixing flaky tests.
if story/defect does not have planned estimates (per day). Stars removed from story owners, story task owners. Associate leads and above get -2 per story that does not have planned estimates. -2 encourages dialog between leads and team members.
For not tasking a story (per day). Stars removed from story owners. Associate leads and above get -2 per story that does not have tasks. -5 encourages planning
for NOT updating actual and todo in rally every day. -5 encourages developers/qa to follow process. Historical actual data helps to determine how much efforts went on a particular module/feature/release etc.
for breaking a build. -10 encourages taking builds on local machine before check-in. encourages fixing flaky tests. encourages team members to respect each others valuable time.
for story spill over. Stars removed from story owners, story task owners. Associate leads and above get -5 per story that gets spilled over. -20 encourages planning, story mapping, slicing and completing the story in the given iteration and getting quicker feedback.
for leaving the story in prior iterations without getting those accepted. Stars removed from story task owners. -20 encourages dialog between product owners, managers and members and making sure that the work is complete.
Production Bug. Stars deducted from all the individuals involved in the story. Product owners, developers, qa. Based on managers discretion as not every bug has the same impact. -200 encourages code quality.

Simple way of gaining big stars -> If I am working on a story for a complete iteration (8 working days) and I check in code 3 times a day and I add two new test scenarios per check-in and I make sure that the story is complete and accepted within the iteration, it gives me 100 stars. Better sliced stories, following agile practices give me even better reward!

Reason Stars per check-in Code check in frequency Total
Weekly Stars
completing the story 10 10
getting the story accepted in same iteration 10 10
Total weekly Stars 20
Daily Stars
giving stable build 1 3 3
adding new test scenarios per check-in 2 3 6
updating rally 1 1
Total Daily Stars 10
Total Stars for 8 days i.e (10*8) 80
TOTAL STARS 100

Once you are done with your stories, you can earn additional stars by helping other members of the team in achieving their stories within the iteration.

The game has been running for the last two weeks and my team has gladly agreed to run a trial period of about a month to see how it works.

The next step is to put up LCD to show off the departmental leader board.

I have seen a lot of excitement around the game… Only time will tell how it works… Statistics to follow…

Gamifying Agile Adoption – An Experiment – Part 2

“ShipIt Day” – First Anniversary @ IDeaS

In August 2013, I came across a video by Dan Pink titled “RSA Animate – Drive: The surprising truth about what motivates us”. During this video I came across 3M’s “15 percent time”, Google’s “20 percent time” and Atlassian’s ShipIt Days. From Dan’s talk, I could instantly connect and relate to the three motivators… Autonomy (Our desire to be self-directed), Mastery (Our urge to get better and better at something that matters) and Purpose (our yearning to do what we do in the service of something larger than ourselves).

I have been getting a lot of Autonomy in my day to day work and that’s one of the primary reason why, even after completing 13 years at IDeaS, I tremendously love what I do and my energy levels are very high. I would say I was lucky enough… Not every-one gets that! That’s why I was thoroughly impressed with Atlassian’s ShipIt Day concept. It provides employees the Autonomy that they crave for.

I had to convince my fellow colleagues and the executives on the value that ShipIt Day could bring. I was very lucky to get tremendous support from Sanjay Nagalia, Rajiv Nashikkar, Steve Finck, Prafulla Girgaonkar, Prasad Kunte, Linda Hatfield and many others without whom it was not possible to organize ShipIt@IDeaS.

The first ShipIt was held on 10th and 11th October 2013. Time flies… It has been one full year and so far we have had 4 ShipIt Days.

Give Autonomy to your employees and see what wonders they can do! You should witness the energy and enthusiasm with which they stay back whole night and pursue their own ideas! Hats off to the participants.

Below are some stats.

Total No Of ideas received 164
No of ideas presented 137
No of distinct participants 91
No of Winning ideas 28
No of ideas absorbed by teams 6
No of ideas absorbed in product 2