2. SOA
• An architecture that relies on loosely-coupled software agents to perform
specified tasks.
• Software agents can be independent of one another.
• Loose-coupling : an approach / design goal where interaction between
services is developed .
• Interface is independent of implementation
• Service – a unit of work performed by a service provider for a service
consumer.
• Web service – a software system designed to support interoperable
machine to machine interaction over a network.
• SOA web services are typically built on web service standards.
3. SOA
• Facilitates the composition of services.
• WSDL – std programming interface to access any application
• SOAP – std interoperability protocol to connect any application to any
other.
4. Key Technologies
• Extensible markup language (XML)
• Web services
• Service-oriented architecture (SOA)
• Business process management (BPM)
5. Service-oriented development
• Benefits :
• Reuse
• Efficiency
• Loose technology coupling
• Division of responsibility
• Developing a service is different from developing an object.
• Higher level of abstraction
• Coarse-grained interface
• Consumes more computing resources
• Services are executed by exchanging messages.
6. Service
• Dividing the responsibilities:
• Create the services
• Consume the services
• It is location on n/w that has a machine-readable description of the
messages it receives and optionally returns.
9. Service oriented architecture
• It includes services like(in bank):
• Account management
• Loans
• Withdrawals, deposit and transfer
• Foreign currency exchange
10. SOA
• It is a style of design that guides all aspects of creating and using
business services.
• Approach to built IT systems in which business services are the key
organizing principle used to align IT systems with the needs of the
business.
• Capitalize on the value of service-oriented development
• Easy to understand the benefit of reusing common business services.
• Key to a successful SOA – determine the correct design and function
of the services in the reusable service library.
11. Challenges to adoption
• Ensuring the developed services are reusable.
• Short-term cost
• Some appln may need to be modified inorder to participate in the
SOA.
12. SOA and web services
• Advantage:
• Pervasive
• Simple
• Platform-neutral
• Provides specifications for security, reliability, transactions, metadata
management and orchestration.
16. Occasionally connected computing
• Challenges in integrating mobile devices into an SOA:
• Not always connected to n/w
• Moves
• SOAP messages in a mobile software
solution
17. Business process management
• Consisting of a set of logically related task.
• BPM – set of software systems, tools and methodologies that
addresses how organizations identify, model, develop, deploy and
manage such business processes.
• Exploit the foundation and the architectural work.
• Help align business processes with desirable business outcomes.
• Separating business process logic from other appln code helps :
• Increase productivity
• Reduce operational costs
• Improve agility
18. BPM
• Simplifies the pblm
• Diagram – graph that a business analyst might produce for
automating the flow of purchase order processing.
• Persists the i/p document -> document is validated -> reference is
made.
• Customer may have an opportunity to reconfirm the order, given the
quoted price and delivery schedule.
• Not confirmed -> cancelled.
• Process flows are broken into individual tasks.
• Service-based solution - > productivity increases easily, flexible
19. Extended web services specifications
• SOAP and WSDL
• QoS
• Features :
• Standardization
• Specification composability
• Metadata management
• Security
• Reliability and messaging
• Transactions
• Orchestration
20. Standardization
• Standardization through a variety of ways.
• Initially created by Microsoft and IBM
• Standard bodies that are active in web services:
• World wide web consortium (W3C)
• Organization for the Advancement of Structured Information Standards –
OASIS
• Web services interoperability (WS-I)
• Internet Engineering Task Force (IETF)
• Java Community Process(JCP)
• Object Management Group (OMG)
21. Specification composability
• SOAP and WSDL specifications
• Combined within a single SOAP message
• Eg: extended headers for security (wsse:) and reliability(wsrm: )
• Different namespaces (ie) duplicate element & attribute – not
permitted.
• May or may not require modification to existing web services
• Added responsibility of the SOAP
23. Metadata management
• It includes the description information about a web service.
• Specifications are:
• XML Schema
• WSDL
• WS-Addressing
• WS-Policy
• WS-Metadata Exchange
• Addressing – important requirement.
• Policy – necessary for expressing any extended web services features of a
service
• Acquiring metadata – uses WS-MetadataExchange with “actions”
24. Security
• Apply at every level of the web services specification to guard against
the numerous challenges and threads of DC.
• Built around
• Encryption
• Authentication
• Authorization
• Comprehensive logging
• Ws-security
• SSL & WS-security header
• Additional specification: WS-SecurityPolicy , WS-Trust, WS-
SecureConversation and WS-Federation
• Technologies: XML Encryption and XML Signature
25. Reliability and messaging
• Reliability messaging specification:
• WS-Reliability
• WS-ReliableMessaging
• Protocol for exchanging SOAP msgs with
• Guaranteed delivery
• No duplicates
• Guaranteed message ordering
• Reliable messaging automates recovery
• Specification:
• WS-Eventing
• WS-Notification
26. Transactions
• Allow multiple operations
• Has ability to recover an appln
• Coordination – mechanism for determining a consistent, predefined
outcome for composite web service appln
• Specification:
• WS-Transactions family
• WS-Atomic transactions
• WS-BusinessActivity
• WS-Coordination
• WS-Composite Application Framework((WS-CAF)
• WS-Context
• WS-CoordinationFramework
• WS-TransactionManagement
27. Orchestration
• Used to create more complex interaction patterns
• Provides an interface that encapsulates a sequences of other web
services.
• WS-BPEL : web services business process execution language
• Defines an executable language compatible
• WS-CDL : web services choreography definition language
• Defined as establishing the formal relationship between two or more
external trading partners.