Page 237 - DCAP312_WEB_TECHNOLOGIES_II
P. 237

Unit 11: Web Services in Visual Studio .NET



                                                                                                  Notes
             Some web services vendors are hawking “revolution” with the intelligence in their
             web services tools. However well this software works in the laboratory,  it appears few
             organizations have enough well-connected customers to layer so much weight over existing
             networks. It does not matter how clever the error-correction and transactional algorithms
             one programs: Until basic network connectivity gains an order of magnitude in price and
             reliability, there's little point to building elaborate web services. Clark summarizes, “Do not
             expect your users to be happy with response times. It is currently out of our hands; maybe
             in two years time it will change.”
             The inadequacy of the current networking infrastructure impels Clark to manage Lucin
             conservatively: “We have deliberately budgeted for a three year cycle, meaning we can
             pretty much last three years with no significant customer base. This is because my belief is
             that it is going to be a long trek before web services are thought as reliable and trustworthy
             enough for businesses to use in the long term.”
             In the meantime, the kinds of service that do satisfy users might be even simpler than you
             expect. Web services developers think of the typical high-level design as one that pulls in
             data or objects across the network, performs calculations on them, then uses web services
             protocols to deliver results back across the network. Lucin sells a number of web services
             products that fit this model and has several internal tools to support such development.
             For the SMS gateway, though, Lucin eventually settled on an even more primitive approach.
             Clark explains that “. . . if you know the interface then you simply need to construct a
             simple string variable and substitute the values that change at the time you send the data
             to the remote web service. This saves time and the overhead of having to reference [a SOAP
             toolkit or module].”
             Lucin does this simple string substitution, and the other light-duty calculations involved in
             the production version of the SMS gateway, with Visual Basic, hosted on an NT Server 4.0.
             This supplies more than enough performance for the several hundred messages transacted
             each day (most often between 300 and 800).
             The gateway's simplicity extends to its authentication: A user-password combination sent
             in plain text by way of Hyper Text Transport Protocol (HTTP). Clark contends, “You would
             not expect to use HTTPS [secure HTTP] for signing onto a web site, so why use HTTPS to
             get users to pass down username and passwords so that you can validate them for using
             your web service.” Pressed about the frequency of HTTPS use, Clark criticized its run-time
             performance, and concluded, “we may be using HTTPS ability at some stage, but it will
             almost certainly be by customer request.”
              “One of the beauties of web service development,” according to Clark, “is the flexibility that
             comes from use of simple, robust parts.” The gateway connects on the back end to a metered
             SMS interface provided by a telecommunications vendor. Twice already, Lucin has switched
             providers for this back end, but without any interruption in service to its customers. Users
             of the gateway just receive acknowledgment of receipt of their requests; they do not have
             to know or care about the back end.

             Authentication, along with interfaces to validate telephonic country code and local number,
             make the Web Services Description Language (WSDL) instance for the gateway one of the
             most  widely-used  publicly-visible  services.  It  defines  four  operations:  SendTextMessage,
             SendMessage,  ValidPhoneNumber,  and  GetCountryCodes.  Part  of  the  definition  for  the
             second of these, for example, is shown in Listing 1.

                                                                                Contd...


                                             LOVELY PROFESSIONAL UNIVERSITY                                   231
   232   233   234   235   236   237   238   239   240   241   242