Showing posts with label #agile #scrum #kanban #team. Show all posts
Showing posts with label #agile #scrum #kanban #team. Show all posts

Tuesday, May 16, 2017

Goal seeking Retrospective

I spend lots of time thinking about my teams and how to effectively use retrospective tool for Dominating Don to Silent Sara. I like to start the retrospective with an ice breaker and follow lots of different style. Some worked very nice and other failed miserably. We also focus on action items at the end. Awesome right!!!!  .

After doing almost 500+ retrospectives, one thing I have learnt that having a goal always helps. I experimented one more thing, which seems to have worked better. 

We did "High Performing Tree" retrospective with a simple twist in the language. We start every sentence with "How might we" or "Sometimes I wish". Very quickly we started filling up our tree with really clear yet individual assessment about team.   

We went over each sticky note and created our own list of important traits. Mainly focusing on, "How we can come together and work as a unit?" and "What kind of group level feedback we would require to be a performing team." Our focus was to understand, "what kind of team we actually are "and "what kind of team we imagine to become". We came up with a small plan and  quick "performing traits" burn up for ourselves. 

This was a turning point for my team. Next retrospective was very focused towards those goals and stabilizing ourselves to meet them. We always tried updating our "performing traits" burn up at the end of retrospective. 

Hope this technique will help your team as well.  Try and let me know your feedback. 

Cheers!
Manisha


Monday, May 16, 2016

How to effectively switch pair when adapting Kanban?

Let me start with little background. My team believes in XP practices and follow them religiously. We also followed Scrum process and use to switch our pair at the end of sprint after sprint review. It was going all smooth till that one day, when we decided to ditch Scrum and adapt Kanban as our delivery model.

We thought we will change pair after each story but stumbled upon issues, since each pair was starting and finishing at different times. We struggled for a while and then came up one idea. We decided to switch the pairs every week and made one-person owner of the story.  Owner took the story with them while switching the pair.


Bingo! Our problem was solved for time being. 

Thanks
Manisha

Thursday, May 12, 2016

Lean To the Point Inception for enterprise

I am working for a big retail client and we follow an inception technique which is very lean and effective. The technique is definitely leveraging Eric Ries's Lean Startup and Jeff Patton User Story mapping fundamentals but has been tailored for enterprise need. This technique address few core questions:
  • How to ensure the team starts the project with a shared understanding and an effective plan?
  • How to understand the MVP and start an agile project as quickly as possible? 
This method is based on Paulo Caroli's book called "To The Point".  This technique has some obvious benefits:
  1. It focuses on validate hypothesis based project development - Build, Measure and Lean approach. 
  2. Team comes out of inception with a value associated to every feature.
  3. Team completes higher-level features in less than a week time for a 6 to 9 months long project.
  4. Saves the work/time of breaking down all the projects work in order to get an estimate for project's length/cost.
  5. Entire team get a holistic picture of the product 
  6. Release planning can be done very quickly based on the features
This is a technique to understand and plan for incremental delivery of MVPs. The technique organizes ideas and features in a model that seeks to understand the main purpose of project. It suggests some pre-defined steps.
  1. Describe the product vision
  2. Prioritize the business goal
  3. Describe the main users, their profiles and their needs
  4. Understand the main functionalities
  5. Detail perceptions of risk, effort and business value by functionality
  6. Describe the most important user journeys
  7. Create an incremental product enhancement plan, driven by MVP
  8. Estimate effort by sampling
  9. Calculate costs and specify dates and delivery schedule 
We consolidated above steps in 7 high level categories:
  • Create the product's Vision;
  • Define the product's Objectives;
  • Identify the product's Personas;
  • Discover the product's Features;
  • Associate features to Risk, Effort and Value - Review;
  • Plan the product's Releases;
  • Consolidate Time and Cost.
Lets discuss each step in details:

Project Vision
--------------------
Somewhere between the idea and the launching, the vision of the project helps team to understand the business value. In our situation project was pretty identified and had a clear goals. Hence I requested our Product Owners (POs) to come up with initial project vision and asked to field team’s questions. Book suggests involving entire team but I would suggest starting with PO if you are building a project, which has been well thought by PO. This saves lots of teams frustration, which we faces during initial adaptation phase of this technique. I would suggest you should engage your team if you are building a product whose scope has not been defined or loosely defined.  It definitely helps team in getting aligned around the product they're building, creating a clear vision of the path ahead. Ask team to think about product vision in below format.

For [final client],

whose [problem that needs to be solved],
the [name of the product]

is a [product category]

that [key-benefits, reason to buy it].
Different from [competition alternative],
our product [key-difference]


Project Objective
--------------------
Each team member must share what is his/her understanding of an objective for those who use the product, and the several points of view must be discussed in order to reach a consensus on what is really important. This activity helps raising and clearing these objectives.  I again started with PO first and then asked team members to shares theirs objective.  The main aim is to know where project is going, and what it aims to achieve, ensuring a good mix of technical and business objectives are captured.
Once the vision is defined then try group they by similarity and prioritize them collaboratively. To prioritize, answer this question: "If your company only has time and money for one more objective, which would it be?"


Once goals/objectives are captured, do the activity of understanding trade-offs. Trade-off is a trade in which you let go something in order to get another one you want more. A lean product reflects decisions of the team regarding trade-offs. The activity “Understanding trade-offs” helps building and recording a common understanding about trade-offs of the lean product. Many decisions and conversations are based on individual visions and premises between choices. Some examples: what is most valuable: security or usability? And what about performance and security? And usability and performance? This activity promotes an open and collaborative conversation on trade-offs. Clearer trade- offs avoid misunderstandings and help to make decisions quickly.  Below picture is taken from the book to show the outcome of the trade-offs.

 


Project Personas
------------------------
 To build right thing that will provide the most value, you need to keep in mind who is using your product, and what are their needs. A persona represents a user in the system, describing not only his role but also his specific needs, creating a realistic representation of users, helping the team to describe functionalities from the point of view of those who will interact with the final product.  Book suggests couple of ways to come up with them. We preferred answering below questions:
·      Who has a stake in our product?
·      What exactly do they need from our product?
     Once you have the list of personas, try answering below questions in groups:

What, I ____ (see / think / hear / say)?


Project Features
----------------------
Feature is the description of an action or interaction of a user with the product. For example: print invoice, see detailed statement, and invite facebook friends…
The description of a feature should be as simple as possible. The user is trying to do something. The product should have a feature for that. To discover features make your team think about below questions:

What the product needs to do or have in order to enable the Personas to achieve the Objectives?

In a big table or whiteboard, place the cards with Personas as rows and the cards with Objectives as columns. Then, starting from the most important Objective, brainstorm on what features should be built to achieve each Objective. This technique is more like Story Mapping, where you are mapping Objectives and Persona’s need and coming up with actions/features. I am not allowed to share my project real data, hence again copied from the book for reference.


Feature Review
---------------------
To plan the work and the releases, it's important to understand the levels of risk, effort and value in each feature identified by the team. This is again similar concept like story-mapping, focusing on specific target outcomes is the secret to prioritizing development work. This activity aims to discuss how the team feels according to the technical certainty and the business agreement for each feature.
Create a common canvas, a graphic, in which the axis X represents the technical certainty (how to do) and the axis Y represents the business agreement to the requirement (what to do).

Ask for a member of the team to read a feature out loud and put it on the canvas according to his/her understanding of it (technical certainty and business agreement). 
 Question if everyone in the team share the same opinion. Of somebody disagrees, the team must discuss the requirements and the technology involved in a way that an agreement is reached about the feature. Everything that is mentioned and that helps to achieve a better understanding must be noted and attached to the feature. The picture above shows features in post-its that were glued in green, yellow or pink index cards, indicating low, medium or high uncertainty levels, respectively. 
Repeat the exercise for each identified features.
Create one more canvas, which has Effort (the level of the work that needs to be done) and Value (what is the return or saving that it will bring) as their axis. Rank each Feature with the following options:
 
The activities Technical Certainty and Business Agreement and Effort and Business Value can and should be held together. In the first activity the feature gets a color. On the second activity, the feature gets two marks. The color represents the feature ́s uncertainty level: Red for a high level of uncertainty, Yellow for a medium level of uncertainty, and Green for a low level of uncertainty. The marks are about effort and business value, and vary on a scale of one, two or three times in comparison to each other; for example E, EE, and EEE. Such color and marks will help the team in subsequent activities to prioritize, estimate and plan.
Project Release Roadmap
----------------------------------
Book suggests mapping the User Journey but we moved to release planning after the above outcome. I would say, do what you feel right for your project.
Based on the feature ranking now it’s time to group features together. We focused on creating multiple slices, which has equal balance of risk, effort, and value. Our main focus was building features, which will prove our idea was worth building and we can learn something for future features. We definitely selected sea level features first. Also we tried to make sure each slice can be achieved in less than 3 months and they are almost equal. We focused on measurement pieces of the feature.  This is key exercise and requires lots energy and communication.

