The Assignment 3 Specification and Marking Criteria
Complete Enterprise Application Development Project
This assignment requires you to implement, test and document a 3-tier enterprise application. You will work to design and development a complete 3-tier enterprise application. The application scenario and project specifications are as follows:
The application scenario
This assignment is to scale the application scenario of Assignment 2 to a typical Java EE web application. You are to implement the business tier and presentation tier and integrate them with the persistence tier that you have already implemented in Assignment 2 into a complete 3-tier online e-business system.
The project specification
In Assignment 2, you have used a simple command line tester (a Java standalone application) to demonstrate the persistence and retrieval of entities. In this assignment, you are required to:
1. Develop a business tier by using Enterprise Java Beans (EJB). The business tier processes the data persistence or retrieval requests from a user and interacts with the persistence tier for accomplishing the requests.
Note: to interact with the persistence tier, the EJBs need to use JPA to persist entities and JPQL to query entities and return the processed results to the presentation tier.
2. Develop a presentation tier by using Java Server Faces (JSF). The presentation tier will provide a web-based user interface, which will allow users to use any web browser to save vehicle details, customer details and vehicle allocation details and retrieve the persisted information later.
Note: you need to review backing beans (managed beans) as the core/gateway of the presentation tier for delegating requests processing to EJBs and navigating JSF pages.
3. Integrate with the existing persistence tier. To reuse the entities that have been successfully developed by Assignment 2, you are to seamlessly integrate the entities and related JPQL named queries with the business tier through interacting with the EJBs.
Your application must provide the following functions:
I. Add/persist vehicles,
II. Add/persist customers,
III. Add/persist allocation of vehicles to customers where each customer can be allocated more than one vehicle.
IV. Selected customer to display vehicle allocations
V. edit vehicle information
VI. edit customer information
VII. delete allocation. (cancel vehicle allocation to a customer)
VIII. delete vehicle (vehicles can’t be deleted if they have current allocation)
IX. delete customer
The end user manual and test instruction: you are required to provide detailed instructions about how a user would compile and deploy the software application and use it to perform all application functionalities the document should include all required screenshots to demonstrate the application functionality.
You will need to submit:
1. The end user manual document,
2. The complete implementation code of the 3 tiers, including source code and executable files. You need to provide your implementation by a NetBeans project, which must satisfy:
a. The project can be compiled directly without any further revision/re-development or debugging.
b. The generated .war application from the project can be executed on a separate GlassFish server (not the NetBeans embedded one) to interact with a separate Derby database (not the NetBeans embedded one).
Any hardcopy or email submission will not be accepted. After the marked assignments are returned, any late submissions will not be accepted.
The marking criteria of this assignment are detailed in the following table.
Marking Criteria Available Marks
1. Whether the user’s manual covers compiling and deploying the project 2
2. Whether the user’s manual covers all functions in detail and with necessary screenshots. 6
Software Implementation 42
1. Whether the project is compilable and runnable 3
2. Whether the implementation of managed (backing) beans, EJBs and JSF pages is consistent with the project specification 3
3. Whether the data persistence is functioning well and reliable 6
4. Whether the data retrieval is functioning well and reliable 6
5. Whether the data editing is functioning well and is reliable 6
6. Whether the data deletion is functioning well and reliable 6
5. Whether the presentation is functioning well and with necessary exception messaging 3
6. Whether the JSF page navigation is working well with the managed (backing) beans 3
7. Whether all the business logic is delegated to EJBs 3
8. Source code: inline comments, layout and readability 3
Subtotal for Assignment 3 50
Late Penalty -2.5 (5% of 50) for each calendar day (either full
Plagiarism Related Penalty
Total for Assignment 3 50