+ All Categories
Home > Documents > Introduction to Web Services Introduction to Web Services.

Introduction to Web Services Introduction to Web Services.

Date post: 22-Dec-2015
Category:
View: 231 times
Download: 3 times
Share this document with a friend
Popular Tags:
26
Introduction to W Introduction to W eb Services eb Services
Transcript

Introduction to Web SeIntroduction to Web Services rvices

Introduction to Web ServicesIntroduction to Web Services

Introduction Introduction

What is Web Services?What is Web Services? There is no concise definition yetThere is no concise definition yet Use Web to provide servicesUse Web to provide services Encompass a set of related standards that can enable any two Encompass a set of related standards that can enable any two

computer applications to communicate and exchange data via computer applications to communicate and exchange data via the Internet. the Internet.

Provide a new tool for people to communicate with each Provide a new tool for people to communicate with each otherother

Many factors indicate that Web services will radically Many factors indicate that Web services will radically change IT architectures and partner relationships. change IT architectures and partner relationships.

including software vendors' widespread support for underlying including software vendors' widespread support for underlying standards standards

Introduction to Web ServicesIntroduction to Web Services

Computing Advancements and Computing Advancements and Web Services Web Services

1960s1960s many large software-development projects many large software-development projects

encountered severe difficulties. encountered severe difficulties. Development efforts typically ran behind scheduleDevelopment efforts typically ran behind schedule costs often greatly exceeded budgetscosts often greatly exceeded budgets the finished products were unreliable the finished products were unreliable

1970s1970s structured programming structured programming disciplines of structured systems analysis and design disciplines of structured systems analysis and design improved software technology did begin to appear improved software technology did begin to appear

Introduction to Web ServicesIntroduction to Web Services

Computing Advancements and Computing Advancements and Web ServicesWeb Services

1980s and 1990s 1980s and 1990s Object-oriented programming Object-oriented programming became widely became widely

used used improve the software-development process drimprove the software-development process dr

amatically amatically

Introduction to Web ServicesIntroduction to Web Services

What are objectsWhat are objects Object technology is a packaging scheme that Object technology is a packaging scheme that

enables programmers to create meaningful enables programmers to create meaningful software units software units

Objects are focused on particular applications Objects are focused on particular applications areas areas E.g. date objects, time objects, paycheck objects, E.g. date objects, time objects, paycheck objects,

invoice objects, audio objects, video objects, file invoice objects, audio objects, video objects, file objects, record objects and so on objects, record objects and so on

ObjectsObjects have have • propertiesproperties• perform perform actions (behaviors)actions (behaviors)

ClassesClasses represent groups of related objects represent groups of related objects

Introduction to Web ServicesIntroduction to Web Services

Web Services and LanguagesWeb Services and Languages

Procedural programming languages Procedural programming languages Such as Fortran, Pascal, Basic and CSuch as Fortran, Pascal, Basic and C Focused on actions (verbs) rather than objects (nouns)Focused on actions (verbs) rather than objects (nouns) Do not mirror real-world entities effectively Do not mirror real-world entities effectively Not particularly reusable Not particularly reusable

Object-oriented languagesObject-oriented languages Such as C++, Java, C# and Visual Basic .NET, Such as C++, Java, C# and Visual Basic .NET, Programmers can write code in an object- oriented manner that Programmers can write code in an object- oriented manner that

reflects the way in which they perceive the world reflects the way in which they perceive the world Code reusableCode reusable Group classes into Group classes into class librariesclass libraries Significant productivity gains Significant productivity gains

Introduction to Web ServicesIntroduction to Web Services

Web Services and LanguagesWeb Services and Languages

Web services take advantage of object-Web services take advantage of object-oriented programming techniquesoriented programming techniques Web services enable developers to build Web services enable developers to build

applications from existing software applications from existing software components components

Encourages a modular approach to Encourages a modular approach to programming programming

Transforming a network such as the Internet Transforming a network such as the Internet into an enormous library of programmatic into an enormous library of programmatic components available to developers components available to developers

Introduction to Web ServicesIntroduction to Web Services

