Don’t Let Your Enterprise Overhaul Plan Implode Like the Red Sox….A Disgruntled Fan Vents

You have your architecture design all laid out; the proper resources have been secured and contracted for the duration; the development starts off a little rocky, but quickly smooths out, and you’re sailing along through the project.  Everything’s firing on all cylinders while you’re blowing through all the deliverables with ease, and you can see the potential success coming; you near the end of the project in System Integration Testing – when it all falls apart like the 2011 Red Sox.

On paper, the project plan looked flawless with plenty of time allotted for each stage, including contingency.  Your Agile development method had been tried and tested, and everyone understands his or her role.  You can do everything right to position your company for success, yet fail in the execution.

There are many factors that contribute to the success or failure of a project:

  • Focus and Concentration
  • Expertise
  • Reserves
  • Communication
  • Team Chemistry

It all starts with focus and concentration.  A system replacement project is a full-time job, and if people become distracted by other issues, such as production support responsibilities or competing projects, those distractions impact the quality and timeliness of the system replacement. Just like a pitcher who’s distracted by off-field issues or his next contract can start throwing meatballs, your project resources can be sucked into other issues and neglect their tasks at hand.

Aligning individuals with the correct task for their skill sets is key.  It’s difficult for a project to be successful if resources are overwhelmed by learning new technology. Confused employees beget faulty implementations that must later be fixed or replaced. If a player’s used to playing center field, and you stick him in left with a large wall behind him and much closer to home plate than he’s accustomed to, you’ll be stuck with defensive problems that cost games.  Similarly, it’s also important to have depth and reserves available to fill-in.  Should resources be unable to complete the work, you need competent people available to step in and allow the project to continue without causing a misstep.  If one of your best young pitchers goes down with a back injury, or your “All Star” third baseman is sidelined with a hernia, you need to have people available in AAA who can step in and hold their own to keep things moving in the right direction.

I love the Agile development methodology.  There’s constant communication – everyone meets every day, short sprints of development and delivery meetings, easy to follow tracking reports on tasks, publicly displayed reports on progress – everyone knows what’s going on. Constant communication yields accountability and support. If people see that they may be lagging behind, they’ll put in more time to compensate. If others are ahead of schedule, they may be able to help those whom are lagging. However, the danger is that if one group does lag behind, it can also draw others into that quicksand. They may say, “If the others are behind and no one cares, why should I kill myself to get my own work done?”  Therefore, it’s important to keep everyone motivated with accountability and let everyone know where everything stands.  This methodology also applies to enterprises as a whole.  If your pitchers are throwing so poorly that they can’t get past the fourth inning, it can create derision in the clubhouse. Your DH might start telling players, “If you can’t get the job done, we’ll have to play relievers instead.”  Or, if your new “star” left-fielder can’t get on base and use his speed to score, you need to communicate to the team why those players are still in those positions.  The oft-quoted definition of insanity is “doing the same thing over and over again and expecting different results.”

Not enough can be said about team chemistry.  Team chemistry is most important when the chips are down.  That’s what helps get you out of the doldrums and put you back on top of your game.  The team needs support from management, not only in providing the proper tools to accomplish their tasks, but also to let off steam for a respite and work together on something completely different.  Take a Friday afternoon off for the team to play volleyball on the back lawn with a BBQ lunch, or a laser tag session to get their minds thinking about something else and staying fresh.  In order to achieve success, everyone must pull together.  Get them to socialize with each other and build that rapport where they want to support each other.  Keep everyone working closely, lock them in the same room if you can, because that will help build those close relationships amongst the team.  You can’t have everyone only concerned about their performance and not working together.  You can’t have 25 guys-25 cabs.  When it gets to the end and you’ve lost 19 of the last 24 games, there’s no character there to save you.  Team members will give up on each other and graduate to a self-fulfilling prophecy of loss.  A player might say, “If pitching lets up another long ball, I’m not going to try my hardest to catch the ball.”  The defense gets lazy, balls aren’t played properly, and more runs score.  In those situations, you need to “Cowboy Up” and do whatever you can to win.  You need to cheer for each other and not expect the worst to happen.  If you expect the worst, you’ll make it happen.

Simply putting the plan together doesn’t mean it will be successful. You have to do all things well in order to make it happen and achieve success.

(Personally, this blog entry has been very cathartic.)

Top 10 Reasons for System Implementation Failure

Insurance carriers are not typically custom development or system integration experts – their business is insurance, not software.  There are some national carriers that have built their company around providing insurance directly over the web and have created proven methods of software development and integration.  That is not the case for most, especially small- or mid-size carriers.  These carriers see the need to improve  products, speed to market, and flexibility. They address the underlying system needs by buying, building, or a combination, and introducing new systems into their technology ecosystem.  Unfortunately, too many times these projects fail.

There are many different reasons why  system implementations to fail, but this is the top 10 in my experience.top_10-708117

1)       No experience running an RFP to begin their selection. The RFP was pulled from the internet, modified slightly and sent out.  Out of 4 responses, three eventually dropped out, so they went with the one remaining, never taking a close look at what they were buying.

2)       Inadequate Project / Program Management Process. The project was driven by hard completion dates without having a valid work breakdown structure for a project plan to really understand what it would take.  One high level executive ran the project, and no one was empowered to reveal that the emperor had no clothes.

3)       The software development company was located in Europe and the stateside representation was a consulting company that did not understand the carrier’s business.

4)       The carrier failed to properly check the vendor’s references of successful installations, of which they would discover there were none.

5)       The carrier wanted to perform too much of the work themselves, learning as they go, and not allowing the experts to do what they do best.

6)       Tried a big bang (All lines, all states, and all systems on day one).

7)       Scope management. Tried to put everything in the first release afraid that if it was not there, they would never get it.  As a result, they got nothing.

8)       The carrier’s requirements were actually pretty good, but they did not know how to manage them. They could not set and hold on to their agenda, rather than letting the vendor set the agenda.

9)      Not enough involvement in the process by the business.  After the selection all the work was done in a “black box” and what was delivered was not what the business wanted.

10)   Poor or no Quality Assurance process.