the Bridger

January 4, 2010

Putting agile in perspective.

Filed under: Systems, project management — Tags: , — admin @ 5:23 pm

This article discusses an important aspect of agile that is rarely figures in the big debate, i.e. where agile fits in the great scheme of things organiation wise. It also examines breifly  the concerns that are shared with general corporate activity.

It sheds light on  why agile came about and regularly returns to the fore only to disappear again and most of all it puts the whole cult aspect of agile under the microscope arriving at some perhaps unexpected conclusions.

Conclusion

Some people are overawed by the challenge of software development to the extent that they rely entirely  on a comforting framework to lean against, while others use their big picture perspective to manipulate the marketplace selling  their training, books and consultancy services under one disguise after another, while contributing little or nothing to the profession.

In reality there are two major challenges facing all software endeavours. The first of these is the challenge of dumning down science and motivating people to ahieve some sort of useful marriage. The scope is beyind this article but siffice to say that the internet arrived at least 25 years after it could have and is still years behind where it could be while people catch on to the possibilities. The antithesis of Moore’s Law  if you like.

The second challenge facing software projects could be summed up as defining an agreed goal and delivering on it.
in meeting that challenge the professional will follow the one very simple Software Development Lifecycle (SDLC) regardless of what methodology or framework he/she initially elected. That lifecycle can be loosely described as:

  1. Identifying the organisational goal the commitment, timeframe and budget.
  2.  Identifying a technical solution that meets that requirement within agreed constraints.
  3. Delivering the technical solution within agreed quality constraints.
  4. Delivering on the corporate goals.

The key to choosing and using methodology is to understand the challenges thrown up by a specific project and address them correctly. These challenges will be predominantly driven by corporate culture, process complexity, level of innovation, technical competence and budget constraints.

Ultimately it matters little whether you begin by creating detailed plans and evaluating them technically, or start building storyboards and prototypes. Likewise it matters not a jot whether you build it in time boxes, or spend two years coding before shipping the lot to outsourced testers, both of these approaches will have to meet all four objectives before the project is completed successfully.

There are however, certain projects that simply won’t fit a particular approach. One useful example is that you wouldn’t be advised to take an innovative prototyping and experimenting approach to air traffic control systems for example, as the consequences of error in the “trial and error “ paradigm are well known and best avoided.

The reason for the re-emergence of agile as an SDLC as opposed to a methodology is that it includes items one and four of our basic lifecycle in a single project.

Outside of Agile it is very rare for items one and four to be given very much more than lip service.  Business people are generally untrained and ill-equipped to rub shoulders with the technical aspects of this work and are understandably very frightened to make commitments and take responsibility for something they don’t understand and can’t control.  IT people are rarely equipped with the business knowledge and people skills to pull it off even if they were likely to be taken seruously by the busienss. Hence the ostrich syndrome prevails more often than not.

Agile breaks this deadlock by placing empowered people with all the skills they need and sufficient budget into a single team and telling them to make decisions and get on with it.

 

Agile is to the SDLC what a project is to the enterprise

“Agile places empowered people with all the skills they need and sufficient budget into a single team and tells them to make decisions and get on with it.”

Why does this statement seem radical to some people? Surely we have sufficient grasp of management in the 21st century that we can define a task and get it done with a level of motivation and commitment within just about any corporate body.  Well it seems not.

It is well documented and understood that once an organisation grows to the point where the founder can no longer be involved in every decision, there begins a phase that either destroys it, or morphs it into a modern political and mostly dysfunctional organisation that is driven by policies, processes and politics,  with little identity and few motivated individuals willing or able to chase opportunities or to excel.
The winning strategy to survive and prosper in this corporate world is based on being out of sight and below the parapets at all times except miraculously just after a victory and of course bringing apples to the teacher. Excellence is rarely sufficient and often unnoticed.
As these organisations grow within their specialised field, they substitute predictability, buying power and economies of scale for individual efficiency and innovation and they can survive and prosper despite the negative, but predictable performance levels produced by process heavy environments lacking in initiative, or motivation. 
The problems surface when you try to use that same team with the same culture to do something different.  Not only are you asking them to step out of their comfortable process, but a successful result will often bring with it an unwelcome and frightening change of culture for them and on top of this you are asking them to make decisions and use initiative.  All this in an environment which, through no fault of their own penalises initiative and chops off heads that protrude above the parapet.

This description may sound like a condemnation, but in truth it is just an acceptance of the fact that we are human and we adapt to our environment and that to achieve things we must begin with an honest, or even pessimistic appreciation of that environment and a plan to work within it.

Enter the Project

Although there are projects used in other environments such as construction where they are in fact part of operations, for the most part projects are used as frameworks for dealing with the issues described above. In fact, even when adapted to areas like construction, they still have a key role in abstracting the task at hand from the corporate cultures of client and supplier in order to progress the work at hand in a partnership or joint venture environment.
A typical project will create a governance structure modelled loosely on a company with a senior executive a PM and board that closely resemble the familiar frameworks of CEO, Chairman and board and operate in a similar way for course of the project. This structure releases them from the corporate culture and gives them the the framework and budget to get things done independently.  Just like real companies, they work well when the team are well chosen and pulling together and less so by degrees at other times. Projects without strong corporate support are up against it unless they have a very powerful and committed champion.

Why agile then?

Traditional Projects work well for large undertakings that are sufficiently in-your- face to gain and maintain interest in the boardroom right through to conclusion. Problems get solved and genuine mistakes are not allowed to become bargaining chips.

The trouble is that most projects don’t gain that kind of attention and are peripheral to busy directors and senior executives.  Board members are sometimes not ideally selected, not terribly committed, or even there purely to be kept informed. Occasionay they are hostile.  In these circumstances many projects lose their way for want of decisions, motivation, or intervention against blockers.

