Pages

Sunday, 7 June 2015

Deming The Man

How to Develop Winning Moves to Take Advantage of Trends


Trends can be very difficult to recognize or predict early on. In the early days of MySpace and Facebook, who would have predicted it to be the start of a multi-billion dollar industry? Whether you’re on board or not, industry trends will take you in directions you have no control over. Trends are like waves in the ocean, and businesses, both big and small, have to navigate their ebbs and flows.
It’s easier to recognize the trends that work with you and help you along in the direction your business is heading because you feel successful, excited, strong and maybe even intelligent. It is much more challenging to recognize trends that go against your current business strategies because it can cause fear, uncertainty and doubt, which could lead you to question your knowledge and expertise. But trends are bigger than us – it takes more than just one person or one company to set the trends, so all businesses must learn to recognize the ones that will propel you forward.
However, it’s hard to stay on top of trends while managing the day-to-day business. Blocking out some time once a week to focus on understanding what trends affect your industry and how it might affect your business can be helpful. Reading trade and industry news, either in magazines, digital publications or even by following them on Twitter, will also help keep you on top of the latest trends. Try checking your social media feeds daily while you drink your morning coffee, during lunch or when wrapping up your day. Any time of day is fine, as long as you get yourself into a rhythm of studying trends regularly.
Once you have identified the top trends in the market that can help your business grow, you can set strategies that will take you to the next level. In my latest book,Rhythm, I discuss the steps to take to identify and review your winning moves – the strategies that bring you revenue growth. Review your current winning moves against current trends in your industry every quarter to see how they’re affecting your forward progress.
Do your winning moves become even stronger because of current trends you notice? Or do they become weaker or less effective? If it hurts a winning move, take time to work on potential adjustments. If it kills your winning move and turns it into a losing move, then it’s time to dump it and move on to working on new winning moves.
The sooner you recognize a winning move that is off-trend, the quicker you can move your precious resources into other winning moves or even develop a new one to replace it. Come up with a few ideas and then ask yourself these questions:
  • Am I passionate about this idea?
  • Does it further hone our top competence or skills?
  •  Will this idea generate the right type of revenue (business that we are great at delivering)?
  • Does it take us closer to achieving our long-term goals or further away?
If you answered yes to the first three questions and you think it’s something that could help get you closer to your long-term goals, then it’s time to objectively compare your ideas and decide which winning moves are worth pursing based on their impact and ability to execute.
In addition to developing your winning moves, it’s also a good idea to have a weekly “Think Meeting” with your team to discuss trends. I know you are probably thinking, “Ugh, not another meeting,” but this doesn’t have to be a long, drawn out formal meeting. My business partner, Cindy and I have lunch once a week to discuss these ideas. During this time, don’t focus on choosing strategies, rather focus on thinking and working on the ideas. Allow yourself to dream a little and figure out the execution part later.
So now that you’ve got a winning move, it’s time to develop your execution plan to bring your ideas to life. Come up with key initiatives and work them into your annual plan to help get you closer to achieving your objectives. Each quarter, you should track and test your progress toward achieving your winning move. It’s important that you keep testing your assumptions, documenting new discoveries and making adjustments to the plan as you go.
Lastly, create a few key performance indicators (KPIs) that link back to your winning move to track how you’re progressing toward your goal. Discuss these KPIs objectively during your weekly team meeting to see if your winning moves and adjustments are working.
No matter what you do, trends will always ebb and flow, so don’t stress over them – work with them. It may seem like a lot of work to observe trends daily and then discuss them weekly and quarterly, but having this ongoing rhythm will help better prepare you for your annual and strategic planning sessions. 

Saturday, 6 June 2015

Zombie Projects: How to Find Them and Kill Them

