Monday, August 27, 2007

Reflect a lot....

This photo was shot on 29th February 2004. Location is vaitheeswaran temple tank. This temple is in Tamilnadu, India. This was shot using a Canon Powershot A70. time of the shot 6.44 PM.

Wednesday, August 22, 2007

Understanding Estimates, Plans, Targets and Commitments

Started to browse Steve McConnell’s “Software Estimation – De Mystifying the Black Art “and find the book very interesting, practical and could relate to what he says. I have given below the fundamental ideas from the book – ideas that are elementary and concepts that we always tend to mix-up or miss altogether, most of the time.

Steve McConnell says that every software professional thinks that he/she knows what an estimate is. He goes on to say that an estimate is very different from what people think and a good estimate is even more different. He says that software professionals are not asked for a tentative or preliminary calculation – that is, - an estimate where people can change their mind later. Most probably, most of the times, when the executive asks for an estimate, he/she is asking for a commitment or for a plan to meet a target.

The distinction between estimates, targets, and commitments are critical in understanding what an estimate is, what an estimate is not and how to make estimates better.

An estimate is a prediction of how long a project will take or how much it will cost. People are requested to bear in mind that an estimation on software projects interplays with business targets, commitments and control. This is very important since this interplay can sometimes lead to change of the project assumptions, which make the estimation useless.

A target is a statement of a desirable business objective. Examples include the following

  • We need to have software delivery by end of November
  • We need to have this release stabilized in 3 months
  • These functions need to be completed by July 1st so that we will be in compliance with government regulations.
It is very important for each software-professional to understand that businesses have important reasons to establish targets independent of software estimates and it is important for each business person to understand that a desirable target does not necessarily mean that it is achievable. This distinction is very important for all of us to understand and it is the duty of each of us to educate our customers about this.

While a target is a description of a desired business objective, a commitment is a promise to deliver defined functionality at a specified quality level by a certain date. A commitment can be the same as the estimate, or it can be more aggressive or conservative than the estimate. McConnell goes on to say that while estimation and planning or related topics, estimation is not planning and planning is not estimating.

Estimation should be treated as an unbiased, analytical process; planning should be treated as a biased, goal-seeking process. Estimates form the foundation of plans, but the plans don’t have to be the same as estimates. Both estimation and planning are important, but the fundamental differences of the two activities mean that combining the two tends to lead to a poor estimates and poor plans.

Here are some of the examples of planning considerations that depend in part on the accurate estimates.

  • Creating a detailed schedule
  • Identifying a projects critical path
  • Prioritizing functionality for delivery
  • Breaking projects into iterations
Another important point about an estimate is that the number produced by an estimate has always a probability associated with it. Most of the time people tend to associate 100% probability with the estimate. McConnell suggests that we should ask for the probability when we see a single point estimate.

McConnell says that estimations real purpose is not to predict a project’s outcome; it is to determine whether a project’s targets are realistic enough to allow the project to be controlled to meet the targets. If the targets are realistic enough, then the project parameters can be adjusted to meet the targets. If the projects targets are not realistic, then the targets need to be brought into reality before the manager can control the project. This is one area where most of the projects fail. Bad estimates and unrealistic targets are always a recipe for project disaster.

McConnell defines a good estimate as an estimate that will provide enough clear view of the project-reality to allow project leadership to make good decisions about how to control the project to hit the targets. ‘Controlling the project to hit the target’, is what project management is all about and good estimate is absolutely essential for this. Understanding what a good estimate is, as mentioned above, helps a long way in achieving this.

I have always been a fan of Steve McConnell's books since i read 'Rapid Development' and 'Code Complete', I find this book also to be very interesting and i will share more interesting and useful information from the book as i read it.

Monday, August 20, 2007

The Black Swan

Update on November 2011 
Taleb has this tendency to ramble on and to show off. if you can put up with these, his books are very interesting and there is enough take away for the reader. I would however recommend 'Fooled by Randomness' if  some one points a gun at you asks you to choose only one :-). Since most  don't have to go through such a predicament,  i would recommend both.

I am reading this book called "The Black Swan" by Nassim Taleb. He is also the author of Fooled by Randomness, another book in my shelf, to be read.

This book starts with the interesting story about swans. All swans were thought to be white for a long time. Then someone sighted a black swan in Australia. That invalidated the theory/understanding that all swans are white. The author quotes this event and mentions that this illustrates a severe limitation to our learning from observations or experience and the fragility of our knowledge.

He defines a black swan as an event with the following three attributes
  • First, it is an outlier (a statistical observation that is markedly different in value from the others of the sample) as it lies outside the realm of regular expectation, because nothing in the past can convincingly point to its possibility
  • Second, it carries an extreme impact
  • Third, in spite of its outlier status, human nature makes us concoct explanations for its occurrence after the fact, making it explainable and predictable.
A black swan is defined by Rarity, Extreme Impact and Retrospective predictability.
Examples of black swans are rise of Hitler and subsequent war, precipitous demise of Soviet bloc, rise of Islamic fundamentalism, spread of internet, market crash of 1987 and subsequent recovery.

The author says that more surprising than the occurrence of black swan is our own belief that it doesn't exist. He says that our blindness with respect to randomness, particularly large variation, is alarming. He adds that the black swan logic makes what we don't know far more relevant than what we know. He cites the example of 9/11 and adds that in a 9/11 kind of strategic game, what we know is truly inconsequential.

The author says that black swans being unpredictable, we need to adjust to their existence and mentions the concept of anti-knowledge, explained later in the book. The author also complains that we tend to focus excessively on what we do know, we tend to learn the precise, not the general . His point is that we have lost the ability to learn the meta-rule or the abstract of any problem. This is because we are kept reminded that it is important for us to be practical and take tangible steps rather than 'theorize' about knowledge. The author claims that we scorn the abstract with a passion.

To summarize, the author claims that our world is dominated by the extreme, the unknown, and the very improbable – and all the while we spend our time engaged in small talk, focusing on the known and the repeated. We have to change ourselves to treat the extreme event as norm and not the exception. He also says that in spite of much progress and growth in our knowledge, the future is going to be less predictable. The basic message is that most important things in the real world do not follow anything like a normal distribution.This book is very interesting because i believe this will throw lot of light on how risks should be managed.

Sunday, August 19, 2007

The Manual of the warrior of light

"Sometimes the warrior feels as if he were living two lives at once.

In one of them, he is obliged to do all things he does not want to do and to fight for ideas in which he does not believe. But there is another life, and he discovers it in his dreams, in his reading and in his encounters with people who share his ideas.

The warrior allows his two lives to draw near. “There is a bridge that links what I do with what I would like to do”, he thinks. Slowly, his dreams take over his every day life, and then he realizes that he is ready for the thing he always wanted.

Then all that is needed is a little daring, and his two lives become one.”

The above is from Paulo Coelho’s book “The Manual of the warrior of light”. I find this book quite inspiring.