SOA and SaaS: How do they differ?

Here is an interesting post that explains the essential difference between SOA and SaaS 





The simple answer is that:
Both SOA and SaaS are hot topics in IT as both deliver in very specific ways material reduction in costs of IT operations and deliver a more agile alignment between business needs and IT solutions. The manner in which those benefits are delivered is the key difference. And in many ways, to capture the majority of the cost reduction and agility benefits it is often best to incorporate both SOA and SaaS in your IT landscape. For complete story see here 

Service-oriented architecture (SOA) Today -



Plymouth Rock Implements StoneRiver Claims Software
Insurance Networking News
... significant progress with the modernization of its core processing environment by leveraging new technologies and a Service-Oriented Architecture (SOA).
See all stories on this topic »
Plymouth Rock Group of Companies Implementing StoneRiver's ...
Bobsguide (press release)
"With StoneRiver, we will be able to take full advantage of the comprehensive Stream Suite and its service-oriented architecture. StoneRiver has been great to ...
See all stories on this topic »


SOA: About this Course Blog

This blog is created as part of my teaching of the course " Service-Oriented Architecture ( SOA)" for the VIII semester of Computer Science and Engineering under VTU , SDMCET Dharwad during the academic year 2009-10.


The blog intends to be a study companion for my students and contains all resources:
Question bank
that support him/her in understanding the course contents and in preparing well for examination. In addition, a group SOA is created as a platform for in semester communications.

I extend these resources to all my teaching fraternity who are handling the course in other colleges. I make a humble request to each one of them to kindly go though the material here and guide me further in improving the content, style of presentation etc. I also extend these resource open to all my student friends across the state and seek their active use of these resource and also any tips in making this more useful and meaning. For additional course related resources you are welcome to consult my wiki that is created as part of this course.

SOA: The Central idea behind it

Historically data (data structure) and a program to manipulate it were created at the same time. A payroll program determined its own data, its type and created its own data source. Data created by a program can only be used only by that program and its logic. This approach bonded data and program right from the beginning. This approach was obvious given the historical conditions existing at that time. A Fortran programmer used to create data file for his program only. However when business started using computers, data was common to many departments and hence this approach of marrying data and program from the beginning was practically useful.

Paradigm

A paradigm is a key model, pattern or method (to achieve certain class of goals/objectives). Frequently it is a most characteristic or fundamental property of a theory or a branch of science.

A system of assumptions, concepts,values,and practices that constitutes a way of viewing reality.

  • Geocentric
  • Heliocentric
  • Linear motion
  • Oscillatory
  • Programming paradigm - procedure oriented- OOPS

Concept of concern and Seperation of Concerns

A computing process involves a number of issues to be addressed. Any issue of interest or under focus in a computing process is called a concern. For instance, in developing a software systems a number of concerns such a functionalities, security, response time and many more need to be addressed. In order to simplify the process of development, concerns are isolated and handled in such a manner that there is no overlap. This process of isolating a concern and focusing on it is called Separating of Concern ( SoC).
For example:

Concept of Service in Computing

Service is a one of the computing paradigms. In computing service is a mechanism to enable access to one or more capabilities, where the access is provided using a prescribed interface and is exercised consistent with constraints and policies as specified by the service description.

Example:
In ATM

  • Capability: Allows a customer to withdraw money is a service. It enables him to access his account and withdraw(capability) money. It occurs at a prescribed interface i.e at ATM.
  • Constraints: There is a limit on the amount that can be withdrawn or number of transactions within a day