Companies are still in the process of implementing SOA. Some organizations using SOA as an IT strategy that organizes discrete functions contained in enterprise applications in to interoperable, standards-based services.
How successful are they in implementing SOA?
The whole idea about SOA is consumer decoupled from producer, business process decomposed in to re-usable services and we should be combining re-usable services in to business processes, there by achieve re- usability, loose coupling, create service in asynchronously with standard service contract. Also implement discoverability for services that has well defined interface definitions, use standard data format across organization and use standard Wire and Security protocols.
I don't think many organizations are achieving the above goals! How many organizations can claim achieving IT agility by implementing SOA?
Some people believe that by using SOA software, you achieve SOA for the organization!. You don't need a vendor product for implementing SOA for your organization.
OK. What is next? I have no doubt that IT Industry is moving towards COTS products. Currently nobody write an accounting or a payroll application. We just buy it from off the shelf, however since the business process are not standard across different IT organizations, we still need custom development software/web applications.
Solution: SAAS - within organization?
The key to success is, how can we create re-usable applications/code base/services that can use within the organization which allow customization based on the business need?.
How can we implement SAAS within the organization without complexity of heavy vendor specific SOA products ? Why can't we use simple JDK/simple containers for writing applications? Use POJO instead of EJBs!.
I was having conversation with my friends (Jaswant and Nathan) this morning about some of these trends - Currently industry is getting matured in IAAS (Infrastructure as a service). We have many cloud providers that provide infrastructure such as Amazon, Rackspace, CSC, Terremark etc. Organizations have VMWare or open source based hypervisors in-house that enable us to create Virtual images as needed and create/update/move/delete hosts based on the requirements. It is still cheaper (financially) to use an in house data center instead of using external vendor provide data center for long term !.
We have the technology available today to standardize, automate compute resources including Middleware and database complemented by storage and networking capabilities and provide it based on the customer demand.
We can self-provision Hosts, Operating Systems, Middleware, Database and Storage using a Web- based graphical user interface that serves as an IT operations management console for entire IT.
What is missing in this space is an integration layer or workflow based system that authorize and approve the creation of compute resources for the organization for internally or externally hosted data center.
We need a software distribution model in which re-usable applications are hosted internally and made available to departments within IT to use it, customize it, and enhance it based on their requirements. Ideally we should have this from an external vendor (externally hosted). We have few companies in this space such as salesforce, however industry don't have enough on demand computing software delivery models.
Let us work towards implementing a SAAS model within the organization !.