Saturday, May 16, 2015

#NoEstimates Project Planning using Monte Carlo simulation videos


Last year InfoQ published my article #NoEstimates Project Planning Using Monte Carlo Simulation on how to plan probabilistically using Reference Class Forecasting and Monte Carlo simulation.

Probabilistic high-level plan forecasts the initial budget and also the range of the time frame for a project. We don’t plan in detail what is not absolutely necessary to plan. The short-term details, like the scheduling, are done based on the immediate needs and capabilities – and we create these schedules upon the execution of the high-level plan. When executing the high-level plan we have to keep focus on the project intent but we can never be certain which paths will offer the best chances of realizing it. We exploit uncertainty by making a series of small choices which open up further options then observe the effects of our actions and exploit unexpected successes.

I presented the topic at Lean Agile Scotland 2014 and at Lean Kanban UK 2014 conferences. The videos are here and here.

Saturday, April 04, 2015

I am nominated for the 2015 Brickell Key Award!

It was a huge surprise when I received the email saying I am nominated for the 2015 Brickell Key Award. The email reads "…nominated due to your exhaustive work in advancing the quality of data-driven planning and spending your time spreading that knowledge worldwide. You deserve it."

First what is the Brickell Key Award? As we can read here  "The Brickell Key Award highlights excellence in our community, honoring two people who have shown outstanding achievement, leadership and contribution to our community. The award is especially oriented toward highlighting people who are lesser known and worthy of greater exposure." I am “lesser known” indeed…but am I worthy of great exposure? Let’s check…

First what about “contribution to our community”? Indeed I have some contributions…for instance I am an Accredited Kanban trainer (AKT)...but I don't give many public classes...mostly private classes and of course I use Kanban Method in my own work...also three years ago I published David Anderson’s Kanban book in Bulgarian language…and I even spent eight months translating the first eight chapters myself… before I hired a professional translator who finished the rest of the book in 3 months…but on the other hand I failed to make the Bulgarian translation of the Kanban book a commercial success…which didn’t stop me to publish in Bulgarian for the first time ever two books by W. Edwards Deming and four books by Eli Goldratt…I know the Kanban community honors the two great management gurus and besides “The Goal” is quite successful commercially…unfortunately not as much as it should be…but it takes time an idea to stick with the public…which reminds me of the fact that last year I presented #NoEstimates Project Planning Using Monte Carlo Simulation at five community conferences…and at the Istanbul event I even managed to make the audience laugh…thanks God not at the math I presented…the math lots of people seems to like…but I am not sure if it is a success…well it helps me in my daily work…but on the other hand nobody ever came to tell me something like – your idea is sound but while using it on a daily basis I found a small gap in it and here is how it can be improved or better explained…I mean somebody to build on my work…like I did on the method for probabilistically planning a project - the one David Anderson presented at LKCE2011... indeed first I published Project Planning using Little’s Law... that article allowed me to become the first ever Bulgarian to present at a global Theory Of Constraints conference - TOCICO2014!!!... and I continued using and building on David’s probabilistic project planning method…like in my latest article Probabilistic project sizing using Randomized Branch Sampling (RBS) … which hopefully will have an impact…it has already earned me a presentation spot at LKNA15 in Miami…and…and that’s all I could recall about my contribution to the Kanban community…

So if the nomination is not about contribution then what about the “outstanding achievement”? Here comes the difficult part…because now I have to share what David Anderson wrote to me in 2013…actually all
kanbandev subscribers saw it back then…here it is - "I think the issue you are having, and this is incredible common, is that you are struggling to think and work probabilistically and continue to think deterministically. This is why paradigms are also called "mindsets." Quite literally your brain is wired to think and calculate deterministically. Changing is painful. It literally requires a rewiring of your brain."…you see…quite friendly indeed…but the best part is at the end…where he gave me some encouragement saying - "Struggle through the pain and embrace a new way of thinking. It will be worth it."

Indeed it was worth it.

Saturday, June 29, 2013

Ликвидността на Персонала обяснена чрез Теорията на Ограниченията

Въпреки, че много от хората практикуващи Канбан се притесняват за това как да управляват вариацията на единиците работа обработвани от системата, много по-голям източник на вариация се крие в хората, вършещи работата.
Тук идва понятието Ликвидност на Персонала  - където работата се възлага не най-добрите, а на средноквалифицираните хора, които едва могат да свършат работата.
Най-опитните и способни хора са оставени да плуват свободно като не се обвързват със конкретни задачи. Така че, ако има проблем, те са незабавно на разположение за да помогнат на средноквалифицираните  хора да се справят с него. В същото време, тъй като те не са ангажирани с конкретна единица работа, това че помагат на някого няма да доведе до забавяне на нещо друго.
От гледна точка на Теорията на Ограниченията прилагайки Ликвидността на Персонала ние изграждаме капацитетен буфер за покриване на специалните вариации в процеса на работа.
Това на практика означава, че ние следваме Петте фокусиращи стъпки, препоръчвани от Теорията на Ограниченията:
1) Ние идентифицирахме ограничението на системата - средноквалифицираните хора, които едва могат да свършат работата. Те обаче са достатъчно квалифицирани за да поемат естествената вариация в единиците работа.
2) Ние решихме как да как да максимизираме използването на ограничението - като средноквалифицираните хора работят със всички сили работа, която едва могат да свършат.
3) Ние подчинихме всичко останало на ограничението - най-способните хора не са тези, които вършат работата.
4) Ние увеличаваме капацитета на ограничението на система - чрез обучение на средноквалифицираните  хора. В същото време ние обучаваме и най-способните хора, за да се гарантира, че системното ограничение (в случая средноквалифицираните хора) няма да се премести другаде.
5) Връщаме се на стъпка 1, и не позволяваме инерцията да създаде ново ограничение на системата.

Staff Liquidity explained using TOC model

While many Kanban practitioners worry about how to manage the variability in the work items, the greater source of variability is to be found in the people doing the work.
Here comes the Staff Liquidity concept where we assign the work not to the best people but to the average people that could barely do it.
The most versatile and capable people are left to float around and should not be allocated to any other tasks. So if a problem comes up,  they are immediately available to address it. At the same time since they are not committed to a work item no work item will be late.
From TOC perspective using Staff Liquidity we build a capacity buffer ready to cover the special cause variations in the work process.
That in fact means we follow the Five Focusing Steps advocated by TOC:
1) We have identified the system constraint  - the average people that could barely do the work. They are able to absorb the common cause variation in the work items. 
2) We decided how to exploit the system constraint - we focus on keeping the constraint as busy as possible by giving the average people work they could barely do.
3) We subordinate everything else to the constraint - the most capable people are not the ones doing the work.
4) We elevate the system constraint - by training the average people that could barely do the work. At the same time we train the best people as well in order to ensure that the system constraint (in this case the average people) will not move.
5) We return to Step 1 and don't let inertia create a new system constraint.

Reference: Commitment

Saturday, June 22, 2013

Net Profit per Day

"To develop a systemic view, it is necessary to stop chasing local optimizations. The simplest way to do so is
to start focusing on flow; that in turn is most easily achieved by answering a simple question:


                        How much can we make per day?

The qualification “per day” changes the perspective quite radically. To be able to answer the question, more
information is needed; information that can be gained only by examining the system as a whole."
Tame the Flow, p.126

Friday, June 14, 2013

НОСЕТЕ СИ НОВИТЕ ДРЕХИ, МОМЧЕТА

НОСЕТЕ СИ НОВИТЕ ДРЕХИ, МОМЧЕТА
падаме, както ходим,
умираме, както спим.
Въпросите на тая планета
я решим,
я не решим…

Но не казвайте: утре ще бъдем красиви.
Не казвайте: утре ще бъдем щастливи.
Не казвайте: утре ще бъдем, ще бъдем…
Ще обичаме утре,
утре ще бъда любим.
Носете си новите дрехи, момчета,
падаме, както ходим,
умираме, както спим.

Не казвайте: утре ще почнем голямото,
днес да спечелим пари за прехраната.
Не казвайте: утре да бъдем честни,
днес тихичко
ще се проврем…
Носете си новите дрехи, момчета,
ходейки падаме,
сънувайки мрем.

Не казвайте: утре с вик на площада
ще кажа истината, после – на клада!
На клада, но утре. А днес потърпете,
днес се налага
да премълчим…
Носете си новите дрехи, момчета –
падаме, както ходим,
умираме, както спим!

—Стефан Цанев

Thursday, May 23, 2013

Creed by Steve Turner


Creed
by Steve Turner

We believe in Marxfreudanddarwin
We believe everything is OK
as long as you don't hurt anyone
to the best of your definition of "hurt",
and to the best of your definition of "knowledge".

