IBM alphaWorks has announced the release of the TSpaces Services Suite which offers a development toolkit "to assist the creation, discovery, and integration of Web services. TSpaces Services Suite is an architecture that enhances TSpaces programming capabilities towards the development of service-based applications and is based in standards for discovery (UDDI), description (WSDL), and invocation (SOAP) of Web services. Development tools provided in the first version of the package include: (1) UDDI broker: a tool for the registration and discovery of Web services based on the UDDI specification; (2) TSpaces service API: a tool for the creation of Web services -- it generates a WSDL description for all the described services, and allow the invocation of services through the TSpaces and SOAP communication mechanisms; (3) Universal printing solution: a sample printing service that enables printing from any computer to any printer, regardless of the host computers (workstations, PCs, handheld devices), operating systems, or file format. The TSpaces Service API (TSSAPI) is a framework that simplifies the creation, composition, deployment, discovery, and invocation of services based on TSpaces or one of the other emerging service infrastructures such as SOAP. Enterprise TSpaces, available from alphaworks in Fall 2001, is a further development of the stand-alone version of TSpaces that provides TSpaces with enterprise required facilities such as fault-tolerance and scalability." Note in this connection that IBM has developed a Web Services Theme Page with resources supporting the 'web services model' of creating dynamic distributed applications across the Web.
From the web site descriptions:
TSpaces Services Suite "provides a set of tools and a services description framework that assists the creation of Service-Oriented Architecture. Specifically, it provides a lightweight UDDI broker, which can be easily installed and does not require the configuration of database systems, tools for creation of SOAP services, tools for documenting services in WSDL, and an asynchronous architecture for the integration/composition of services. Web services allow authorized entities (including individuals, corporations, and automated agents) to access systems defined by other parties scattered across the globe. In support of this powerful model of interaction, we have developed a layer on the top of the TSpaces architecture to simplify the definition, discovery, and execution of web services."
TSpaces is network middleware for the new age of ubiquitous computing. A succinct description of TSpaces would be, a network communication buffer with database capabilities. It enables communication between applications and devices in a network of heterogeneous computers and operating systems. TSpaces provides group communication services, database services, URL-based file transfer services, and event notification services. It is implemented in the Java programming language and thus it automatically possesses network ubiquity through platform independence, as well as a standard type representation for all datatypes... In the TSpaces world, a common computing environment, with access to all possible network services, is surprisingly easy to build. A set of applications, written in Java, map the system-specific service (e.g., printing service) or application (e.g., web search) to a standard tuple representation. Then, any client from any platform can generate a tuple and send it to a TSpaces server. Applications, listening for specific tuples, pick up jobs when they see them and execute them..."
[Background:] "... given the huge success of the web, is there a lesson to be learned from it that we can apply to the design of the next generation of distributed Internet applications? Yes. The lesson to be learned is that we need to recognize the value of standard interfaces. We can build incredibly large, complex systems, as long as they are made up of well-defined, well-understood parts. The web taught us that simple, loosely coupled, standard interfaces are the way to get a large number of machines working together. Object-oriented programming taught us the value of encapsulated objects, or components, that could be maintained independently. Registration facilities like LDAP, and then later, Salutation, Jetsend, SLP (Service Location Protocol), Jini and e-speak (which are only a few of the many out there), showed us the usefulness of having a standard lookup mechanism that anyone could register with, and then anyone else could query. When we combined these and other ideas, we get the notion of Web Services -- standard interfaces to components that are described in a standard way, combined with a loosely coupled coordination mechanism, then employed with a registration and lookup mechanism that allows the Web Services components to be directed by a '"services manager' component that locates, validates, authorizes, employs, audits and pays them."