This is where the agile paradigm comes into its own.  Instead of creating this large and very formal structure that won’t actually gain critical mass, the key is to choose motivated, knowledgeable and competent people at the right level in the organisation, combine them with high quality technical and support teams and a skilled agile PM while completely empowering the team to make decisions and get the job done while providing access to a senior executive as and when required.

This agile approach returns the project to a small company paradigm with motivated, committed individuals operating with a shared vision, making decisions, communicating meaningfully, pulling together and getting the job done.

The software profession at its best

Surely we have taken software engineering to a point where a reasonably experienced engineer can decide whether something is achievable, give a time-frame and budget and stick reasonably close to it. Again it would seem to be a singularly difficult challenge for the profession.

Since the late fifties, the software industry has learned and developed along a predictable path that is in some ways remarkable and yet in others frustrating.  The return of the same old questions again and again is partly seen as the rejuvenation of boring old ideas for immediate financial gain and this view is not without any truth, but it is also part and parcel of how humans increase their knowledge.

Hegel described the increase of understanding in terms of: Thesis, antithesis ad hypotheses.

In effect he suggested that learning begins with theses, some of this is then rejected (antithesis) and finally, on reflection it emerges for use and further consideration (hypothesis).
Software engineering has developed at a rapid speed through borrowing from hardware engineering, construction and manufacturing, trying these concepts, improving them and trying again. Between 1950 and 2000 the average cost per line of code in use at the US Department of Defence dropped from $10 to $ .000001 as the industry matured. The industry has progressed rapidly in engineering terms, but there’s still a long way to go and especially in terms of interface with the users and investors.

Coding time estimates

In today’s software engineering environment (as opposed to a newly formed team of programmers at random company ltd) the time taken by programmers while programming is roughly as follows:

 timebreakdown coding

In fact as a good rule of thumb, it is widely accepted that when a programmer tells you how long a job will take,  you need to multiply that figure by somewhere between 6 and 11 depending on his/her track record.

If this software is to be of any use it must also be documented for the purpose of maintenance and for implementation, training and user support. In a less mature team these figures would be easily multiplied by anything up to a further five.

Communication time estimates

As you build a team the time for team and project communication begins to rise exponentially as the team size grows and if change is frequent it can reach as much as 50% of all effort with alarming speed.

Propensity for change

 

 The cost of changing requirements/features grows rapidly according to how late in the cycle the change occurs.  This change is mostly driven by omissions and errors at the design phase and design or programming errors further along the cycle. Controlling these changes is down to excellent stakeholder communicat

Impact of change in a software project

Impact of change in a software project

ion and rigorous design and verification procedures.

The preceding paragraphs highlight the very topmost concerns in the simplest possible way yet it is clear even from this short commentary that providing even reasonably accurate estimations is extremely challenging and is a whole team exercise.

It is also worth noting that of the four steps defined in our underlying SDLC, the software engineering discipline only covers numbers two and three.
 Responsibility for defining the business goals and their parameters as well as responsibility for implementing the system in order to capture those benefits remains an equally challenging proposition and lies entirely with the business.
In a product paradigm, the only difference is that product management must take responsibility for customer consultation and feature design.

Software Development Lifecycles (SDLC) are over prescriptive and misunderstood.

The many incarnations of SDLC will generally expand very quickly into a complex map of steps with interdependencies. With the best intentions, they attempt to tie the practitioner into a very prescriptive set of steps, but in doing so they remove the emphasis on common sense and good communications. For the sake of simplicity, when appraising a project, I tend to simplify the lifecycle to just four goals that can be carried out in any order that serves your specific project and revisited when necessary.  By taking this approach, you can apply it to Scrum, RAD, Agile or any waterfall flavour equally well.

  1. Identifying the organisational goal the commitment, timeframe and budget.
  2.  Identifying a technical solution that meets that goal within constraints
  3. Delivering the technical solution within agreed quality constraints.
  4. Delivering on the corporate goals.

In the best implementations, step one receives lip service in the “Feasibility” stage and step four is hardly ever taken into account. In the worst implementations two and three are poorly implemented with substandard testing and little documentation.

Step three regularly suffers from confusion between user and investor with the real end user rarely beimg engaged meaningfully.

It doesn’t have to be like this and it most certainly shouldn’t, but the reality is evident everywhere.

Agile variants are all created equal and simply marketing ploys

SCRUM, Agile and DSDM all tackle the business perspective and place it at the centre of the project lifecycle, they incorporate testing and UAT into the development process and they place emphasis on communication at all stages of the process. Scrum is seen to go a little further in considering the user, though the others don’t exclude it.

Regardless of which flavour you choose, you can tailor it precisely to your project’s needs and the idea that one flavour is better than another is almost to suggest that someone who can master software engineering needs to throw out his book and buy  a different one to add a little more emphasis on the customer etc.

Other concepts associated with Agile methods, such as working in teams of two and holding scrum meetings are all engineering technicques that owe no alegiances to any methodology and should be in everyone’s toolbox.

Can agile be scaled?

There is quite a bit being written recently about scaling agile. I have to be honest in saying that I have not read any of it and don’t have any plans to do so in the short term, but I have read comments from people I respect and it would seem according to their considered opinions to be predictably bandwagon in its nature i.e. a new opportunity for trainers and consultants to wrap something familiar in new clothes and sell it again.

Just as we discussed the small company culture and large company culture earlier in this article, the software project also changes in its nature when the team, or the complexity grows and it is inevitable that more layers of management have to be applied and more prescriptive processes implemented and before you know it you will have waterfall regardless of what you call it.

Large systems can and should be broken down into smaller ones and some, or even many of these can be developed using agile methods, but the overall project needs a more planned and less dynamic approach both from an organisational and an engineering perspective. There is no silver bullet and no  substitute for common sense and communication.

The answer is simple, follow the simple four stages and use whatever methodology makes it easiest to achieve each goal and you won’t go wrong.

November 6, 2009

Communication for project managers

Communication code scheme

Image via Wikipedia

Introduction to the series.

