COIT13235 Enterprise Software Development
Assignment-2 Specification and Marking Criteria
In this assignment, you are required to implement the business tier and presentation tier and integrate them with the persistence tier that you have already implemented in assignment-1 into a complete 3-tier e-business system to satisfy the application scenario that is detailed in assignment-1specification.
The specification of this assignment is as follows:
In assignment-1, you used Java standalone applications to demonstrate a very simple interface, which allows a user to persist and/or retrieve product information or customer and order details. In this assignment, you do not use the standalone Java applications, but instead you need to:
1. Develop a business tier by using Enterprise Java Beans (EJB 3.1 or higher). The business tier will process the data persistence or retrieval requests from a user and interact with the persistence tier for accomplishing the requests.
Note: to interact with the persistence tier, the EJBs need to use Java Persistence Query Language (JPQL) to query entities, and return the processed results to the presentation tier.
2. Develop a presentation tier by using JavaServer Faces (JSF 2.0 or higher). The presentation tier will provide a web-based user interface, which will allow users to store product details, customer details and order details, and retrieve the persisted information later on.
Note: you need to review Managed Beans as the core of presentation tier and its functions for JSF pages’ navigation (refer the textbook) and do some personal research if necessary.
To demonstrate success, you are required to implement all the required entities, EJBs, and JSF pages (.xhtml files). To submit your assignment, you need to provide:
a) The design of JavaServer Faces pages. You are required to describe the structures of these pages and the navigation between them.
b) The design of EJBs. You are required to describe how the EJBs perform the business logic for data persistence and retrieval, and how they interact with the persistence tier.
c) The complete implementation code of the 3 tiers, including Java source code and executable files (for example, the .war file), Maven POM files, persistence files, and JavaServer Faces pages within a standard Maven directory structure. That means the code can be compiled and run directly in the Java EE environment that is used by this course without any further revision/re-development. Because EJBs are used, the software should be packaged by Maven and ready for deploying into GlassFish for execution.
Note: you should reuse the Java code of the entities of assignment -1 as much as possible to reduce development workload.
d) The test instruction. You are required to provide detailed instructions about how a user would run the software to persist at least 2 products, 2 customers, and two orders for each customer.
Your design and test must be detailed in a Word document. You must submit all the required files in a zip file.
Demonstration of the e-business system
To help you understand and develop the application, a number of screenshots have been provided to demonstrate the e-business system’s functionality of a reference implementation. You will need to use this screenshots as a guide to ensure that your development complies with the assignment specification and its functions are complete. A PDF file with sample screenshots of the functionalities of the e-Business System of this assignment is provided in the course website.
Important Note: you cannot choose Books and CDs as product for your implementation because they are the example entities of the textbook, and therefore too much reuse of the example code cannot show your understanding of JPA, EJB and JSF architectures, and their usage. Doing so will result in 20% (-4 marks) penalty.
The maximum mark of this assignment is 20.
The marking criteria of this assignment are detailed in the next page.
Marking Criteria Available Marks
1. Architecture diagram 1
2. Description of interaction between tiers 2
3. Description of page navigation 2
1. Coverage of application scenario 2
2. User’s manual to install and run application with screen-shots of all interfaces (web pages) 3
1. Compiles and executes without any errors 1
2. Conformance between the implementation of EJBs, JavaServer Faces (JSF) pages and the given specifications 4
3. Functionality of data persistence 2
4. Functionality of data retrieval 2
5. Others: in-line comments, layout, code indentation 1
Penalty for using Book and CD entities -4 (20%)
Late penalty -1
(5% per calendar day)
TOTAL FOR ASSIGNMENT-2 20