关键词 > ICE-2101/ICE-3102

ICE-2101/ICE-3102: Business & Enterprise Programming

发布时间:2021-12-25

Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit





ICE-2101/ICE-3102: Business & Enterprise Programming


Database Driven Product Catalogue

 

Description

ThisassessedlaboratorywillseeyouupdateyourshoppingcartsystemtotakeadvantageofaMySQL database. You are supplied a basic schema and initial data in an SQL file in Blackboard. You will need to complete the following:

• Construct appropriate model classes to represent the data held within these tables.

•  Design a Java Interface to perform CRUD (Create, Read, Update and Delete) operations for the model classes.

• Construct an appropriate implementation of this interface for use within a Web Application.

•  Update the Servlet(s) and JSP(s) to use the new data retrieval and model classes.

 

You must start from the Lab 1 Solution provided on Blackboard.

 

Tasks

Each student will need to create a Maven-based Web Application containing a server-side managed shopping cart system. These features need to be created using the methods demonstrated in the seminar series and the ‘Theoretical Content’ provided on Blackboard.

This assessment amounts to 15% of the module mark.

Due date: Sunday 19th December 2021 23:59

Guidance

• You will need to craft your final solution using Java and Maven.  No other solutions will be accepted.

• Marking will be focusing on attention to detail. You should be demonstrating the ‘best practice’ method of solving the problem rather than simply submitting a working solution.

•  It is strongly recommended that all students utilise Eclipse in order to ensure that they are able to meet all the elements of this mark scheme.

• Students may be called upon to demonstrate their work to an assessor.  You will be given advanced notice if this is required. Students are then expected to be entirely versed in their code, make sure that you re-familiarise yourself with your solution. Hesitation or inability to locate functions may be taken as evidence of unfair practice.

 

Plagiarism & Unfair Practice

Plagiarised work will be given a mark of zero. Remember when you submit you agree to the standard agreement:

Thispieceofworkisaresultofmyownworkexceptwhereitisagroupassignmentforwhichapproved collaboration has been granted. Material from the work of others (from a book, a journal or the Web) used in this assignment has been acknowledged and quotations and paraphrasing suitably indicated. I appreciate that to imply that such work is mine, could lead to a nil mark, failing the module or being excluded from the University. I also testify that no substantial part of this work has been previously submitted for assessment.


 

Late Submission

Work submitted within one week of the stated deadline will be marked but the mark will be capped at 40%. A mark of 0% will be awarded for any work submitted 1 week after the deadline. Students must follow the electronic extension request process of the University - if necessary.

 

Feedback

Students are encouraged to solicit formative feedback during scheduled laboratory times, by e-mail, or in person for each element prior to submission.  In order for students to make the most of this feedback, they are also encouraged to request feedback at the earliest possible juncture.

The assessors will attempt to return marks and written feedback on each element within 2 weeks of submission, however will keep you informed if it needs to extend to the 4 weeks allowed by the University.   More detailed comments can be sought on a one-to-one basis by mutual agreement.

 

Task 1   Design Model Classes - 20%

In the same way that the Branch class has been developed throughout the Seminar Series; you will need to develop model classes to represent the database tables from the supplied SQL script. You should focus on correct design and separation of concerns.

You will need to follow the principles of Model Driven Design, again as we have previously in the Seminars, and use appropriate Java Interfaces to enforce the separation of concerns.  Hint; there should not be any JDBC classes imported into your models.

 

Task 2   Design a CRUD Data Management Interface - 20%

Design a Java Interface to manage all of your Model classes storage and retrieval from the database. ThisinterfaceshouldnotforceanyusersoftheinterfacetoimportanyJDBCclasses. Additionalmarks are available for appropriate use of Exceptions to signal problems. Students may choose to research and use the Java 8+ Optional class to handle some types of problems instead.

 

Task 3   Implement your CRUD Interface for a Web Container - 20%

Next, you will need to create an implementation of your Java Interface using techniques and features that provide the best approach for accessing a database within a web application.  You will need to consider that the ultimate user of this web application will not be running the database and application on the same machine. This means that you cannot make any assumptions about the configuration, location, access details or type of database that may be used.

 

Task 4   Update Servlet(s) and JSP(s) to use the Database and Model Classes - 40%

Once you have built the infrastructure for accessing the SQL Database in the previous tasks, you will need to update your Servlet(s) and JSP(s) to utilise the new classes. There is no change in the functionality of the pages, i.e. they should work as before, but data should now be retrieved from the SQL Database.

The SQL script you have been supplied contains deliberately different products and data. This means that when you have completed this task none of the previous product content should be shown, but all of the same features from Lab 1 should work.

 

Submission

This work must be submitted as a .zip file (no other archive formats will be accepted) of your entire project folder. This will include your POM, source files, web files, as well as compiled and packaged project.

This can be exported from Eclipse directly by right-clicking on the Project, selecting Export.Choose the General > Archive File option, then select your project, ZIP as the archive type and enter a name/location for the file and click Finish.