A service Oriented Architecture & Web Service Technology.

Slides:



Advertisements
Similar presentations
웹 서비스 개요.
Advertisements

Web Service Architecture
COM vs. CORBA.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
RPC Robert Grimm New York University Remote Procedure Calls.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 2.
Building an Operational Enterprise Architecture and Service Oriented Architecture Best Practices Presented by: Ajay Budhraja Copyright 2006 Ajay Budhraja,
A service Oriented Architecture & Web Service Technology
1 Introduction to XML. XML eXtensible implies that users define tag content Markup implies it is a coded document Language implies it is a metalanguage.
1 Introduction to SOA. 2 The Service-Oriented Enterprise eXtensible Markup Language (XML) Web services XML-based technologies for messaging, service description,
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB JavaForum.
Distributed components
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
Latest techniques and Applications in Interprocess Communication and Coordination Xiaoou Zhang.
Comparison of the RMI and the socket APIs
Service Oriented Application Integration (SOAI) IT 490 NJIT.
Ch 12 Distributed Systems Architectures
Service-oriented architecture. The Basic main concepts –Service-orientation describes an architecture that uses loosely coupled services to support the.
B. RAMAMURTHY Web services. Topics What is a web service? From OO to WS WS and the cloud WS code.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 12 Slide 1 Distributed Systems Design 1.
Web Service What exactly are Web Services? To put it quite simply, they are yet another distributed computing technology (like CORBA, RMI, EJB, etc.).
Enterprise Resource Planning
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Web Services Architecture1 - Deepti Agarwal. Web Services Architecture2 The Definition.. A Web service is a software system identified by a URI, whose.
Jaeki Song ISQS6337 JAVA Lecture 16 Other Issues in Java.
Web services: Why and How OOPSLA 2001 F. Curbera, W.Nagy, S.Weerawarana Nclab, Jungsook Kim.
Outline  Enterprise System Integration: Key for Business Success  Key Challenges to Enterprise System Integration  Service-Oriented Architecture (SOA)
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Lecture 15 Introduction to Web Services Web Service Applications.
Web Services Kanda Runapongsa Dept. of Computer Engineering Khon Kaen University.
Web Services based e-Commerce System Sandy Liu Jodrey School of Computer Science Acadia University July, 2002.
Web Services Based on SOA: Concepts, Technology, Design by Thomas Erl MIS 181.9: Service Oriented Architecture 2 nd Semester,
AUTHORS: MIKE P. PAPAZOGLOU WILLEM-JAN VAN DEN HEUVEL PRESENTED BY: MARGARETA VAMOS Service oriented architectures: approaches, technologies and research.
Web Services. Abstract  Web Services is a technology applicable for computationally distributed problems, including access to large databases What other.
Introduction to Server-Side Web Development Introduction to Server-Side Web Development using JSP and Web Services JSP and Web Services 18 th March 2005.
1 UNIT –II Architecting Web Service. 2 Why SOA? – business point of view  Information Technology (IT) workers face many challenges, including: Limited.
Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks.
Service Oriented Architecture CCT355H5 Professor Michael Jones Suezan Makkar.
WebService. Outline Overview of Web Services SOAP (messaging) WSDL (service description) UDDI (registry)
9 Systems Analysis and Design in a Changing World, Fourth Edition.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
XML and Web Services (II/2546)
Kemal Baykal Rasim Ismayilov
An Introduction to Web Services Web Services using Java / Session 1 / 2 of 21 Objectives Discuss distributed computing Explain web services and their.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
Chapter 14 Advanced Architectural Styles. Objectives Describe the characteristics of a distributed system Explain how middleware supports distributed.
Web Services An Introduction Copyright © Curt Hill.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
1 SERVICE ORIENTED ARCHITECTURE ANTHONY GACHANGO D61/70547/2008 DIS 601.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
Java Web Services Orca Knowledge Center – Web Service key concepts.
Enterprise Architectures
Sabri Kızanlık Ural Emekçi
WEB SERVICES.
Unit – 5 JAVA Web Services
SOA (Service Oriented Architecture)
Distribution and components
Inventory of Distributed Computing Concepts and Web services
Service-centric Software Engineering
Service-centric Software Engineering 1
The future of distributed systems architecture
Inventory of Distributed Computing Concepts
Distributed Systems through Web Services
WebServices Using JAX-RPC
Distributed System using Web Services
Presentation transcript:

A service Oriented Architecture & Web Service Technology

The case for developing SOA Level of Software complexity continues to increase, and traditional architectures seem to be reaching the limit of their ability Need to respond quickly to new requirements of the Application Need to continually reduce the cost of IT for the application Ability to absorb and integrate new partners and new users

Problems Cumulative effect of decades of growth and evolution has produced severe complexity Redundant and non-reusable programming Real integration killer - multiplicity of interfaces

Requirement for a SOA Leverage existing assets. –Existing systems can rarely be thrown away, and often contain within them great value to the enterprise. Support all required types of integration. –User Interaction –Application Connectivity –Process Integration –Information Integration –Build to Integrate

Requirement for a SOA Allow for incremental implementations & migration of assets Include a development environment that will be built –around a standard component framework, –promote better reuse of modules and systems, –allow legacy assets to be migrated to the framework, –allow for the timely implementation of new technologies. Allow implementation of new computing models; –specifically, new portal-based client models, Grid computing, and on-demand computing

