Lean Coffee Braga Community!

After the Lean Coffee Porto continued success, today’s post is related with the Lean Coffee Braga.

logo-color-braga

This happened yesterday in the beautiful city of Braga at Primavera Software.

If you asked me some time ago “Did you believed that in a short period of time would exist the Lean Coffee Porto and 3 months later the Lean Coffee Braga would start”, I would say no. But I was wrong!

They are real, they are a big success!

Not just due to the Co-Founders but to everyone involved. That, after a day working day, they are still motivated to attend, share experiences and learn.

I’m a truly believer that together we can grow more and faster.

For more details please check the bellow links:

Many thanks to everyone for making this real!

Does the Change Agent Networks work? In my case the Agile Champions…

Well… I just started to implement this model in the company that I’m currently working and my first feedback is positive. But only time will tell if it was a success or not 😉

Lets go back in time to understand why we are trying this model.

As you know we live in a world that is made of different people, mentalities and cultures. Due to this, we need to keep improving and find new approaches and models to help implement changes.

After working for a period of time with different environments and cultures, I’ve realised that some times it’s really hard to help people to change even when that change is beneficial to them, others and the business.

Some time has passed, conversations and discussions took place with different people, but, one person in particular asked why shouldn’t we try to motivate and empower people to be change agents?

Why not try this approach?

From that moment I started to plant this idea, like a seed, in everyone’s mind. So far so good!

Coincidently, this week I was reading a book that elaborated on this same idea and I’ve summarised their thoughts on the following quote:

“You will need executives, managers and staff to act as change agents. That’s because people are more likely to listen to, and work with, their peers rather than external consultants or dedicated change agents.

People tend to feel threatened or feel that change is being pushed on them if they don’t see their peers jumping in first. This approach helps the change go viral, and helps build the momentum.

Here are some tips for expanding our change agent team:

  • Get at least one person from each business area that is affected by the change.
  • Set strong expectations with the early adopters that being part of the change team is extra work.
  • Make becoming a member of the change agent network exclusive in order to attract the right people. I’ve always wanted to try some American Idol style audition, but that has been to crazy of an idea for the organisations I’ve worked in!
  • Agree on rotating the type of change you’re implementing.

Most of all, give early adopters support, training, and some autonomy. Notice I said some autonomy. At this point you want the people who are motivated to help execute the change, but be aware, thy may not have the necessary skills you, as a change agent, have.

Change goes viral when people start helping other people adjust.

These people, who weren’t part of the core change team, starting taking ownership of roadblocks all the teams were facing. They would provide updates to the whole departement during our monthly retrospectivs and the change team supported their efforts.” [1]

As a last thought I will be sharing with you (when possible) all the experiences, situations, issues, successes about this path that I’m taking so we all can learn together.

References:

[1] Jason Little | Lean Change Management

Is trusting relationship and symbiosis a myth in Self-Organising teams?

As you know one of the Scrum Principles is Self-Organising Teams. This means that, the teams should include all required roles to bring the product or feature to life.  Also, all team members from the Scum Team must form a close and trusting relationship, a symbiosis in order to allow them to work together as peers. Shouldn’t exist us and them but only us.

Ir order to create this relationship and symbiosis they need pass through the four-stage model as described by Bruce Tuckman’s: [1]

  • Forming – Stage 1

In this stage, most team members are positive and polite. Some are anxious, as they haven’t fully understood what work the team will do. Others are simply excited about the task ahead.

As leader, you play a dominant role at this stage, because team members’ roles and responsibilities aren’t clear.

This stage can last for some time, as people start to work together, and as they make an effort to get to know their new colleagues.

  • Storming – Stage 2

Next, the team moves into the storming phase, where people start to push against the boundaries established in the forming stage. This is the stage where many teams fail.

Storming often starts where there is a conflict between team members’ natural working styles. People may work in different ways for all sorts of reasons, but if differing working styles cause unforeseen problems, they may become frustrated.

Storming can also happen in other situations. For example, team members may challenge your authority, or jockey for position as their roles are clarified. Or, if you haven’t defined clearly how the team will work, people may feel overwhelmed by their workload, or they could be uncomfortable with the approach you’re using.

Some may question the worth of the team’s goal, and they may resist taking on tasks.

Team members who stick with the task at hand may experience stress, particularly as they don’t have the support of established processes, or strong relationships with their colleagues.

  • Norming – Stage 3

