Thursday, May 27, 2010

Role of Project selection in building a successful company

I remember one of my Professor’s during my MBA days; once he gave us a powerful explanation on ‘Option of Choice’. During that time, one of the exams was close by. Typically students were used to the habit of answering five questions out of seven asked in the exam. Unlike other Professor’s, this professor was a little different and would never give options in the examination. When asked, “Father“, will we have any options this time? He replied, you will have a few of them. You can answer all 5, 4, 3, 2, 1 or don’t answer anyone. This short narration taught me the value of options in life. When I started working I found this short story to be of immense value. At every step of our lives we are confronted with several options. We may choose a few or let all go. The freedom of choice helps us to define the road ahead in our life.

Quarterly reporting has forced the company to just look one quarter ahead. The revenue targets and reporting to investors force company executives to dilute their freedom to choose an appropriate option. In hard times this becomes even more complex and the company executive tends to pick up “everything” which comes in front of them. This brings about serious consequences. In my long career path, I have come across such situations several times. May be dropping them could have lead the company to prosperity and growth.

I would like to share a case which was a result of wrong selection. The case demonstrates that how pseudo teaming happens when everyone in the management team says a yes. As such affirmative response gives a positive image to the participant. The whole team joins to cover up the failure and takes pride on great cooperation. The debate is whether such event is an example of great teaming up and co-operation or should this be viewed as team’s inability to arrive at the right decision in the beginning; this would have been profitable for the company and brings focus towards the goal.

The client was building a product which was running behind the schedule. The client had an urgency to expedite the work and meet release deadline. They wanted a vendor to take up some portion of their work and also help them in completing their work. The high level requirement was shared. The initial study of the requirement and sizing exercise indicated that it was not possible to complete in the given time frame. The client believed that if the vendor puts 3 qualified resources onsite, the job can be done. It was more of a feeling and did not have any back up of any scientific methods.

Sales team was constantly under the pressure to meet budget numbers and acquire new clients. Although the initial discussion on sizing was leading to a no-bid situation, they wanted to work with other operation division which agreed to work with them and complete the work in the given time frame. The result was simple and pleasing for everyone. A SOW was signed against the scientific estimation, based on a set of people who said yes to the unrealistic propositions. There was a sense of winning a new order which lead to a mood for celebration.
An onsite Project Manager was identified. She had working background in testing where as a substantial portion of the work was development. Meeting tight schedule was the key for success. Two developers were hired from the market. The three persons constituted the onsite project team.

It was hoped that on the success of this phase the subsequent phase moves offshore. The company was expected to give a fixed price bid for offshore portion. The offshore Manager was asked to help the Onsite project team. On first scrutiny of team’s capability and skill gap it was found that the team was not capable of delivering the contracted outcomes. This note was sent before the team assumed work onsite. The Manager controlling the activities along with sales believed that this was the best option in a given situation. The team went ahead with the onsite work. The activities went on for around 6 weeks. The outcome of this can be easily guessed by anyone. The client terminated the project. It was a LOSE-LOSE situation.

This event isn’t unusual - in any company. We all commit mistakes. It is important to learn from mistakes and not repeat the same in future. The success and failure depends on exercising the option of choice. Denis Waitley says;”Forget about the consequences of failure. Failure is only a temporary change in direction to set you straight for your next success". Choice always comes in life. Going on a right path helps to create a sound work culture, brings focus in operating teams and drives better results. Let us argue that management starts rejecting such opportunities. It will bring focus in sales team. They will start looking for right opportunities. Teaming up is very essential in today’s environment for success. Probably the team started defining the “Teaming up” in an inappropriate sense.

This short case tells us a lot. Few of the lessons are:
1. Requirement assessment is the key to project’s success and profitability. Even under pressure, compromising on basics may not lead to success. I think the proper understanding of the situation is important. We should also work with stretch goal.
2. Taking every piece of work is putting your company in a troubled position. It prohibits bringing focus and growth. Saying ‘NO’ requires courage and conviction for success.
3. Technical feasibility of doing work and risk assessment should be treated as separate items. Balance between risk and appetite to take the level of risk is essential.
4. Teaming is the key to success. Teaming compromising functional boundaries leads to failures and provides a pseudo teaming feeling.
5. Role of devil advocate is very important. This brings a culture of discussion and looking at all aspects of the opportunity before a decision is arrived. The hierarchy or prevailing culture may be a deterrent in creating a proper climate for devil advocate’s role. The leadership should provide appropriate climate for devil advocate. Their contribution in helping to take a sound decision cannot be undermined.Whether the projects are small sized or large sized, every project must bring about appreciation, intelligence and a good business sense. To achieve our goals we should have a well planned Project Selection Process.

