As the time passes the new requirements arise because of the emerging technologies. In early days we had platform dependent software systems. A decade ago people started thinking to make platform independent software systems. The interoperability, reusability, and other issues drove the software community to come up with the service-oriented architecture (SOA) paradigm.

The SOA vision is to maximize the software asset reusability and it also addresses the challenges of tightly coupled software and advocates an architecture that relies on the loose coupling of assets. On the financial front, it tackles budgeting and return-on-investment issues. But what about software diversity, the integration and collaboration issues.

It is not impossible properly bridging new and old software technologies but it not easy task as well. If we treat all our software assets equally in terms of their analysis, design, and architectural value propositions, than we might understand their collaborative contribution to our environment without being too concerned about their underlying languages and implementation detail. We can also name these assets services and conceive of them as services oriented entities because they are built on similar SOA strategies and principles.

Service-oriented modeling mechanism enables us to conceive software products that we have been constructing, acquiring, and integrating previously as service oriented constituents. It does not matter if these entities are legacy applications written in languages such as COBOL, Java, C++, C#, or diverse empowering platforms and middleware. They should all take part in an SOA modeling framework. Most important, they should be treated equally in the face of analysis, design, and architectural initiatives, and should simply be recognized as services.

Service oriented modeling is a software development practice that employs modeling disciplines and language to provide strategic and tactical solutions to enterprise problems. This anthropomorphic modeling paradigm advocates a holistic view of the analysis, design, and architecture of all organizational software entities, conceiving them as service-oriented assets, namely services. The language used in it does not restrict itself to any specific programming language paradigm, constrained by language structure barriers, or limited to a language syntax. As a result of this universal language, the modeling process becomes more accessible to both the business and technology communities. This SOA modeling approach is well suited to provide tactical, short-term solutions to enterprise concerns, yet it furnishes strategic remedies to persistent organizational problems.

[source: Michael Bell, “Service Oriented Modeling: Service Analysis, Design and Architecture” 2008]

I made a presentation on the same topic in the university and wanted to share it.

Similar Posts