We believe in sex before, during, and
after marriage.
We believe in the therapy of sin.
We believe that adultery is fun.
We believe that sodomy’s OK.
We believe that taboos are taboo.

We believe that everything's getting better
despite evidence to the contrary.
The evidence must be investigated
And you can prove anything with evidence.

We believe there's something in horoscopes,
UFO's and bent spoons.
Jesus was a good man just like Buddha,
Mohammed, and ourselves.
He was a good moral teacher though we think
His good morals were very bad.

We believe that all religions are basically the same-
at least the one that we read was.
They all believe in love and goodness.
They only differ on matters of creation,
sin, heaven, hell, God, and salvation.

We believe that after death comes the Nothing
Because when you ask the dead what happens
they say nothing.
If death is not the end, if the dead have lied, then its
compulsory heaven for all excepting perhaps
Hitler, Stalin, and Genghis Kahn

We believe in Masters and Johnson
What's selected is average.
What's average is normal.
What's normal is good.

We believe in total disarmament.
We believe there are direct links between warfare and
bloodshed.
Americans should beat their guns into tractors .
And the Russians would be sure to follow.

We believe that man is essentially good.
It's only his behavior that lets him down.
This is the fault of society.
Society is the fault of conditions.
Conditions are the fault of society.

We believe that each man must find the truth that
is right for him.
Reality will adapt accordingly.
The universe will readjust.
History will alter.

We believe that there is no absolute truth
excepting the truth that there is no absolute truth.

We believe in the rejection of creeds,
And the flowering of individual thought.

If chance be the Father of all flesh,
disaster is his rainbow in the sky
and when you hear:

"State of Emergency!"

"Sniper Kills Ten!"

"Troops on Rampage!"

"Whites go Looting!"

"Bomb Blasts School!"

It is but the sound of man
worshipping his maker.

Everyone has to play a part in leadership


"Everyone has to play a part in leadership.
"You get different types of leadership - some are purely by action and inspiration, others by organisation and more verbal."
Brendan Rodgers

Saturday, April 27, 2013

Risk Profile for a project


First let's define what is a risk is - according to ISO 31000, risk is the “effect of uncertainty on objectives” affecting the completion of a project. Uncertainty (or lack of certainty) is a state of being that involves a deficiency of information and leads to inadequate or incomplete knowledge or understanding. In the context of risk management, uncertainty exists whenever your knowledge or understanding of an event, consequence, or likelihood is inadequate or incomplete. 
We use a Risk profile for each work item that enters our Kanban system. In order to prepare the Risk Profile for the product we will have to analyse it first. If we know the work that needs to be done (B part of the matrix) we can start analysing for the C part of the matrix.
The uncertainty about nature of the demand or the amount and type of work is the source of the Business risk. There are three major cases:
1. The client knows exactly what needs to be done e.g. develop an algorithm for calculating Pythagoras' theorem. (B1)
2. The client knows what needs to be done but not exactly e.g. develop my site to be like Oxford University site but better! (B2)
3. The client has just a vague idea of what needs to be done e.g. develop an indoor positioning system using RFID tokens (B3)
The uncertainty about if our capability would match the demand is the source of the Capability risk. Again three major cases:
1. We have all the skills and knowledge required to do the job (C1)
2. We have almost all of skills and knowledge required to do the job (C2)
3. We have none of the skills and knowledge required to do the job (C3)

The C/B matrix represents the Risk Profile for the project we'll need to execute in order to deliver the product.

The worst case for us is the combination B3C3. We should never work on it if that is the case. We can safely make a delivery date commitment for B1C1, not that safely for B1C2. The most challenging but at the same time the most rewarding case is B3C2. One may say how come since we have almost all of the skills & knowledge (C2) but not all (C1)? First of all if the product is something new and never done before we could not be able to know beforehand the exact skills set needed. And second - it is more rewarding both for us and for the client if the product is something unique something never done before.
We are assigning a Risk profile to the project and not to the product. The reason behind is that one and the same product implemented by a different team will definitely end up with different lead time and budget. The project represents the unique combination of Product and Development team.
In order to simplify the quantification we will group the work items based on their Risk profiles.
Here is the new grouping:
Low Risk Profile - all B1C1, B2C1 work items
Medium Risk Profile - all B1C2, B2C2 work items
High Risk Profile - all B1C3, B2C3, B3C2, B3C3 work items

Risk profile quantification:
Shows variability in cycle time per work item
The numbers are unique per project