Gradually, the team moves into the norming stage. This is when people start to resolve their differences, appreciate colleagues’ strengths, and respect your authority as a leader.

Now that your team members know one-another better, they may socialize together, and they are able to ask each other for help and provide constructive feedback. People develop a stronger commitment to the team goal, and you start to see good progress towards it.

There is often a prolonged overlap between storming and norming, because, as new tasks come up, the team may lapse back into behaviour from the storming stage.

  • Performing – Stage 4

The team reaches the performing stage when hard work leads, without friction, to the achievement of the team’s goal. The structures and processes that you have set up support this well.

As leader, you can delegate much of your work, and you can concentrate on developing team members.

It feels easy to be part of the team at this stage, and people who join or leave won’t disrupt performance.

This is why we should minimize any teams change since Its takes time to become a true team – a tightly unit with members who trust and support each other and who work together effectively.

Changing teams compositions makes the team-building process (four-stage model) all over again and in the end self-organisation suffer.

References:

[1] Mind Tools Club | Forming, Storming, Norming, and Performing, Understanding the Stages of Team Formation

[2] Businessballs | Tuckman Forming, Storming, Norming, Performing model

AGILE ADRIA CONFERENCE 2015 :: TALKS “How” to go beyond Scrum and Agile Performance Metrics

Was with great pleasure that I found out this yesterday.

“It is a great pleasure for me to tell you that your talk proposal for Agile Adria 2015 was accepted. We’re looking forward to meet you in April.”

I’m really happy to be doing these two talks described bellow:

Also, share and learn with everyone!

Nevertheless, now is time to start working and find sponsors for the trip 😉

Should we establish Business Value per each Work item?

One of my previous posts was related with Agile Perfomance Indicators and their use in order to understand teams and business behaviour.

From that moment, I didn’t stop thinking how could we improve one of these performance indicators. In other words the “Delivered Work Items”.

As everyone knows, when we deliver a work item we are delivering or should be delivering value. Nevertheless, I do agree this is a complex and very subjective metric to try to come up with.

Screen Shot 2015-02-06 at 23.39.15

After having surfed a bit the web I found an interesting article on this topic. Why not establish Business Value Points per each work item?

Roman Pichler in the book Agile Product Management with Scrum says:

“Value is a common prioritisation prioritisation factor. We certanly want to deliver the most value items first.” [1]

Well.. I do believe that, with this approach the Product Owners have a better way to understand each work item and their priority to be implemented by the teams.

Nevertheless, after discussing this subject and article I received the following question:

“What happens when a team starts to get consistently work items that have low points? Do they get demotivated?”

My thoughts and my answer to this question was:

A team shouldn’t just receive US with low Business Value Points. What can we do to change that?

Also, should we implement a feature that has low business value, or should we pick up features with more business value?

What are your thoughts about this subject and approach?

References:

[1] Roman Pichler | Agile Product Management with Scrum: Creating Products That Customers Love 

Jez Humble on Valuable Software

I would like to share with you this amazing talk.

Here Jez Humble – co-author of the book ‘Continuous Delivery’ – speak on how to focus on producing valuable software: designing for failure; culture change; the tyranny and irrelevance of ‘on time, on budget, in scope’; and daily practices.

Is the river the flow and the boats the user stories?

Well, during the Kanban Coaching Exchange Meetup today, Tom Sedge shared this thought “The river is the flow and the boats are the user stories”.
In my opinion I agree whit this since smaller user stories are faster to understand, implement and deliver by the team.
This also means that, big user stories are like big boats that can have hidden complexity, are harder to implement and can become the bottleneck for the flow/sprint that is been played by the team.

What do you think about this?

Agile Performance Metrics… Are they useful or not? Which should we use?

Today’s post is related with a hot and controversial topic that is the Agile Performance Metrics.

Why? Well, as you might be aware we have different opinions from from different stakeholders on what concerns Agile Performance Metrics.

  • Why should we use?
  • What value they bring?
  • How should be applied?

For some time all the discussions that I had regarding this subject I’ve encountered people with different opinions as described bellow:

  • We shouldn’t use the performance metrics because they don’t bring any value.
  • We should’t use the performance metrics because stakeholders and management will start to compare teams.
  • We shouldn’t use performance metrics because we don’t have indicators that shows the real work of the teams.
  • Etc.

