SlideShare a Scribd company logo
1 of 18
Web Services
2
Introduction to Web Services
Today, companies rely on thousands of different software applications each with
their own role to play in running a business. These different software applications run
on a wide range of different platforms and operating systems, and they are
implemented in different programming languages. As a result, it is very difficult for
different applications to communicate with one another and share their resources in a
coordinated way.
3
Web Service Architecture
4
What are Web Services?
• Web services are application components
• Web services communicate using open protocols
• Web services are self-contained and self-describing
• Web services can be used by other applications
• XML is the basis for Web services
5
Why Web Services?Interoperability has highest priority.
• When all major platforms could access the Web using Web browsers, different platforms could interact. For
these platforms to work together, Web applications were developed.
• Web applications are simple applications run on the web. These are built around the Web browser standards
and can mostly be used by any browser on any platform.
Web services take Web applications to the next level.
• Using Web services your application can publish its function or message to the rest of the world.
• Web services uses XML to code and decode your data and SOAP to transport it using open protocols.
Web services have two types of uses.
• Reusable application components. Ideally, there will only be one type of each application component, and
anyone can use it in their application.
Connect existing software
• Web services help solve the interoperability problem by giving different applications a way to link their data.
• Using Web services you can exchange data between different applications and different platforms.
6
The base of WS
– The basic Web services platform is XML + HTTP.
– The HTTP protocol is the most used Internet protocol.
– XML provides a language which can be used between different platforms and programming
languages and still express complex messages and functions.
Web services platform elements
• SOAP (Simple Object Access Protocol)
• WSDL (Web Services Description Language)
7
What is SOAP?
The basic Web services platform is XML plus
HTTP.
• SOAP stands for Simple Object Access Protocol
• SOAP is a communication protocol
• SOAP is for communication between applications
• SOAP is a format for sending messages
• SOAP is designed to communicate via Internet
• SOAP is platform independent
• SOAP is language independent
• SOAP is based on XML
• SOAP is simple and extensible
• SOAP allows you to get around firewalls
• SOAP will be developed as a W3C standard
8
What is WSDL?
WSDL is an XML-based language for describing Web services and
how to access them.
• WSDL stands for Web Services Description Language
• WSDL is written in XML
• WSDL is an XML document
• WSDL is used to describe Web services
• WSDL is also used to locate Web services
• WSDL is not yet a W3C standard
9
How to test a web service?
• As a web service is something that has no user interface, we can’t interact with it
without a special tool. That tool should allow composing XML requests via its
own user interface. Commonly such user interfaces are text editors where you
write your XML requests and controls for posting requests to the server.
10
How to test a web service?
• Project structure. As in every well-established testing activity, I’ve started with test
specification. The main part of a test specification is test cases divided into test areas.
Visual Studio allows structuring your test project into test suites (the same as test
areas in my test specification) that contain test cases, which can contain test steps, you
can add, modify, delete and change order of every item in the structure.
• Test cases. Visual Sdudio provides enough convenient tools to manage and run your
test cases, and view result in test requests.
• Load Testing. You can perform Load Testing.
11
How to test a web service?
• Automation. But what if your web service contains too many methods with too many
input and output parameters? It may take several days for each complete test of your
web service if your tool does not provide functionality to automate your testing. You
can automate validation of your web service’s response against you input. You can
automate the output of validation results into a file (which could be just a text file of
HTML depending on your choice).
12
Example: ESRB Rating System
Search Widget. Project Description
• ESRB requires functionality to query their database to generate search results for a
third party web widget.
• Netsoft shall be responsible for the developing a web service to generate result sets in
response to queries from the Clear Spring widget. The widget shall make requests for
rated games by specifying a keyword. The work performed by Netsoft USA shall
encompass the following items:
• Define the interface for the calls to be made by the widget
• Define the result set format (XML) to be provided in response to widget calls
• Provide a mechanism by which the number of results returned can be attenuated (limit the number of
rows)
13
Scope
• URL (subject to change) http://esrb.org/SearchWidget/services/Search?wsdl (no https
requested)
• Parameters
– searchKeyword
• Text to search
– maxResultCount
• Maximum number of records to return (e.g. 50 records)
– user (subject to change)
• “ESRB_test”
– pass (subject to change)
• “ESRB_test”
14
Scope
• Return fields
– Certificate
• Game certificate number (5 digits)
– Title
• Game title (like ‘%[search text]%’ search condition against the game title and
sorted by Rating Release Date)
– Rating
• Game rating (short text format), e.g. “E,” “E10+,” “T,” etc.
– Platforms
• Comma delimited list of platforms, e.g. “Xbox, Xbox 360, Playstation 3”
– Descriptors
• Comma delimited list of content descriptors, e.g. “Blood and Gore, Strong
Language, Violence”
15
Create webtest - ESRB_WS.webtest
16
Test Cases
17
Result after run
18
Altova XML, Data Management, and
Web service toolsThe Altova MissionKit is an integrated suite of XML, database tools designed to meet
the diverse development and data management needs of today’s software architects
and XML developers.
XMLSpy® 2009 is the industry's best selling XML development environment. It offers
the top XML editor, schema designer, code generator, file converters, debuggers,
profilers, support for XSLT, XQuery, Office 2007/OOXML, XBRL, WSDL, SOAP, Visual
Studio, Eclipse, & more.
Link of a Flash demo of the SOAP client and SOAP debugger.
http://www.altova.com/videos.asp?type=1&video=soap

