Professional Documents
Culture Documents
in
Abstract
This project deals with developing an e-commerce website for online shopping. It
provides the user with a catalog of different products available for purchase in the store. In
order to facilitate online purchase a shopping cart is provided to the user. The system is
implemented using a 3-tier approach, with a backend database, a middle tier of java and a
web browser as the front end client.
Table of contents:
1. Introduction
2. Requirements Analysis
3. Selecting The Technology Stack
o Platform, Frameworks
o Application Server, Database
o IDE, Build Tool, Version Control System (VCS)
o Continuous Integration, Code Quality Checking
4. Release Planning
o Plan Iterations & Use Cases
o Estimations & Release Schedules
5. Setting up the Development Environment
6. Building Administration/Shopping Cart WebApps
o Iteration – 1
7. Deploying to Production
o Clustering and Load balancing
o Setting up Monitoring Tools
www.anushabazar.in
1. Introduction
Flow Chart:
Class Diagram:
REQUIREMENTS ANALYSIS :
For building our anusha bazzar.in Application we will develop two
web applications, one for shoppingcart and another one for
administration. let us explore the requirements of both shoppingcart and
administration websites in detail.
HOMEPAGE:
This page shows list of categories and few products in each category.
From this screen customers can click on any Category name to see
all the products in that particular category or can add a product to
cart.
The homepage is often the highest traffic page on an anusha
bazzar application.
CATEGORY PAGE:
This page displays all the products in the selected category with
pagination.
Each product will be displayed along with a Add To Cart button.
LOGIN/REGISTRATION PAGE:
Customers should be able to login/register with our system so that
they can view their profile and order history.
www.anushabazar.in
CART:
In header section there will be Cart Icon showing the no. of items
currently added to cart.
When Cart icon is clicked we need to show the cart page with all the
Items details.
Customers should be able to update product quantities or remove
products and the cart totals should be updated automatically.
BILLING&DELIVERY PAGE:
This page will be displayed once the customer clicked Checkout
button in Cart page.
If the customer is already registered with our system he should login
otherwise a registration form will be displayed.
Customer should register by providing Email and Password.
MY ACCOUNT PAGE:
Customer should be able to login into the system and see his profile
details, order history, outstanding order details.
www.anushabazar.in
PRIVILEGE MANAGEMENT:
Ability to configure and manage all the privileges within the system.
Each privilege represent the ability to perform an action.
For ex: MANAGE_CATEGORIES represents the ability to create new
Categories, update existing categories.
ROLE MANAGEMENT:
Ability to create various roles with one or more assigned privileges.
ROLE_SUPER_ADMIN – Users with this role can do anything within
the system.
ROLE_ADMIN – Users with this role can create other users (except
other SUPER_ADMIN or ADMIN), and can do Category
Management, Product Management etc.
ROLE_CMS_ADMIN: Users with this role can manage Categories,
Products etc.
CATEGORY MANAGEMENT:
A category represent a logical grouping of related products.
Category management includes:
PRODUCTS PAGE:
This page displays detailed information of the product along with one
or more images of the product and shows Add To Cart button.
Product Catalog
Features available in most e-commerce
applications
Ability to request catalog from site (form)
Generate confirmation email to customer
Features probably not available in any e-
commerce application
Provide Quick Look (on mouseover) for products atcategory, product
listings, product thumbnail level
Ability to shop/filter by safety/compliance standards
Ability to merchandize best sellers at category level
Ability to merchandize featured products at category level
Ability to merchandize new products at category level
Ability to display non-stock items (order qty, lead time, pricing)
Ability to flag products as New, Clearance, Best Seller, Sale (across
the site)
Submitted form data emailed to office services team (customer IA
record created in Ecometry)
Generate catalog order in Ecometry
Site Settings :
We need to have some site level configurations like Currency and Locale.
Locale & Currency:
Selecting the right technology stack is very crucial and plays an important role in
project success. Many of the architects try to make complex designs by trying to use all
kinds of latest and greatest stuff. On the other hand some architects try to be in their
comfort zone by limiting their technology stack to the technologies with which they are
comfortable. Both approaches are dangerous. One should understand the business needs
and pick the technologies that are necessary for project.
In Java land, JavaEE and Spring are the most popular tech stacks for building
applications. Both are very mature and have wonderful community support.
Spring provides:
Version Control System: We will be using Git VCS and host our code
on Github.
Build Tool: I am happy with Maven. We will be using Maven for our
application.
IDE: As we are using Maven which is IDE agnostic we can use any of our
favorite IDE. But our application is heavily depends on Spring technologies we
4. Project Design
In order to design a web site, the relational database must be designed first.
Conceptual design can be divided into two parts: The data model and the process
model. The data model focuses on what data should be stored in the database while
the process model deals with how the data is processed. To put this in the context of
the relational database, the data model is used to design the relational tables. The
process model is used to design the queries that will access and perform operations on
those tables.
www.anushabazar.in
In this section, the basic structure of the tables composing the database for the
Project are shown along with information about primary and foreign keys.
Customer
3 First_Name Varchar
4 Last_Name Varchar
5 Address Varchar
6 City Varchar
7 Zip Integer
8 State Varchar
10 Phone_Number Varchar
www.anushabazar.in
Product
6
www.anushabazar.in
Product Tax
Shopping_Cart_Items
2 Price Double
3 Date Date
5 Quantity Integer
www.anushabazar.in
Order Details
4 City Char
5 Zip Integer
7
www.anushabazar.in
Shipping Type
2 Price Double
Credit_Card_Details
4 CVV Number Integer Number present on the back of the card for
extra security
5 Expiry Date Date
Product Review
8
Search History
5 Quantity Integer
6 Price Double
3.3 User Interface Design
Before implementing the actual design of the project, a few user interface designs were
constructed to visualize the user interaction with the system as they browse for Products, create a
shopping cart and purchase products.