The term web service is one of them
- (generic) services offered by electronic devices to other electronic devices, communicate with each other via the World Wide Web, or
- (specific) web services that are implemented in a particular technology or brand, W3C Web Services.
In web services, Web technologies such as HTTP - originally designed for human-to-machine communication - are used for machine-to-machine communication, more specifically for transferring machine-readable file formats such as XML and JSON.
In practice, web services generally provide an object-oriented web-based interface to a database server, used for example by other web servers, or by mobile apps, that provide user interfaces to end users. Many organizations that provide data in formatted HTML pages will also provide data on their servers as XML or JSON, often through web services to enable syndication, such as Wikipedia Exports. Other apps offered to end users may be mashups, where web servers consume multiple web services on various machines, and collect content into a single user interface.
Video Web service
Layanan Web (Umum)
Asynchronous JavaScript And XML
Asynchronous JavaScript And XML (AJAX) is the dominant technology for WebServices. It evolves from a combination of HTTP servers, JavaScript clients and Plain Old XML (which is different from SOAP and W3C Web Services), now often used with JSON and also, or not, XML.
REST
Representational State Transfer (REST) ââis an architecture for well-behaved web services that can work on a scale of the Internet .
In the 2004 document, the W3C sets out the following REST as a key web service differentiator feature:
We can identify two main classes of web services:
- REST-compliant web service , where the primary purpose of this service is to manipulate XML representations of web resources using a uniform set of "stateless" operations; and
- arbitrary web service , where the service may expose a series of arbitrary operations.
Web service using markup language
There are a number of web services that use markup languages:
- JSON-RPC
- JSON-WSP
- Web template
- Language Description Web Service (WSDL), developed by W3C
- XML Interface for Network Services (XINS), provides a POX-style web service specification format
- Web Service Conversation Language (WSCL)
- The Language of the Streaming Web Service (WSFL), replaced by BPEL
- WS-MetadataExchange
- Transfer representational status (REST) âââ ⬠<â â¬
Web API
The Web API is a development in web services where emphasis has moved to simpler state-based communications (REST) ââcommunications. The quiet APIs do not require XML-based web service protocol (SOAP and WSDL) to support their interface.
Maps Web service
W3C Web Services (Specific)
In connection with W3C Web Services, the W3C defines web services as:
A web service is a software system designed to support interoperable machine-to-machine interoperability over a network. It has an interface described in a machine-process format (specifically WSDL). Other systems interact with web services in the manner specified by the description using SOAP-messages, usually delivered using HTTP with XML serialization along with other web-related standards.
W3C Web Services can use SOAP through the HTTP protocol, allowing cheaper (more efficient) interaction over the Internet than through proprietary solutions such as EDI/B2B. In addition to SOAP over HTTP, web services can also be implemented on other reliable transport mechanisms such as FTP. In a 2002 document, the Web Services Architecture Working Group defined the web service architecture, which required the adoption of a "web services" standard.
Description
The term "web service" describes the standard way of integrating web-based applications using XML, SOAP, WSDL and UDDI open standards over the backbone of the Internet Protocol. XML is a data format used to load data and provide metadata around it, SOAP is used to transfer data, WSDL is used to describe the services available and UDDI lists what services are available.
Web service is a method of communication between two electronic devices over a network. This is a software function that is provided at a network address over the web with the service always on as in the utility computing concept.
Many organizations use several software systems for management. Different software systems often need to exchange data with each other, and web services are a method of communication that allows two software systems to exchange this data over the internet. The software system that asks for data is called the service requester , while the software system that will process the request and provide the data is called the service provider .
Different software can use different programming languages, and hence there is a need for data exchange methods that are independent of a particular programming language. Most types of software can interpret XML tags. Thus, web services can use XML files for data exchange.
Rules for communication between different systems need to be specified, such as:
- How one system can request data from another system.
- Which custom parameters are required in the data request.
- What will be the resulting data structure. (Typically, data is exchanged in an XML file, and the XML file structure is validated against a.xsd file.)
- What error messages are displayed when certain rules for communication are not noticed, to make troubleshooting easier.
All rules for this communication are defined in a file called WSDL (Web Services Description Language), which has the .wsdl
extension. (Proposals for Mandiri Web Services ( AWS ) are working to develop more flexible web services that do not rely on strict rules.)
A directory named UDDI (Universal Description, Discovery and Integration) defines which software system should be contacted for what type of data. So when a software system requires one particular report/data, it will go to UDDI and find out which other systems can be contacted to receive the data. Once the software system finds another system to contact, it will contact the system using a special protocol called SOAP (Simple Object Access Protocol). The service provider system will first validate the data request by referring to the WSDL file, and then processing the request and sending the data under the SOAP protocol.
Automatic design method
Automated tools can help in making web services. For services that use WSDL, it is possible to automatically generate WSDL for an existing class (bottom-up model) or to generate an existing WSDL class framework (top-down model).
- Developers using the bottom-up model write the first implementation class (in some programming languages), and then use the WSDL generator tool to expose methods from these classes as web services. This is easier to develop but may be more difficult to maintain if the original class changes frequently.
- Developers using the top-down model write WSDL documents first and then use the code builder to generate the class framework, to complete as necessary. This model is generally considered more difficult but can result in a cleaner design and generally more resistant to change. As long as the message format between the sender and receiver remains unchanged, changes to the sender and recipients themselves do not affect web services. This technique is also referred to as the first contract because the WSDL (or contract between the sender and receiver) is the starting point.
- Developers using the WSDL Subset (SWSDL) (ie WSDL with subset operations in the original WSDL) can perform web service testing and top-down development.
Criticism
Critics of non-quiet web services often complain that they are too complex and based on large software vendors or integrators, rather than typical open source implementations.
There are also concerns about performance because web services use XML as the message format and SOAP/HTTP in wrapping and transporting.
Web service regression test
Functional and non-functional testing of web services is done with the help of WSDL parsing. Regression testing is done by identifying changes made to upgrade the software. The need for web service regression testing can be categorized in three different ways, namely, changes in the WSDL, changes in code, and selective retest of operations. We can capture the above three needs in the three intermediate forms of the WSDL Subset, ie, WSDL Differences (DWSDL), WSDL Units (UWSDL), and Reduce WSDL (RWSDL), respectively. These three WSDL subsets are then combined to form the WSDL Combine (CWSDL) which is then used for regression testing of web services. This will assist in the Automated Web Service Changes Management (AWSCM), by selecting the relevant test case to create a test circuit that is subtracted from the old test circuit.
Web service testing can also be automated using some test automation tools such as SOAP UI, Oracle Application Testing Suite (OATS), Integrated Functional Tests, Selenium, etc.
Web service change management
Jobs related to capturing and visualizing changes made to Web services. Visualization and calculation of changes can be done in the form of intermediate artifacts (Subset WSDL). Insights on change impact calculations are helpful in testing, top down development and reducing regression testing. AWSCM is a tool that can identify subset operations within a WSDL file to build a WSDL subset.
See also
- List of web service frameworks
- List of web service protocols
- List of web service specifications
- Middleware
- Service-oriented architecture (SOA)
References
External links
- Documentation of Message Design Patterns in SOA Pattern
- Web Service Activity Page in W3C
- Web Services Architecture, W3C Working Group Notes (February 11, 2004)
- Web Services Investigation on the World Wide Web, an analysis presented at the WWW2008 conference
- Guidelines for Secure Web Services (SP 800-95) at NIST
Source of the article : Wikipedia