This series was inspired by the growing concerns expressed by project managers about the demands being placed on them to be communicators, ambassadors, PR experts and even Marketers as they attempt to deliver complex change projects into organisations, especially in the IT field but not exclusively. 
Whether you are moving 1000 people to a new location or asking them to stop doing things the way they do and trust you that a new system will work better, the challenge has been raised and if you are not equipped to meet it your project stands a poor chance of succeeding.

 About the author   
Before you even consider communication with any audience from one person to 100 million people, you need to first gain their respect and trust. If you don’t, why should they listen to you.
Just like you they are bombarded with messages all day every day and they only have time to listen to a choice few that come from trusted sources , that gain their attention and arouse their interest.
Gain  their respect.
Don’t assume that these people know who you are and respect your knowhow, or your authority as the case may be. If you are sent by the CEO, then tell them up front and try to get some demonstration of this from the CEO. If you are offering them expertise, then tell them about your skills and background so that they can judge it for themselves.

Gain their trust

Trust is the most important part of communication by a long shot. Respect and trust are related, but not the same. You can win respect through winning trust, but not necessarily the other way around.
If I am to interrupt my busy day to listen to what you have to say, I need to feel I can trust it.
The best way to win trust is to genuinely be interested and concerned about the other person or the audience. You can’t fake this, unless you have shared experiences and shared fears, hopes, or aspirations, then you will struggle to be convincing. Unless you already have this shared experience, then the simple and the only way to achieve it is to clear your mind of all preconceptions and start listening, start asking questions, questioning the answers and listening with every fibre.
The more you listen, the more you will learn. The strange thing about listening is that not only do you learn a lot, but you start to make a lot of friends effortlessly.

What  you are listening for 

First what you are not listening for, you are definitely not listening for hooks to  let you push your story down their necks. You should be listening to what they are saying at face value. You should also be listening for the unsaid things, the little gaps in the logic and the things left for you to imply. These latter are the things you need to question to make sure you get the truth. If you are a walkover and you get it wrong, you won’t win much respect.

Tip.
Be truthful. If you don’t agree say so. This way you will still find many that agree and others that make allowance, you might even learn something.  If you are false, you will be caught out and lose all credibility.

You are also listening for communication styles the way they express ideas, the vocabulary they use, any analogies they use when discussing the issues and the general attitudes that prevail in that audience to prepare you for how to word your communications. More about this later.

You are listening for differing groups in your audience, I.E different perspectives or different ways of framing the same thing. E.G. Board directors probably have a very different viewpoint on a shop floor issue than the blue collar workers do. Later you will need this knowledge when we come to segmentation.

You are also listening for their motivations, you want to know what would be the thing that would make them most enthusiastic and what would be least motivating to be able to offer to them.

You are also listening for indicators of who their influencers are, who else do they listen to and trust and why. It may be Unions, it may be certain newspapers or magazines, or a TV show. Knowing this will help you to communicate effectively with them.

Listening is a learned skill and only practice will perfect it, it ,may also be a bit of a change for som people, I promise you that if you will try it out for a week, with no motive other than to see what happens, you will never regret it.

 If you are not registered, Regisrer Now to download a free paper [download#1]
 

 

Reblog this post [with Zemanta]

October 10, 2009

Don’t forget about innovation

The first part of any project involves defining  the problem, deciding where to look for the solution and how to proceed with the search and finally defining the solution, validating it and getting agreement from stakeholders.

Now the nature of Technology is such that few of us are aware of what is possible and even fewer are able to see the impacts of these suggested solutions over and above the promised outcome.

Not only are few of us equipped to access the best solutions, but even fewer are able to recognise when we have a problem.  In technology speak a problem is closer in meaning to a mathematics problem , it doesn’t necessarily cause that irritating pain that our marketing colleagues like to focus on.   

E.G.  Let’s say chief zongawonga is worried that with 19 more children due this spring, he won’t  be able to catch enough fish.  His bright young progeny identifies the problem and suggests metal arrow heads that are more effective and mean they can quickly make extra spears so everyone can join in. That represents a problem known and tackled.
However, Zongawonga doesn’t know that monofilament nets are cheaper than arrowheads and one child can feed the whole tribe with one net.  Until he becomes aware of the nets, he won’t know he has a problem, or until his wives start leaving for the easy life with his neighbour who doesn’t expect them to fish.

The process involved in definition of problems and solutions differs not at all from the age old problem of effectively searching a global mountain of unstructured content as described below.

First you have to arrive at some fundamental conclusions about the problem, the possible solutions and how and where to go looking. Consider this example and then have a read through the innovative solutions put forward by Zyra and see if you don’t begin to question the stuffy, stuck in the mud methods of innovation and improvement that have become embedded in most modern businesses.

 ”just what are you looking for, anyway?”

  •  A known needle in a known haystack
  • A known needle in an unknown haystack
  • An unknown needle in an unknown haystack
  • Any needle in a haystack
  • The sharpest needle in a haystack
  • Most of the sharpest needles in a haystack
  • All the needles in a haystack
  • Affirmation of no needles in the haystack
  • Things like needles in any haystack
  • Let me know whenever a new needle shows up
  • Where are the haystacks?
  • Needles, haystacks — whatever.

http://www.zyra.org.uk/needle-haystack.htm

 

The answers you give to the questions above will have a profound effect on how you approach the project, how you define success and your likelihood of succeeding.
Furthermore, whether you are in charge of developing  market leading products, or keeping your company  at the cutting edge, taking a little time out to consider these questions and address them  innovatively will take your performance to the next level.

July 2, 2009

Planning for project managers.

How important is planning?

Planning is critical. Without planning there is little chance that you can every complete your project, let alone complete it on time.

 The act of preparing a plan, if done correctly, will uncover the issues and risks, provide the bulk of key data for your estimation efforts, provide a clear view of what resource is needed when and lots more.

 It will also help to discover the dependencies that may exist with other projects and activities.
Once prepared, the plan gives the team a better view of how their efforts will come together and points out the need for communication in critical areas.

 

How important is the plan?

Much less important than the act of planning, but still very important. The reason I say this, is because:

1)  It is rare to be able to complete a first draft plan and then not have to make any adjustments.
Most plans develop as they go along and reach a baseline when well into the project timeline.
The most obvious examples of this are projects that involve investigating a problem designing a solution and then finding suppliers to deliver it.
You can allow extra time at the start in the hope that it is definitely too much , but even then, the chances are that you will end up adjusting your plan.

