This document contains the requirements analysis and use case documentation for an e-retail system project. It includes requirements specifications, use case descriptions for common customer and administrator tasks like registration, login, product search, catalog browsing, sorting products, adding products to cart, checkout and order tracking. It also includes UML diagrams that will be designed like sequence diagrams, collaboration diagrams, state chart diagrams and class diagrams.
1. E RETAIL SYSTEM BITS PILANI 1 | Page
E Retail System
Case Study
Team Member
Darshan Parmar (2014H112179P)
Sagar Choudhari (2014H112183P)
Surya Prakash singh (2014H112186P)
Anuj Gupta (2014H112192P)
Nishant Kumar (2014H112193P)
2. E RETAIL SYSTEM BITS PILANI 2 | Page
CONTENTS
PAGE
1. INTRODUCTION …………………………………………….... 3
2. ANALYSIS PHASE….. ………………………………………... 4
2.1 REQUIREMENT SPECIFICATION ……………………..... 4
2.2 USE CASE …………………………………………………. 5
2.3 USE CASE DIAGRAM ……………………………………. 16
2.4 ACTIVITY DIAGRAMS………………………………….. 18
3. DESIGN PHASE… ……………………………………............. 27
3.1 SEQUENCE DIAGRAMS ………………………………… 27
3.2 COLLABORATION DIAGRAMS….…………………….. 35
3.3 STATE CHART DIAGRAMS….…………………………. 42
3.4 CLASS DIAGRAM….…………..………………………… 44
3. E RETAIL SYSTEM BITS PILANI 3 | Page
1. Introduction
The E-Retail system is a web-based online shopping system. The system provides users to see
the products that are available for sale, details of these products and their price. The guest users
on the website can view all the products listed. They can also view products by different sorting
methods like product criteria, sorting by price. The user can also search for the product by
writing in the search box.
User can buy any of the products he sees. In order to buy product user should be a registered
user. The user can register any time by providing valid e-mail ID, valid phone number and other
personal details. Once the user is registered he can login at any time and can shop on the website.
The user can access his account details and can modify them at any time. He can provide a
default shipping address here or can specify the address while checking out the product. The user
when wishes to buy a product, at first he needs to add that item in the shopping cart. After adding
an item to the cart he can continue shopping or can check out and place the order for the items in
the cart. The user can modify shopping cart any time before he places the order. He can remove
item from the cart, he can modify number of items from the cart. When the user decides to place
a order he can go to shopping cart and confirm products added and proceed to check-out. Once
he goes with check out, user can add a coupon code (if he has) to avail any discounts associated
with the coupon. When user applies coupon code the system checks for validity of the coupon. If
the coupon code is valid then appropriate discount is added else a invalid coupon code message
is notified to the user and is prompted to and another coupon code. If the user does not wish to
add any coupon code then he can proceed to the final payment. Here the user can decide the
payment mode option. The user can do payment using net banking, debit card, credit card. Once
the option is finalized the user is directed to the payment gateway. Once the payment is done,
User is given confirmation about the payment. The user is notified about the placed order by
sending a mail on the registered email-id and by sending message on the registered phone
number. Once the order is placed the user can track his order till it is delivered at his doorstep.
If the product which user wishes to buy is out of stock, the appropriate message needs to be
displayed to the user when he views the product and if user needs to be notified about product
availability, he needs to register for notification about availability of product. An appropriate
message needs to be sent to the user immediately when the product is available.
4. E RETAIL SYSTEM BITS PILANI 4 | Page
When an user adds an item in the cart after logged in system and he logs out of the system before
placing order the item in the cart should be persistent and user be able to view these items in cart
whenever he next time visits the cart and until he deletes it from the cart.
The user can cancel the order he has placed at any time before he accepts the product. Once the
product is cancelled, the user will get the refund only after the product is returned, payment is
returned to the owner in the same account from where the order was placed.
User can also have the facility to change the password, or goes for forget password if he forgets
their password.
2. Analysis Phase
2.1 Requirement Specification
Following are the requirement specification of the E-Retail System.
1. Customer should be able to do Registration.
2. Registered Customer should be able to login of do shopping.
3. User should be able to Search Product.
4. User should be able to do Catalog Browsing.
5. User should be able to Check product by sorting according to different criteria.
6. When user wishes to buy any product he should be able to add items to cart.
7. Once the user adds an item to the cart he should be able to Place Order.
8. Before proceeding to payment customer should be able to modify and manage cart.
9. At the time of checkout if customer has some offer coupons then he should be able to
apply coupon at payment.
10. Customer should be able to select from multiple Payment mode for placing order.
11. Customer should be able track the placed Order.
12. Customer should be able to Cancel Order if he does not want to accept them.
13. Product out of stock notification should be given to customer.
14. Customer should be able to View/Modify his Personal Accounts Details.
15. Administrator should be able to provide different offer to customer.
5. E RETAIL SYSTEM BITS PILANI 5 | Page
2.2 Use Case
The following are the use cases and the corresponding description.
2.2.1 Customer Registration
Use
Case
Section
Comment
Use
Case
Name
Customer
Registration
Primary
Actor
Visitor
Secondary
Actor
None
Description
This
Use
case
describes
the
registration
of
the
customer.
Precondition
Customer
system
should
be
connected
to
the
internet
Post
condition
User
is
registered.
Appropriate
message
is
displayed.
Main
Success
Scenario
1. Visitor
browses
the
site.
2. Selects
Register/Create
an
account.
3. Fill
up
information
(e.g.
name,
email,
password)
4. Submit
the
information.
5. Customer
will
receive
an
email
regarding
his
new
account.
Extensions
N/A
Special
Requirements
N/A
2.2.2 Login
Use
Case
Section
Comment
Use
Case
Name
Login
Primary
Actor
Registered
User
Secondary
Actor
Administrator
Description
This
Use
case
describes
the
login
of
the
customer.
Precondition
Customer
system
should
be
connected
to
the
internet
Post
condition
User
is
logged
in.
Main
Success
Scenario
1. Visitor
browses
the
site.
2. Selects
login.
3. Fill
up
information
(e.g.
email,
password)
4. Submit
the
information.
5. Customer
will
be
logged
in.
Extensions
N/A
Special
Requirements
N/A
6. E RETAIL SYSTEM BITS PILANI 6 | Page
2.2.3 Product Search.
Use
Case
Section
Comment
Use
Case
Name
Product
Search
Primary
Actor
Visitor,
Registered
User
Secondary
Actor
Administrator
Description
This
Use
case
describes
about
the
search
feature.
Provide
an
option
for
searching
a
particular
product.
Precondition
Customer
system
should
be
up
and
running
and
connected
to
the
internet
Post
condition
Search
result
shows
the
product
as
per
the
search
keyword.
Main
Success
Scenario
1. Customer
visits
the
website.
2. Gives
the
search
keyword.
3. Click
the
search
button.
4. Search
result
shows
the
product
as
per
search
keyword.
Extensions
N/A
Special
Requirements
N/A
2.2.4 Catalog Browsing
Use
Case
Section
Comment
Use
Case
Name
Catalog
Browsing
Primary
Actor
Visitor,
Registered
User
Secondary
Actor
Administrator
Description
This
Use
case
describes
about
the
catalog
browsing.
Precondition
Customer
system
should
be
up
and
running
and
connected
to
the
internet
Post
condition
Items
are
displayed.
Main
Success
Scenario
1. Customer
browses
the
site.
2. Clicks
on
the
category
of
the
product.
3. Browses
through
the
various
products
available.
Extensions
N/A
Special
Requirements
N/A
7. E RETAIL SYSTEM BITS PILANI 7 | Page
2.2.5 Sort Products
Use
Case
Section
Comment
Use
Case
Name
Sort
Products
Primary
Actor
Visitor,
Registered
User
Secondary
Actor
Administrator
Description
This
use
case
gives
the
functionality
of
checking
the
product
by
sorting
via
category,
sorting
via
price.
The
sorting
via
category
and
by
price
will
be
available
to
both
visitor
and
Customer
in
same
format.
Precondition
The
visitor
has
opened
the
e-‐retail
website
via
internet.
The
customer
has
opened
the
e-‐retail
website
and
is
logged
in.
Post
condition
The
product
is
searched
by
the
visitor
and
customer
by
sorting
via
category
and
via
price
Main
Success
Scenario
1. Visitor/Customer
opens
the
website
of
e-‐retail.
2. User
clicks
on
sorting
criteria.
3. The
sorted
products
are
displayed
as
per
criteria.
4. User
can
apply
further
sorts
like
sort
by
price
5. Products
are
sorted
as
per
price
Extensions
1.Visitor/Customer
opens
the
website
of
e-‐retail.
2. User
clicks
on
sort
via
price
3. The
products
are
displayed
via
price
sorted
manner
4. Then
user
clicks
on
the
sort
via
category
5. The
products
are
displayed
via
category
sorted
way.
Special
Requirements
Availability
Navigability
8. E RETAIL SYSTEM BITS PILANI 8 | Page
2.2.6 Add items to cart
Use
Case
Section
Comment
Use
Case
Name
Add
items
to
cart
Primary
Actor
Registered
User,
visitor
Secondary
Actor
Administrator
Description
1. Using
this
use
case
customer
can
add
new
item
to
the
cart
to
buy
them.
This
is
the
most
important
use
case
in
E-‐retail
system
2. For
Logged-‐in
Customers,
even
if
the
Customer
logs
out
they
can
login
back
again
and
proceed
without
needing
to
add
the
previous
added
products
back
into
the
Cart.
3. Customers
can
also
see
all
items
see
all
items
are
added
to
the
cart.
Precondition
1. Customer
system
should
be
connected
to
the
internet.
2. Website
should
be
up.
3. Products
must
be
added
to
cart
that
are
to
be
modified.
Post
condition
1. Products
are
added
to
the
cart.
2. Option
to
perform
check-‐out.
Main
Success
Scenario
1. From
Logged
In
Customer’s
End
1.1. Customer
visits
the
website.
1.2. Logs
in.
1.3. Browses
Category.
1.4. Browses
subcategory
if
desired.
1.5. Selects
Products
and
required
Quantity.
1.6. Adds
to
Cart.
2. From
Guest
Customer
End
2.1. Customer
visits
the
website.
2.2. Browses
Category.
2.3. Browses
subcategory
if
desired.
2.4. Selects
Products
and
required
Quantity.
2.5. Adds
to
Cart.
Extensions
1.
Log
Out
-‐>
Add
to
Cart
1.1 Customer
visits
the
website.
1.2 Logs
in.
1.3 Browse
category.
1.4 Browses
subcategory.
1.5 Goes
to
individual
product
detail
page.
1.6 Products
are
added
into
Cart.
1.7 Customer
Logs
out.
1.8 Again
logged
in,
products
are
still
available.
Special
Requirements
1. Availability
2. Security
9. E RETAIL SYSTEM BITS PILANI 9 | Page
2.2.7 Place Order
Use
Case
Section
Comment
Use
Case
Name
Place
Order
Primary
Actor
Registered
User
Secondary
Actor
Administrator
Description
This
Use
Case
state
the
complete
checkout
process
by
which
Registered/Guest
customer
will
place
order
in
website.
It
describes
the
way
the
purchase
cycle
is
executed
for
a
customer
when
customer
place
an
order.
The
Ecommerce
Administrator
can
check
the
order
in
details
in
the
admin
panel.
Then
details
are
checked
and
status
is
changed
if
money
is
received
by
the
owner
&
invoice
is
created.
The
invoice
is
sent
to
the
customer.
When
the
products
are
shipped
to
the
customer
then
the
order
status
is
changed.
Precondition
User
have
entered
valid
payment
details
Post
condition
User
will
get
notification
of
placed
order
and
user
will
able
to
track
placed
order,
Main
Success
Scenario
1. Select
product
and
Enter
quantity
2. Click
on
Buy
now
button
3. Enter
shipment
address
4. Enter
coupon
if
have
valid
coupon
5. Proceed
to
payment
gate
ways
Extensions
1. Item
will
not
added
in
shopping
cart
2. Buy
button
is
not
working.
3. Item
will
not
be
deliver
at
entered
shipping
address.
Special
Requirements
Placing
order
through
HTTPS
communication
protocol
10. E RETAIL SYSTEM BITS PILANI 10 | Page
2.2.8 Manage cart
Comment
Use
Case
Name
Manage
cart
Primary
Actor
Registered
User
Secondary
Actor
Administrator
Description
1. This
Use
Case
describes
how
Customers
can
modify
their
cart
i.e.
they
can
remove
items
from
the
cart
or
change
number
of
quantity.
2. This
feature
is
beneficial
for
the
customer
because
they
can
always
have
a
preview
of
the
total
amount
of
the
cart
and
modify
quantity
of
the
Products
as
required.
As
a
result
customers
have
greater
flexibility
in
placing
their
products
3. This
feature
is
available
for
both
Registered
and
Guest
Customers.
Precondition
1. Customer
system
should
be
connected
to
the
internet.
2. Website
should
be
up.
Post
condition
1. Products
are
removed
from
the
cart.
2. Quantity
of
product
is
updated.
Main
Success
Scenario
1
For
modifying
quantity
of
product.
1.1 After
products
are
added.
1.2 Open
cart.
1.3 Edit
number
of
items
for
a
product.
1.4 Click
update.
2 For
removing
a
product
from
cart.
2.1 After
products
are
added.
2.2 Open
cart.
2.3 Choose
remove
product
for
products
to
be
removed.
Extensions
1.
Not
enough
Inventory
while
updating
quantities.
1.1 After
products
are
added
to
cart.
1.2 Updates
(increases)
the
quantity,
But
that
quantity
is
not
in
inventory
(error
message
is
displayed
in
that
case).
1.3 Customer
adjusts
the
Quantity.
Special
Requirements
1. Availability
2. Security
11. E RETAIL SYSTEM BITS PILANI 11 | Page
2.2.9 Apply coupon
Use
Case
Section
Comment
Use
Case
Name
Apply
coupon
Primary
Actor
Registered
User
Secondary
Actor
Administrator
Description
The
different
coupons
obtained
by
the
customer
can
be
used
to
avail
discounts
on
the
products.
The
customer
is
prompted
to
enter
the
coupon
code
after
the
order
is
placed.
Precondition
The
customer
is
logged
in
to
the
e-‐retail
website.
The
customer
has
coupons.
Customer
has
added
product
in
the
cart
and
has
checked
out.
Post
condition
The
coupon
is
applied
at
the
time
of
payment.
Main
Success
Scenario
1. Customer
has
placed
an
order.
2. He
checks
out
from
the
cart
3. The
system
prompts
for
entering
discount
coupon
4. Customer
enters
the
coupon
details.
5. The
system
checks
if
the
coupon
is
valid.
6. If
the
coupon
is
valid
then
the
coupon
is
applied
and
the
appropriate
discount
is
applied.
7. Customer
is
directed
for
further
process.
Extensions
1. Customer
has
placed
an
order.
2. The
customer
has
gone
to
select
payment
type.
3. The
system
prompts
for
entering
discount
coupon
4. Customer
enters
the
coupon
details.
5. The
system
checks
if
the
coupon
is
valid.
6. If
the
coupon
is
not
valid
then
the
coupon
discount
is
not
applied
and
a
error
message
is
displayed
to
the
customer.
Special
Requirements
Availability
12. E RETAIL SYSTEM BITS PILANI 12 | Page
2.2.10 Payment mode
Use
Case
Section
Comment
Use
Case
Name
Payment
mode
Primary
Actor
Registered
User
Secondary
Actor
1. Administrator
(of
E-‐reatil
system)
2. Payment
Gateway
Description
1. Using
this
use
case
customer
can
do
the
payment
very
easily,
quickly
and
in
a
secured
way.
2. It
provides
secure
processing
of
online
transactions
done
by
the
Website
Customers.
3. From
the
E-‐retail
Administrator
point
of
view,
the
benefit
of
Payment
mode
is
that
business
will
get
the
payment
very
quickly.
They
do
not
need
to
wait
for
payment.
4. It
also
makes
the
transaction
process
very
secured
and
reliable.
This
in
turn
increases
the
Customer
faith
on
the
Website
and
subsequently,
number
of
customers
will
increase.
Precondition
1. Customer
system
should
be
connected
to
the
internet.
2. Website
should
be
up.
3. Customer
must
be
logged-‐in.
Post
condition
Proceed
with
payment
mode
selected.
Main
Success
Scenario
1. Customer
add
items
to
cart.
2. Proceed
with
check
out.
3. Selects
the
suitable
Payment
Gateway
Extensions
1. Cancels
transaction
from
Payment
Gateway
Page
1.1 Customer
add
items
to
cart.
1.2 Proceed
with
check
out.
1.3 Selects
the
suitable
Payment
Gateway
1.4 Fills
up
all
required
information
for
transaction
when
he/she
is
redirected
to
Payment
Gateway
landing
page.
1.5 Cancels
the
transaction.
1.6 Corresponding
status
will
be
displayed
2. Incorrect
input
in
Payment
Gateway
Page
2.1 Customer
add
items
to
cart.
2.2 Proceed
with
check
out.
2.3 Selects
the
suitable
Payment
Gateway
2.4 Fills
up
all
required
information
for
transaction
when
he/she
is
redirected
to
Payment
Gateway
landing
page.
2.5 Fills
up
required
information
with
incorrect
input
when
he
is
redirected
to
payment
gateway
landing
page.
2.6
Error
message
will
be
displayed
&
the
transaction
will
be
canceled.
2.7 Corresponding
status
will
be
displayed.
Special
Requirements
1. Availability
2. Security
13. E RETAIL SYSTEM BITS PILANI 13 | Page
2.2.11 Track Order
Use
Case
Section
Comment
Use
Case
Name
Track
Order
Primary
Actor
Registered
User
Secondary
Actor
Administrator
Description
This
use
case
describe
a
very
important
feature
which
is
available
for
customer
after
they
have
placed
their
online
order.
The
customer
can
track
the
status
of
order
such
as
“Processing”,
“Shipped”
etc.
In
Tracking
detail
section
customer
will
know
about
actual
status
of
orders
of
item.
Ecommerce
Administrator
checks
the
order
and
changes
the
status.
Admin
can
also
notify
by
sending
an
email
to
customer
about
their
status
of
their
item.
Precondition
User
have
to
place
order
and
Customer
should
have
valid
order
Id.
Post
condition
User
will
able
to
view
detail
of
their
shipment
delivery
status.
Main
Success
Scenario
1. Enter
valid
order
Id
2. Display
status
of
purchased
Item
Extensions
1. Customer
account
is
created
by
administrator
on
behalf
of
a
customer.
2. Order
is
placed
by
administrator.
3. Status
is
being
updated
by
administrator.
4. Status
is
notify
through
email
to
customer.
Special
Requirements
Customer
should
have
valid
Item
Order
Id
2.2.12 Cancel Order
Use
Case
Section
Comment
Use
Case
Name
Cancel
Order
Primary
Actor
Registered
User
Secondary
Actor
Administrator
Description
This
use
case
describe
a
very
important
feature
which
is
available
for
customer
after
they
have
placed
their
online
order.
The
customer
can
cancel
order.
Ecommerce
Administrator
checks
the
order
and
can
cancel
the
order.
Admin
can
also
notify
by
sending
an
email
to
customer
about
their
cancelation
of
their
item.
Precondition
User
must
have
to
login.
Post
condition
User
will
get
cancelation
message
after
the
cancelation.
And
product
shipment
status
will
be
changes
and
marked
as
cancel
order.
Main
Success
Scenario
1. Select
product
for
cancelation
2. Display
status
of
canceled
item
as
“cancel”
Extensions
1. Item
can
be
canceled
by
administrator
on
behalf
of
a
customer.
2. Status
is
being
updated
by
administrator.
3. About
cancelation
customer
will
notify
through
email
Special
Requirements
Customer
have
to
cancel
the
order
before
shipment.
14. E RETAIL SYSTEM BITS PILANI 14 | Page
2.2.13 Notify product availability
Use
Case
Section
Comment
Use
Case
Name
Notify
product
availability
Primary
Actor
Customer,
visitor,
Notification
System
Secondary
Actor
NA
Description
This
use
case
describe
a
very
important
feature
which
is
available
for
Administrator
about
product
availability.
Ecommerce
Administrator
checks
the
product
availability
and
notify
customer
about
out
of
stock.
Precondition
Customer
should
have
saved
item
in
their
wish
list.
Post
condition
Customer
will
get
out
of
stock
notification
email
correspond
to
item
which
they
have
selected
in
their
wish
list
Main
Success
Scenario
Mail
should
be
sent
on
customer
register
email
address.
Extensions
Administrator
will
send
notification
to
customer
account
inbox
Special
Requirements
User
must
have
to
save
product
in
their
wish
list.
2.2.14 Modify Account Details
Use
Case
Section
Comment
Use
Case
Name
Modify
Account
Details
Primary
Actor
Registered
User
Secondary
Actor
NA
Description
This
use
case
gives
the
functionality
for
the
customer
to
view
or
modify
the
personal
account
details.
The
customer
can
view
the
personal
details.
The
customer
can
edit
any
of
the
entered
details.
Precondition
The
customer
is
registered
user
of
the
e-‐retail
website.
He
customer
is
logged
in
to
the
website.
Post
condition
The
customer
has
viewed
detail
or
modified
the
required
details.
Main
Success
Scenario
1. Customer
logs
in
the
website
of
e-‐retail.
2. Clicks
on
the
Account
Details.
3. The
personal
details
of
the
customer
are
visible
to
the
customer.
4. The
customer
selects
the
details
to
modify.
5. The
customer
saves
the
modification.
Extensions
1. Customer
logs
in
the
website
of
e-‐retail.
2. Clicks
on
the
Account
Details.
3. The
customer
is
newly
registered.
4. There
are
no
details
of
the
customer.
5. The
system
prompts
the
customer
to
fill
all
details.
6. Customer
saves
the
details.
Special
Requirements
Availability
15. E RETAIL SYSTEM BITS PILANI 15 | Page
2.2.15 Provide Offers
Use
Case
Section
Comment
Use
Case
Name
Provide
Offers
Primary
Actor
Administrator
Secondary
Actor
NA
Description
This
use
case
gives
the
functionality
of
generating
the
coupon
by
the
administrator
for
some
special
occasion.
These
coupons
are
the
made
available
to
customer.
Precondition
Admin
decided
to
generate
discount
coupons
Post
condition
The
coupon
is
generated
and
is
ready
to
make
available
for
customers.
Main
Success
Scenario
1. Admin
decides
to
give
discount.
2. Admin
set
the
criteria
for
discount.
3. The
coupons
are
generated
for
these
criteria
4. The
admin
then
decides
the
validity
of
these
coupons
5. The
coupons
are
now
ready
to
distribute
to
customer.
Extensions
NA
Special
Requirements
Availability
16. E RETAIL SYSTEM BITS PILANI 16 | Page
2.3 Use Case Diagram
2.3.1 User USE CASE
17. E RETAIL SYSTEM BITS PILANI 17 | Page
2.3.2 Use Case Diagram – Administrator
18. E RETAIL SYSTEM BITS PILANI 18 | Page
2.4 Activity Diagram
The Activity Diagram gives the detail Activity diagrams of the E-Retail system.
2.4.1 Customer Registration
2.4.2 Customer login
19. E RETAIL SYSTEM BITS PILANI 19 | Page
2.4.3 Product Search
2.4.4 Add items to cart – guest user
20. E RETAIL SYSTEM BITS PILANI 20 | Page
2.4.5 Add items to cart – Login customer
2.4.6 Coupon generation