Given this blog's focus on the causes of IT failure, it's great to read about successful enterprise software implementations. Mike Kavis describes what his team learned during the course of deploying their first SOA application.
Here's Mike's description of "things we did right," along with my annotations:
Focused on business not technology - we performed a 90 day business process assessment where we documented current state, brain stormed on future state, and defined a portfolio of projects that each had their own ROI.
By recognizing the project as fundamentally related to business improvement, Mike's team established a solid foundation for success. Software and technology change should be considered enablers that bring material, specific improvements to the business. Hidden benefits that can't be articulated, measured, and communicated are suspect.
We did our homework - We attended conferences, read blogs, researched web sites, collaborated with experience architects, and a got our hands on anything or anyone that had any information about SOA.
This point should be obvious. Unfortunately, too many IT customers rely strictly on external vendors for advice, without doing sufficient real learning themselves. That approach leads to unhealthy dependence and limits internal stakeholders' ability to make intelligent decisions.
Thorough POC - We invested a lot of time in an extensive vendor assessment for both the BPM and SOA tools.
Take time to evaluate the vendors, do a proof of concept, and get to know your partners. Shotgun weddings aren't an ideal form of matrimony and rushing unprepared into a large project is almost always a mistake.
Surrounded ourselves with talent - We put several of our best people on this project on both the IT and business side. We embedded our architects with our SOA partners to accelerate the learning curve.
Strong executive support - Our executive sponsor is from the business and the person who went to the top to get the funding for the project. Like a couple of us in IT, she put her career on the line by signing up to deliver substantial ROI numbers over the next four years.
Even though this was their first SOA project, Mike and his team are clearly old hands at the software implementation game. For understandable reasons, business-side managers are often reluctant to hand over resources for a technology implementation. Strong executive support can be used to convince the business side to participate more freely.
Mike's executive sponsor put her career at stake to make the project successful, which publicly demonstrates commitment and confidence. If your executive sponsor has no skin in the game, find another sponsor.
Squash resistance instantly - Any time we encountered or were told of resistance or negativity, we immediately addressed it head on.
Naysayers are everywhere. While constructive criticism is always helpful, negativity isn't, and should be dealt with swiftly. Mike did the right thing, even though I'm sure it was difficult at times.
Short, iterative deliverables - We took a look at all of the projects that we identified and used a combination of portfolio management and a SOA roadmap to determine the priority and size of the scope for each project.
Sound architecture - We are laying the foundation for a loosely coupled, service enabled architecture....
Don't play guessing games with project schedules or technical architecture on mission critical projects. Proper, professionally-handled planning is key, on both the business and technical dimensions.
Although this was their first SOA deployment, Mike and the team did a lot of things right. Follow his lessons, and your enterprise software projects will definitely be more successful.