Archived entries for project management

Vision, passion and personal investment

Something that is common with the start-ups I’ve been involved with, and stories of entrepreneurialism you can read is the passion of those involved.  They have a drive and desire to succeed, backed by enthusiasm and belief for the product they are building.   More often than not, they are personally invested in the project; maybe it is a problem that they feel needs addressing (Dyson), or an opportunity in an industry they are familiar with. It almost always it goes beyond just a job, it is a hunger to bring change and make a difference.  They have a vision, it what drives them, yet they are willing adapt the original vision and move with agility as circumstances dictate.

FlickR started its life as a tool in a role playing game.  The game was not successful and ultimately shelved (fail fast) with the photo sharing capability being developed; the team realised where the value was rather than sticking to a failed big up front plan.  If you go back in time to 1999 and look at how google described itself:

Google Inc. was founded in 1998 by Sergey Brin and Larry Page to make it easier to find high-quality information on the web.

Nothing there about browsers or phone operating systems or word processors or spreadsheets.  Twelve years to go from a search engine to the Google we know today.  Place that lens over most enterprises and how have they managed to adapt to the changing world?  I know of several enterprise projects that are three plus years in, (that’s a quarter of Google’s life) and have still yet to start delivering value.  You don’t get that with start-ups, or places where vision, passion and personal investment drive the product strategy (thinking Apple and Steve Jobs for example).

I’ll lay the fault at Enterprise Culture.  Silo thinking and career progression through the ranks.  So an individual is personally invested in delivering documentation that specifies the system.  When she delivers these she is done.  What happens next is someone else’s problem.  Reward is rarely for delivering the overall vision, why should it?  How often do all stakeholders involved in a project have a strong grasp of the what’s and why’s of what they are doing?  They are only rewarded on the how they deliver the fragment that they are responsible for.

When IT becomes a supplier rather than a partner, no-one has ultimate responsibility for delivering a coherent holistic vision, it becomes a contractual relationship rather than a passionate obsession.  Funding projects is all to often a charade and a nonsense.  The business submit their funding requests (a line item for a potential project) for the forthcoming financial year in the autumn / winter.  Budgets are finalised in the Spring with the new financial year and months have elapsed due to internal budgetting and accounting formalities rather than the ability to respond to the market.  Contrast that with the start up model with seed funding to get started and if the projects shows viability second round funding follows.  If the project is not viable it is suffocated before wasting cash.  (There are interesting perspectives on this leaner model at Beyond Budgetting).

I wonder if in these lean times we are going to start seeing lean thinking applied to enterprises and a start-up culture being nurtured.  There is certainly a growing interest in agile, beyond the practitioners and from C level executives.  But agility in software development is only the first step.  To be really successful it needs to spread through the whole organisation, not just paying lip-service to the word “agile”, but devolving responsibility to individuals and collaborative, cross-organisation teams who can share the vision, passion and are personally invested in getting the right quality products to market at speed.

Tractors, nuclear powerplants and the bleeding edge

It is common for organisations to select a major technology leader (such as IBM or Oracle) and ride their product development cycle.  On client I worked for stated that they would:

“not follow a ‘best-of-breed’ approach, but rather select a major technology leader (IBM)… This means we explicitly seek and accept the “80% solution” rather than trying to optimise for each and every possible requirement. …Shortcomings will be made explicit in order that we can escalate with IBM, and influence their product strategy”.

Influence the IBM product strategy.  Good luck.  This one-size-fits all approach to technology maybe appealing on paper, and certainly has its benefits, you recruit a certain type of developer who has skills in that technology stack, if you are big enough your buying power may get a small voice in future releases that you will pay through the nose for.  But is it the best approach for the business?  A colleague, Stuart Hogg, takes three metaphors for enterprise IT.  The tractor, the nuclear power plant and the bleeding edge.

The tractor. This is the technology that keeps the lights on.  It is commodity software, it is the HR system, email, intranet etc.

Nuclear powerplant. This is the (generally bespoke) mission critical software that drives the business.

The Bleeding edge. This is the platform where you do cutting edge stuff, test and learn.  The ideas may one day be migrated to the nuclear powerplant.

All too many organisations get confused between these three models, loose sight of where they should be investing and plump for a one-size-fits-all technology to do all three.  Thus we see tractor technology trying to do the bleeding edge (Is it possible to innovate at speed with those Big Enterprise Solutions?)  By trying to combine utilitarian computing with strategic and speculative innovation, using the same skillsets, timeframes, processes and models, IT will never truly deliver the value for which it is capable.  Another ThoughtWorker, Ross Petit reiterates this point using a banking metaphor of utilitarian retail banking and speculative investment banking. He divides IT into “utility”, around 70 percent of IT investment (tractor and the nuclear powerplant); and “value add” the other (bleeding edge)30 percent.   Like other utilities such as electricity and water, ‘you don’t typically provide your own. You plug into a utility service that provides it for you’.  In IT that means SAAS and outsourcing and taking a strategic decision to differentiate between the different functions that IT performs.  He concludes:

Separating utility from value add will make IT a better performing part of the business. Because they’re comingled today, we project characteristics of “investment” into what are really utilities, and in the process we squandor capital. Conversely, and to ITs disadvantage, we project a great deal of “utility” into the things that are really investments, which impairs returns.

As a business function, IT has no definition on its own. It only has definition as part of a business, which means it needs to be run as a business. The risk tolerance, management, capabilities, retention risks, governance and business objectives of these two functions are vastly different. Indeed, the “business technologist” of value added IT needs a vastly different set of skills, capability, and aptitude than she or he generally has today. Clearly, they’re vastly different businesses, and should be directed accordingly.

Separating the utility from the value add allows us to reduce cost without jeopardizing accessibility to utility functions, and simultaneously build capability to maximize technology investments. Running them as entirely different business units, managed to a different set of hiring expectations, performance goals, incentive and reward systems, will equip each to better fulfill the objectives that maximize their business impact.

Hey usability dude, join the devs (Usability rant part 3)

The last couple of posts here and here have been critical of boutique usability companies that offer user testing services. In the final part of my rant, here’s an alternative approach.  Seed into the development teams someone with a usability background (probably with a psychology degree), someone who can create as well as critique.  Align them to Marketing (or ‘the business’) but physically locate them in IT.  To be successful they must be a passionate advocate for the business vision (hence business alignment), but unless they have a daily relationship with the developers (on hand to support immediate design decisions) they will fail.  (The only way to do this is for them to be part of the development team, same building, same floor, same location).

It is better than they Eschew the formal usability testing process for more informal guerilla usability testing.  In an agile project treat this as akin to the showcase.  Testing sketches and wireframes prior to the development iteration, and putting working software when it has sufficient UI coherence in front of users and well as business stakeholders, with the developers as observers in the process.  One person can cover multiple workstreams.  This is a far better use of a limited budget than commissioning ad-hoc reports too late in the day.

Petition

I’ve written in the past about the government’s abysmal track record on IT development.  I met with the local MP to discuss the issues but he didn’t really get it; he sent me away to write a policy paper for him which I really had time for…  So good news that someone is doing something about it with a petition on the Number 10 website.

In his recent update on the progress of the petition, Rob Bowley mentions the Rural Payments Agency project.  I can’t attest to either have been an ‘expert’ or to have had a salary anything near what he mentions, but I was a consultant on that project so nod in informed agreement.  That experience gave me a benchmark to compare ‘bad’ ways of going about an IT project to compare with the ‘good’ world of lean and agile that I now inhabit.

Please sign the petition.

Are you prepared for the dip?

So you are refreshing or rebuilding your website.  You are introducing new functionality and features, and sweeping away the old. You’ve done usability testing of your new concepts and the results are positive.  Success awaits.   You go live.   And it doesn’t quite go as you expected.  You expect that the numbers and feedback will go on an upward trajectory from day one, but they don’t.  What you should have expected is the dip.

Illustration of the dip

In October 2009 Facebook redesigned the news feed.  Users were up in arms, groups were formed and noisy negative feedback was abound.  A couple of years back the BBC redesigned their newspage, “60% of commenters hated the BBC News redesign“.  Resistance to change is almost always inevitable,  especially if you have a vocal and loyal following, you can expect much dissent to be heard.  What is interesting is what happens next.  Hold your nerve and you will get over this initial dip.  We’ve seen a number of projects recently where this phenomenon occurred; numbers drop and negative feedback is loudly heard.  But this dip is ephemeral and to be expected.  The challenge is in planning for this and setting expectations accordingly.  Telling your CEO that the new design has resulted in a drop in conversion rate is going to be a painful conversation unless you have set her expectations that this is par for the course.

Going live in a beta can help avert the full impact of the dip.  You can iron out issues and prepare your most loyal people for the change, inviting them to feedback prior to the go-live.  Care must be taken with such an approach in the sample selection o participate in the beta.  If you invite people to ‘try out our new beta’, with the ability to switch back to the existing site, you are likely to get invalid results.  The ‘old’ version is always available and baling out is easy.  Maybe they take a look and drop out, returning to the old because they can.  Suddenly you find the conversion rates of your beta falling well below those of your main site.  Alternatively use A/B testing and filter a small sample to experience the new site.  That way you will get ‘real’ and representative data to make informed decisions against.  Finally, don’t assume that code-complete and go-live are the end of the project.  Once you are over the dip there will be changes that you can make to enhance the experience and drive greater numbers and better feedback.

