August 26, 2012

How to solve it?

Summary of G.Polya's method for problem solving

UNDERSTANDING THE PROBLEM
First. You have to understand the problem. What is the unknown? What are the data? What is the condition? Is it possible to satisfy the condition? Is the condition sufficient to determine the unknown? Or is it insufficient? Or redundant? Or contradictory? Draw a figure. Introduce suitable notation. Separate the various parts of the condition. Can you write them down?

DEVISING A PLAN
Second. Find the connection between the data and the unknown. You may be obliged to consider auxiliary problems if an immediate connection cannot be found. You should obtain eventually a plan of the solution. Have you seen it before? Or have you seen the same problem in a slightly different form? Do you know a related problem? Do you know a theorem that could be useful? Look at the unknown! And try to think of a familiar problem having the same or a similar unknown. Here is a problem related to yours and solved before. Could you use it? Could you use its result? Could you use its method? Should you introduce some auxiliary element in order to make its use possible?
Could you restate the problem? Could you restate it still differently? Go back to definitions. If you cannot solve the proposed problem try to solve first some related problem. Could you imagine a more accessible related problem? A more general problem? A more special problem? An analogous problem? Could you solve a part of the problem? Keep only a part of the condition, drop the other part; how far is the unknown then determined, how can it vary? Could you derive something useful from the data? Could you think of other data appropriate to determine the unknown? Could you change the unknown or data, or both if necessary, so that the new unknown and the new data are nearer to each other? Did you use all the data? Did you use the whole condition? Have you taken into account all essential notions involved in the problem?

CARRYING OUT THE PLAN
Third. Carry out your plan. Carrying out your plan of the solution, check each step. Can you see clearly that the step is correct? Can you prove that it is correct?

LOOKING BACK
Fourth. Examine the solution obtained. Can you check the result? Can you check the argument? Can you derive the solution differently? Can you see it at a glance? Can you use the result, or the method, for some other problem?

The Phoenix Checklist

This is an effective checklist for approaching a problem; I am not sure where I picked this up from

The Problem

Why is it necessary to solve the problem?
What benefits would be received by solving the problem?
What is the unknown?
What is it you don't yet understand?
What is the information you have?
What isn't the problem?
Is the information sufficient? Or is it insufficient? Or redundant? Or contradictory?
Where are the boundaries of the problem? Can you separate the various parts of the problem? Can you write them down? What are the relationships of the parts of the problem?
What are the constants (things that can't be changed) of the problem?
Have you seen this problem before?
Have you seen this problem in a slightly different form?
Do you know a related problem?
Try to think of a familiar problem having the same or a similar unknown?
Suppose you find a problem related to yours that has already been solved. Can you use it? Can you use its method?
Can you restate your problem? How many different ways can you restate it? More general? More specific? Can the rules be changed?
What are the best, worst, and most probable cases you can imagine?


The Plan

Can you solve the whole problem? Part of the problem?
What would you like the resolution to be? Can you picture it?
How much of the unknown can you determine?
Can you derive something useful from the information you have?
Have you used all the information?
Have you taken into account all essential notions in the problem?
Can you separate the steps in the problem-solving process? Can you determine the correctness of each step?
What creative thinking techniques can use to generate ideas? How many different techniques?
Can you see the result? How many different kinds of results can you see?
How many different ways have you tried to solve the problem?
Can you intuit the problem? Can you check the result?
What should be done? How should it be done?
Where should it be done?
When should it be done?
Who should do it?
What you need to do at this time?
Who will be responsible for what?
Can you use this problem to solve some other problem?
What is the unique set of qualities that makes this problem different from another?
What milestones can best mark your progress?
How will you know when you are successful?
 

August 24, 2012

Is CMMI still relevant?

Not Any more, well at-least not as relevant as it was a decade or two back

Why do I think so? 

Fundamentally, any innovation or improvement (be it product or process), is envisioned and adapted, to solve an existing problem or exploring new opportunities. So the founding fathers of CMMI were surely trying to solve a problem that was prevalent those days.

So what problem did they solve?

In the Late 70’s & early 80’s Software Development projects spanned multiple years and huge programs were split to multiple projects and sub-contracted to multiple vendors.  The enormous size and complexity of the tasks resulted in lot of wastage of $$$ due to delayed and cancelled projects.  (Read: Mythical Man-Month).  To arrest this problem, the US Government, Industry and Academics got together and created a process model which would help Assess the process maturity of the contracted organizations, thus improving the predictability and increase the confidence towards meeting committed Schedule & Quality. Of course this evolved over a period of 6 years, between 1985 to 1991 undergoing multiple iterations. (for a brief on the history of CMMI see:  “A history of the Capability Maturity Model” by Mark C. Paulk). Subsequently, It became the de-facto Assessment of Organizational Capability & Maturity at delivering software to customers on Time & with Quality.

So why is not relevant anymore?

I would argue on three grounds

a) The Problem that CMM intended to solve does not exist anymore. Today’s projects do not span such durations, and our confidence levels have significantly improved. (Compared to early 90’s) .

