MET CS 751 Web Services
Last updated April 21, 2006: Last few changes often in red font
Attendance and Distance Option changed if this is red | Learning Objectives changed if this is red |
Background of the Instructor changed if this is red | Multiple Choice Quizzes changed if this is red |
Contacting Eric Braude changed if this is red | Plagiarism Warning changed if this is red |
Evaluation of Students; Projects changed if this is red | Policies – Miscellaneous red if updated recently |
Explanation of Web Services changed if this is red | Presentation Recommendations changed if this is red |
Forums: Past and Present changed if this is red | Project and Paper Structure changed if this is red |
Home Page of Eric Braude changed if this is red | Topics and Class Dates changed if this is red |
Homework and Due Dates changed if this is red | Teaching Assistants changed if this is red |
Textbooks and Materials changed if this is red |
Explanation of Web Services
A Web Service is functionality provided automatically by a web site to other sites. As an illustration, suppose that you reserve a flight from Boston to Phoenix. A series of inter-website services would be initiated automatically, resulting in interaction with you via your browser like the following.
Your Personal Web Service Supervisor has learned of your flight from Boston to Phoenix on May 10, 2002. Using the profile you placed on file at www.ParticipatingProfiles.com, the following options have been prepared for you by the sites listed below. These options have been inspected for price-competitiveness by http://intercheap.com/, as you requested in your profile at www.BestPrices.com. The features stated are quoted from the vendors’ URLs as of March 29, 2002. Payment for the services you approve will be made according to the payment procedure that you placed on file at Payment Methods.
To reserve a limousine from your house in Jamaica Plain to Logan, select one of the following options.
……. (names, times, prices, features) ….
To reserve a car rental from Phoenix International, select one of the following options.
……. (names, times, prices) ….
To reserve a hotel room in Phoenix, select one of the following options.
……. (names, times, prices) ….
… Automatic entries to travel expense report and personal calendar … Confirmation of payment, total, etc.
Web Services are likely to be at the heart of the next generation of Web applications.
Description from Catalog:
Architecture of Web Services; Review of Schemas; SOAP (Simple Object Access Protocol); WSDL (Web Services Description Language); UDDI (Universal Description, Discovery, and Integration); .NET Architecture; C# and Visual Studio.NET as Web Services platforms; Java API’s for XML Messaging; Java Web Service Environments.
Prerequisites:
(1) 665 (Advanced Object-Oriented Programming) or 565 (Java Programming) or equivalent, and
(2) 673 (Software Engineering) or 679 (Architecture and Design of Client-Server Systems) or equivalent experience
Learning Objectives
-
- Understand the Internet technologies prerequisite for Web Services
- Understand the rationale for Web Services
- Understand the architecture of Web Services
- Be able to set up a Java or Microsoft Web Services environment for development and deployment
- Be able to deploy and index Web Services
- Be able to use Web Services in applications
Textbook and Materials
-
- Building Web Services with Java, Graham et al (SAMS 2005; second ed.) ISBN 0-672-32641-8 This is a useful book.
- Software: A combination of :
- Tomcat (open source)
- Axis (open source)
- IBM WSAD, (optional; CD available) http://www14.software.ibm.com/webapp/download/
- Visual Studio.NET (optional)
Paper and Project Structure
Students will be required to research at least one contemporary Web Services topic. There will be a proposal phase, counting for ¼ of the grade, and a final phase for the paper. The final submission should include a copy of the first phase, showing the instructor’s comments and indicating how they are addressed in the final submission. You can look through past forums for what has been covered by others.
Students will be required to give a presentation. Here are some guidelines for the presentation.
1. Title
2. The technology’s goals (Cite your example if possible)
3. Summary of the technology
4. Some of the technology’s details (Cite your example if possible)
5. Example with selected details.(If you have not already covered it)
6. Your conclusions and opinions
Evaluation of Students
The semester grade will be computed from the paper and several short homework papers and quizzes will be required on a pass/fail basis. All submitted papers and projects must be posted to a class web site when submitted. Students may decline to post material, but only if they submit notice of this declination via e-mail to the instructor at the due date.
Students may be given a number of pass/fail assignments throughout the semester. A “Pass” grade is required. A grade of A or A+ may be given for a pass/fail homework when the student has performed exceptionally and gone well beyond the requirements of the problem.
80% of the course grade will be based on the project/paper; 20% on the homework.
Late homework will not be accepted unless there is a reason why it was impossible to perform the work in time given work and emergency conditions. In that case, the written reason should be attached to the homework, which will be graded on a pass/fail basis if the impossibility is accepted by me.
Presentation recommendations
The purpose of the end-of-semester presentation is to share with the class your impressions and lessons learned from carrying out the term project. The following format usually works well.
2-4 mins: Describe the application (1-3 slides)
2-4 mins: Describe the technology selected (1-3 slides)
5-7 mins: Describe the design and outcome; use diagrams and screenshots where appropriate (1-3 slides)
4-7 mins: Describe negative lessons learned (concentrate on your criteria and include scalability) (1-3 slides)
4-7 mins: Describe positive lessons learned (concentrate on your criteria and include scalability) (1-3 slides)
17-29 minutes total without questions. The actual time allowed will depend on the number of students presenting that evening since we will end class at 8:15.
Warning concerning plagiarism
Please cite all references and uses of the work of other. All instances of plagiarism must be reported to the College for action. e-mail, see or call me if you have any doubts about the proper use of others’ material. In any case, clearly acknowledge all sources in the context they are used, including code, of course.
Topics and Class Dates
Class
# |
Date | Topic | Chap-ters | Project:
(See “homework dates due” section for final dates) |
1 | Jan 19 | Introduction: Summary and Promise of Web Services; Installations
Motivation, current state and future state of Web Services. Installation of Tomcat / Axis; .jws method. |
Cpt 1 | |
2 | Jan 26 | Schemas, Web operation and HTTP for Web Services | Cpt 2 | |
3 | Feb 2 | SOAP | Cpt 3 | |
4 | Feb 9 | WSDL
To make Web Services available, an interface definition language is defined, called Web Services Description Language. We’ll investigate WSDL in detail. |
Cpt 4 | |
5 | Feb 16 | Axis: Axis will be our major tool for creating Web Services.
Monitoring: We describe tools for intercepting SOAP messages. |
Cpt 5 | |
6 | Feb 23 | Security in Web Services | Cpt 9 | |
7 | March 2 | WS Reliable Messaging
WS Transactions |
Cpt 10, 11 | |
8 | (note)
March 23 |
UDDI
Web Services are meant to be indexed and advertised so that an application can identify them at runtime. This can be performed through the Universal Description, Discovery and Integration facility. We will discuss the usage and deployment of UDDI. |
Cpt 6 | |
9 | March 30 | Web services and J2EE
Web Services and Stateful Resources |
Cpt 7 & 8 | |
10 | April 6 | History of Internet Service Architectures
Service-Oriented Architectures |
Notes | |
11 | April 13 | Choreography | Cpt 12 | |
12 | April 20 | Miscellaneous Topics
Interoperability; Asynchronous services; attachments; application integration |
Cpt 13 | |
13 | April 27 | The Microsoft Approach
How Microsoft integrates Web Services into their environments and strategies. |
Notes | |
14 | May 4 | Presentations |
Forums — past and present
§ Fall 2002
§ Spring 2003: Group name : 751Sp03 Group home page : http://groups.yahoo.com/group/751Sp03
§ Summer 2003
§ Fall 2003:
§ Spring 2004
§ Summer 2004 Group email: 751Su04@yahoogroups.com
§ Spring 2006 Group email: 751Sp06@yahoogroups.com