More Related Content

What's hot

Web Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NETWeb Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NETPonraj
 
Web service Introduction
Web service IntroductionWeb service Introduction
Web service IntroductionMadhukar Kumar
 
Develop ASP.Net Web Service
Develop ASP.Net Web Service Develop ASP.Net Web Service
Develop ASP.Net Web Service Safaa Farouk
 
WebServices Basic Introduction
WebServices Basic IntroductionWebServices Basic Introduction
WebServices Basic IntroductionShahid Shaik
 
Introduction to the Web API
Introduction to the Web APIIntroduction to the Web API
Introduction to the Web APIBrad Genereaux
 
Web forms and server side scripting
Web forms and server side scriptingWeb forms and server side scripting
Web forms and server side scriptingsawsan slii
 
An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST Ram Awadh Prasad, PMP
 
Mule webservices in detail
Mule webservices in detailMule webservices in detail
Mule webservices in detailShahid Shaik
 
Web Services Presentation - Introduction, Vulnerabilities, & Countermeasures
Web Services Presentation - Introduction, Vulnerabilities, & CountermeasuresWeb Services Presentation - Introduction, Vulnerabilities, & Countermeasures
Web Services Presentation - Introduction, Vulnerabilities, & CountermeasuresPraetorian
 
Web Server-Side Programming Techniques
Web Server-Side Programming TechniquesWeb Server-Side Programming Techniques
Web Server-Side Programming Techniquesguest8899ec02
 
Server-side Java Programming
Server-side Java ProgrammingServer-side Java Programming
Server-side Java ProgrammingChris Schalk
 
Web Fundamentals
Web FundamentalsWeb Fundamentals
Web Fundamentalsarunv
 
24 Hours Of Exchange Server 2007 (Part 8 Of 24)
24 Hours Of Exchange Server 2007 (Part 8 Of 24)24 Hours Of Exchange Server 2007 (Part 8 Of 24)
24 Hours Of Exchange Server 2007 (Part 8 Of 24)Harold Wong
 

What's hot (20)

Web Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NETWeb Service Implementation Using ASP.NET
Web Service Implementation Using ASP.NET
 
Web service Introduction
Web service IntroductionWeb service Introduction
Web service Introduction
 
SOAP vs REST
SOAP vs RESTSOAP vs REST
SOAP vs REST
 