MAR15_04_167361097
“You will never find them,” said a senior leader in a multibillion-dollar IT company.
The “them” the leader was referring to were zombie projects: the nefarious enemies of well-intentioned innovation efforts around the globe. Zombies are projects that, for any number of reasons, fail to fulfill their promise and yet keep shuffling along, sucking up resources without any real hope of having a meaningful impact on the company’s strategy or revenue prospects.  
We had suggested that at least one reason why the company was struggling to successfully commercialize innovative ideas was that zombies were draining its resources and clogging its pipeline. The leader was skeptical.
He thought we wouldn’t find any given the company’s highly rigorous planning process. Every year scores of people spent months reviewing recent performance and sanity-checking future projections. Every project went under the proverbial microscope. So how could a zombie project possibly exist?
A zombie project spawns in predictable ways. The project certainly makes sense when first sanctioned by leadership. Its financial projections, while always uncertain, look reasonable. Market assumptions seem plausible. The development timeline looks achievable.
But somewhere along the line, something happens. The technology doesn’t quite work as planned. A competitor does something unanticipated. A key partner decides not to participate. Customers react in an unexpected way.
Project team members know that what’s happened isn’t good, but it’s hard for them to acknowledge when a project has come off the rails. Psychologists have pointed out how we suffer from confirmation bias, paying more attention to the things we expect and ignoring the things we don’t. And even when we’re aware of setbacks, we’re prone to using the affect heuristic — when we believe in something, we play up good news and ignore bad news.
At some point the data do become overwhelming, and if you gave team members truth serum, they’d admit that the project will never contribute meaningfully to the company’s financial and strategic goals. But since in most companies reward systems carry strong penalties for failing to meet commitments, people hesitate to raise their hands and say “Our project is one of those.” It just looks smarter to find ways to stay alive.
We had spent enough time with our IT company to know how skillfully project leaders could subvert the disciplines of the budgeting process to keep their zombies shuffling along. One recipe for survival: project big revenue numbers five years in the future but ask for only modest investment in the near term. In the next budget cycle, repeat the process so that projected revenue always stays safely beyond the planning process’s two-year horizon. As long as the team successfully manages its costs, everything’s fine, since there’s essentially no penalty for perpetually projecting, but never hitting, long-term targets.
Every budgeting system has its quirks, and innovators in survival mode will skillfully find and exploit them. To fight against these challenges we proposed a “zombie amnesty” — a period during which people can come clean, put their projects up for consideration, and suffer no repercussions if a project is terminated. The critical point of the amnesty is not to lay people off to cut costs but rather to allow the company to invest in new growth by redeploying them to more promising projects.
When we evaluated three dozen efforts for this IT company using realistic projections of possible revenues, we found 20% of them were zombies that didn’t warrant continued investment. Shutting those projects down without penalty would free up enough funding to support two years of more strategic innovation activities.
In a December 2014 HBR article, we argued that these kinds of zombie amnesties are a vital component of a systematic approach to innovation. But they aren’t easy to pull off. Based on our work and the work of like-minded academics — most notably Rita Gunther McGrath of Columbia University (a certified zombie killer if ever one existed) — we’ve identified six keys to doing it successfully:
  1. Use simple, transparent, predetermined criteria. Shutting a project down can be very emotional. Setting and sharing a shortlist of criteria before the process begins helps participants view the process as rational. At the most basic level, we always ask three questions about an idea: Is there a real market need? Can we fulfill that need better than current and potential competitors? Can we meet our financial objectives? Whatever the criteria, remember they are guidelines, not rules. Final decisions will always require some degree of subjective judgment.
  2. Involve outsiders. Parents will attest to how hard it is to be objective about something you’ve played a part in conceiving. An uninvolved outsider — someone from a different division or from the outside entirely — can bring important impartiality to the process.
  3. Codify lessons learned along the way. McGrath teaches that any time a company innovates, two good things can happen. The idea is successfully commercialized (clearly good), or — even if it is not — you learn something that sets you up for future success. Hold action-after reviews to capture lessons learned and create a living database to store and share those lessons. As research shows that “knowledge gained from failures [is] often instrumental in achieving subsequent successes,” investing to capture and spread knowledge from your zombie projects maximizes the return on those investments.
  4. Expand the definition of success. Executives at large companies often fret about how to match the upside potential enjoyed by start-up entrepreneurs. They should spend far more time worrying about what happens to innovators that work on projects that don’t succeed commercially. After all, when taking well-thought-out risks carries the risk of punishment, it’s no surprise that people hesitate to take any risks. Any time you innovate, future success is unknown. Therefore, learning that an idea is not viable is a successful outcome, as long as those lessons are learned in a reasonably resource-efficient way. Pat team members on the back when they’ve given you that precious gift.
  5. Communicate widely. This might sound counterintuitive, but broadcasting commercial failures widely encourages future efforts, because innovation happens most naturally at companies that “dare to try.” That actually is the name of anaward given by the Tata Group, India’s leading conglomerate. The award “recognises and rewards [the] most novel, daring, and seriously attempted ideas that did not achieve the desired results.” Shining a spotlight on these kinds of efforts naturally makes it safer for people to push the innovation boundaries. After all, if you don’t dare to try, how can you hope to succeed?
  6. Provide closure. This idea is ripped straight from McGrath’s excellent 2011 HBRarticle, “Failing by Design”: “Have a symbolic event—a wake, a play, a memorial—to give people closure.”
