User Tools

Site Tools


labs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
labs [2009/02/18 16:34] roumanilabs [2010/11/09 14:32] (current) roumani
Line 1: Line 1:
-====== The Project ======+====== Project #1 ======
  
 **An eCommerce Site Backed by Web Services** **An eCommerce Site Backed by Web Services**
  
-  * Due Date: <del>Wed Nov 26</del> <hi>Mon Feb 23, 2009 by 5:00 pm</hi> 
-  * Team Size: min=2, max=3 students 
-  * Technological Platform to be used: JEE 
  
  
Line 21: Line 18:
  
 ==== Use Case: A client makes a fresh visit ==== ==== Use Case: A client makes a fresh visit ====
-The relevant URL is ''red.cse.yorku.ca:port/eFcode'' (where eF stands for eFoods and ''code'is the project's code assigned to you. The Catalog servlet displays the catalog of the Company. It is up to you to determine how this display is done based on how much time you want to spend on this task and on how versatile you want your webapp to be. For example, you can at one extreme display all the items in one page; you can show the hierarchy by displaying only the categories and then the selected items; you can enable both direct and category-based access; you can have a search facility; you can have an express order form for those who know the item numbers; you can enable clients to bookmark pages; etc. Whatever you do, the client must be able to see the item's number, name, quantity per unit, and price. The client must also able to add an item to an initially empty shopping cart.+The relevant URL is ''red.cse.yorku.ca:port/eFoods''. The Catalog servlet displays the catalog of the Company. It is up to you to determine how this display is done based on how much time you want to spend on this task and on how versatile you want your webapp to be. For example, you can at one extreme display all the items in one page; you can show the hierarchy by displaying only the categories and then the selected items; you can enable both direct and category-based access; you can have a search facility; you can have an express order form for those who know the item numbers; you can enable clients to bookmark pages; etc. Whatever you do, the client must be able to see the item's number, name, quantity per unit, and price. The client must also able to add an item to an initially empty shopping cart.
  
  
Line 51: Line 48:
 ===== Specifications ===== ===== Specifications =====
  
-  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj/Catalog.xml|The catalogue of the company as an XML data source]]+  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj2/Catalog.xml|The catalogue of the company as an XML data source]]
  
-  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj/Catalog.xsd|The catalogue's schema]]+  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj2/Catalog.xsd|The catalogue's schema]]
  
-  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj/PO.xsd|The purchase order's schema]]+  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj2/PO.xsd|The purchase order's schema]]
  
-  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj/accounts.txt|The clients' profiles as a tab-delimited file]]. The profile fields are: account number, name, street address, city, province, postal code, pin.+  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj2/accounts.txt|The clients' profiles as a tab-delimited file]]. The profile fields are: account number, name, street address, city, province, postal code, pin.
  
 **//Note//** **//Note//**
Line 64: Line 61:
 The following files describe the web services from which the company procures its products: The following files describe the web services from which the company procures its products:
  
-  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj/YYZ.wsdl|The WSDL of the Toronto Wholesaler]]+  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj2/YYZ.wsdl|The WSDL of the Toronto Wholesaler]]
  
-  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj/YVR.wsdl|The WSDL of the Vancouver Wholesaler]]+  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj2/YVR.wsdl|The WSDL of the Vancouver Wholesaler]]
  
-  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj/YHZ.wsdl|The WSDL of the Halifax Wholesaler]]+  * [[http://www.cse.yorku.ca/~roumani/course/4413/res/proj2/YHZ.wsdl|The WSDL of the Halifax Wholesaler]]
  
  
Line 77: Line 74:
  
  
-===== Deliverables ===== + 
- +
-You need to deliver three things by the due date of this project: +
- +
-    * Hand in a paper report +
-      This can be done after class or to the Department Office +
- +
-    * Submit the report and source files +
-      The report file (in pdf, doc, or html formats) and the Java files. These can be submitted using: ''submit 4413 proj files'' +
- +
-    * Upload a WAR webapp +
-      Create a war file of your webapp and upload it to the project's port number. You create the war file via the ''export'' utility of your IDE or, if you are not using an IDE, by simply issuing the command "''jar -cf x.war y''" while in the ''webapps'' directory, where ''x'' is ''eFcode'' and ''y'' is the name of your webapp (which could be ''x'' too). Then, upload the war file to ''http://red.cse.yorku.ca:4413'' using the manager's facility (password the same as your own tomcat). Your app will auto deploy. If it does not run properly then the likely cause is a hard-coded path. You can fix the problem and re-upload as many times as needed (before the deadline).  +
- +
-The report is meant to describe your execution of the project to someone who is familiar with the project, e.g. a fellow student who is also executing the same project and writing a similar report. Hence, the report should focus on your own experience and efforts, i.e. what you actually did, rather than on general description. It is expected to be very brief, to the point, and made up of //at most// ten pages of typed text and diagrams (excluding printouts and source listing). The report should include the following sections: +
- +
-  - Design: Describe your system's architecture and data flow briefly (diagrams are ideal here). Also, several design issues and decisions must have popped up during the analysis and design phases, e.g. MVC, namespaces, file formats, algorithms, representations, etc. Describe in this sections the key issues and decisions that were made and why they were made the way they did.  +
-  - Implementation: This is similar to the previous part but pertains to implementation issues and decisions. This section should also include Testing and Status. The former discusses how the project was tested and the latter lists each and every limitation or shortcoming of the finished webapp with respect to requirement. +
-  - The Team: Provide the cs# and name of each member of the team and indicate the contact person in case there are questions. It is essential that you explain how the work was divided and how was communication and consistency maintained. Include here the main lessons that were learned from this project. +
-   - Printouts: Include printouts of the XML order file as it appears on disk and on the client's browser and a printout of the completed procurement report showing the chosen wholesaler and price per item. +
-   - The Source Code:  Provide listing of all programs (including jspx, tags, xsl, web.xml, etc.). Partition this section into subsections, provide a title for each, and create an entry in the Report's TOC for each subsection. Make sure the code is properly formatted. Some editors do not format properly because they use spaces instead of tabs and/or use proportional fonts. Do not delay printing your code to the last minute; resolve this issue early on.  +
- +
- +
- +
-===== Evaluation ===== +
- +
-The project will be evaluated based primarily (80%) on meeting the specs (these include system functionality and report contents) and on its internal quality (design, style, code, etc.). The remaining (20%) is based on how your project compares with those of other teams. +
labs.1234974879.txt.gz · Last modified: 2009/02/18 16:34 by roumani

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki