1 / 17

Introduction to SOA and Web Services

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.

Download Presentation

Introduction to SOA and Web Services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to SOA and Web Services B. Ramamurthy 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. 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) BR

  4. Evolution • Industrial • Automation • Just-in-time • Advances in supply chain • … • Business • Remote operations • Heterogeneity • Scale • Integration (application, data) • E-commerce • … BR

  5. Evolution (contd.) • Information technology • Internet • World-wide web • Grid • Mobile and wireless • Devices • Software, platforms • Search engines • Tremendous advances BR

  6. Evolution (contd.) • Computing research • Programming languages • RISC vs. CISC architectures • Memory capacity • Computing power • Simple programObject Component… • Environment • Accessibility • Globalization (outsourcing, markets) • ... BR

  7. Evolution (contd.) • Society • IT users not exclusive to Computer Science • Digital media • ipod, iphone, idog,.. • Youtube, myspace, social networking • Blogs,wikies, podcasts • … BR

  8. Pieces of the pie.. BR

  9. SOA can align the pieces!!? 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. 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 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. 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, 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. 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. 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. 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. BR

More Related