Nevertheless, I also encountered positive opinions as described bellow:

  • They are great since we can understand what is going on and tackle issues as soon as soon as possible.
  • We can understand the business and teams behaviour.
  • The information is already there and this will allow us to have a clear view of what is going on.
  • We an be assertive when we need to take decisions since we have detailed information.
  • Etc.

Textbook definition tell us that “A performance metric is that which determines an organization’s behavior and performance. Performance metrics measure an organization’s activities and performance. It should support a range of stakeholder needs from customers, stakeholders to employees.”. [1]

Saying this, my opinion is that the primary objective is to provide the teams and the business with metrics that enable them to track their performance over time against its previous performance at any time.

Why should we use it?

  • We should use it since this help us to measure the impact of our initiatives.
  • For example, focusing on quality, we expect to see a drop in defects and if not, then our strategy isn’t working and we need to try something else.
  • Again emphasising that this is not for comparing teams but it’s to look at our wider initiatives, checking if they are having the desired effect.
  • Nevertheless, this will allow us to achieve our common business objectives by taking actions at the correct time and increase the performance for all our teams.

Many people believe that from an Agile perspective we should only use velocity as metric. Meaning that, with this metric they can understand the business and team behaviours.

Well… I agree that velocity is a good metric, but I also believe that in order to keep improving we should implement new indicators to have a more accurate information regarding behaviours.

Saying this, in my opinion we should use the described bellow:

  • Delivered Work Items

As you are aware one of the Agile Principles is continuous delivery of valuable software. [2]

For that we have the acronym INVEST originated in an article by Bill Wake in 2003. This helps to remember a widely accepted set of criteria, or checklist, to assess the quality of a user story. If the story fails to meet one of these criteria, the team may want to reword it, or even consider a rewrite (which often translates into physically tearing up the old story card and writing a new one). [3]

A good user story should be:

  • “I” ndependent (of all others)
  • “N” egotiable (not a specific contract for features)
  • “V” aluable (or vertical)
  • “E” stimable (to a good approximation)
  • “S” mall (so as to fit within an iteration)
  • “T” estable (in principle, even if there isn’t a test for it yet)

Saying this, in my opinion Delivered Work items measures how much work a team delivers over time, based on the number of work items accepted per team member.

More work items delivered means more business value has been delivered or more technical debt has been reduced.

Never forgetting that points are a relative measure for each team. Each Item accepted applies through the DOD.

What does this implicate?

We want to give value to smaller work items (INVEST – Independent, Negotiable, Valuable, Estimable, Small, Testable).

Screen Shot 2015-02-07 at 00.07.53

Throughput is the number of items completed over a period of time per full-time person on the team. In this variant it’s the number of work items moving into the schedule state “Accepted” minus the number of work items moving out of “Accepted” within the timebox, divided by the number of full-time equivalents.

Why this is important?

Throughput shows how well work is moving across the board to accepted. This can be adversely affected if work items are frequently blocked or inconsistently sized.

  • Consistency of Delivered Work Items

Consistency of Delivered Work Items measures how consistent a team is at producing work over time. High consistency means stakeholders can confidently plan when work will be delivered.

This is also an indication that teams are better at estimating their work and flowing consistently-sized increments of value.

Consistency score is a percentile ranking derived from a three month window of a team’s Variability of Throughput. Predictability can also be configured to include variability of velocity or the standard deviation of time in-progress.

What does this implicate?

Variability of throughput is computed by finding the average (mean) and standard deviation of throughput for 3 month time periods. The coefficient of variance is the standard deviation divided by the mean.

Screen Shot 2015-02-07 at 00.09.13

For the Throughput StdDev and Throughput Mean we could use the last 3 months.

Why is this Important?

Consistency is critical to accurately planning delivery dates and budgeting.

The variability of Delivered Work Items shows if your team delivers the same amount of work each month. This can be adversely affected if Work Items are frequently blocked or inconsistently sized.

  • Work Items Lead Time

Work Items Lead Time measures the ability of a team to deliver functionality soon after it’s started. 

High Lead Time can dramatically impact the ability of businesses to react to changing markets and customer needs.

What does this implicate?

The Lead Time score is a ranking calculated by the amount of time required for a team to take a single story or defect from start to finish.

Screen Shot 2015-02-07 at 00.10.14