2) Risks and opportunities are a part of every project plan. Sometimes risks come to fruition and they affect the plan profoundly, sometimes opportunities come along that are either too good to miss and causes change of requirements, or  reveal a cheaper, or faster way to get it completed.

In either case, the initial plan will have changed. To live in denial of this as many commentators on project management still do, is a huge mistake and will always be counterproductive.

E.G. If you become so obsessed with meeting a specific date that you are prepared to pare away key features, there is a strong likelihood that the project will fail entirely. The answer is to treat the plan as a guideline and treat planning as an ongoing task.

I recently had this same discussion with a group of seasoned Venture Capitalists and their view was this: 
They would never dream of setting out without a plan, but once they had it in place, they may as well tear it up, because it had already delivered most of it’s value and form here on in, it was more about managing the risks and spotting the opportunities.
They were unanimous in the view that to slavishly stick to that plan would be suicide virtually every time.

Starting a new venture is much more volatile than starting a project, but it is also higher pressure with greater risks and a lot more to lose.  They don’t actually tear up the plan of course, they adjust it and maintain it, but the discussion served to get their point across that management is about managing and adapting on a daily basis, not stubbornly following a plan regardless.
Managing a project should be driven by the business case in the same way that a new venture is driven by reaching a profitable trading position at some point.

Critical also is the acceptance that like a start-up, many good projects are based on a strong hunch and a bit of a gamble for a wothwhile prize. This is enterprise nd without there would be no paydays.  project managers haven’t earned indemnity from this either. 

Features – Deadlines -Budgets – ROI

Here’s where it all happens.  A project will have a goal and that goal will usually be a financial one though success is not always measured in financial terms.
For the sake of this example I will assume that the project is a cost cutting exercise with a specific financial aim. Right at the beginning, the same ground rules should have been laid down such as;

  • What saving are we aiming for?  
  • What investment are we willing to make?
  • What is the maximum our budget can rise to, or the minimum our savings can drop to.?

This latter question is best answered in terms of ROI and in fact, in most commercial organisations the answer will be worked out on the basis of how much ROI exceeds  ”Cost of Capital” in order to qualify the project as “best use of capital”. The critical thing is that it is agreed in advanced and set up as he target.

Once this understanding is in place and the variances have been explored and allowed for, the business case should clearly show the expected returns and the tolerances that are allowable.

The project now has an ambitious goal (maximum realistic returns) and realistic allowable variances. The importance of these variances is not to make the project management team relax, but to assure the sponsors that their investment is relatively safe. Projects set up this way rarely fail.

MSF, the Microsoft flavour of project management introduces a very useful concept known as the project triangle. It is a simple triangle with the three corners being occupied by Features – Resources – Time.project triangle

The significance of the triangle will be obvious to any mathematicians reading in that only one corner of a triangle can be fixed unless you want all three to be immovable.
This is why the prioritisation of concerns is a valuable part of stakeholder alignment. If stakeholders are allowed to follow their natural instincts and demand that all three corners are fixed (two fixed corners means the same thing) then there is no room for the project management team to steer the project out of trouble.

A realistically aligned project will choose one of  Time, Features or Resources to set in stone and the other two will remain free to move.  This way, if time is fixed, then a PM can choose between increasing resources, or decreasing features in order to hit the target (ROI). The decision making process can also be agreed in advance.

This example is one of the simpler ones, but it is indicative of the ills that beset many projects right at the beginning and rob them of any real chance of succeeding, or being seen to succeed.

Defining the scope/budget/resources

Once again, with the ROI in mind and the statement in the business case that based on initial studies, there is a strong likelihood of success, the task now arises to define in more detail the features required to deliver the expected benefits.

Having defined the features, accurate costing has to be worked out on the basis of supplier estimates, internal efforts and other costs, with adjustments for risk, all of which will rely on your emerging plan.
 Another sanity check at the end of this planning phase should check whether  the cost and time estimates are still within the constraints initially set for the project and whether it has a healthy amount of slack remaining to see it through to a likely successful completion.

This exercise of working up plans from draft to more detail as the work progresses from an outline business case through to a detailed contract with suppliers and a detailed plan of implementation with all the appropriate slack allowances  and a rigorous risk assessment will often take up half of the lifecycle of the project, or even more and some projects will be abandoned when it becomes obvious that there is little likelihood of success.

 The number of “stage gates” (sanity checks) should be agreed at the start on the basis of how well known the territory is and how volatile the estimation is likely to be.

The illusion that a project board can put some dates (when we’d like it done) and amounts(how much we’d like to spend) on an A4 sheet at the beginning of the exercise and that perhaps a year or more later, a project team will deliver exactly what was asked for on that sheet, within exactly that amount and on that date is really a surprising error of judgement, but it still happens and contributes strongly to the list of project failures that appear on the Standish report and other investigations.

 

How to go about project planning

Planning should always be done by starting at a very high and general level, involving experienced big picture thinkers and applying a sanity check before then drilling down not too far to the next level  detaiil to repeat the exercise.
Planning should always resist the temptation to go into great depth in one specific area while remaining at a high level on others with one exception.

If there are unknowns, e.g new concepts that might not work, then proof of concept should be carried out as soon as possible to avoid having to abandon the project or change tack after a great deal of money gas already been spent

 