Php Intro
Php IntroPhp Intro
Php Intro
 
SOAP by luv
SOAP by luvSOAP by luv
SOAP by luv
 
Java Web Services
Java Web ServicesJava Web Services
Java Web Services
 
Web Fundamental
Web FundamentalWeb Fundamental
Web Fundamental
 
Web service
Web serviceWeb service
Web service
 
Develop ASP.Net Web Service
Develop ASP.Net Web Service Develop ASP.Net Web Service
Develop ASP.Net Web Service
 
WebServices Basic Introduction
WebServices Basic IntroductionWebServices Basic Introduction
WebServices Basic Introduction
 
Introduction to Web Services
Introduction to Web ServicesIntroduction to Web Services
Introduction to Web Services
 
Introduction to the Web API
Introduction to the Web APIIntroduction to the Web API
Introduction to the Web API
 
Web forms and server side scripting
Web forms and server side scriptingWeb forms and server side scripting
Web forms and server side scripting
 
An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST An Overview of Web Services: SOAP and REST
An Overview of Web Services: SOAP and REST
 
Mule webservices in detail
Mule webservices in detailMule webservices in detail
Mule webservices in detail
 
Web Services Presentation - Introduction, Vulnerabilities, & Countermeasures
Web Services Presentation - Introduction, Vulnerabilities, & CountermeasuresWeb Services Presentation - Introduction, Vulnerabilities, & Countermeasures
Web Services Presentation - Introduction, Vulnerabilities, & Countermeasures
 
Web Server-Side Programming Techniques
Web Server-Side Programming TechniquesWeb Server-Side Programming Techniques
Web Server-Side Programming Techniques
 
Server-side Java Programming
Server-side Java ProgrammingServer-side Java Programming
Server-side Java Programming
 
Web Fundamentals
Web FundamentalsWeb Fundamentals
Web Fundamentals
 
24 Hours Of Exchange Server 2007 (Part 8 Of 24)
24 Hours Of Exchange Server 2007 (Part 8 Of 24)24 Hours Of Exchange Server 2007 (Part 8 Of 24)
24 Hours Of Exchange Server 2007 (Part 8 Of 24)
 

Viewers also liked

Viewers also liked (20)

Anypoint data gateway
Anypoint data gatewayAnypoint data gateway
Anypoint data gateway
 
Database component
Database component Database component
Database component
 
Referencia
ReferenciaReferencia
Referencia
 
PrudentialProfile_Eng
PrudentialProfile_EngPrudentialProfile_Eng
PrudentialProfile_Eng
 
Presentación3
Presentación3Presentación3
Presentación3
 
Paul Resume 2016
Paul Resume 2016Paul Resume 2016
Paul Resume 2016
 
Creating dynamic json
Creating dynamic jsonCreating dynamic json
Creating dynamic json
 
Simple web service vm
Simple web service vmSimple web service vm
Simple web service vm
 
Cache for community edition
Cache for community editionCache for community edition
Cache for community edition
 
krutagna new
krutagna newkrutagna new
krutagna new
 
arte urbano
arte urbano arte urbano
arte urbano
 
Caching and invalidating with managed store
Caching and invalidating with managed storeCaching and invalidating with managed store
Caching and invalidating with managed store
 
Maven
MavenMaven
Maven
 
Jenkins3
Jenkins3Jenkins3
Jenkins3
 
Proyecto de-aula-periodo-1-nuevo-noveno-1
Proyecto de-aula-periodo-1-nuevo-noveno-1Proyecto de-aula-periodo-1-nuevo-noveno-1
Proyecto de-aula-periodo-1-nuevo-noveno-1
 
Mapping and listing with mule
Mapping and listing with muleMapping and listing with mule
Mapping and listing with mule
 
Formación del profesorado. escuela 2.0
Formación del profesorado. escuela 2.0Formación del profesorado. escuela 2.0
Formación del profesorado. escuela 2.0
 
