1 / 51

MD240

precursor to AOL/MSN/ICQ buddy chat systems. The Bloody Future of Info ... Web services are in reality simply XML-based interfaces to business, application, and ...

flora
Download Presentation

MD240

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


    Slide 1:MD240 Web Services

    Slide 2:The Good Old Days … Service vs. Internet Services

    FoxTrot by Bill Amend

    Slide 3:The Good Old Days … Internet Services

    Internet Services Gopher Wide Area Information Server (WAIS) FTP = File Transfer Protocol transferring files across the Internet Telnet shell access = logging into your computer account SSH = Secure Shell HTTP = Hyper Text Transfer Protocol e-mail = sendmail service/SMTP (Simple Mail Transfer Protocol) newsgroups IRC = Internet Relay Chat precursor to AOL/MSN/ICQ buddy chat systems

    The Bloody Future of Info Tech … Web Services Source: theserverside.com The Showdown Bill “Vader” Gates and Scott “Luke” McNealy each defend the honor of his platform. Will Microsoft .NET be humbled … or will J2EE go over to the dark side? “The J2EE versus .NET battle will be the soap opera of the decade for geeks to watch.” - Chad Vawter and Ed Roman, The Middleware Company The Bloody Future of Info Tech … Web Services

    Slide 6:Background

    Slide 7:Background

    Common Business Problem -- how to let trading partners interact with our organization Complicated by multiple customer-facing and supplier-facing channels Human customer service Automated customer service WWW Handhelds WAP EAI, EDI, ERP systems, CRM systems, supply chain applications

    Slide 8:Background

    Hardware #1 Hardware #2 Systems Software #1 Application Software #1 Distributed Application Software EDI WWW (html/http) DCOM, CORBA, RMI Web Services (xml/soap) Systems Software #2 Application Software #2 Ex: Mainframe ERP System Ex: Handheld Browser message passing Desired Interactions w/ Customers Desired Interactions w/ Suppliers

    Slide 9:Background

    Old Approach Develop a custom-coded application (containing similar business logic) to link each customer/supplier to each of these channels Drawbacks Task multiplied by the number of customers and/or suppliers 250 customers … 250 custom-coding projects EDI proprietary solutions … very expensive Client/Server or Web-Based Service highly interdependent applications … if one fails, they all fail synchronous communication only DCOM, CORBA, RMI work well as long as you use only one platform (i.e., all Windows, all Unix) don’t scale well for large numbers of users difficult to program, deploy, and maintain

    Slide 10:Background

    New Approach = “Web Services” Develop business logic once, then wrap it with an interface that can talk to each channel in the appropriate manner Eliminates custom recoding of identical business logic for each use 250 customers … 1 coding project

    Slide 11:Web Services

    Slide 12:The Bloody Future of Info Tech … Web Services

    Organizations are building “Service Oriented Architectures” The enterprise develops modular application components that can be reused and conform to industry standards These applications are connected to the organization’s information system and made available to the user via the Internet Method … “Web Services” The application can then be called from inside or outside of the organization

    Slide 13:Web Services Definitions

    Web Services are … A collection of functions that are packaged as a single entity and published to the network for use by other programs. Web services are building blocks for creating open distributed systems, and allow companies and individuals to quickly and cheaply make their digital assets available worldwide. Web services are in reality simply XML-based interfaces to business, application, and system services, and are really old technologies wearing a new hat.

    Slide 14:Web Services Example

    Example A bank develops an internal application for simulating expected returns to a portfolio of stocks Many customers are interested in calculating the expected return on their portfolios, so the bank decides to offer the use of the application as a service to its customers The bank exposes the application (via WSDL and UDDI) to these customers as a Web Service that they can connect to via the WWW Customers study the public description (WSDL) of the service, and identify how they would like to use it Customers use the service Investment advisors who sell the bank’s services build simple web pages or desktop applications through which they can use the Web Service Corporate clients of the bank embed it into their own corporate portals, so their employees can simulate the return on their retirement stock portfolios

    Slide 15:Web Services Advantages

    Advantages of Web Services peer-to-peer communication between applications any server process (on one computer) can talk to any other server process (on another computer) any client can talk to any server process loose coupling between applications, instead of the hard coupling used in prior technology FLEXIBILITY

    Slide 16:Web Services Advantages

    Advantages of Web Services direct access to services, without having to go through a centralized web page … customers can more easily access web services web services are not so tightly tied to computing platform of hardware and software web services “components” can be joined together and integrated into more complex services savings in development time savings in development budget

    Slide 17:Web Services Forecasts

    Forecasts Application vendors will begin widely supporting web services by 2003 (Forrester) Web services will reach maturity by 2005 (Forrester) Surveys QNB Intelligence (sponsored by Microsoft) surveyed 415 senior corporate decision makers in Europe (Source: http://www.theregister.co.uk/content/53/32743.html) 75 percent had adopted J2EE for web services 58 percent had adopted .NET for web services 41 percent had adopted both

    Slide 18:Web Services Technology

    Slide 19:Basic Concept of e-Services Web Pages as “Request and Respond”

    Platform-Specific Software Object e.g., a web page e.g., a CGI program e.g., a Database HTTP request Communication with software object (disk access, or via TCP/IP) HTTP response HTML Output WWW Server .jpg/.gif File Response is in a generic language (HTML) that any WWW browser can understand Web browser

    Slide 20:Web Services Technologies

    Web Service Process Develop a software component once for a piece of business logic Package the component within web service technology, which “exposes” the component’s “services” that it can provide to customers and/or suppliers Publicize that the “services” are available Customers and suppliers use and customize the published, publicly available web service

    Web Services Technologies XML - Extensible Markup Language SOAP - Simple Object Access Protocol WSDL - Web Services Description Language UDDI - Universal Description, Discovery, and Integration

    Slide 22:Web Services Technologies

    XML A common language for connecting and sharing information with others Provides a standard format for data exchange that does not require your business partners to use a particular programming language, application, or operating system to interact with your application

    Slide 23:Web Services Technologies

    WSDL Used to describe the functions an XML-based web service can perform A standard format in which a service can publish … the names of functions the parameters required in order to use the function the results returned from the web service

    Slide 24:Web Services Technologies

    SOAP The W3C’s XML protocol for exchanging data Enables systems to communicate and make requests through a common protocol

    Slide 25:Web Services Technologies

    UDDI A way to discover services on the Internet that are available for you to use An industry effort to make it easy to locate and understand other companies’ XML-based web services Like a yellow-pages directory … for web services Links www.uddi.org uddi.microsoft.com

    Slide 26:Web Services Technologies UDDI Advertises Web Services

    UDDI Directory ABC, Inc. offers the following web services … Factory simulation Financial simulation XYZ Corp. offers the following web services … Process a credit card transaction Order a product Generate account information Click for WSDL description Click for WSDL description Click for WSDL desc. Click for WSDL description Click for WSDL desc. “Hmmm, I think I’ll use this service …”

    Slide 27:Basic Concept of Web Services Web Service Method of “Request and Respond”

    Platform-Specific Software Object e.g., a program e.g., a Java Bean A “Wrapper” around the software object XML Input SOAP request / HTTP Service #1 Service #2 Communication with software object SOAP response/HTTP XML Output Response is in a generic language (XML) that any application can understand

    Slide 28:Web Service Frameworks

    Slide 29:Web Services Frameworks

    Sun Java Open Network Environment (ONE) Java 2 Enterprise Edition (J2EE) enterprise-wide + inter-organizational applications Java 2 Standard Edition (J2SE) desktop applications Java 2 Micro Edition (J2ME) handheld (PDA/cell) applications Microsoft .NET .NET Framework desktop + enterprise-wide + inter-organizational applications .NET Compact Framework handheld (PDA/cell) and set-top box applications

    Slide 30:Web Services Frameworks

    Java 2 = J2EE/J2SE/J2ME One programming language … JAVA Write once, run anywhere A technology standard that can be implemented as a product by any company Many vendors of development tools Many vendors of application server platforms ONE LANGUAGE MANY VENDORS OF TECHNOLOGY

    Slide 31:Web Services Frameworks

    J2SE v1.4 Components

    Slide 32:Web Services Frameworks J2EE Framework

    Slide 33:Web Services Frameworks Developing Web Pages with J2EE

    Client Tier Web Service Containers Back-End Systems Browsers on Desktops, PDAs, Cells Java Server Pages Enterprise Java Beans Databases HTTP SQL

    Slide 34:Web Services Frameworks Developing Web Services with J2EE

    Client Tier Web Service Containers Back-End Systems Business Partner or other system Servlets Enterprise Java Beans Connectors Existing System Legacy System ERP System Business Partner or other system Context Repository Databases SOAP, UDDI, WSDL, ebXML SQL Proprietary Protocol Proprietary Protocol SOAP, UDDI, WSDL, ebXML

    Slide 35:Web Services Frameworks

    .NET An open language platform for Enterprise and Web development Supports many programming languages More than 20 so far Many development tools for the many programming languages One developer of application server platforms (Microsoft) MANY LANGUAGES ONE VENDOR OF TECHNOLOGY

    Slide 36:Web Services Frameworks Programming Languages Supported

    APL C++ C# COBOL Component Pascal Curriculum Eiffel Fortran Haskell Java Languages (J#) Microsoft JScript Mercury Mondrian Oberon Oz Pascal Perl Python RPG Scheme SmallTalk Standard ML Microsoft Visual Basic … and many more

    Slide 37:Web Services Frameworks The .NET Architecture

    Slide 38:Web Services Frameworks .NET Framework

    Slide 39:Web Services Frameworks Developing Web Pages with .NET

    Client Tier Web Service Containers Back-End Systems Browsers on Desktops, PDAs, Cells ASP.NET .NET Managed Components SQL Server 2000 HTTP SQL

    Slide 40:Web Services Frameworks Developing Web Services with .NET

    Client Tier Web Service Containers Back-End Systems Business Partner or other system ASP.NET .NET Managed Components Host Integration Server 2000 Mainframe System Business Partner or other system Passport.NET SQL Server 2000 SOAP, UDDI, WSDL, ebXML SQL Proprietary Protocol SOAP, UDDI, WSDL, ebXML SOAP, UDDI, WSDL, ebXML

    J2EE vs. .NET Feature Type of Technology # of Middleware Vendors Interpreter Dynamic Web Pages Middle-Tier Components Database Access SOAP, WSDL, UDDI Implicit Middleware Development Process Development Participants Programming Languages Sun J2EE Industry Standard 30+ Java Runtime Environment Java Server Pages Enterprise Java Beans JDBC, SQL/J Yes Yes Java Community Process Sun, IBM, Oracle, + others One (Java) Microsoft .NET Microsoft Product Microsoft, Mono Project Common Language Runtime Active Server Pgs (ASP.NET) .NET Managed Components ADO.NET Yes Yes Microsoft Microsoft Many

    Slide 42:Web Service Tools and Vendors

    Slide 43:Web Service Tools

    Application Server Features Configuration tools Monitoring tools Management tools Administration tools

    Slide 44:Web Service Tools

    Development Tool Features Support for web service protocols (XML, SOAP) Support for whole development cycle Visual (GUI) design environment Rapid Application Development (RAD) tools Round Trip Engineering capability Integration with requirements of web service application server(s)

    Slide 45:Web Service Tools Major Vendors

    J2EE Application Servers Sun/Netscape(AOL) – iPlanet Application Server Oracle – Oracle 9i Application Server IBM – WebSphere Application Server ($8,000-$12,000/CPU) BEA Systems – WebLogic Application Server ($3,000-$17,000/CPU) IONA – IONA Application Server Lutris – Enhydra Application Server JBOSS Application Server Development Tools TogetherSoft – Together Control Center Rational – Rational Rose Borland – JBuilder WebGain – Visual Café Sun – Forte NetBeans.org – NetBeans IBM – IBM Visual Age

    Web Service Tools Major Vendors .NET Application Servers Microsoft .NET Application Servers Development Tools Microsoft – VisualStudio.NET ActiveState – Python.NET, Perl.NET Lots of other languages will be integrated into the .NET framework by smaller companies (e.g., Eiffel.NET, COBOL.NET)

    Slide 47:Web Services Deployment Strategy

    Slide 48:Web Services Deployment Strategy Management Issues

    Management Issues Security of web services from competitors Availability for customers Acceptable performance levels Reliability Fault-tolerant Costs Training developers to develop web services Investment in new web service development tools Upgrades to web service application servers

    Web Services Deployment Strategy Recommended Strategy Start experimenting/developing now Develop an internal web service platform a protected space within which to practice developing web services share functionality across enterprise work out the bugs before deploying to customers Deploy web services for supplier-facing processes Less risky if this goes down Work out more bugs Deploy web services for customer-facing processes Once organization is totally sure of how to deploy to meet customer expectations

    Slide 50:Conclusions

    Slide 51:Conclusions

    Web Services are here Targeted at reducing development costs, simplifying development, improving electronic service delivery Major decisions … J2EE vs. .NET how to integrate them when they will work, and when they won’t work well Opportunities for managers who understand how to … transform existing software components into web services make money off of web services improve organizational performance using web services

More Related