b) In economic terms the marginal value that CMMI Certification provided to a Organization, (against an org. that is not certified) was significantly higher in 90’s and it is continually reducing. (Law of diminishing returns) .

c) Today’s problems are of completely different nature and complexity, and our Processes needs to be assessed for capability to meet today’s challenges.

So what are today’s Problems?

The rate of change in Technology, Consumer preferences and Market is exponentially higher than what it was 2 decades back.  Organizations are now scrambling to be adaptive to these changes & exploit the market and existing resources, without losing focus on Innovations. Hence companies today require having Adaptive & flexible processes.  The processes themselves should help support maximizing value to customers while improving continuously.  They should support and nurture Innovations to explore new market opportunities. 

Any assessment of Organizational Capability or Maturity should assess their ability to be Innovative and operate effectively in an environment of constant flux while staying profitable. 

October 1, 2010

The toad and the hot water

Various biological studies have shown that if a toad is placed in a container along with water from his own pond, he will remain there, utterly still, while the water is heated, even when the water reaches boiling point. The toad does not react to the gradual increase in temperature and dies when the water boils. Fat and happy.

On the other hand, if a toad is thrown into that container when the water is already boiling, he will jump straight out again, scalded, but alive!

Sometimes we behave like the boiled toads. We do not notice changes. We think that everything is fine and that anything bad in our lives will simply go away - that it's just a matter of time. We are close to death, but still we sit, unchanging and apathetic, while the water around us gets hotter by the minute. We end up dying, fat and happy, without having noticed the changes going on around us.

Boiled toads do not understand that, as well as being efficient (doing things right), they need to be effective (doing the right things). And for this to happen, there must be continual growth, with room for dialogue and clear communication, room to share and to plan and to build an adult relationship. The biggest challenge lies in having the humility to respect someone else's views.

There are, however, boiled toads who still believe that the most important thing is obedience, not competence: those who can, lead, but those with any sense, obey. And where does this leave real life?

It is far better to emerge from a situation slightly scalded, but still alive and ready to act.

Copied From one of Paulo Coelho’s books

September 28, 2010

LEAN Behaviors

We keep talking about culture change when we refer to lean. In fact it's an attitude change.

I call it Lean Behavior.

 

Here are some differences in attitude between the Traditional thinking and lean thinking. Lean thinking is very optimistic. It engages people fully. They feel appreciated and trusted. Inner resources surface and motivation is strong.  They keep looking even more fervently how to get rid of waste that eats away at their wealth.

 

We’ve never done it before _____ We’ll be the pioneers

It’s too complicated ___ Let’s look at it from a different angle

We don’t have the resources ___ Necessity is the Mother of Invention

It will never work ______ Let’s give it a try

There-s not enough time _____ We’ll reevaluate our priorities

We already tried it _______ We learned from the experience

There’s no way it will work _____ We will make it work

It’s a waste of time ______ Think of the possibilities

It’s of waste of money _______ The investment will be worth it

We don’t have the expertise _______ We’ll benchmark those that do

We can’t compete ________ We’ll get a jump on the competition

Our vendors won’t go for it ____ Let’s show them the opportunities

It’s good enough ________ There’s always room for improvement

We don’t have the money __________ Can we afford not to?

We’re understaffed _____________ We are a lean machine

We don’t have the room _______ We better organize our space

It will never fly __________ We’ll never know until we try

We don’t have the equipment ______ Can the equipment be rented?

It’s not going to be any better ______ We’ll try it one more time

No one communicates _________ Let’s open the channels

Isn’t it time to go home? _____ Days go so quickly around here!

I don’t have any idea _______ I’ll come up with some alternatives

Let someone else deal with it ____ I’m ready to learn something new

It’s too radical a change _______ Let’s take a chance

It takes too long to approve _____ We’ll walk it through the system

Our customers won’t buy it _______ We’ll explain the benefits

It’s not my job ____ I’ll be glad to take the responsibility

 

I CAN’T ________________________ I CAN

 

 

 And that is lean thinking.

 

I picked this up from here:

http://www.implement-lean-manufacturing.com/lean-thinking.html

 

 

November 4, 2009

Lean Thinking

The image and metaphor we like to convey a key thinking mistake and opportunity is the sport of relay racing.

 

Consider the relay racers standing around waiting for the baton from their running colleague. The accountant in the finance department, looking aghast at this terrible underutilization ‘waste’ indicated in some report, would probably mandate a policy goal of “95% utilization of resources” to ensure all the racers are busy and ‘productive.’ Maybe—he suggests—the runners could run three races at the same time to increase “resource utilization,” or run up a mountain while waiting.

 

Funny…but this kind of thinking lies behind much of traditional management and processes in development and other domains.

 

Of course, in contrast, here is a central idea in lean thinking: Watch the baton, not the runners

Results

Results… are the outcome of a process. What we want are good results from a controlled process because they will be repeatable. Bad results from an uncontrolled process simply mean that we’re not doing our job. Good results from an uncontrolled process…only mean we’re lucky. Today, a bad result from a controlled process just says that we’re stupid: We expect different results from doing the same thing over again.