A leap of faith

We recently pitched to a prospective client.  We told a story of how we believed their customers would use the new product they had sketched out in the RFP; we told a ‘day in the life’ and brought it to life with illustrations.  We walked through our approach to tackling projects and described our experience on similar engagements.  One of the bid team described his experiences and what the client could expect and we guaranteed that he would be on the project.  We let them have a rate card, and an indication that, comparing what we knew of the project with others that we have successfully delivered, what they indicated they wanted in the RFP was in the range of their budget (which we knew).  We let have them directly relevant references who were ready to take their calls.

What we didn’t do was produce them a project plan, nor a definitive cost.  Given the paucity of information in the RFP there was just not enough to go by; it would be a lie if we came up with a number, there were too many imponderables.  Yet that was what they craved the most.  Most of the questioning was friendly and we answered well, however one question sticks in my mind: “From your presentation, you are asking us for a leap of faith to engage you”.  Well yes, we are.  But is that any different to the way you engage any new contractor?  It is always going to be a leap of faith; even if you engage one of the big trusted brands with an established reputation.  Sainsburys and NHS took a leap of faith when they engaged my old employer Accenture; they probably felt they had done all the necessary due dilligence and were partnering with a proven, reputable organisation, but in those two instances good things did not result.

About a successful project that was a failiure

On time, on budget, to the scope that was agreed from the outset of development.  A successful project?  Well no actually.  It was a complete failure.

Here is a story about an insurance company with a number of differnet products sold through intermediaries.  Whilst the intermediaries were good at selling single insurance products, they weren’t so good at cross-selling or up-selling other products.  Focus groups with the intermediaries revealed that they didn’t know about all the other types of insurance available through the company.

What if the intermediaries could have a portal where they could access all our insurance products in the same place with customer alerts and sales support prompts identifying further selling opportunities?

From this initial idea a benefits case was pulled together consisting of a product definition and financial projections.  In pulling together the benefits case, the potential revenue uplift numbers surprised everyone.  Signing off the benefits case on the new Intermediary Portal was duly signed off, and the product definition was handed over to IT to build.

Being an agile IT shop, the business and developers sat down together and got their heads around the product definition.  It soon became clear that the challenge was one of “single sign-on”.  Each of the insurance products offered were on a different legacy application that required the intermediaries to sign-on with different credentials.  To bring them all together in a single portal was far harder than the simple problem that the initial product definition suggested.

In pulling together the benefits case, a rough estimate had been supplied by IT. Now it was an in-flight project with an initial list of stories, it became clear that they had significantly under-estimated.   Of the twenty different products that the business wanted on the portal, for the budget the business had set aside would deliver barely four products.

With new estimates a release plan was drawn up.  Release one would deliver single sign-on across four products identified by the business as being most profitable.  All the  sales support tools were de-scoped and scheduled for a third release with the second release delivering single sign-on for the remaining products.

Development started, the business stakeholders worked closely with the developers and the First Release of the Intermediary Portal went live with congratulations all round.  Funding for the next release was lined up depending upon the success of the first release.  But that success never came, take-up was less than expected and the cross and up-selling never materialised.

The proposition to the intermediaries as delivered was flawed; the portal had to be all or nothing, single sign-on across four unrelated products was not compelling to them.  There was no sales support.  The intermediaries thought “so what?”  IT had delivered on the business requirements yet the project was deemed a failure.

This story tells a striking lesson. The project failure was due to a lack of joined-up thinking.  The business and IT both had followed their processes and done the right thing.  The business had identified an opportunity, built a benefits case and had this signed off.  IT had run a model agile project with close engagement with the business.  However whilst both stages of the process were locally optimised, they were done in isolation of each other.  Once the (development) train had left the station both sides were committed to delivering the product portal.  No-one returned to the business case, no-one went back to the end users, the intermediaries and asked whether the cut down scope for the first release would actually be of value to them.  More importantly, IT were engaged too late in the process.  The business had settled on an IT solution to the problem without engaging IT.  Had IT been party to the ideation and visioning process they would have been able to raise the risk of the project complexity earlier on.  Indeed they could have killed the project before it started.

Returning to the initial problem; “intermediaries weren’t so good at cross-selling or up-selling other products… Focus groups with the intermediaries revealed that they didn’t know about all the other types of insurance available through the company.”  The problem didn’t need a portal solution. The issue was one of awareness; almost certainly an off-line marketing campaign would have delivered a greater ROI without the need for IT to build the wrong product.

You need to accelerate and change gear to get up to speed