Plans should not be in extreme detail a long way in advance, because the likelihood is that when that time draws closer you will find yourself redrawing them and the effort has been wasted.  As planning continues to drill down, a plan should be retained for each level of detail and when the detail highlights an error in the high level plan, as it frequently will, then the high level plan should be adjusted.

 

The commonest method of estimation to begin with is to break the project down into products.
These products can in turn be broken down further until they reach a level whereby they can be more easily estimated and planned and later assigned to teams.

Out of this comes a product flow diagram that describes the order , if any, in which these products must be completed in order to take account of interdependencies.

Calculating critical paths ( the longest path you can follow) through the products and then amongst the products, the project manager can get a much closer view of the true schedule of the project.

Using PERT to make a high level allowance for uncertainty adds a further level of sanity check to the emerging plan.

Some of the issues that commonly affect project plans drawn by the unwary include :

1. The calendar is not taken into account when calculating for tasks in the plan, e.g seasonal breaks, Summer holidays and other disruptions that happen every year.  Key personnel  disappear and dependencies become critical.
Make sure you discuss each team members responsibilities and schedule with them and get agreements.

2. Suppliers work to their own schedules and regardless of what they agree,  they will place commercial concerns first and may not follow your plan.
Ask them for their plan and question to satisfy yourself that it is thought through. If you  lead, or take part in the contract negotiations, try to place some extra responsibility on them to deliver on time, or warn you in advance.

3. Estimates from technical people are accepted at face value and in reality they are vastly underestimated 80% of the time.
Get second and third opinions, look at records of old projects and as a minimum double the estimates from the best people and use factors as high as five for others.

4.  There’s gaps between what the supplier delivers and what the internal team have allowed for.
e.g. Inexperienced people might assume that a system can arrive, be plugged in and start testing.
Clear acceptance criteria may not exist and there may be problems agreeing acceptance.
Cut over from an old system to a new one may not be catered for.
 This list can grow quickly. If you are not an experienced systems person make sure that there is one in charge of this part of the plan.

5. There may be several suppliers and communication between them may be less than ideal. Often this situation leads to gaps where nobody is responsible and the work grinds to a halt, or even enters dispute , or litigation.

Make sure you hold joint planning meetings and get sign-off to theses joint plans

6. Beware Johari’s window. What you don’t know you know is a terrible waste, so consult and consult again. What you don’t know you don’t know will come back to haunt you, so involve everybody in risk management sessions and try to be ahead of the game, have sufficient slack and keep stakeholders informed of the true position.

7. Over ambitious, or over confident plans create a sense of expectation amongst stakeholders that changes to discontent when the plan slips. Perfectly good projects are often deemed poor projects as a result of this very mistake.

Take the time to estimate risk realistically and maintain realistic slack for the high risk areas of the project.

 

So in summary:

1. Planning is critical and underpins everything, but it is an ongoing everyday task, not a game of snakes and ladders.

2. Managing projects is primarily about handling and working with uncertainty to remain within agreed, acceptable boundaries, not shooting a silver bullet at a precise point.

3. Planning for well known items is easy, beware what you don’t know, this is where you will get caught out.

4. Risk and opportunity go hand in hand, avoiding risk is no more important than spotting opportunity , but it requires an open mind and a fluid approach to planning.

5. Start with an achievable goal, make sure it is well understood and shared  and keep it in front of mind at all times.

June 16, 2009

Programmes are the reason so many projects are deemed to have failed.

Build a dungheap and the insects will come

I just left a meeting where we discussed a large and complex programme of work and my mind kept going back to recent discussions about why projects fail. We have been talking about project managers who stay in the office playing with gantts and charts and PMs who know nothing about their subject matter, but see themselves as traffic coordinators. These are real concerns and they are at epidemic level at least and need to be discussed and resolved.

Take one step back from this discussion,however and place yourself in the average programme office
.

If the Project manager rarely sees the battlefield, and spends his time constructing fantasy plans without ever checking with reality and assuming that things will stay the same, then imagine how far removed the average programme manager is.
Today I watched just such a Programme manager going through a programme plan and showing the position of each project and of each tranche and giving a thoroughly convincing performance, but based on a few conversations with project managers before I went in, things were not at all like the programme manager’s presentation suggested. Not only was he highly removed from the truth about the various projects, the truth of which was obscured behind vague and even pointless KPIs, but he had no idea of the true situation within any of these projects. One project had reached it’s milestone just ahead of the presentation by launching something totally flawed in the knowledge that it would not be found out for a while and if they hadn’t fixed it in the meantime they would deal with it then and feign ignorance of it. The KPI was declaring completion, not passing though any realistic test of completion.

How can you risk manage a programme without total honesty and a powerful beam of light?

I dread to think of the consequences for his programme of a key project on the critical path getting into serious trouble. If he is measuring the programme with this type of metrics and this lack of control, what chance is there of coming anywhere close to success?
As it happens that project is a critical one and it can stop the entire programme., it should be the focus of major attention until it is out of trouble or the whole thing is abandoned.

There is no difference between this handling of projects and programmes and the commercial practices of reporting false profits to keep shareholders happy and  keep the capital flowing your way.  We have created the conditions for failure and it will continue to happen regularly just as a pile of compost left in the garden will attract plant life.
Is there a realistic answer on either front? I will have to think about this one.

One note in my notebook is quite revealing, no member of the board was present to learn how things were going.

 

 

June 10, 2009

The true DNA of an agile project (exploding the myths)

Ignore the new vocabulary and you’ll find nothing new in the concepts.

If you have heard me pour scorn over some of the claims made for agile, you may be surprised to know that I’m an agile practitioner with some considerable experience and not at all adverse to the approach.  That said, I always repeat the words of my agile mentor Keith Richards (no not him silly) when I asked the obvious silly question. He said ” It’s horses for courses.  When you turn up for training we assume a certain level of education, intelligence and experience”.