Web Services and Distributed Web Services and Distributed ComputingComputing

Distributed computing Distributed computing Different tasks to be performed on different computers, Different tasks to be performed on different computers, i.e. an organization' s computing is distributed over networks, i.e. an organization' s computing is distributed over networks,

instead of being performed only at a central computer installation instead of being performed only at a central computer installation • OMG's Common Object Request Broker Architecture (CORBA)OMG's Common Object Request Broker Architecture (CORBA)• Microsoft's Distributed Component Object Model (DCOM)Microsoft's Distributed Component Object Model (DCOM)• Sun Microsystem's Remote Method Invocation (RMJ)Sun Microsystem's Remote Method Invocation (RMJ)• IBM's Distributed System Object Model (DSOM)IBM's Distributed System Object Model (DSOM)

more efficient, or even necessary more efficient, or even necessary N-tier applN-tier applications ications often split up applications over numerous often split up applications over numerous

computerscomputers• For example, a For example, a three-tier application three-tier application might have a user interface on might have a user interface on

one computer, business-logic processing on a second, and a one computer, business-logic processing on a second, and a database on a third-all interacting as the application runs database on a third-all interacting as the application runs

Introduction to Web ServicesIntroduction to Web Services

Web Services and Distributed Web Services and Distributed ComputingComputing

Different computers throughout a network muDifferent computers throughout a network must be able to communicate st be able to communicate

ShortcomingsShortcomings• interoperability interoperability (the ability to communicate and sha(the ability to communicate and sha

re data with software from different vendors and plre data with software from different vendors and platforms) is limited among these technologiesatforms) is limited among these technologies

• For example, DCOM and CORBA, cannot communFor example, DCOM and CORBA, cannot communicate easily icate easily

• Such problems have impeded distributed computinSuch problems have impeded distributed computing ability to facilitate business-process integration ag ability to facilitate business-process integration and automation nd automation

Introduction to Web ServicesIntroduction to Web Services

Web Services and Distributed ComWeb Services and Distributed Computingputing

Web services improve distributed computiWeb services improve distributed computing capabilities by addressing the issue of ling capabilities by addressing the issue of limited interoperabilitymited interoperability Web services operate using Web services operate using open (i.e., non-propen (i.e., non-pr

oprietary) standardsoprietary) standards Web services-based applications are often eaWeb services-based applications are often ea

sier to sier to debugdebug, because Web services use tex, because Web services use text-based communication protocols t-based communication protocols

Introduction to Web ServicesIntroduction to Web Services

World Wide Web (WWW)World Wide Web (WWW)

Tim Berners-Lee of CERN (the European OrganiTim Berners-Lee of CERN (the European Organization for Nuclear Research) began to develop a zation for Nuclear Research) began to develop a technology for sharing information via hyperlink ttechnology for sharing information via hyperlink text documents ext documents Invent the Invent the HyperText Markup Language (HyperText Markup Language (HTMLHTML)) Use Hypertext Transfer Protocol (Use Hypertext Transfer Protocol (HTTPHTTP) ) to form the bto form the b

ackbone of his new hypertext information system - ackbone of his new hypertext information system - WWorld Wide Weborld Wide Web

Ubiquitous, platform independent technologies Ubiquitous, platform independent technologies

Introduction to Web ServicesIntroduction to Web Services

Web Services v.s. WWWWeb Services v.s. WWW

Web services make good uses of WWWWeb services make good uses of WWW Web services can operate over Internet and Web services can operate over Internet and

Web protocols, such as HTTPWeb protocols, such as HTTP Extend the Web's capabilities to include direct Extend the Web's capabilities to include direct

communication between computer programs communication between computer programs Web Services is Ubiquitous, platform indepenWeb Services is Ubiquitous, platform indepen

dent technologies dent technologies

Introduction to Web ServicesIntroduction to Web Services

Web Services v.s. Electronic Data IWeb Services v.s. Electronic Data Interchange (EDI) nterchange (EDI)

