300 likes | 314 Vues
This case study explores the conversion of an existing incentive reporting system to a Web service application. The unique design aspects, development tools, and benefits of Web services are discussed. The case study also includes the redesign process, message design, and system deployment.
E N D
Chapter 8Web Services Designing and Other Tools (Case Study)
Objectives By case study in the chapter, you will be able to: • Examine typical existing systems for the Web service applications possible • Convert the existing systems to Web service applications • Describe what are the uniqueness of Web services designs • Exam development tools in Web services • Questions and Discussion • Homework
Case study: incentive reporting system • Analysis the existing incentive reporting system • See figure in next slide to understand the existing reporting system • Reasons for dissatisfaction • The president of the corporation cannot get what information he/she wants in a timely manner • The president of the corporation cannot get the accurate information because the information has to rely on reports from each company’s report • Goal of redesign the system • To receive accurate information on a monthly basis on time
Case study: incentive reporting system (continue) • Basic analysis for Web service design • The volume of data to be transferred is relatively small • The geographic locations of the companies involved make an Internet-based approach attractive • The security reasons are manageable if they use firewall • All IT department in each company can choose whatever language for their part of programming to create their server • Future adding of a new company into the system will be able to integrate rapidly • For all of above, it’s a good candidate for Web service application
Case study: incentive reporting system (continue) • New terminology – styles of data transmission • request/response • The client initiates the action by making a request of the server • Solicit/response • The server makes the first move by soliciting a response from a client • Defining the server and the clients • The rule is that always begin the transmission with the party that wants the result first • It make sense in this case to create the system using solicit/response transmission style • The corporation computer is defined as solicit type server • The company’s computers is defined as Web service clients
Case study: incentive reporting system (continue) • Designing the message • The next logical step is to design the message that will be exchanged between a server and clients • Two types of messages need to be sent from the server to the clients in a solicit/response style: • Is the report ready for uploading • Please give me your report
Case study: incentive reporting system (continue) • Likewise, the clients need two different response message: • Yes, the report is ready (or no, it is not ready) • Here is my report • Description of usage of the system • On a certain date each month, the server solicits the report from each client by sending out the “Is the report ready?” message • Upon receiving “yes” answer from any client, the server sends a “Please give me your report” message”
Case study: incentive reporting system (continue) • Following that, the client process all the data and sends the “Here is my report” message with the report • If the client answers “No” since report is not ready, a time for next retry is assigned and the server sleeps until it’s time to try soliciting again • See next slide for the new designed system • Designing the project • One of the big advantage of Web services is the fact that every one of the 14 different accounting systems can use a different computer language and development tool to create its client code
Case study: incentive reporting system (continue) • In addition, each client can still use its own logic of accounting process without problem in the Web service design and development • Selection an available Web service development tool for creating the new system • Development steps • Write the serve software • Create the WDSL document based on the server code • Using the document as a guide, IT staff in each company write the client code using their own selected computer languages or/and development tools that are best fit into their knowledge and legacy system
Case study: incentive reporting system (continue) • Run a special test version of the Web service upon the completion of each of the individual subsidiaries • The whole system is tested and results are compared to data that is known to be created upon the completion of all of the subsidiaries • Deploy the system and ready to go into production
Case study: Designing an E-shop • Initiative thought • Along with the popularity of Web services and availability of commercial information, our system in the case study will discover the lower-priced cameras wholesalers’ lists and we will call this E-shop “CheapestCameras.com” • Goal of the system • We could design the E-shop that involves the discovery and interconnection of clients to Web services without human intervention for the cheapest camera sales
Case study: Designing an E-shop (continue) • Defining the servers and clients • The customers as clients in our website will make requests first for cheapest cameras, so our E-shop website will be client • All the wholesalers, as well as credit card service, will be Web services • So our system should be request/response style • Designing the message • The following messages will be sent to each of wholesaler Web services:
Case study: Designing an E-shop (continue) • How many cameras of model number XXXX do you have for sale? • What is the price of camera model number XXXX? • Please send n cameras with model number XXXX to address YYYY • Please send the current price list • The camera wholesaler Web services respond with the following message: • We have n cameras with model number XXXX • Camera model XXXX is $399.00 • This is a confirmation that n cameras with model XXXX were sent to address YYYY • Here is the current price list • Any error message indicating that the camera is out of stock or that doesn’t exist
Case study: Designing an E-shop (continue) • CheapestCameras.com website will send the following message to the credit card validation website: • Will you approve a purchase of $399.00 on credit card number 1111-6666-8888-9999? • The credit card Web service will send the following messages: • A purchase of $3.00 on credit card number 1111-6666-8888-9999 is approved/not approved, or • An error message stating that credit card number is unknown
Case study: Designing an E-shop (continue) • Description of usage of the system • At a certain time of every night, our website would search the Web services repository for new wholesalers to buy from • If found a new one, the wholesaler to the list of current vendor in our website will be added • The message to each wholesaler’s Web service asking for the current price list will be the sent out • The latest price list will be returned from each wholesaler’s Web service
Case study: Designing an E-shop (continue) • Our website will recalculate the prices and reflect these changes • When a customer goes to our E-shop, she chooses a camera to buy. During the checkout, the website sends a message to the credit card validation Web service. • If the credit card number is approved, a message is sent to the wholesaler for that model asking if that item is still available. • If it is, a message ordering that camera is sent
Case study: Designing an E-shop (continue) • The wholesaler’s Web service will confirm the order and ship the product directly to the customer • If the camera is not available from this wholesaler, the next cheapest vendor’s Web service is sent the same message • This will continue until the requested item is located • See next slide for details
Case study: Designing an E-shop (continue) • Designing the project and development steps • The first step is to perform a search to find camera wholesalers who are Web services enabled • Each wholesaler Web service will provide a WSDL document, these documents need to be downloaded • Our website software will be written to act as a client and communicate with each wholesaler Web service to obtain prices and to place orders
Case study: Designing an E-shop (continue) • Part of our website code must be written to process the dynamic discovery and setup of new wholesalers that it finds the Web service registry • Part of our software must also be written being capable of acting as client to the credit card Web service • The GUI of our website must be developed • When the project team completes its work, the whole system is tested • Deployment of the system and ready to go
Uniqueness of Web services designs • In addition to the common characteristics in distributed computing technology, Web services designs have the following unique features we must consider: • No incentive data transmission performance Systems in which timing is critical are not good candidates for Web services • Lack of rollback There is not standard approach available to rolling back part of a Web service transaction if a later step fails. A Web service may not satisfy this requirement
Uniqueness of Web services designs (continue) • Cascading business process execution No current standard way available to chain together set of Web services into a single transaction using if-then-else logic • Lack of sophisticated security technology at present only Secure Socket Layer (SSL) can be used in Web services; there is no sophisticated encryption and decryption or digital signature available today
Uniqueness of Web services designs (continue) • On the other hand, Web services frees you from many restrictions that exist for other technology as follows: • The geographic locations • Firewalls • Computer languages and other programming tools
Development tools in Web services • Apache Axis • Java Web services developer pack • Microsoft .Net • BEA WebLogic • IBM WebSphere • Many other Web services development tools • http://www.freebyte.com/webtools/
Summary of Web service development steps • Step one: analyzing the legacy system if it exists • Step two: establishing goal of the Web service system • Step three: defining the servers and clients • Step four: designing the message • Step five: describing usage of the system
Summary of Web service development steps (continue) • Step six: designing the project by selecting Languages and tools • Step seven: writing the software • Step eight: testing and modifying code • Step nine: deploying the software package into production
Homework for Extra Points • Using the examples and Web service development steps discussed in the chapter to create CheapestBooks.com Web service system Due: Wednesday, May 25, 2005 in the class