Reference no: EM132612583
MITS5502 Developing Enterprise Systems - Victorian Institute of Technology
Learning Outcome 1: Apply best practices to design application components and business objects by analyzing the business needs and adopting software engineering best practices.
Learning Outcome 2: Structure Web Tier & Application Components by identifying the most appropriate structural pattern.
Learning Outcome 3: Implement data access/persistence mechanisms including implementing enterprise- grade transactions in traditional as well as non-SQL data environments.
Learning Outcome 4: Carry out research on emerging tools and use expert knowledge gained to choose the right developmental strategy and tools to implement enterprise solutions without compromising prudent design principles.
Learning Outcome 5: Synthesise complex enterprise business and operational needs to develop robust, reliable and secure applications in a chosen implementation platform such as spring, jsf etc.
Objectives
This is a group assessment. In this assessment, you are required to develop a J2EE project with MVC architecture using NetBeans environment and MySQL database component. The aim of the project is to enhance student's skills by applying their theoretical knowledge to develop enterprise application using J2EE. The students are requested to use J2EE specifications and techniques including session management, Custom tags, Enterprise Java Beans, Java Database Connectivity (JDBC) and JPA (Java Persistence API) in the given project.
Project Description
The project is to develop a small-scale enterprise application system of your choice. The application can have basic/similar functionalities.
You must implement all the features and functionalities indicated in sub-sections below. You may explore further additional features to score higher marks. This information is detailed enough for you to complete the project. However, you will need to determine any unspecified details on your own.
The student needs to implement the following functionalities: -
1. User Authentication, login and logout
The component authenticates the user before the access to the online store. The interface needs to be professional with appropriate logo, header and footers. The system needs to have more than one type of user e.g. administrator and customers (it may include more). It allows a new user to register into the system. A new user registration interface with input fields may include email, full name, password, re-typed password and contact number (optional). Required client and server-side scripts for field validation needs to be provided. A login interface is must for the registered user to login to the system with the email address/username and a password. The inputted email address and password needs to be checked against the database. Otherwise, login failure message will be displayed. The system needs to have a logout button that redirects to the login page and clears the resource in use. As the user logs in, it displays the index page. This page can be used to add, update or delete products. The system needs to have customized interface for each user with their functionalities.
2. Product Maintenance
A series of pages needs to be created that allows a user to add, update or delete a product that is available for a particular category in the system. The administrator/vendors can enter new product categories and add list of products with their details within a category. The category and product details may include name, description, image, cost, quantity and any special features about the product. The information of the goods for the online store is stored in MySQL database. An interface to update/delete the products should be provided. The stock of the product based on the purchase/sale needs to be updated automatically.
3. Search product and checkout screen
The registered customer may want to search for a product based on the category, or name of the product. A search functionality that displays a detailed description with an image(s) of the product needs to be provided. Based on the search, the customer may want to buy the goods online. They can buy product(s) of different category and add them in the shopping cart. Further, functionality may be added to the shopping cart: adding products, listing products and empty cart. A checkout page must display the selected product by the customer to purchase. The purchased product quantity needs to be updated in the database accordingly.
Project Tasks & Deliverables
1. Project Proposal
The project proposal needs to be submitted in week 4 along with the details of the group members involved in it. The group members should not exceed the count of four. The project proposal should contain a B2C (Business to Consumer) online store company/organization name with details of the goods to be sold by it. The student must provide clear indication of the organization and the online good(s) with their categories (if any) they propose to work on in the proposal.
2. Database Design
You will be designing an efficient and useful database design to store the information needed for the proposed system.
A well-structure database:
1. List all the entities with their attributes including the datatype to store the information for the given system. The nonduplicate entities gets converted into table with attributes as fields within the given database.
2. Identify the attribute(s) that will serve as a primary/foreign key for each table. Attributes chosen as primary key should be unique, unchanging and never defined as NULL/empty.
3. Create relationships between the given tables. Each defined entity has a relationship with every other one (one-to-one, one-to-many, many-to-many, mandatory etc.)
3. Project code with report
The integrated code using MVC architecture including all the JSPs, servlets and Java beans in the project needs to be submitted in week 12. The code is accepted after demonstration to the lecturer. A report describing objective, organization with the product details, database model and screenshots of the online system should be documented.
The the overall project component is 40% weightage for the unit and individual deliverables with the description, due week and weightage is defined in the table below. The weightage in the table is relative to the project component only.
Code related Guidelines
1. Your J2EE application should include the following:
a. The code should have a consistent, professional and well-organized appearance.
b. Carefully chosen, meaningful identifier names
c. Code is well organized: clear, simple, & DRY (Don't repeat Yourself)
d. Thoughtful comments, where needed, expressed in concise, precise English.
e. Code should compile without errors
2. The developed system takes input and handles the error in friendly manner.
3. Connects to given database operating the basic CRUD operations following the proposed data model in week 4.
4. Your project must adhere to MVC architecture with implementation guidelines including modularity, reusability, extensibility, maintainability and adaptability.
Attachment:- Developing Enterprise Systems.rar
Attachment:- Proposal template.rar