Organizations have invested in Organizations have invested in Electronic Electronic Data Interchange (EDI) Data Interchange (EDI) technology to link technology to link business partners and help manage business partners and help manage supply chains supply chains

EDI messages are not standardsEDI messages are not standards Need separate EDI connections among Need separate EDI connections among

organizations organizations EDI systems are EDI systems are tightly coupledtightly coupled

Difficult to maintainDifficult to maintain

Introduction to Web ServicesIntroduction to Web Services

Web Services v.s. Electronic Data IWeb Services v.s. Electronic Data Interchange (EDI)nterchange (EDI)

Web services provide capabilities similar tWeb services provide capabilities similar to those offered by EDI, but less expensive o those offered by EDI, but less expensive to implement to implement Fewer incompatibility problems arise because Fewer incompatibility problems arise because

of open standards of open standards Web services is Web services is loosely couloosely coupledpled allows organizations to use two technologies tallows organizations to use two technologies t

ogether or to phase out EDIogether or to phase out EDI

Introduction to Web ServicesIntroduction to Web Services

Emergence of Web ServicesEmergence of Web Services

The good partThe good part HP's product, HP's product, e-Speak, and Microsoft’se-Speak, and Microsoft’s Web s Web s

ervices as a key component of its ervices as a key component of its .NET initiati.NET initiativeve

Microsoft announced Web services, it was cleMicrosoft announced Web services, it was clear that the technology could revolutionize distrar that the technology could revolutionize distributed computing ibuted computing

Both of them wish one of them would be a uniBoth of them wish one of them would be a universal distributed-computing standardversal distributed-computing standard

Introduction to Web ServicesIntroduction to Web Services

Emergence of Web ServicesEmergence of Web Services

The bad partThe bad part Different organizations had already made Different organizations had already made

significant investments in distributed-significant investments in distributed-computing platforms computing platforms

Migration to a different platform is a big Migration to a different platform is a big problemproblem• costs businesses timecosts businesses time• money and employee productivity money and employee productivity

Introduction to Web ServicesIntroduction to Web Services

Emergence of Web ServicesEmergence of Web Services However,However,

Most major software vendors have recognized that Web Most major software vendors have recognized that Web services technology represents a significant step forward for services technology represents a significant step forward for computing computing

The main standard used in Web services is The main standard used in Web services is XMLXML Use Simple Object Access Protocol (Use Simple Object Access Protocol (SOAPSOAP) ) based on XML based on XML

• a messaging protocol for transporting information and instructions a messaging protocol for transporting information and instructions between Web services between Web services

Web Services Description Language (Web Services Description Language (WSDLWSDL) ) and and Universal Universal Description isDescription is based on XML based on XML

• WSDL - a standard method of describing Web services and their WSDL - a standard method of describing Web services and their specific capabilities specific capabilities

Universal Description,Universal Description, Discovery and Integration (Discovery and Integration (UDDIUDDI) is) is also also based on XML based on XML

• defines XML-based rules for building directories in which companies defines XML-based rules for building directories in which companies advertise themselves and their Web services advertise themselves and their Web services

Introduction to Web ServicesIntroduction to Web Services

Web Services AdvantagesWeb Services Advantages ““Why is the computing industry so excited about Web serWhy is the computing industry so excited about Web ser

vices, given that many other promising technologies havvices, given that many other promising technologies have failed?" e failed?"

Web services operate using open, text-based standardsWeb services operate using open, text-based standards• The most important part The most important part

Web services promote a modular approach to programming Web services promote a modular approach to programming • Use OOP concept to increase reusabilityUse OOP concept to increase reusability

Web services are comparatively easy and inexpensive to impleWeb services are comparatively easy and inexpensive to implement ment

• Base on the current existing infrastructureBase on the current existing infrastructure Web services can significantly reduce the costs of enterprise apWeb services can significantly reduce the costs of enterprise ap

plication integration (EAI) and business-to-business (B2B) commplication integration (EAI) and business-to-business (B2B) communications unications

• Reduce investmentsReduce investments Web services can be implemented incrementally, rather than all Web services can be implemented incrementally, rather than all