The Finnish mobile gaming company SuperCell, which was valued at $3 billion only three years after its founding, demonstrates the power of following these disciplines. At SuperCell, success is celebrated with beer, failure with champagne. Mistakes are addressed with brutal honesty, as when after a year of development and investment the company decided to scupper a multi-platform approach that fell short of its development targets. By decisively killing a potential zombie project and yet celebrating the good work of the team, SuperCell allowed its members to shift their focus to a better idea. In this case, they went on to develop the massively successfulClash of Clans game.
Almost every company has more resources than it realizes. Find and put the zombies down, reallocate resources to your most promising projects, and you will suddenly find your innovation efforts getting better and bigger faster.

About the value of the business process modeling and opportunities to transform organizations

Friday, 5 June 2015

Process Focus vs. System Architecture

Too much of a focus on the on the business process can cause a business solution to be poorly designed and problematic.  This is a story from several customers who followed the BPM methodology too well, and were blindsided by some nightmarish systems issues.  Too much process can be a real problem.

Process is King

We know that the mantra for BPM is to design everything as a process.  The process view of work allows you to assess how well work gets from beginning to end.  It allows you to watch and optimize cycle time, which is essential to customer satisfaction.
BPM as a management practice is excellent.  However, many people see BPM as a way to design an application.  A process is drawn as a diagram, and from this the application is created.  This can be OK, but there is a particular pitfall I want to warn you about.

A Sample Process

Consider the following hypothetical process between servers in a distributed environment:
exactly-onceHere we have a process in system B (in the middle) that splits into a couple of parallel branches.  Each branch uses a message to communicate to an external remote system (systems A and C) and start a process there.  When those processes complete, the messages comes back and eventually the middle process completes.  This is a “remote subprocess” scenario.
What is the matter with this?  This seems like a pretty straightforward process.  The middle process easily sends a message.  Receipt of that message easily start a process.  At the end of that process, it easily sends a message back which can easily be received.  What could go wrong?

Reliability: Exactly-Once

The assumption being made in this diagram is that the message is delivered exactly once.  “Exactly-once” is a term of art that means that the message is delivered with 100% reliability, and a duplicate is never seen by the receiver.
Any failure to deliver a message would be a big problem:  Either the sub-proesses would not be started, or the main process would not get the message to continue.  The overall process would then be stuck.  Completely stuck.  The middle process would be inconsistent with the remote processes, and there is no way to ever regain consistency.
So, then, why not just implement the system to have exactly-once message delivery?   Push the problem down to the transport level.  Build in reliability and checking so that you have exactly once delivery.  In a self-contained system, this can be done.  To be precise, within a single host, or a tightly bound set of hosts with distributed transactions (two phase commit) it is possible to do this.  But this diagram is talking about a distributed system.  These hosts are managed independently.  The next section reveals the shocking truth.

Exactly-Once Delivery does not Exist

In a distributed system where the machines are not logically tied and managed as a single system, it is not possible to implement — nor do you want to implement — true exactly once reliable message delivery.  Twice recently, a friend of mine from Microsoft referenced a particular blog post on this topic:  You Cannot Have Exactly-Once Delivery.  There is another discussion at: Why Is Exactly-Once Messaging Not Possible In A Distributed Queue?
This is a truism that I have believed for a long time.  I never expect reliable message delivery.  There is a thought experiment that help one understand why if we could implement exactly-once delivery, you would not want it.  Think about back-up, and restoring a server from backup.  Systems A, B, and C are managed separately.  That means they are backed up separately.  Imagine that a disk blows up on system C.  That means that a replacement disk will be deployed, and the contents restored from backup, to a state that is a few moments to a few hours ago.  Messages that were reliably delivered during that gap, are certainly not delivered, and the system is stuck.  The process that had been rolled back will send extra messages, that will in turn cause redundant processes on the remote systems, which might (if the interactions were more elaborate) cause them to get stuck.
Exactly once delivery attempts to keep the state of systems A, B, and C in sync.  Everything works in the way that a Rube Goldberg machine works: as long as everything works exactly as expected you can complete the process, but if anything trips up in the middle all is lost.   The backup scenario destroys the illusion of distributed consistency.  System C is not in sync, and there is no way to ever get into sync again.

So .. All is Lost?

We need reliable business processes, and it turns out that can be done using aconsistency seeking approach.  What you have to do is to assume that messages are unreliable (as they are).  From a business process point of view, you want to visualize the process as a message delivered, but you do not want to architect the application to literally use this as the mechanism of coordination between the systems.
You need a background task that reads the state of the three systems, and attempts to get them into sync.  For example, when system B sends a message to system C, it also registers records the fact that it expects system C to run a subprocess.   System C, when receiving a message, records the fact that it has a subprocess running for system B.   A background task will ask system B for all the subprocesses that it expects to be running on system C, then it asks system C for a list of all the processes it actually is running for system B.   If there is a discrepancy, it takes action.
Consider, for example, system B having a process XYZ that is waiting on system C for a subprocess.  The consistency seeker asks system C if it has a process for XYZ running.  There are two problem scenarios: either there is no such process, in which case it tells system B to re-send the message starting the process.  The other possibility is that the process is there, but it has already completed, in which case it tell system C to resend the completion message.   So if things are out of sync, a repeat message is prompted.  The other requirement is that if, by bad luck, a redundant message is received, it is ignored.  Those two things: resending messages and ignoring duplicates are the essential ingredients of implementing reliable processes on top of an unreliable transport — and it works in distributed systems.

