Dear Wiki user, You have subscribed to a wiki page or wiki category on "Ws Wiki" for change notification.
The following page has been changed by DanMurphy: http://wiki.apache.org/ws/Tuscany/Scenarios ------------------------------------------------------------------------------ = Tuscany Scenarios = - "Following discussions on dev, here is an first bash at some scenarios" + _Following discussions on dev, here is an first bash at some scenarios. Obviously this is a work in progress and currently just my thoughts not those of the team. Comments and corrections wanted. From example, what makes scenario 2 & 4 different... come to think of it what is the different between 1 & 3 ? so should these only be two ?_ + + == Enchancing an existing application == + An internet service provider has a web site that allows potential new customers to request their current internet service. The current implementation cannot a check the potential customer's credit rating, so processing the order requires a sales person to check availability before processing the order. The company wants to reduce this cost and can achieve this by automating this step of the ordering process. + + There are a number of options to solve this requirement, depending on whether the company already has this capabilitity or if it wants to make use of a 3rd party to provide this capability. + + === Scenario 1: Expose the existing asset as-is === + The capability to check someones credit rating already exists in another IT system owned by the company. The system has a programmable interface, so re-using this exisiting capabillity makes good business sense. Further, the API is suitable to be exposed as-is as it has a simple single operation that can be invoked in order to perform the credit check. The existing interface is used to specify the the service interface. + + The interface and implementation is made available for testing / use. + === Scenario 2: Expose a modified asset === + The capability to check someones credit rating already exists in another IT system owned by the company. The system has a programmable interface, so re-using this exisiting capabillity makes good business sense. However, in order to check the persons credit rating a number of invocation are required. The desired interface of the service is defined and used to produce a facade template. The template is then modified to invoke the acutal API. - == Enchance an application == - === Example === - A internet service provider has a web site that allows potential new customers to request their current internet service. The current implementation cannot check if the service is available in the customers area, so processing the order requires a sales person to check availability before processing the order. The company wants to reduce this cost and so wants to add the abillity of the web application to check if the service is available for a customer in a given area. + The interface, facard and implementation is made available for testing / use. - The abillity to check for availabillity already exists in another IT system owned by the company. The system has a programmable interface, so re-using this exisiting capabillity makes good business sense. - - == Exposing an existing asset == + === Scenario 3: Use a 3rd party's service as-is === + The company does not already have this capability (or does not want to use it). However a third party has been found that does provide this capabillity and it has been decided that using this service is viable. In this scenario the 3rd party makes available a service interface to the company for use. - == Create a new service == - A requirement has been identified for a new service that does not exist. This service is not available, or acceptable, from a third party, so it has been decided to develop the new service from scratch. The new service may make use of other services. - * Use a service to provide functionality - A service exists that is required to provide a capability to either a new or existing system. - * Change the selected service implementation + The interface is made available for testing / use. + + + === Scenario 4: Use a 3rd party's service === + The company does not already have this capability (or does not want to use it). A third party has been found that does provide this capabillity and it has been decided that using this service is viable. However, the service cannot be used as-is, some additional processing is required by the company before it can invoke the service. In this case the desired interface is specified and this is used to produce a facarde template to the 3rd party service(s). This template is then modified to use the 3rd party service. + + The new service interface and facard are made available for testing / use. + --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