Aguilera melania
Aguilera melaniaAguilera melania
Aguilera melania
 
Vm component
Vm componentVm component
Vm component
 
La intervención social
La intervención socialLa intervención social
La intervención social
 

Similar to WebServices

Web Service Presentation
Web Service PresentationWeb Service Presentation
Web Service Presentationguest0df6b0
 
Web service implementation
Web service implementationWeb service implementation
Web service implementationYatindra Sahu
 
Week2 cloud computing week2
Week2 cloud computing week2Week2 cloud computing week2
Week2 cloud computing week2Ankit Gupta
 
nptl cc video.pptx
nptl cc video.pptxnptl cc video.pptx
nptl cc video.pptxMunmunSaha7
 
SOAP Service in Mule Esb
SOAP Service in Mule EsbSOAP Service in Mule Esb
SOAP Service in Mule EsbAnand kalla
 
Web Services Foundation Technologies
Web Services Foundation TechnologiesWeb Services Foundation Technologies
Web Services Foundation TechnologiesPankaj Saharan
 
Introduction to SoapUI day 1
Introduction to SoapUI day 1Introduction to SoapUI day 1
Introduction to SoapUI day 1Qualitest
 
Soap UI - Getting started
Soap UI - Getting startedSoap UI - Getting started
Soap UI - Getting startedQualitest
 
Автоматизация тестирования API для начинающих
Автоматизация тестирования API для начинающихАвтоматизация тестирования API для начинающих
Автоматизация тестирования API для начинающихCOMAQA.BY
 
SpringPeople Introduction to JAVA Web Services
SpringPeople Introduction to JAVA Web ServicesSpringPeople Introduction to JAVA Web Services
SpringPeople Introduction to JAVA Web ServicesSpringPeople
 
Servlets as introduction (Advanced programming)
Servlets as introduction (Advanced programming)Servlets as introduction (Advanced programming)
Servlets as introduction (Advanced programming)Gera Paulos
 

Similar to WebServices (20)

Web Service Presentation
Web Service PresentationWeb Service Presentation
Web Service Presentation
 
Web service implementation
Web service implementationWeb service implementation
Web service implementation
 
Wt unit 6 ppts web services
Wt unit 6 ppts web servicesWt unit 6 ppts web services
Wt unit 6 ppts web services
 
Week2 cloud computing week2
Week2 cloud computing week2Week2 cloud computing week2
Week2 cloud computing week2
 
nptl cc video.pptx
nptl cc video.pptxnptl cc video.pptx
nptl cc video.pptx
 
soap toolkit
soap toolkitsoap toolkit
soap toolkit
 
dotNETfinal.ppt
dotNETfinal.pptdotNETfinal.ppt
dotNETfinal.ppt
 
dotNETfinal.ppt
dotNETfinal.pptdotNETfinal.ppt
dotNETfinal.ppt
 
CS-802 Act-1.ppt
CS-802 Act-1.pptCS-802 Act-1.ppt
CS-802 Act-1.ppt
 
.NET Tutorial
.NET Tutorial.NET Tutorial
.NET Tutorial
 
Web services
Web servicesWeb services
Web services
 
SOAP Service in Mule Esb
SOAP Service in Mule EsbSOAP Service in Mule Esb
SOAP Service in Mule Esb
 
Web Technology Fundamentals
Web Technology FundamentalsWeb Technology Fundamentals
Web Technology Fundamentals
 
Web Services Foundation Technologies
Web Services Foundation TechnologiesWeb Services Foundation Technologies
Web Services Foundation Technologies
 
Introduction to SoapUI day 1
Introduction to SoapUI day 1Introduction to SoapUI day 1
Introduction to SoapUI day 1
 
Soap UI - Getting started
Soap UI - Getting startedSoap UI - Getting started
Soap UI - Getting started
 