Consistency Seeking

Consistency seeking solves the problem at the business process level, and not at the transport level.
It even works if the system is restored from backup.  For example, imagine that system B (the middle system) is restored from a backup made yesterday, while systems A and C are left in today’s state.  In such a case, there may be processes that had been completed, but are not yet completed in the restored state.  The consistency seeking mechanism will check, and will prompt the re-sending of the messages that will eventually bring the systems into a consistent state.  It is not perfect—there are situations where you can not automatically return to synchronized state—but it works for most common business scenarios.  It certainly works in the case where a simple message was lost.  It is far less fragile than the system that assumes that every message is delivered exactly-once.

Conclusion

Process oriented thinking causes us to think about processes in isolation.  We forget that real systems need to be backed up, real systems go up and down, real systems are reconfigured independently of each other.  The process oriented approach ignores those to focus exclusively on one processes, with the assumption that everything in that process is always perfectly consistent.
This does not mean that you should not design with a process.  It remains important for the business to think about how your business is running as a process.   But, naïvely implementing the process exactly as designed will result in a system that is not architected for reliability in a distributed environment.  BPM is not a replacement for good system architecture.

Julian Treasure: How to speak so that people want to listen

Thursday, 4 June 2015

The 10 BPM Commandments

And Moses went up the mountain and stayed there for 40 days and 40 nights
And the people cried upon him “Why is tho taking so long?”10 BPM Commandments
And Moses explained that the 10 commandments have already been written. But now he and God were working on the BPM commandments.
“Never hurry on the design of the business rules” explained Moses.
And the people groaned, for they knew that design phases can go on forever…
And when Moses returned he was shocked to see the people dancing and worshipping the document management systems.
When the people saw the thunder and lightning and heard the trumpet and saw the mountain in smoke, they trembled with fear.
They stayed at a distance and said to Moses, “Speak to us yourself and we will listen.”
And Moses called upon God and said: Forgive my people, for they do not know any better, and have never been enlightened to the glory of BPM.
And God forgave his people for worshipping the document management systems and told Moses to cut the BPM commandments into two tablets of stone.
And the people listened to Moses as he showed them the tablets, as people always like things that are documented correctly.
1. You shall have no other workflow software solutions but BPM. There has not ever been, or will ever be a solution as cool as a BPM solution!
2. You shall not make for yourself any workflow design idol, nor bow down to it or worship it, as workflows will always change, and the design must follow the changes.
3. You shall not misuse the name of the workflow.
No “process”, “procedure” or “policy” can be used instead of the word “workflow”. You will need to learn the difference between them.
4. You shall remember and keep the Audit Trail holy. Ensure that every action appears in it. That includes user actions and system actions.
5. Respect internal company politics. As these can stop any BPM project in its tracks. If you need to shmooze- then shmooze. If you need to put your foot down – always ensure that you have the active backing of a strong stakeholder.
6. You shall not kill workflow instances. You must allow built-in solutions for human errors. Instead of rolling back a workflow instance, allow users or administrators to terminate instances as part of the process. Plan for errors!
7. You shall not process adultery. Stop screwing around with other processes. Don’t try to mesh two workflows into one to fit each other’s scenario – it will never work. If you have duplicate functionality – create a subflow to be used by both workflows.
8. You shall not steal time. That includes design and implementation. Don’t try to save time or create shortcuts. Do it once – Do it properly!
9. You shall not lie. Every project has problems. Your software does not walk on water, nor smell of roses. Be blatantly truthfull on raising every problem and worry that you might have. Projects are always late and always overbudget. The future of your company does not rest on your shoulders. Raise the problems and let the project manager deal with the solving the problem. That’s why project managers die young.
10. You must not be envious of your neighbour’s software solutions. Yes, ERP, CRM, ECM have lovely features, but their gods have grey hairs from their own problems. I promise you that they are quietly envious of BPM. The grass always looks greener on the other side.

And a voice came out from the clouds and said “I am the Lord your God, am a jealous God, and will punish all that use other software solutions, but will show love to a thousand generations to those who love BPM and keep my commandments.
And the people saw all that he had made, and it was very good…