Besides the technology concerns of building Web services, several issues are related to the creation, management, security, and development of Web services.

Quality of Service

When deploying a Web service for use by apps, it is not necessarily good enough to specify just the Web service interface and location . If the Web service takes longer to execute than the caller expects, the service will still fail. The specification for the amount of time it takes the service to return a result is part of the service's quality of service (QoS) specification. The QoS specification also contains some of the following information ():

These are also called the service's nonfunctional aspects. Web services do not currently have a way to specifiy QoS parameters. The UDDI registry is the logical place to store this information; however, the fact that the registry is not capable of doing so is one of the inadequacies of the current UDDI specification (). Even without direct UDDI support, a known service consumer and a service producer should agree on a service level agreement (SLA) for the services provided.

Management

An organization that implements Web services must be concerned with the management of their services. A service will require changes from time to time. The messages a service accepts, the routing of messages from one service to another, and the usage of the service will change over time. Tools for managing these changes involve

These capabilities involve both reporting and changing the configuration parameters for a service. The reporting capabilities are necessary to find out what apps are using the service at a given point in time. Reporting also involves monitoring service usage over a period of time. This is necessary to understand the growing or shrinking demand on the service for capacity planning and to provide information about service utilization so that users can be charged accordingly. When the requirements of the service change, such as a new argument, the configuration parameters for the service must also change. A flexible service allows a service administrator to update its behavior by changing configuration parameters and not by changing program code. Service management is an important aspect to Web services. The Web services an organization develops should also consider the effort required to manage those services once they are placed into production.

Security

The security requirements for a service vary. Security standards are still emerging for services that must be secure over an Internet connection. The issues involved with securing Web services include

These issues are solved by providing mechanisms for creating digital signatures that validate that service consumers are who they say they are. In addition, the set of credentials or claims service consumers present service providers are necessary for them to obtain authorization. Finally, the transport itself must use encryption to ensure that messages cannot be intercepted and read by an unauthorized third party.

These are only some of the issues involved with security. The task of securing Web services is difficult. The details of the current and future means of doing so are vast. For complete coverage of this topic, please refer to .

Service Development

Organizations that create services must be concerned with the tools and techniques they use to develop those services. An organization that develops services must choose the set of frameworks, integrated development environments, XML editors, and other tools that enable the creation of high-quality services quickly. In addition, implementation of each service an organization creates should follow a common architecture, which enhances the service's maintainability and reusability. A common service architecture can also provide common management features for all services that plug into a management toolset for administrators. Common tools and architecture are essential components to addressing the issues related to developing Web services.