at once at once

Introduction to Web ServicesIntroduction to Web Services

Introduction to Web ServicesIntroduction to Web Services

Introduction to Web ServicesIntroduction to Web Services

Real Web ServicesReal Web Services Organizations are employing Web services to intOrganizations are employing Web services to int

egrate and improve communications systems egrate and improve communications systems E.g., the UC-Berkeley using Web services to unify the E.g., the UC-Berkeley using Web services to unify the

school's e-mail, voice mail and facsimile service into ischool's e-mail, voice mail and facsimile service into individual in-boxes that are accessible from cell phonendividual in-boxes that are accessible from cell phones, PDAs, telephones or e-mail clients. s, PDAs, telephones or e-mail clients.

Manufacturing companies are implementing WeManufacturing companies are implementing Web services to improve supply chains, inventory ab services to improve supply chains, inventory and customer-management systems. nd customer-management systems. Allow customers to access company’s information via Allow customers to access company’s information via

Web ServicesWeb Services

Introduction to Web ServicesIntroduction to Web Services

Real Web ServicesReal Web Services

The consulting firm Accenture has developed Web servicThe consulting firm Accenture has developed Web services products, called es products, called Live Information Models, Live Information Models, that enable that enable stock traders to access real-time quotes and market inforstock traders to access real-time quotes and market information mation

allows brokers to receive real-time updates and to access differeallows brokers to receive real-time updates and to access different information sources from a single terminal nt information sources from a single terminal

Airlines, travel agencies, rental-car companies and hotelAirlines, travel agencies, rental-car companies and hotels all provide travel-related services s all provide travel-related services

Difficult to integrate because of different platforms or operation sDifficult to integrate because of different platforms or operation systemsystems

With Web services, companies in the travel business can streamWith Web services, companies in the travel business can streamline the reservation process line the reservation process

Introduction to Web ServicesIntroduction to Web Services

Examples of existing Web Services Examples of existing Web Services and their capabilitiesand their capabilities

Introduction to Web ServicesIntroduction to Web Services

Examples of existing Web Services Examples of existing Web Services and their capabilitiesand their capabilities

Introduction to Web ServicesIntroduction to Web Services

Web Services ChallengesWeb Services Challenges Significant challenges for application developers Significant challenges for application developers

and IT staffs and IT staffs SOAP, WSDL and UDDI – the standards that drive WSOAP, WSDL and UDDI – the standards that drive W

eb services – eb services – are still in draft formare still in draft form• SOAP and WSDL are under development by the W3CSOAP and WSDL are under development by the W3C• UDDI has not yet been submitted to a standards organization UDDI has not yet been submitted to a standards organization

Many businesses want to wait until the underlying tecMany businesses want to wait until the underlying technology are stable before adopting ithnology are stable before adopting it

Some are nervous that the current cooperation amonSome are nervous that the current cooperation among software vendors might failg software vendors might fail

• E.g., Microsoft, IBM and Sun to create interoperable implemeE.g., Microsoft, IBM and Sun to create interoperable implementations might failntations might fail

• resulting in splinter standardsresulting in splinter standards• incompatible Web services implementations. incompatible Web services implementations.

Introduction to Web ServicesIntroduction to Web Services

Web Services ChallengesWeb Services Challenges Companies refuse to release their intellectual prCompanies refuse to release their intellectual pr

operty operty Hard to make open standardsHard to make open standards

The lack of standard security proceduresThe lack of standard security procedures SOAP, are not designed to provide security SOAP, are not designed to provide security companies are hesitant to deploy Web services until scompanies are hesitant to deploy Web services until s

ecurity mechanisms are standardized ecurity mechanisms are standardized Defining and guaranteeing Quality of Service (QDefining and guaranteeing Quality of Service (Q

oS) oS) meet provider and consumers’ expectations meet provider and consumers’ expectations Bad QoS, e.g., slow response times, infrequent updatBad QoS, e.g., slow response times, infrequent updat

es, an inability to handle large numbers of requests es, an inability to handle large numbers of requests


Recommended