OK so what is the big noise about. Well the underlying promise of agile emerged back in the seventies soon after the first Standish report when some of the industry leaders cooked up an alternative to the waterfall way of wasting money.
The theory and indeed the practice is totally valid when followed with a level of honesty.  You tell me how much you can spend, or how long you have and I’ll guarantee you a working system.
Note the difference from waterfall where you have two options: fix both budget and time and have a failure nine times out of ten, or fix  just one and reduce the odds by 2/3.(MSF).

Agile delivers on the promise when billed honestly and executed  honestly.
Here’s the metaphor.  Say you meet with your co-directors and agree that right now the thing that will  accelerate you to your goals is an very large extra table  in the boardroom with a tiny door and spiral staircase and you have only £n  to spend, or n months to deliver it. I will discuss your needs at length, then I will come back with a proposal that looks like this.

The minimum required to make this work is a top and thee legs. You don’t need four to make a table work, though I agree it would be nice.  It can’t be bought and even the top has to be constructed on site.
The legs are standard things and fundamental so I will order three of these and have them delivered.
We will start making prototypes using scrap wood  for legs and sticking planks together until we have a table that is just stable enough and functional enough to meet your needs.

This we are confident we can achieve within your constraints, if we have extra time or budget, which I expect we will have, we can add a fourth leg, or smooth it over, or add a coat of varnish. You can decide when the time comes, which is more important. That’s it. No miracles, no free lunches, just less pontification, more action and a product that is fit for purpose, if not always entirely pretty.

 When you wouldn’t use agile.

You would never use it to build a space shuttle. That type of project requires a right first time approach.  I shouldn’t joke about a tragedy like that. There can never be a serious consequence of getting it wrong first time. You shouldn’t use it unless you are bought in fully to the three legged table, if your mind is set on four, stick to what you know. If you are buying in the team either as contractors or a service company, it is risky, because highly competent  people is a prerequisite.
If your main motivation is to be involved on a day to day basis as opposed to making a decision up front. It is poison, keep away.

May 17, 2009

Whose fault is it anyway?

 

IT investment for the smaller business
Why the Smaller business holds all the cards
Where has alll the money gone
Requirements gathering the first big mistake
Contract negotiation and on we go
Whose fault is it anyhow ?

 

23% of European projects cancelled, more than half overran by 50% or more.

When projects grow to any size, they invariably lose sight of the basics and especially they lose sight of the goals.

In the above study the authors uncovered weaknesses that have reached epidemic proportions, i.e

  •  inability to distinguish the critical success factors from Prince 2 speak ( total faith in methodology alone).
  •  Wrong KPIs from day one.  Inability to define and agree requirements. 
  •  Poor programme and business management leading to people believing they have done well when in fact they have missed the target completely, or that they are failing when in fact they are performing well.
  • Poor estimating of cost and time leading to inaccurate plans and poor management failing to follow good plans.
  • The wrong person in charge.
  • The wrong reason for starting in the first place. 
  •  Bad decisions made for the wrong reasons.
  • Unspoken political issues that were well known from the start, but could not be spoken of openly.

The most common failings are at the early stage and they are failings to understand:

1. Failing to understand what is best for the client. It doesn’t matter who is responsible for identifying and solving the problem, client or trusted adviser.  Things will go badly for both sides of the relationship unless it is done well before proceeding to delivery phase.

The challenges here are well understood, new technology in anything from fighter planes to productivity software is a challenge to understand, explain, evaluate, risk manage and decide on.
When it comes to an independent adviser this can be a little easier, but when the adviser is the supplier then it is more difficult to evaluate the accuracy of the material before making decisions. One of the biggest root causes of failing and vastly underperforming projects is poor choice of solution either through misunderstanding the problem, the operating climate, or the proposed solution.

The client has to take responsibility here, there is no alternative.

2. Understanding the problem and knowing what solution is chosen, but not understanding the macro and micro detail of exactly how the solution delivers and whether it really will fit in, switch on and work well enough to deliver on the promise.

Let’s say our customer is solving a scheduling problem and has agreed to invest in an automated scheduling solution. At this point it is hard to fault the logic. This is macro level. Now at Micro level our customer will have discussed certain things like how it interfaces with his ERP system and details like how it chooses who to send a particular emergency to.  All the big stuff and all the sexy stuff tends to get discussed.  What nobody has looked into is whether this system can deal with the fact there are many jobs where a dozen or more customers have to be visited at once in close proximity ( a warden controlled environment for the elderly is just one case).  This is the type of thing that is completely missed out on and grinds everything to a halt at some point, sometimes to the extent of scrapping everything and starting again, but more often by adding to the time and budget estimates, or dragging down the project slowly by reducing the benefits and spoiling the expected return.

3. Understanding the problem and the solution, but failing to understand the ambient climate that affects whether an expected outcome can be reliably predicted, or whether a more conservative approach is required, or perhaps and “all-in” gamble when there is nothing to lose and all to gain. Certainly there is a marked difference between the decisions being made today and those being made prior to August 2008.  I saw EDI solutions implemented at enormous cost at a time when a web page with HTTPS could have solved the same problem.

These three aspects are just small but very important reasons why projects will continue to struggle until they are taken more seriously.

Working relationships have to be enabled and supported, or they will hover close to litigation.

There are no big companies, just people who work at them and most decisions are based at some level on selfish motives. More often than not a supplier’s representative has to meet certain targets and will play the game to defend his margins.

In order to meet you half way he has to feel very confident that you can be trusted and he has to be motivated by gain. Don’t read this wrong, the gain I am referring to is the gain that results from satisfying his superiors, or exceeding their expectations, the gain for a customer representative is very similar though it will often be motivated more strongly by personal risk aversion.  Few organisations reward risk taking and even fewer forgive the risks that mature.

Easy solutions with negative undertones

