introduction to soa and web services
DESCRIPTION
Introduction to SOA and Web Services. B. Ramamurthy. Introduction. A Service-Oriented Architecture (SOA) is a design model for linking computational resources, data and applications to perform services and deliver results to service consumers. - PowerPoint PPT PresentationTRANSCRIPT
04/19/23 BR 1
Introduction to SOA and Web Services
B. Ramamurthy
04/19/23 BR 2
Introduction
A Service-Oriented Architecture (SOA) is a design model for linking computational resources, data and applications to perform services and deliver results to service consumers.
Web Service (WS) standard provides a platform-independent method for messaging-based interaction of applications.
04/19/23 BR 3
Topics for Discussion
How did we get here? State of computing and business
Effect of scientific advances on industries, information technology (IT), computing research, environment, society,… ?
Role of SOA and services SOA principles (Ch.1) Evolution of the service concept (Ch.2)
04/19/23 BR 4
Evolution
Industrial Automation Just-in-time Advances in supply chain …
Business Remote operations Heterogeneity Scale Integration (application, data) E-commerce …
04/19/23 BR 5
Evolution (contd.)
Information technology Internet World-wide web Grid Mobile and wireless Devices Software, platforms Search engines Tremendous advances
04/19/23 BR 6
Evolution (contd.)
Computing research Programming languages RISC vs. CISC architectures Memory capacity Computing power Simple programObject Component…
Environment Accessibility Globalization (outsourcing, markets) ...
04/19/23 BR 7
Evolution (contd.)
Society IT users not exclusive to Computer Science Digital media ipod, iphone, idog,.. Youtube, myspace, social networking Blogs,wikies, podcasts …
04/19/23 BR 8
Evolutionary Theory
Industry
Business
Research
IT
Environment
Society
Pieces of the pie..
04/19/23 BR 9
Evolutionary Theory
Industry
Business
Research
IT
Environment
Society
SOA can align the pieces!!?
04/19/23 BR 10
Missing pieces?
Question (Homework assignment)
Are there any categories that I did not consider in the pie? Ex: government policies?
What should be the appropriate weight of each category? For example, consider the heavy weight given to IT in the picture on the right.
Evolutionary Theory
Industry
Business
Research
IT
Environment
Society
04/19/23 BR 11
SOA Principles Loosely coupled (service provider and service consumer are
loosely coupled: why?) Large scale: complex system with high level of heterogeneity
and redundancies. Decoupling of functionality and technology Service contract and agreements Discoverability On demand composability of services: composite services
concept Agility: respond to changes quickly Statelessness Inherent interoperability Standards Simplicity Reusability
04/19/23 BR 12
Typical Enterprise Complex heterogeneous system:
Examples: CRM (Customer relationship management) system, insurance claims processing system
Stakeholders Highly heterogeneous teams Different political environments CEO, IT projects, customers, operations
Different applications and middleware Content and data with varying lifetime Potentially large number of end users
Applications have to be rolled out to a large number of PCs, say,10000
Major changes and ongoing incremental optimization need to be handled efficiently in an agile manner.
An SOA addresses these needs.
04/19/23 BR 13
Evolution of the service concept
A service is a meaningful activity that a computer program performs on request of another computer program.
Technical definition: A service a remotely accessible, self-contained application module.
From IBM,
Service
Component
Object/Class
04/19/23 BR 14
Class, Component and Service
Class is a core concept is object-oriented architectures. An object is instantiated form a class. Focus on client side, single address space programs.
Then came the component/container concept to improve scalability and deployability. Ex: EJBs. Focus on server side business objects and separation
of resources from code. Service came into use when publishing,
discoverability, on-demand operation among interacting enterprise became necessity. Focus of enterprise level activities, contracts,
negotiations, reservations, audits, etc.
04/19/23 BR 15
Object-oriented programming
Object-oriented programming Encapsulation of data and function in a class,
instances of a class is called an object Objects communicate through messages (invoking
methods) Class represents a type from which another type can
be derived resulting inheritance hierarchy. Problem: level of abstraction and granularity exposed
is fine to enable reuse. Data and functions are tightly coupled. Important contribution SOA: concept of interface
Service-orientation assumes that data and functionality are separated.
04/19/23 BR 16
Distributed Computing
Important challenge is find abstractions for both remoteness and actual service task at the same time.
Simple interfaces such a telnet, rlogin emerged for remoting.
Distributed Computing Environment (DCE), Common Object Request Broker Architecture (CORBA) emerged as middleware. “interoperability” was an important goal. IDL Interface definition language came into existence.. IDL is a predecessor of WSDL Heavy weight infrastructure resulted in discovery of the
light weight XML solution. XML, SOAP over HTTP, WS emerged.
04/19/23 BR 17
Business Computing
File systems to main frames Emergence of new paradigms such as Enterprise
Resource Planning (ERP) and Supply Chain Management (SCM) placed complex requirements on the computing machines and applications.
This was followed by huge compute (IT) demands for Enterprise Application Integration (EAI) and Enterprise Data Integration (EDI).
An appealing characteristic of SOA is that it aligns these business entities by directly mapping them to services, thus enabling an enterprise integration on the business level, not on the technical level.