Web services
Web servicesWeb services
Web services
 
Автоматизация тестирования API для начинающих
Автоматизация тестирования API для начинающихАвтоматизация тестирования API для начинающих
Автоматизация тестирования API для начинающих
 
SpringPeople Introduction to JAVA Web Services
SpringPeople Introduction to JAVA Web ServicesSpringPeople Introduction to JAVA Web Services
SpringPeople Introduction to JAVA Web Services
 
Servlets as introduction (Advanced programming)
Servlets as introduction (Advanced programming)Servlets as introduction (Advanced programming)
Servlets as introduction (Advanced programming)
 

More from Sunil Komarapu

More from Sunil Komarapu (20)

Mule for each scope headerc ollection
Mule for each scope headerc ollectionMule for each scope headerc ollection
Mule for each scope headerc ollection
 
Mule esb Basics
Mule esb BasicsMule esb Basics
Mule esb Basics
 
Mule esb stripe
Mule esb stripeMule esb stripe
Mule esb stripe
 
Mule esb api layer
Mule esb api layerMule esb api layer
Mule esb api layer
 
Mmc rest api user groups
Mmc rest api user groupsMmc rest api user groups
Mmc rest api user groups
 
How to use message properties component
How to use message properties componentHow to use message properties component
How to use message properties component
 
How to use expression filter
How to use expression filterHow to use expression filter
How to use expression filter
 
Data weave
Data weave Data weave
Data weave
 
Automatic documantation with mule
Automatic documantation with muleAutomatic documantation with mule
Automatic documantation with mule
 
Caching and invalidating with managed store
Caching and invalidating with managed storeCaching and invalidating with managed store
Caching and invalidating with managed store
 
Converting with custom transformer
Converting with custom transformerConverting with custom transformer
Converting with custom transformer
 
Groovy with mule
Groovy with muleGroovy with mule
Groovy with mule
 
Idempotent filter with simple file
Idempotent filter with simple fileIdempotent filter with simple file
Idempotent filter with simple file
 
Jenkins
JenkinsJenkins
Jenkins
 
Jenkins2
Jenkins2Jenkins2
Jenkins2
 
Maven part 1
Maven part 1Maven part 1
Maven part 1
 
Maven ii
Maven iiMaven ii
Maven ii
 
Maven iii
Maven iiiMaven iii
Maven iii
 
Mule esb
Mule esbMule esb
Mule esb
 
Mule with drools
Mule with droolsMule with drools
Mule with drools
 

Recently uploaded

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 