The easy solution for the sales director, or suppliers project manager is to record what you ask for, make sure it is sufficiently close to what they are offering to keep them on a safe legal footing and then proceed in the knowledge that whenever it goes a little wrong, they will be very sympathetic and give you a bit of a discount on the extra work you needed. This strategy places all the risk on the customer and the further in the he commits the business, the less likely he will be to walk away and admit defeat. This strategy has developed into an art called “contract re-negotiation” that has begun to appear on CVs.

The easy solution for the customer project manager is to ignore the details and make it appear that he is placing all the responsibility for detail on the supplier. Then when it goes wrong they will wrangle and resolve it and he will continue to maintain his innocence and to castigate the supplier.

 

The correct solution is to negotiate the contract correctly from a position of enlightenment and to identify and spread the risk evenlySimplest case

The easy solution for the customer is to hire a red hot BA to document in great detail every aspect of the required solution, ask every question that needs to be answered and double check the fit with the business requirement, business strategy, prevailing conditions.  Having signed this off with business stakeholders, the risk has now been spread evenly and fairly.

The business makes a business decision and takes the strategic risks, the supplier works to a precise specification and prices the job accurately to leave an appropriate margin, the delivery team have only to concern themselves with identifying the risks that remain managing them attending to dependencies and keeping everything on track.
Any unexpected issues are easily categorised as such and there is a clear path for handling them appropriately.

More complex case

Many projects carry with them an element of innovation, this is the stuff of progress and it is critical not to smother it, but to do it well requires a marriage, or at least a fairly resilient affair between the business and the technology partner.

The answer is not surprisingly a combination of the two previous approaches. First of all a BA must do the job of defining the part of the project that is well understood in terms of business need and the supplier must bid for this as though it were the whole project, initially at estimate level.  The areas requiring innovation and carrying higher risk must be evaluated and risk managed so that a maximum cost and a likely cost can be established and the risk level can be well understood.

Once this is done an approach is defined that tackles the biggest impact risks as early as possible in order to allow an early exit if things go wrong.  Regular stage gates are planned so that there are opportunities to revise risk and cut losses early.  Managing the risk in this way makes this aspect of the project less likely to fail catastrophically and brings it out in the open early.  Working relationships tend to prosper in this type of environment and good relationships deliver good outcomes.

Risk management is like charity, it must start at home.

The first and by far the greatest risk to every project is the culture of the organisation.  As this report supports, many project managers turn a blind eye to political situations that can’t be discussed and proceed in the hope that all will be well.  Some of these situations include: mixed feelings in the boardroom and tripwires around every corner, Gadget freaks in the senior management who want to add on stuff they would like to play with.  Management who shoot the messenger, but can easily be fooled. People who get involved with the suppliers or their staff socially and undermine the project team.  There are many more examples of very serious risks that remain unspoken, but are responsible for a great many failures.

 

 

Reblog this post [with Zemanta]

April 26, 2009

UAT – me, how do I do that?

Previous installments

IT investment for the smaller business
Why the Smaller business holds all the cards
Where has alll the money gone
Requirements gathering the first big mistake
Contract negotiation and on we go

Well here we are, though dragging slightly due to the unexpected holdup when everyone was so inconsiderate as to take a long break in the Summer and get all relaxed. It seems like a very short time despite the months that have passed, but we are now nearing a milestone when the vendor delivers the systems to us and according to both the vendor’s project manager and the IT manager, we are expected to do something called UAT.  Of course it’s not written in law anywhere, but to our project manager, it may as well be because he is following the conversation two sentences behind and trying not to look too foolish.  The vendor is still driving the agenda alone and the IT manager is still sulking, but gaining in confidence as the project approaches his territory.

The problem with COTS purchases and traditional testing methods is just that.

Well, it’s just that the methods were designed for a world where teams of engineers spent months writing code and then began to stabilise it and introduce it slowly into the business environment until it was a stable release and a good match for the tightly defined requirements.  At least that was the theory, there were usually problems about interpretation of the requirements and about how the outcome was actually achieved, but at least the bits did fit together and they followed a well established pattern. Vmodel was and still is the standard.

 That was a simple theory, you had to created business requirements, the analysts translated this into designs, the developers translated that into systems, then it was refined to make it usable and fill the gaps in interpretation of business requirements.

Logically therefore, you tested the business requirements with stakeholders and got it agreed, then the designs with business analysts to make sure it was properly interpreted, then the system to make sure it fitted the design. Along the way, there had to be technical testing to make sure it could run on the clients environment correctly and then a bit of testing to make sure it worked well enough for testers to commit weeks or months of their time.
Finally you arrived at the point where you had a working system that had no major bugs and appeared to meet the needs of users and it was time to let them loose on it.  That was UAT.

It usually flushed out little bugs that had been missed, it also flushed out poorly interpreted requirements that just didn’t work in a live environment. Additionally, it served as a way to win over key users and pre-empt any likely resistance to the process change aspect.

For a simple explanation, that has taken a bit of effort and probably lost me some readers, but it’s not a simple business.

So how does our project manager apply this to a piece of kit arriving on a CD with a few minor customisations and integration endpoints?
Maybe not the million dollar question, at least not every time, but an expensive one often.

Our friend has no detailed requirements to work to, because the initial ones were not adapted, but instead, the sales guy sold an existing package and said it will meet the requirements you described. If our friend hires a tester, he will need to go to the vendor’s and ask them to help him list exactly what this system is expected to do for the client in order that he can test it.
Were he to do that, alarming as it may sound to many readers, at least a start would be made on understanding what has been agreed, what is expected by whom and what the likelihood is of all these stakeholders being in the same book let alone page.
Now I am not a sadist, despite what you may be thinking and I have no intention of bringing up the business case and the business goals at this point, our poor friend is in enough trouble already.

The IT manager is now beginning to ask awkward questions and making apparently unreasonable demands about some sort of complicated and time consuming testing before he lets us install our system on “his” environment.  Is he out to get us? He never really was supportive anyhow, because he felt he should be in charge.

So where have we got so far?