Velocity is a simple concept to grasp when planning and managing an agile project.  It is one of the first formula you learn in maths (or is it physics), speed equals distance over time.  On a project the distance is scope, measured in the number of ‘points’ you need to complete.  So if the team has a hundred points worth of scope and a velocity of ten, they will complete distance (scope) in ten weeks.  It’s a simple calculation, but is dangerous and wrong.  It fails to take into account acceleration.

Just in the same way that it takes a car time to accelerate to a meaningful speed, so a project takes time to reach it’s planned velocity.  To reach 60 miles an hour takes ten seconds and means moving through the gears.  You don’t put your foot on the accelerator and suddenly find yourself doing sixty.  Nor do you put the car into forth gear and expect to move without stalling.  It is the same in agile projects.  Velocity is misunderstood; you cannot expect to have your planned velocity immediately without acceleration.  Similarly, putting a fall sized team onto a project is like trying to start in forth gear.  You will stall.

When planning an agile project you need to consider acceleration.  The first iterations will be slow as you come up to speed.  Secondly you need to be in the right gear for where you are at.  Start in first (small team) and change gear (ramp the team up) as the velocity requires it.  Better to have the engine screaming in first (change gear) than to have it stall before it’s even got going.

Sadly, this means the simple pictures on burn-up and burn-down charts are wrong.  They need to take into consideration acceleration and appropriate gearing.  And that is advanced maths.

Are you managing expectations beyond the team?

There’s this idea called the Disconfirmation of expectations theory that states that having unrealistically high expectations from the adoption of a new IT application will result in lower levels of realised benefits.  Get customers excited about a new product and fail to deliver on it and you will have unsatisfied customers.  And unsatisfied customers are unlikely to use the product to its full advantage.

There is a risk with products developed using agile approaches that they fail to deliver on their initial promise.  The immediate stakeholders know that the product will evolve incrementally, but is this true of the broader audience? Are they aware of the intended regular heartbeat of delivery or are they expecting a fully featured product at the first release.  How are you managing expectations beyond the immediate product team?

Be wary of what you say early on.  Creating a vision is essential but be mindful of how this is communicated. Early demos, proof of concepts, prototypes, wireframes often show a vision of the end goal, several releases into the future.  Words are easily forgotten, explaining that this is an end goal vision is not enough, you must show a vision of what the cut-down product for the first release is and ensure it is appropriately communicated.

Expectations work both ways, it is easy for the business to tell IT their requirements and assume they will be developed in their entireity in one go.  Similarly it is easy for agile developers to expect the business to understand their incremental approach to delivery. The key to success is effective change management; identifying all stakeholders (both core and peripheral) and create a culture of agility that goes beyond the immediate project team.  In a large organisation that maintains more traditional approaches, agile projects must be supported by a well designed communication plan that builds the relationship between both IT and the business. Identify whose life will be touched by the product and develop a strategy for communicating to them.  This doesn’t mean “they can see what is going on on the project Wiki” this means someone taking responsilibity for listening, engaging and evangelising on the product, the project and its goals.

Have you considered the cost of context switching

One of the great things with running a project with Microsoft Project is that it enables you to allocate resources to activities and you can assign the time they work on each activity.  A resource can then work on several projects at the same time, 50% on project A, 50% on project B.

With this ability it is easier to accommodate multiple projects that the business request.  Rather than having to say we can’t start on a project in six months when the current one finishes, we can run both projects at the same time, using the same resources.  We can do things in parallel rather than in series.

Only it doesn’t really work like that.

One of the great things with running a project with Microsoft project is that it enables you to allocate resources in a way that hinders productivity, effective planning and quality.

The problem is with context switching and the overhead that multi-tasking brings.  This article succinctly describes the problem.

No matter how efficient you think you are, multitasking comes with a high cost. Because we’re people, we don’t swap out the content of our brains as easily as a computer does, and we definitely don’t swap in the old state when we’re ready to return to the original task.

Gerald Weinberg, in Quality Software Management, Vol. 1, Systems Thinking (Dorset House, 1992), estimates the context-switching cost among three tasks to be 40 percent. That means that 40 percent of your available work time is spent on non-task activities. The rest of the time is split among the three projects. So, if you thought that in a 45-hour week, you could spend 15 hours on each of three tasks, don’t kid yourself. You’re really spending eight hours on project A; eight hours on project B; eight hours on project C; and 24 hours context-switching, figuring out where you were and what you have to do next. The time spent on each project works out to about half of what you expected.

So whilst it is easy to appear to please business sponsors by taking multiple projects on at the same time, and the model of working in parallel rather than in series being a politically favourable approach, in fact the costs of multi-tasking far outweigh the benefits.



RSS Feed. This blog is proudly powered by Wordpress and is based on the theme Modern Clix..