Implementing SOA Web Services to Gain Momentum
Having started working with web services back with Microsoft XML Parsers 1, 2, and 3; having written a check image web service as the WSSecurity standard was being written; and having seen large and small companies buy and build all sorts of middleware trying to achieve the value of having a Service Oriented Architecture; sometimes I struggle with the fact that in a number of industries we are still struggling to get the vendors we work with to run our businesses to provide the web services we need just to get started. If you are working in an environment with web services and are working at designing and building within a Service Oriented Architechture, relish it, run with it, and share your successes with the world. It will help inspire others and the rising water will lift all of our ships.
If you are working in an environment where your vendors still don't offer web services or if they do, they are bolting them on to their current offerings and charging exorbitant fees for you to use them, keep fighting the good fight. Your vendors will come around and the value is there. I say that because I am living it. I am seeing an entire industry that started out slow and still has many legacy systems that are near impossible to add web services to, change course and it is gaining momentum at an amazing pace.
Our story started with that one project that had the ROI so appealing and the value so visible that it justified paying more than we would have for any other project at the time to buy the web services to complete it. With our investment, a small newly formed Scrum Team of 3 developers; a scrum master and a product owner were able to redesign a manual business process that we had to do for every new customer. That process required manual entry into 5 systems and took 45 minutes just to complete the basic process. When that team was done a year later, they had a process that now had one set of entries feeding into 4 of the systems via web services, were able to eliminate the 5th entirely, had the process down to 10 minutes and was now also crossselling and completing the application process for an additional product.
I don't recommend that you start with something so lofty to get your first web services into your environment and start gaining momentum. It worked out for us because of our forward thinking CEO that gave us permission to take risks. You will give yourself a much higher chance of success by starting off small. Hopefully you have a small project that has as much of a "slam dunk ROI" as we did; those are easy to find in most organizations when you first get started. But rather than a yearlong project, save those for your second or third project, start with something that you can complete with a small team in 3 months or less. C-Level leadership find things that fit into quarters very appealing. Once you get that first success under your belt you will now have your first set of building blocks. It is much easier to keep adding to your building blocks in small manageable chunks and wins, than to try and get all of your blocks together perfectly upfront and then start getting your wins. Teams and organizations just don't naturally come by the patience it takes to get through the long time between early wins to make that work.
“SOA and web services are a key component for controlling your own destiny”
Once our team got through our first project we were able to take those web services and couple them with another set from another vendor and start exposing them to our customers as responsively designed self-service options that they could easily access not only from their computers, but on their tablets, and smart phones. This allowed us to provide even more value to our business.
Once you have enough web services in your environment and wins under your belt, your web services become building blocks that not only provide the value of that first and second application, but become the building blocks for many more.
SOA and web services are also a key component for controlling your own destiny. Today, when the thing on your roadmap for next year that is going to differentiate you from your competitors does not overlap with the other 80 percent of your vendor's customer base, what are your options? You can try placing a customer request; maybe try and convince five of your closest friends to vote with you and get it added through the users group; or try and build it from scratch taking on all of the risk with just your small team. But, If you have web services from your vendors, they allow you to buy key pieces of software from those vendors and leverage their roadmaps, but when your roadmap does not match theirs, you can have small agile teams build that piece that you need to differentiate your company from your competitors. This also lets you avoid playing that dreaded game of feature poker, jumping from vendor to vendor; chasing that one new must have feature and spending all of your teams' time on system conversions rather than innovation.
Remember; if you are just getting started, start small, treat your web services as building blocks, and let your momentum carry towards your Service Oriented Architecture. Your vendors will follow.