Project Budget
---------------------
We can’t move inch further in enterprise world without telling leadership, how much would it cost J. I did spend few days in Jira learning team’s working pattern by studying control charts and other reports across multiple projects. Based on my observation I created three big buckets. (Small, Medium and Large). We as a team agreed on a time range for each bucket. We start picking each slice and placed each feature into the big bucket. We only did this exercise for first two slices and left the rest of slices as is. Once we had rough timeline it was easy to put together budget for senior management for approval.
We did couple of mini-inceptions with external teams i.e. Risk/Infrastructure/Compliance/Security/Other dependent team etc. and adjusted the notes at feature level based on their feedback. We came up with multiple spikes for our iteration zero at the end of inception close and roadmap for project.

Let me know your feedback.

Thanks
Manisha 

Sunday, April 3, 2016

Custom Control Charts for deep diving into few fun analysis

I wanted to learn, what 1, 2 or 4 Story Points (SP) means in our system. What better tool than Control Chart to gain knowledge about cycle time around Story Points?

Here are the steps for creating custom control charts:

1) Select your board whose data needs to be analyzed. Click on Board button on the top right corner. Select configuration button underneath.

2) Select the Quick Filters option from the left hand Configuration menu.
3)  Add the filters for which you would like to analyze the data. I want to compare the behavior of different Story Points in our system. Hence added custom filters for each available story points.

4) Select your project from the Projects menu and click on Reports from the left hand side menu.

5) Choose the "Control Charts"
6) Choose the custom criterias for your report: i.e.  Quick Filter (which you added above),  the time period (for which you need to capture the data) and the status. Feel free to tweak anything which makes sense for you. It's all depends upon what are you willing to comprehend from the data.

7) Observe the change in mean and stand deviation. Also chart has multiple data points for one to analyze.

I love control chart. It gives me insight into, how my team is performing. I love comparing theie performance during specific process change or during some experiment I am trying to run. This is very powerful tool and gives lots of insight into the system.

Enjoy deep diving
Manisha

Friday, March 25, 2016

Should we kill Story Points?

I would like to start with a small conversation:

Manisha: Nilanjan, do you like pizza?
Nilanjan: Manisha, you should not eat Pizza because you have very high cholesterol and you have high blood pressure as well.
Manisha: Nilanjan I extremely sorry but I asked, do you like Pizza. I know I can't have pizza. I just want to know your opinion about Pizza.
Nilanjan: OH! No, I don't like Pizza.
Manisha: Thanks for the help.

I am having, Nilanjan syndrome with most of the people, I asked,  "Should we kill Story Points?". i.e.

Manisha: Mike, what do you think about killing story points?
Mike: OH! I share an entirely different view point with story point. We are not ready because we don't know how to write story and don't know how to break stories. 
Manisha: I am aware of our situation and very well educated about the preparation needed, before killing the story points. I just want to know if you prefer having story points or not. 

This problem is everywhere. I asked more than 7 people the same question and everyone of them start with an hour long lecture. I hate to admit but people were missing the entire point. I believe, I did enough of my ranting. Lets get to actual point. 

In my mind "Story Points" are the intended to help us in estimation but we failed because of below reasons:
  • We started getting in "busy-ness accounting" mode - Where our focus is burn downs and velocity vs. Value of stories.
  • We start comparing teams by Story Points. It is like comparing apples to oranges. Because of that teams started dropping good technical practices like TTD or refactoring to meet their estimates.
  • We started holding people accountable for their story points and forces them to spend more and more time to come up with accurate story points. This end up with lots of waste.
  • I  am not going into #noestimation aisle at all.  As "Tom Demarco" said in 1982, "The most optimistic prediction has a non-zero probability of coming True". But we are still trying to make it work, is a proof that we can't do it without aligning all the stars in one line. 
I would say, Story Points are not the root issue but people are. Managers/Coaches/Scrum Masters are misusing them and giving them wrong purpose. But a team needs lot of practice and course correction to become better at using Story Points. Our ultimate goal is to enable team to be able to break user stories into equal sizes to be to focus on throughput more easily.  

We can do that by Story Points or start by teaching them, how to break the stories in equal sizes without one using Story Points?.  In my mind, with both approaches, we would like to reach the same point. I would prefer the second one vs. first.

So, coming back to my initial question, should we kill Story Points :D? I would say, Yes! No Story Points would be the ultimate reach for any high performing and continuously improving agile teams. I am confident there will never be one right way to be agile about estimation and planning. Do whatever make sense for your team. But remember, agile is a vehicle we use to reach the destination. Our destination is our product and the value, which we deliver to our customers. Anything that takes our focus out of value should be challenged and questioned.

Next blog I will share how to transform teams from Story Points to No Story Points.

Spasiba!
Manisha