A service-oriented architecture -- not just Web services First, it must be understood that Web services does not equal service-oriented architecture. Web services is a collection of technologies, including XML, SOAP, WSDL, and UDDI, SOA is "an application architecture within which all functions are defined as independent services with well defined invocable interfaces which can be called in defined sequences to form business processes".

A service-oriented architecture -- not just Web services All functions are defined as services. All services are independent. –Operate as "black boxes"; external components neither know nor care how boxes are executed The interfaces are invocable; –At an architectural level, it is irrelevant whether they are local or remote what interconnect scheme or protocol is used to effect the invocation, what infrastructure components are required to make the connection.

A service-oriented architecture -- not just Web services Interface is the key, & the focus of the calling application. –It defines the required parameters and the nature of the result It is the system's responsibility to effect and manage the invocation of the service, This allows two critical characteristics to be realized: –Services are truly independent, –They can be managed: Security, Deployment, Logging, Dynamic rerouting, and Maintenance

SOA Model A service provider –provides a service interface for a software asset that manages a specific set of tasks. A service requester –discovers and invokes other software services to provide a business solution.. A service broker;

12 Steps to implement a SOA 1.Understand the functional objectives and define success. 2.Define your problem domain. 3.Understand all application semantics in your domain. 4.Understand all services available in your domain. 5.Understand all information sources and sinks available in your domain. 6.Understand all processes in your domain.

12 Steps to implement a SOA 7.Identify and catalog all interfaces outside of the domain you must leverage (services and simple information). 8.Define new services/information bound to the services. 9.Define new processes, services, and information bound to the processes. 10.Select your technology set. 11.Implement & Deploy SOA technology. 12.Test and evaluate

Web Service

What a Web Service in a Few Words? Web Services are the basis for Grid Services, which are the cornerstones of OGSA and OGSI. –Understanding the Web Services architecture is fundamental to using GT3.X and GT4.X and programming Grid Services What exactly are Web Services? –To put it quite simply, they are yet another distributed computing technology (like CORBA, RMI, EJB, etc.) They allow to create client/server applications.

Web Service The clients (the PCs at the store) –contact the Web Service in the server –send a service request asking for the catalog –The server returns the catalog through a service response. This is a very sketchy example of how a Web Service works.

Web Services have certain advantages over other technologies Why cannot we use RMI, CORBA, EJBs, and countless other technologies. – So, what makes Web Services special? Web Services are platform-independent and language- independent (standard XML) Most Web Services use HTTP for transmitting messages (such as the service request and response).

Web Services also have some disadvantages Overhead. Transmitting all data in XML is not as efficient as using a proprietary binary code. –What you win in portability, you lose in efficiency. –This overhead is usually acceptable for most applications, but you will probably never find a critical real-time application that uses Web Services. Lack of versatility. Currently, Web Services are not very versatile, since they only allow for some very basic forms of service invocation. –CORBA offers programmers a lot of supporting services (such as persistency, notifications, lifecycle management, transactions, etc.) –Grid Services actually make up for this lack of versatility.

One important characteristic that distinguishes Web Services While technologies such as CORBA and EJB are oriented toward highly coupled distributed systems, where the client and the server are very dependent on each other Web Services are oriented towards loosely coupled systems, where the client might have no prior knowledge of the Web Service until it actually invokes it.

A Typical Web Service Invocation 1.First step will be to find a Web Service that meets our requirements: contact a UDDI registry. 2.The UDDI registry will reply, telling what servers can provide the service required. 3.the location of a Web Service is now known, but the actually invocation method is still unknown. The second step is to ask the Web Service to describe itself 4.The Web Service replies using WSDL. 5.The Web Service is located and invocation method is known. The invocation is done using SOAP (a SOAP request is sent asking for the needed information. 6.The Web Service will reply with a SOAP response which includes the information we asked for, or an error message if our SOAP request was incorrect

What a Web Service Application Looks Like 6. The application receives the result of the Web Service invocation5. The SOAP response is sent over a network using the HTTP protocol. The client stub receives the SOAP response and turns it into something the client application can understand. 4. The result of the requested operation is handed to the server stub, which turns it into a SOAP response. 3. The service implementation receives the request from the service stub, and carries out the work it has been asked to do. 2. The SOAP request is sent over a network using the HTTP protocol. WS container receives the SOAP requests & hands it to the server stub. The server stub converts the SOAP request into something the service implementation can understand 1.Client application invoke the Web Service, by calling the client stub. The client stub will turn this 'local invocation' into a proper SOAP request.

Test your knowledge 1.Problems which let to turn to SOA (Slide 4) 2.SOA in a few words: build to integrate, incremental implementations, (Slide 6) 3.Web Service and SAO (Slides 7) 4.SOA encapsulates both design-time SOA (Slide 11) 5.SOA Model (Slide 18-21) 6.Web Service enabling technologies (Slide 22) 7.Advantages of Web service over other technologies (Slides 28) 8.Disadvantage of Web services (Slide 29) 9.Typical web service invocation (Slide 31) 10.. What a Web Service Application Looks Like (Slides 34-36)