P50 is the Median (Sort and pick the middle for those who didn’t go to school)

Note: It’s Median and not Average because there are usual irregularities that would negatively affect the average (for example, a single user story that took 2 weeks to complete).

Why is this Important?

Low Lead Time is central to Agile. Teams that are more responsive have faster time to market, and react more quickly to customer feedback.

Time in Process is the number of business days a typical user story is in the “In-progress” or “Completed” column. Similar to lead time, cycle time, and time to market.

Accurate planning and budgeting requires work items that are estimated to be short, testable and easily deliverable. Time in Process shows how long the median of Work Items are in process.

  • Quality

Quality measures how disciplined a team is in preventing defects.

What does this implicate?

Screen Shot 2015-02-07 at 00.10.54

All defects should be assign to each team accordantly with their Product/Component ownership and User Story. Worst case scenario in case that we are unable to do that, I believe that its more fare if we count all defects from the Product/Component and then we split trough all the teams working in the Product/Component (this means that every team inside the same Product has the same Quality).

How could combine these four metrics in order to understand the global behaviour?

Please find below two exemples on how could we combine the four metrics in order to get a simple, tranparent and quick view that can be read by all stakeholders including Management.

  • Performance Chart (Higher is better)

Performance Chart

This chart provides a way for business and teams to track their performance over time against its previous performance.

  • Overall Chart (Higher is better)

In the Overall Chart, each metric (described below) weighs 25% of the performance, totalling 100%. Once more provides a way for business and teams to track their performance over time against its previous performance.

Overall Performance Chart

Its important to keep in mind that each metric should be calculated at each month. This way we can avoid any issue regarding different Sprint start and end time by any team.

Why is this important?

Sustainable delivery of value requires a consistently high level of Quality for all work delivered to production.

References:

[1] Wikipedia | Performance Metric

[2] Agile Manifesto | Principles behind the Agile Manifesto

[3] Agile Alliance | Invest

Lean Coffee Porto Community!

Today’s post is related with the beginning of Lean Coffee Porto Community.

logo-color

The story begins 3 months ago, when a group of people with the same objectives and dreams started to discuss what they could do to share knowledge and create discussions of ideas regarding different areas like Agile, Lean and Tech.

Well, we discovered that more people had the same objective and dream, but in different parts of the world.

How? With the creation of the LeannCoffee.org

Just to give you more context, Lean Coffee is a non-profit world community whose main objective is the development, sharing and discussion of ideas among stakeholders in different areas of knowledge within the Technological, Agile and Lean themes.

As a result from our discussions, we agree to create Lean Coffee Porto and voluntarily organize (in cooperation with LeanCoffee.org and and Tuga) meetups and events in order to drive Portugal into a world reference in Agile, Lean and Technology.

Saying this, Lean Coffee Porto is already in-progress and we have our first meetup schedule for 14th of January 2015.

Join us at UPTEC for our first event and share your experience and knowledge! We will follow the Lean Coffee format presented at http://leancoffee.org/

Register at Eventbrite.

values-color

Nevertheless, I would like to share with you that Lean Coffee Braga is also already in-progress. Soon, we will be sharing further details regarding the first meetup.

“How” to go beyond Scrum and use Lean in Software Development Teams?

Once more I would like to share my thoughts/opinion with everyone about this new subject – “How” to go beyond Scrum and use Lean in Software Development Teams?

In order to give you some context, I will start by explaining ShuHaRi concept, as well who introduced this concept in Software Development.

ShuHaRi as some of you might know is a Japanese martial art concept, this concept describes the different stages of learning to mastery. [1]

Aikido Master Endō Seishirō Shihan stated that “It is known that, when we learn or train in something, we pass through the stages of Shu, Ha, and Ri.” [1]

shu-ha-ri

Where:

  • Stage of Shu, we repeat the forms and discipline ourselves so that our bodies absorb the forms that our forebears created. We remain faithful to these forms with no deviation. [2]
  • Stage of Ha, once we have disciplined ourselves to acquire the forms and movements, we make innovations. In this process the forms may be broken and discarded. [2]
  • Stage of Ri, is the last stage where we completely depart from the forms, open the door to creative technique, and arrive in a place where we act in accordance with what our heart/mind desires, unhindered while not overstepping laws. [2]

But who introduced this concept in Software Development?