Thursday, May 20, 2010

Delivering Quality

Software Development has gone through a lot of transformation over the last few decades. Many practices have evolved. A lot of metrics have been collected. Project Management software’s have been used to plan and track the project execution. Many new practices have come and gone by. New Practices keep on coming. A lot of change has happened in the lifecycle area. Agile is the BUZZ word at this point in time. The question is, has the industry delivered quality consistently? I am sure many one of us will come up with an answer “NO”.

There could be various reasons for not delivering “Quality” consistently. The industry has grown at astronomical pace. This has led to the lack of maturity in the practices. The industry will mature one day. The implementation of projects will become more predictable. What should we do in this transition phase – Maturing Software Industry? I have learnt a simple principle which I would like to share with you.

The software best practices are meant for delivering consistent quality. The principles are known to all. This is not a rocket- science. But most of us have struggled in implementing them successfully and thus couldn’t reap the benefits. I suggest here with a two phase formula for a quick result:

1. The Long term success & Consistency: The best answer would be obtained by following the best practices in requirement management, design, implementation, testing and deployment. I wonder if programmers shall ever be able to develop a set of bug free codes. If it happens then the tester communities will be unemployed. This certainly will impact sagging job market of a country like US and growing Job market of a country like India. Thanks to the effectiveness of Programmers, the testing job has been growing. The developers should continue trying hard for bug-free codes which would eventually lead to elimination of testing work. Think; if they code perfectly and implement all functionalities flawlessly, then at the crack of dawn our dreams shall come true. Practice for improvement will lead to better and better development and reduction of cost. Elimination of testing is still a farfetched thinking.

2. Deliver best to the customer in short term: Since the elimination of testing work or reducing the same to minimal is much more than a dream. We need to have some mechanism which produces better results. This may not be a very cost effective solution. But I have seen this helping win back the customer’s confidence. Unless we win customer’s confidence, work will not continue. Therefore, for point 1, – it is essential to keep going. The suggestion here is to divide the project team into Two teams
a. Development Team
b. Independent Test Team
The test team should be fully empowered and given independence. The team should report at a much higher level than the Project Manager. All testing best practices should be followed. I’m a witness to this and have seen this giving the best results. It helps in filtering the defects before it goes to customer. You have to incur additional cost to fix the bugs. But you are buying the customer’s confidence in the absence of best quality development. Unfortunately, many companies are doing this and striving for near flawless development. This is the right strategy to endure in today’s software industry.

I have noticed tremendous resistance by line managers to implement independent testing in each and every case. Such practices give a pseudo feeling of loss of authority. People tend to forget that “deferring problem” is not solving the problem. I have seen some techniques like Coaching; Training in testing, vigorously implementing this practice will help a lot. You may decide your own way to tread the path to success.

Create an Independent Test organization, carve it out from total project and implement. You will enjoy customer blessings. If you keep on doing point 1, you will continuously keep on improving profitability over the years.
Peter Drucker has rightly said, "The single most important thing to remember about any enterprise is that there are no results inside its walls. The result of a business is a Satisfied CUSTOMER."

This shall help in delivering Quality consistently.

Thursday, May 13, 2010

Successful Execution results from Tactical Approaches and Strategic Focus

In my last blog, I had mentioned about “Mindset Matters”. The article focused on the importance of positive mindset on finding solutions. Execution is considered to be the first and an important step towards improvement. After identifying the solution the more important aspect lies in “Executing the solution”. Effective execution occurs when the right things are done efficiently. If you do not have thinkers inside, you can use consultants to give you the solutions. You have to execute them yourself.

Stephen Levine has rightly said, “Buddha left a road map, Jesus left a road map, Krishna left a road map and Rand McNally left a road map. But you still have to travel the road yourself”.

This is all about execution. In your endeavor to travel the road, you might come across small hurdles. Some of them may go against your prescription based on the value system. Do not forget you have to succeed; you have to create an execution engine which delivers first time and every time. First time delivery is important to go on to the second part “Every time”.

