A) Create your own WebService (using Visual Studio C#.NET) that takes the Name of a Scottish mountain as input and returns the Location, Height and Weather information for that mountain.
Create a class library that uses interfaces and concrete classes to read data from the XML files (or other data source) into objects that are held as a collection. In your report, list any advantages/ disadvantages of this approach. Return individual objects or collections of object from the web service to any client applications as required.
Test your WebService with appropriate test data and document the results of these tests.
B) Add Additional Functionality to the WebService above (and to underlying class libraries as appropriate) that deals with Information about clients and usage of the WebService:
a. ▪ Client's usage of the WebService (including IP address, Date and Time of use)
b. ▪ Service Statistics (Count of how many times each particular method is used, and the average time taken to generate the for the result of each method call)
c. ▪ Secure data storage on the Web-Server of the above data
d. ▪ Secure exchange between the WebService and the client application
• Create Unit Tests for your wrapper class library, and be able to demonstrate these tests running.
• Test your WebService with appropriate test data and document the results of each of these tests
C) Create a Web-Based Client Application that uses the WebService developed in Part A and/or B and which:
a. allows the user to select a mountain and then the application displays sensible and timely information to the user. (Utilise individual objects and collections of objects returned from the web service as required for different functionality of your client application).
b. ▪ displays the mountains on a map of Scotland along with information about weather.
c. ▪ displays search statistics (Count of how many times mountains have been looked up)
d. ▪ any other functionality that you think appropriate (Discuss with lecturer before implementing.
• Test your application with appropriate test data and document the results of these tests.
D) Produce a Report that includes:
a. Suitable title and introduction
b. A description the design of the applications produced for parts A,B,& C, including a diagram of the overall system. Justify your use of Soap or REST and of the technology you have chosen to implement the WebService.
c. An outline of the testing strategies for parts A,B& C and details of the results in a test table and a description any interesting problems that were encountered and how they were overcome.
d. An evaluation of the software that you have produced, including its scalability and robustness. Justify your use of Soap or REST and of the technology you have chosen to implement the WebService. Reflect on whether you made a good choice in your use of Soap or REST and of the technology you have chosen to implement the WebService.
e. A discussion of future work, including how the prototype in parts A / B above is to be developed into a fully functioning Web Service, used by thousands of clients around the world. What would the hosting requirements for both an Apache-based hosting, and for a .Net-based hosting.
f. A Conclusion to your report