WebServices

  • 2. 2 Introduction to Web Services Today, companies rely on thousands of different software applications each with their own role to play in running a business. These different software applications run on a wide range of different platforms and operating systems, and they are implemented in different programming languages. As a result, it is very difficult for different applications to communicate with one another and share their resources in a coordinated way.
  • 4. 4 What are Web Services? • Web services are application components • Web services communicate using open protocols • Web services are self-contained and self-describing • Web services can be used by other applications • XML is the basis for Web services
  • 5. 5 Why Web Services?Interoperability has highest priority. • When all major platforms could access the Web using Web browsers, different platforms could interact. For these platforms to work together, Web applications were developed. • Web applications are simple applications run on the web. These are built around the Web browser standards and can mostly be used by any browser on any platform. Web services take Web applications to the next level. • Using Web services your application can publish its function or message to the rest of the world. • Web services uses XML to code and decode your data and SOAP to transport it using open protocols. Web services have two types of uses. • Reusable application components. Ideally, there will only be one type of each application component, and anyone can use it in their application. Connect existing software • Web services help solve the interoperability problem by giving different applications a way to link their data. • Using Web services you can exchange data between different applications and different platforms.
  • 6. 6 The base of WS – The basic Web services platform is XML + HTTP. – The HTTP protocol is the most used Internet protocol. – XML provides a language which can be used between different platforms and programming languages and still express complex messages and functions. Web services platform elements • SOAP (Simple Object Access Protocol) • WSDL (Web Services Description Language)
  • 7. 7 What is SOAP? The basic Web services platform is XML plus HTTP. • SOAP stands for Simple Object Access Protocol • SOAP is a communication protocol • SOAP is for communication between applications • SOAP is a format for sending messages • SOAP is designed to communicate via Internet • SOAP is platform independent • SOAP is language independent • SOAP is based on XML • SOAP is simple and extensible • SOAP allows you to get around firewalls • SOAP will be developed as a W3C standard
  • 8. 8 What is WSDL? WSDL is an XML-based language for describing Web services and how to access them. • WSDL stands for Web Services Description Language • WSDL is written in XML • WSDL is an XML document • WSDL is used to describe Web services • WSDL is also used to locate Web services • WSDL is not yet a W3C standard
  • 9. 9 How to test a web service? • As a web service is something that has no user interface, we can’t interact with it without a special tool. That tool should allow composing XML requests via its own user interface. Commonly such user interfaces are text editors where you write your XML requests and controls for posting requests to the server.
  • 10. 10 How to test a web service? • Project structure. As in every well-established testing activity, I’ve started with test specification. The main part of a test specification is test cases divided into test areas. Visual Studio allows structuring your test project into test suites (the same as test areas in my test specification) that contain test cases, which can contain test steps, you can add, modify, delete and change order of every item in the structure. • Test cases. Visual Sdudio provides enough convenient tools to manage and run your test cases, and view result in test requests. • Load Testing. You can perform Load Testing.
  • 11. 11 How to test a web service? • Automation. But what if your web service contains too many methods with too many input and output parameters? It may take several days for each complete test of your web service if your tool does not provide functionality to automate your testing. You can automate validation of your web service’s response against you input. You can automate the output of validation results into a file (which could be just a text file of HTML depending on your choice).
  • 12. 12 Example: ESRB Rating System Search Widget. Project Description • ESRB requires functionality to query their database to generate search results for a third party web widget. • Netsoft shall be responsible for the developing a web service to generate result sets in response to queries from the Clear Spring widget. The widget shall make requests for rated games by specifying a keyword. The work performed by Netsoft USA shall encompass the following items: • Define the interface for the calls to be made by the widget • Define the result set format (XML) to be provided in response to widget calls • Provide a mechanism by which the number of results returned can be attenuated (limit the number of rows)
  • 13. 13 Scope • URL (subject to change) http://esrb.org/SearchWidget/services/Search?wsdl (no https requested) • Parameters – searchKeyword • Text to search – maxResultCount • Maximum number of records to return (e.g. 50 records) – user (subject to change) • “ESRB_test” – pass (subject to change) • “ESRB_test”
  • 14. 14 Scope • Return fields – Certificate • Game certificate number (5 digits) – Title • Game title (like ‘%[search text]%’ search condition against the game title and sorted by Rating Release Date) – Rating • Game rating (short text format), e.g. “E,” “E10+,” “T,” etc. – Platforms • Comma delimited list of platforms, e.g. “Xbox, Xbox 360, Playstation 3” – Descriptors • Comma delimited list of content descriptors, e.g. “Blood and Gore, Strong Language, Violence”
  • 15. 15 Create webtest - ESRB_WS.webtest
  • 18. 18 Altova XML, Data Management, and Web service toolsThe Altova MissionKit is an integrated suite of XML, database tools designed to meet the diverse development and data management needs of today’s software architects and XML developers. XMLSpy® 2009 is the industry's best selling XML development environment. It offers the top XML editor, schema designer, code generator, file converters, debuggers, profilers, support for XSLT, XQuery, Office 2007/OOXML, XBRL, WSDL, SOAP, Visual Studio, Eclipse, & more. Link of a Flash demo of the SOAP client and SOAP debugger. http://www.altova.com/videos.asp?type=1&video=soap