I am sharing some of my experiences in delivering first time” and also on the approach towards delivering “Every time”. I suggest the following framework:

1. Tactical approach:
Let us assume you are in a situation where project is in deep red state. You have lost the customer’s confidence. Customer has an image of the problem. The image may not be right in entirety. But it is customer’s perception. Since the project is in red, your own management generally, may also be watching each step cautiously. Small successes are important here. Concentrate on small successes. This will help getting customer confidence back. This will help in generating a ray of hope and positivity in the mind of customers. This will also bring back management’s confidence in project team. Sometimes, your long term approach may not be gelling well with the short term actions you need to take to get small results. Let us say you have a customer nominee who has set a mind set. It is important to take him to confidence. Eventually, your success will help you change his mind set. At this stage do not work towards changing his mind set. Work towards getting quick fixes. Concentrate on low hanging fruits. Needless to say you have to win long term battle. Keep on doing what is required for long term success.

2. Strategic Approach:

I am assuming you have simple solutions which maps with the problems. That is the first step for proceeding. This will tell you to find a solution which will work. There are two key aspects for strategic success:
a. Long Term solution success:
During the execution process, attention to detail is required. Ideally this is PM’s work but if you sense that the PM needs help, then you need to step up and coach him. Let the PM understand the philosophy behind the solution. He accepts this one and pushes for success. You need to ensure that your monitoring system is fully aligned with the solution. During the course of execution there may be a need to course correct based on the feedback received from the monitoring system. If these simple steps are followed, the success will greet you.

b. Internalization:
I have personally tested the success going through the above framework. Let me also confess that I have also slipped back on few occasions. I have realized that once solution is achieved then process has to be internalized. You cannot keep on having close watch regularly. You need to step out but keep a watch through certain control system till there is an evidence of internalization. You may continue using the dash board you used for successful execution. If you think appropriate, the dash board can be tweaked.

The success Mantras are: stay focused, ensure attention to details, coach the people, slowly pass control and make them expert.

Thursday, May 6, 2010

Mindset Matters

Each one of us has experienced many projects successes in our professional career. We have also come across situations where project goes through a tough time. We all would agree that the most common scenario is when the Customer complains The Project team gets into a syndrome; I will name this as “It’s Customer Fault Syndrome”. It finds a cause which is external to it; may be it has to do with some action or elements at customer’s end. Whenever a problem occurs, some causes are found which points to the pre-identified cause. Sometimes the cause may be valid. I would argue it gives the team, tremendous power if they get out of “It’s Customer Fault Syndrome” and start looking inside out.

Let us take a case for discussion. Due to privacy issue, the data available to us was always dated. Sometimes we came across a situation where the testing was constrained due to dated data. The defect was difficult to produce. Our team did not look at the alternative ways and took an easy path. Think; if the team members would have looked for an alternate way then I am sure they could have found some alternate (BEST) solution. Instead the team preferred to continuously stay in “It’s Customer Fault Syndrome”. This wasn’t helpful.

There was another situation where the team had developed the software under discussion from ‘scratch’. The software was under maintenance mode. Whenever the customer found many defects, the team came up together to identify the defects. The team would classify the defects as Existing defect, Change Request, etc. The team went an extra mile by identifying the change requests but the Change requests were never agreed by the customer in a joint meeting. This way of classification gave the team a pseudo-satisfaction of not committing too many defects. This continued to go on for a while. You can imagine the amount of noise being generated; we were on the verge of losing the work. Management realized that they were under “It’s Customer Fault Syndrome”. Finally they decided to come out of it. Initially a lot of explanation was required. There was also resistance in the team. But the decision was to be taken. Both the causes mentioned above were got rid off. The goal was to own all the defects. The team discussed them and very soon, we came across a situation where improvement was visible.

This is not a rocket science. But unfortunately many times we become a victim of this syndrome. I suggest that whenever you see many fingers shown towards customer, look at it. Let us not forget customer pays our pay check. Start looking inside-out. Try changing the situation democratically. If it takes time; think of other options. Your success depends on coming out of “It’s Customer Fault Syndrome”. You will get good solutions. You will succeed.

Success- is all about Mindset. It’s the Mindset which matters.