This learning technique and methodology in software development was introduced by Alister Cockburn.

His idea is that every person go through the three ShuHaRi stages in order to obtain knowledge.

Meaning that:

  • In the Shu stage since it’s the first one, the student follows the teachings of one master precisely. He concentrates on how to do the task, without worrying too much about the underlying theory. If there are multiple variations on how to do the task, he concentrates on just the one way his master teaches him.
  • Next stage is Ha, at this point the student begins to branch out. With the basic practices working, he now starts to learn the underlying principles and theory behind the technique. He also starts learning from other masters and integrates that learning into his practice.
  • Finally in the Ri stage, Now the student isn’t learning from other people, but from his own practice. He creates his own approaches and adapts what he’s learned to his own particular circumstances.

The fundamental idea here is that when teaching a concept, you have to tailor the style of teaching to where the learner is in their understanding and that progression follows a common pattern. Early stages of learning focus on concrete steps to imitate, the focus then shifts to understanding principles and finally into self-directed innovation.

In my opinion it’s very important to understand the ShuHaRi concept and technic before anything, because we can understand the variation of do agile or being agile by understanding first the level of agile and lean knowledge. 

So, how should everyone see and believe in these eleven principles after blending with Lean. Well in my opinion I truly believe that should be like this:

  • Satisfy the customer… -> Delight the customer.
  • Welcome change… -> Seek change.
  • Deliver frequently… -> Deliver continuously
  • Work as a team… -> Live as a team
  • Talk, face to face… -> Talk, face to face & heart to Heart
  • Mesure working product… -> Measure value delivered
  • Maintain pace… -> Maintain pace and rhythm
  • Exceed at quality… -> Exceed at quality and get stuff done
  • Keep it simple… -> Keep it simple stupid
  • Envolve Team… -> Envolve everyone
  • Reflect regularly… -> Reflect continuously 

Quoting Voltaire “Common sense is not so common.”.

Saying this, I’ve been taking a shot on what it would take to “How” to go beyond Scrum and use Lean in Software Development Teams. In order words how we can learn, apply and practice Lean Principles to what we currently do well using Agile Scrum in Software development Teams trough the different stages of ShuHaRi in order to keep improving.

  • First stage Shu:
    • In order to start the Lean teaching/coaching, we need to have the team in a high maturity level (Ha stage in what Agile Scum regards). This will avoid any confusion and issues with the team mind set regarding what they currently do (how and why).
    • Next step is teach and coach them on what Lean concerns. Explain what is Lean, what are the principles, techniques and why everyone should be. We can achive this by trainings and workshops.
    • Now is the moment were we help them to achieve some conclusions on what they can do to keep improving. We can review what they already do using the Value Stream Map technic (Development, Testing, Scrum Ceremonies, Communication, Process,etc.) in order to raise performance by achieving more results, with less resources,  by the continuous and relentless elimination of activities (waste) that do not add value to the service or product. Its important to make them understand that Lean applies to any organisation and follows the pursuit of perfection, thus is a never-ending activity.
    • Nevertheless, during this stage we need to make them understand that this a critical period were they need to follow and practice each point without any variation. Also, that during this time they will have all the support to help them growth in maturity and knowledge.
    • Why keep the team for a period of time in this stage? Tin order to answerer that I will quote Leonardo da Vinci,  “Simplicity is the ultimate sophistication” so lets stick to this for the time being.
  • Second stage Ha:
    • In this stage they already follow the principles, meaning that we can start stepping back and give them space to be Lean. This means that they are using and combining the Agile Scrum and Lean Principles by themselves. This will empower them to transform the principles in values to follow. Act as self-organising that they are. Nevertheless, we will keep observation and coaching when its needed.
  • Last stage Ri:
    • This is the final stage and they are already confident and with maturity to follow the path by them selfs. For me this a great achievement because as we speak they don’t see the principles as principles but as values and their believe in them is high. This is the moment that they pass from students to masters. Meaning that they will start inspiring others teams , converting them to go beyond Scrum and use Lean.

After this moment they will act as master like you in order to start converting a full organisation. Thus, we need the managers support in other to achieve this faster than was expected.

I truly believe that this is the best way to change (Convert a full) Organisation.

References:

[1] Wikipedia | ShuHaRi

[2] Aiki News | An Interview with Endô Seishirô Shihan

Alistair Cockburn | Agile Software Development