We identified the need for change and made a business case for investment of the businesses capital based on some modest assumptions sound process change and cost reduction due to efficiency and we got the go ahead to do it.  We have not tested these assumptions against the new system being proposed and we have no idea whether any of the goals will really be met other than a stirring presentation and “good feel” from the vendor’s sales rep.

We found a supplier that we felt we could work with and agreed a contract, we know of course that that contract was tipped 90% in favour of the supplier, but we hoping that all will end well.

We are now approaching eminent delivery just a little behind schedule, but nothing to worry about and we are very confused about the communications coming from the vendor’s team. We are expected to complete “UAT” in three weeks and then sign off acceptance and pay the final instalment for services and we will begin to pay the support and other fees immediately. This has a very final and serious ring to it.

We are gathering up a few people and arranging a room where they can sit and “play with” this system for a few weeks. Then hopefully all is well and we are done.

We have met our milestones so far, the budget is at or below forecast and the CEO is very impressed with us, let’ s hope these IT guys don’t spoil the party.

Next:

Whose fault is it anyhow ?

 

Reblog this post [with Zemanta]

April 15, 2009

Contract negotiation and on we go

Previous installments

IT investment for the smaller business
Why the Smaller business holds all the cards
Where has alll the money gone
Requirements gathering the first big mistake

A shock for the project manager

In the last instalment we discussed the way in which a vendor had been chosen that near total disregard for the goals of the project in the course of making that decision. Now we will look at what happened after the decision was made.
The next agenda item directly after awarding the contract was to negotiate and agree details and on this occasion it was lead by the vendor’s legal team and the sales rep.  The atmosphere was very warm and jovial and nothing was too much trouble in the vendor’s quest to make the new customer happy.

So far so good

The contract was agreed just after lunch on day two and everyone went away with a sense of achievement. 
Deliverables were carefully defined and the acceptance criteria was very forgiving. It would have been clear to any pro that there was a lot of stuff not mentioned that would need to be done and paid for, but it was not brought up.  The bulk of the cost was loaded up front with a year’s licenses to be paid for immediately and support to begin charging on contracted release day.
There was an SLA, but it gave no guarantees of times to fix issues, only times to address them. The rate for professional services was a little steep at £1400 a day but it seemed academic.
The real problem with this contract was that it never referenced the now academic requirements documentation (In any case it was pretty useless) and
the contract revolves entirely around delivery of a certain feature set as described by the vendor in features language, not in business need language.
Success criteria is defined as delivering this feature set by a given date and to a given cost
At this point we have two teams involved; a project team that is now providing services to the vendor to get the job done and a vendor with the goal of delivering the described features and getting paid.   Our initial problem of lack of experience and know-how in the sales and marketing teams has never been addressed and is not on anybodies radar and there is nothing anywhere, either spoken or written to say that delivery of this feature set will solve the defined problems I.E. the business case has been forgotten. In fact the thing that really swayed the decion on which vendor to use was a very sexy system that lets  the user record telephone conversations and the hardware to make this work pushed up the cost.   
Here’s the shock for the project manager.
The sales rep is now cosy with another potential client and the project manager is now dealing with the professional services team tasked with delivering the project to  tight budgets.   Now he’s dealing with a real project manager and a hard nosed business man who survives by taking no prisoners and earns bonus by growing the contract value through extras. He is a past master at dealing out the rope and charging to reel it back in and he’s seen all the snivelling before. He is the essence of tact and diplomacy but his hand is firmly in the project managers pocket.

The roller coaster

Within two weeks of contract completion, the mood has turned frostier and it is clear that this is not precisely what the project manager had expected and hoped for.  Everyone is now locked into a roller coaster of milestones and budgets and the reason for it all is completely forgotten. That was handled in phase one, wasn’t it?  You get on in the corporate world by meeting milestones, not by delivering results and certainly not by making waves.

We are where we are

We are now on ride that won’t slow down until this thing, whatever it is going to look like, is delivered and we can start the job of making it work and getting people to use it so we don’t lose face.
Nobody who suspects the truth, if such a person exists, has the seniority or the courage to step out of the line shout horses@”!* and nobody with the authority or the presence to do something has any idea that things are not what they seem.

 In the next installment we will look at the the end game

About the author

March 26, 2009

Where has all the money gone? – you wouldn’t believe it

Part one – why?

Previous installments:
IT investment for the small businessman and novice
Why the SMB/SME holds all the aces when it comes to IT
In our last instalment we talked about the advantage an SME/SMB has over it’s bigger rivals when it comes to implementing technology, especially around the aspects of communication, business change and lack of red tape. 
Don’t let this reference to red tape fool you. It is mission critical to understand the difference between vital  process and red tape and it’s not always immediately obvious.
The key to cost cutting in any area is knowing what to cut. The word we are after is waste, but even that can be misleading.  In the world of Lean everything outside of the critical value adding moment is deemed to be waste, but nobody imagines that you can eliminate most of it let alone all.
The best approach is to look at where the money goes in a typical systems implementation.
Let’s take ACME  cash registers.
They have a turnover of 200 million and they have countless systems handling different aspects of their relationship with customers.  Nobody in the organisation has the full picture at any time bout any customer.
Sales people call with an Upsell proposition within an hour of the customer complaining bitterly to support.

  • Customer enquiries get written on cards and handed to salespeople who then lose a percentage or forget to mark them up so 14% of leads are never followed through. (any of this sound familiar)
  • The last time they tried a mass emailing they only had email addresses for 34% and two thirds of those were returned undelivered. This resulted in their IP address being registered as a spam house and for three months their emails were being destroyed by a robot and never arriving.

Ok this is just the tip of the iceberg, but you get the picture. The new VP of sales has read the riot act and reluctantly he has been promised that they will try and find some budget to help out. Where do we go now?
In our next contribution we will provide an insight into how not to approach it and the we will move on to  look at a simple model for getting this job done.
Requirement gathering the first big mistake

  About the author

 

Older Posts »

Powered by WordPress