Project: Chegg Inventory & Warehouse Management System
Project Category: Logistics
Chegg Warehouse & Inventory Management System (CWIMS)-
Overview:
The objective of Inventory & Warehouse management system is to
manage and maintain warehouse operations and distribution by
controlling the movement and storage of inventory. This includes
receiving, shelving, inventory management, order allocation, order
picking, packing, shipping, Replenishment, and employee/labor
management.
The PRD below outlines the following systems/processes and defines
their logic rules and user flow:
• Incoming/Receiving (Return System)
CWIMS-Incoming/Receiving:
One of the most important pieces of our new warehouse is making sure
we are properly prepared to receive and manage all the books we are
expecting through a streamlined process. When packages arrive on
the dock we need to be able to quickly check them in and get the
books on the shelf so they can be re-rented. The receiving process is
broken up into the following:
• Pre-receiving
• Receiving
• Shelving
Each of the above listed “stations”is responsible for a specific job, all of
which requires interaction with our system. Our goal is to make their
interaction with the system as easy and effortless as possible in order
to keep the process moving accordingly.
1) Station 1 -Pre-receiving: Pre-receiving is the front line and
the first step in the receiving process. It’s pre-receiving’s job to
determine the “Good” packages from the “Bad” packages,before
the incoming items ever touch the hands of receiving. Thus
allowing the incoming items to smoothly flow from station to
station.
• Good Packages: Good packages are ones that use
the Chegg Ups return label, tracking # is clearly
visible, scan able, and the system is able to
recognize order.
• Bad packages: These are packages that we are
unable to scan or the system is not able to recognize.
Either, the tracking number is missing, the package
was shipped with a different carrier or the customer
did not use the Chegg UPS return label. Bad
packages will be placed to the side and dealt with at
a later time.
• DTO: These are packages containing books, which
immediately need to be entered in the system, and
moved to outgoing to fulfill an order. Alerting the
pre-receiving team member of the DTO package
allows us to quickly move an incoming book to an
outgoing order. (See DTO Exceptions for more info)
Pre-Receiving- User Flow:
Each member of the pre-receiving team will be provided with a hand
held scanner, enabling them to easily scan theshipping label of each
package on the dock. It’s the systems job to tell them whether the
package is “Good” or Bad.”
Step 1: Pre-receiving team member scans the package. System
receives package information and verifies. The following logic gates
apply:
a. If Yes. System recognizes the package and verifies that it is
acceptable. Then display “Big Green” verified notice on
screen and package is moved to “receiving.” Pre-receiving
ends.
b. If No. System is NOT able to verify package. Then display
“Big Red” NOT Verified notice on screen. Package is moved
to the side to be dealt with by a different team.
c. DTO is treated in the exact same fashion as a good
package. Our system must first recognize the package and
verify it is acceptable. When the system verifies the label,
it must recognize that this package contains a book that
needsto be shipped out immediately. This triggers the “Big
Orange” notice on the pre-receiving screen. Pre-receiving
team member then grabs the DTO package and moves it to
the DTO station.
d. *Please note: All packages entered into the system (Good
& Bad) must be stored and queued until the “package” is
complete and shelved. This will allow us to easily check,
track & verify the packages throughout the receiving
process. Any package that was scanned at pre-receiving
but never scanned at “receiving” or after X amount of time
(X=configurable) should flagour system which will trigger
a notification to a manager. Who can promptly investigate
and resolve the issue.
2) Station 2: Receiving: The receiving station is the middle
layer and 2ndphase of the receiving process. It’s here that
packages are unpacked and individual items processed into the
system.
Receiving user flow: Each member of the receiving team will
be responsible for scanning the contents of the package
received into the system and prepare themfor shelving. As
packages get passed from pre-receiving to receiving the boxes
are opened and the books taken out. Similar to the pre-receiving
process, the first screen of the receiving stationis basic and bare
boned, requiring nothing more than a search field.
Step1: Before scanning any books receiving must first
“open the Cart,” by scanning the unique bar code located
on every cart. Once the cart is opened receiving can begin
processing returning books into the system. When the
cart becomes full, receiving must close the cart by re-
scanning the unique bar code before any more items can
be returned or shelved. The following rules apply:
• Cart must be scanned to “open” for books to be
added, then must be scanned at the end to
“close” the cart.
• Every time a cart is Opened and Closed it must
be time stamped.
• No more than one cart can be opened with an
employee at one time.
• Damaged books are placed on separate carts.
• No cart that is opened by one receiver can be
open by any other receiver, until the cart is
closed and confirmed shelved.
• No cart can have more than two rack locations
on it .
• Based on both the dimensions of the cart and
each book returned for that cart, our system
willbe able to notify the user when the cart is
full.
• The cart system will need to communicate with
the shelving system and alert the receiver
when a cart needs to be closed because a rack
location is full.
• The following needs to be tracked and logged:
○ What receiving stations have carts open
○ How long have carts been open
○ Time from Cart to shelf (more on this
when we get to shelving)
○ What SKU belonged to what cart.
Cart Mock Up 1
Step 2: As the books move up the conveyer belt from pre-
receiving to receiving, receiving’s first task is to scan either
the packing slip found in the box or the UPS Label.
Once the label bar code has been scanned a system search
will be triggered.
• If Yes, the system finds a match return and display all
expected returns from that unique user_ID .
• Go to Step 2
• If No, System is unable to find a match display big
red error message .
○ At this point Receiving team member will
attempt to scan a SKUfound on one of the
returned books. This will again trigger a
system search.
If Yes, system finds a SKU match, return
and display all expected returns related
to the User_ID of the scanned SKU.
If No, System is unable to find a SKU
match or the title has NO SKU, Receiving
team member will treat this as a “Bad
package” and be prompted to enter
available information. (See Exceptions
Unidentifiable books).
Please note: After going through the
above process the receiving team
member is still not able to find any match
the items will be scanned in as Extra
books. Information entered will be
saved,package contents will be skewed
and prepared for shelving. These details
must be sent to a extra book queue, that
a warehouse manager can access and
manually link the books to an order.
Step 3: At this point all order_linesand book details of the scan
packaged are being displayed to the receiving team member. (See
mock up below). The team member than must scan the ISBN or
SKU of each title in the package and check them into our system.
Order Check In Mock Up
• As part of checking the book into the system the receiving
team member must also enter the Condition of the book.
Each condition will berepresented by a scan able bar code
found at their station. In addition to the Condition the
receiver will have the option of entering the following
fields, all of which are default (NO):
○ CD-Whether the book was returned with a CD or
other supplemental material,
○ Teachers edition
○ International edition.
○ New ISBN
• All of the above conditions have an associated bar code the
receiver must scan into to the system.
• Any ISBN entered in the NEW ISBN field of a book must be
stored and inserted into our Alt ISBN table if it does not
already exist.
• Since condition is the only required field it will be the last
one to enter in the flow. Once the receiver scans the
condition, they will be able to scan the Cycle Return
Barcode and it will automatically trigger the SKU to print.
• Once an order-Line is complete it will message the receiver
so they do not get confused where they are and can
quickly move onto the next item. Receiving team member
will repeat the above steps until all books have been
scanned in and cycle returned.
Receiving Process Flow
Exceptions: There are certain scenarios that will arise while the
receiving team is scanning books into the system, all of which are
outlined below. These situations need to be handled properly as to not
slow the process or lose books.
• Extra books
• Damaged Books.
• Empty boxes
• DTO
• Missing information- Unidentifiable package book.
Extra books: Extra books are defined as books returned in a package
that we have no record of in our system for that specific customer.
Extra books can be returned to use for a multitude of reasons, however
all unidentified items will be entered into the system as Extra books
and if possible linked to the customer who’s package it was returned
in. Here is an example of the process below.
EX: Receiving team member scans the pack slip/Ups label and our
system displays all books expected back with this order (this includes-
buy back, donations, early returns. Etc…any book that could possibly
be returned should be displayed.) For this example lets say there
where Fivetitles that are expected to be returned with this order.
Receiving team member scans in the first five successfully and notices
there is an additional book remaining.
• Receiving team member scans the Bar code for Extra book which
will be placed at their station. Once bar code is scanned an
additional order_lineis displayed on return interface.
• Receiving team member than enters the following into the
system
○ ISBN
○ Condition
○ W/CD
○ International
○ Teachers
• Hits complete and this item is skewed and placed on the cart for
shelving.
• Please note: extra book information will be saved under the
same customer it was returned with. If there is no customer
information available for the extra book it should be stored in the
system as an unidentified extra book and queued in the extra
book system where ware house management will manually
attempt to link the order later.
Extra Book Page Mock Up
Non Rentable Books: These are any books returned to use with a
condition of < 60 and are no longer rental able. At some point we will
be charging customers for returning damaged books and to do so we
need to be aware of the exact damage so we can easily communicate
that to the customer. This being the case, if the receiver scans in a
damaged book the following fields must display on the receiving
interface under condition.
• Water Damage
• Missing, torn, or lose pages/cover
• Excessive writing, marking or highlighting
• Broken Spine/binding
• Other: This should allow up to 250 characters of
explanation.
The receiver is required to select on the above listed before the book is
mark returned.
Additionally, non-rentable books are not carted/shelved in the same
area as rentable books, therefore must be given a Non Rentable book
SKUs and separate shelf space.
Empty Boxes: If receiving gets a package with no books in it they
will have to Scan/click the empty box function where they will be
prompted to enter the information on the shipping label….I.e. scan the
tracking # and then hit confirm. This will trigger the following to
happen:
• The order that the empty box was a part of will be temporarily
flagged with an empty box exception. This will block the order
from being charged with late fee’s etc until we can figure out
what is going on.
• Order details that the empty box belonged to will be sent to a
“queue” so warehouse management is aware of the empty box
and can look into resolving the issue.
• Email is sent to customer notifying them that the package has
been received empty. We have initiated a trace etc…
• A ticket should also be sent to customer service informing them
of the empty package and customer details.
Direct to order (DTO): These are books which orders have been
placed for but have yet to be scanned into our system as cycle-
returned. These items are still sitting in the package on the dock
waiting to be processed. All we know is that UPS has confirmed the
package as delivered.
To properly do this our systems need tocommunicate and beware of
the following:
• IMS needs to communicate with the UPS system and
update inventory for all packages and their estimated
contents marked as delivered to the warehouse.
• Tito needs to recognize these items as available inventory
and process the order to Chegg.com
• Once the warehouse receives the order- No pick lists
should be printed for DTO books…(DTO pick lists are only
printed when the item is scanned into the system). This
applies for multiple book orders as well.
• Receiving must process the item as normal return entering
all required fields before the DTO item is moved to
shipping.
• After the DTO item is scanned into our system and
confirmed Print SKU and PICKLIST. (When printing a SKU/
Pick list for multiple order book we need to make sure that
pigeon holes match the existing pick list) .
Exceptions to DTO:
• Book expected for DTO is scanned in as a Non Rentable Item.
• Book expected for DTO is missing from the return.
• Book has expired the time limit.
Assuming there is only one book available for the DTO order, the
following process would take place. The damaged book will be
scanned in as it would normally be. Once the item is scanned in as
damaged the DTO order will automatically be canceled and sent back
to TITO for resourcing.
• If there were other books picked for this order and
currently waiting in the pigeon hole for the DTO book a
new pick list must be generated at this point which needs
to be brought over to the shipping team so they can send
out the rest of the order.
If there where multiple copies of the same title with the delivered
status, the system will work on a first come first serve basis. The first
book scanned to the return system will be given to that DTO order.
However, if the first book scanned in for the DTO order is scanned in
damaged or missing the system should not cancel the DTO order.
Receiving team member will continue to return the current book and
wait for the next title to come along for the DTO order.
We need the ability to set time constraints for the DTO orders. For
example: if a DTO order has not been marked complete after X hours it
needs to flagged and a warehouse manger notified so he could get the
shipment out. This needs to be a configurable time limit in the
warehouse management interface.
Unidentifiable package exception: System is not able to identify
package. If the system is not able to identify the package a pre-
receiving team member will need to manually handle the package and
try to identify it with an order in our system. This will require the team
member to manually input data into pre-defined search fields.
a. Team member opens the “Bad Package” page, which will
be linked from the pre-receiving page.
b. Team member is prompted to enter the following
information:
i. First/Last name
ii.Tracking #
iii.Phone #
iv.SKU
c. Team member hits enter, which will trigger a search in our
system looking for any orders or order information that
matches data entered and return relevant results to the
team member.
i. If Yes. System is able to find a match,all matching
results will be displayed to the team member who
then is required to manually select the best match,
thus linking the received package to an order in our
system.
1. Once the package is matched and confirmed
by the pre-receiving team member the system
will direct them to the return interface where
they will continue to cycle-return the book.
ii.If No. The system is not able to return any results or
the pre-receiving team member is not able to match
the package to any of the results returned.
1. The team member will be required to enter any
additional information found on the package
including the following:
a. First/Last name
b. Tracking #
c. Phone #
d. SKU
e. Shipping address
f. Carrier
g. ISBN of books in the box
2. Once the receiving team member enters the
information they will enter the book into the
system as an Extra book.
a. When the pre-receiving team member
confirms the information entered the
system needs to save the info and enter
the details into the Extra book queue so
they can be dealt with at a later time.
These books should not be blocked, once
shelved they should open for business.
Missing Info Page Mock Up
Receiving Bulk Inventory purchases:
At times we will be placing large orders from wholesalers and
publishers to fill our inventory. These orders will arrive at our
warehouse in bulk (pallets and large boxes). As all otheritems that
arrive at our warehouse they need to be quickly checked into the
system and shelved so they can be rented out. However, the process
for entering these items into the system is a bit different than the
normal receiving process. The below outlines the logic conditions and
user flow for receiving bulk shipments into the warehouse.
P.O. order entry flow:
Step 1: Entering the P.O. into the system.
The first phase of this process is entering the order information
into our system. This will happen through an interface in admin
and usually takes place after the order is placed with the partner
and before the package arrives at the warehouse. Entering the
info into the system before hand allows us to pre-pare and track
the books we are expecting back.
The P.O interface will allow the user to enter the following
information into the system:
• *P.O. Number
• *Seller Name
• *Purchase Date
• *ISBN 1 Quantity 1 Price Condition (Drop Down)
• ISBN 2 Quantity 2 price Condition (Drop Down)
• ETC…(User should have the option of adding additional
number of ISBN).
• Ship Cost
• Carrier (Drop down)
*=Required fields
Please note: The user will be entering the price per unit for
each ISBN entered in the P.O. However, there may be
scenarios when we only have the total price of the P.O. and
will need the ability to toggle between entering the total
price of the P.O. and the price per unit. Ultimately, the
system should be smart enough calculate the total price or
the price per unit based on whatever information entered.
After entering the above-required information the user will
hit enter and the system will create the order in our
system. A confirmation message will be displayed.
Step 2: Orders arrive at the warehouse:
When these large orders arrive at the warehouse they need to be
checked into inventory. However, because these books are
expected to arrive in large shipments the process of checking
them into our system requires a different flow and set of screens.
The flow process is outlined below step-by-step.
1. P.O. Order look up: This is the first screen in the process
and requires the user to locate the P.O. order in the system.
The user will have the option of entering one of the
following pieces of information:
• P.O. #
• ISBN
• Tracking #
• Seller (Drop down)
After entering one or more of the above fields the user will
hit search this will trigger the P.O. order look up.
Depending on what pieces of information the user enters,
the search could possible return multiple results, a single
result or nothing. The following logic gates apply:
• If Yes, the system is able to find an exact
match the user is yielded to the P.O. page-Go
to screen 2.
○ IF yes, the system finds multiple results
the users is yielded to the SRP page
where they are required to select the
appropriate order. Once order is selected
and confirmed, user is yielded to the P.O.
PageGo to screen 2.
• If No, the system is unable to find any
matches, then display error message
prompting the user to enter more info and try
search again or create a new order.
○ If user chooses to create new order they
will be yielded to the new order page
where they will be prompted to enter the
following information:
P.O. #
ISBN (1) Q(1) Cnd(1)
$(1)
ISBN (2) Q(2) Cnd (2) $ (2)
Etc…as necessary
Ship cost
Seller
○ Once the user enters the required
information they can either cancel or
confirm.
If the user cancels the information
is erased and they are yielded back
to the P.O. order look up page.
If the user confirms the P.O. order is
created and the user is yielded to
the P.O. page.
2. P.O. Page: The P.O. page is similar to the return interface
outlined above, it’s here the user will check in the items
received in the P.O. order. The P.O. page displays all the
details of that order which include the following:
• P.O. #
• Seller
• ISBN (1) Q-received(1) Cnd(1)
• Print button
• ISBN (2) Q-received(2) Cnd(2)
• Print button
• Etc… as necessary.
The user will be required to enter the quantity and
condition of the books received for each individual ISBN in
the order. Once all info is entered they will be prompted to
print the SKU (separately) for each ISBN in the order.
However, before they Skews can print the user must first
select the skutype.
Clicking the print button underneath the selected ISBN
triggers the below message to appear and prompts the
user to select a SKU type:
Would you like to print…
• A Box Sku? (Bulk labels will then print for
placement on box
• Individual SKU? (labels will be printed
individually for placement on spine)
Once the user selects and confirms the type of SKU they
would like to print, they are yielded back to the P.O. page
to repeat (As necessary) andSKU’s begin printing.
Please note: If the user selects BOX SKU the following
message must be displayed before they confirm in red:
Please make sure the correct paper is in the printer.
P.O Order Receiving Search Flow
Shelving tracker: Overview
The shelving system is designed as a tracking mechanism that allows
us to track books as they make there way from the cart to the shelf. It
stands as a check point which will allow us to be proactive with any
possible shelving issues that may arise by catching them early and
being able to hold employees accountable.
The shelving system starts when the receiving team member fills and
closes a cart, at which point we know it’s ready to be shelved. The
flow below outlines the opening process for the shelver.
Shelving: Opening a Cart/Shelve
Step 1: Shelverpicks up a recently closed cart from the receiving
station and heads toward the shelving station. (Shelving stations are
located through out the warehouse, see warehouse map for locations).
• Scans Employee ID & Cart ID
○ If Scan good system locks the cart, skews to that employee
with a time stamp. Cart is officially open.
○ If bad, error message is displayed.
• Please note the following:
○ Only carts that have been closed by the receiving team can
be scanned for shelving. If a cart has not been closed by
the receving team user and accidentally picked up by a
shelfer error message must be displayed.
• What other things should be talked about here? Do we need to
mention anything about the auditing system at this point?
Step 2: Employee shelves books (SKUs on the books provide the rack
location for the employee)
Shelving tracker: Closing a cart/shelf
Shelving: Closing a Cart/Shelve
Once the books are shelved the user is required to close the cart
before returning it back to receiving. To do this they must return to the
shelving station and re-scan both their employee ID and the unique bar
code located on the cart they just shelved. Once the cart is
successfully scanned in and closed it officially marks the end of the
return process.
However, there will be certain exceptions that will arise when closing
the cart, all of which are outlined below:
• Input error: An input error will usually apply to a bad scan or
data entered incorrectly. In this situation an error message
should be displayed to the user stating invalid information
entered and will prompt them to re-enter whatever information.
○ Please note: that both the employee ID and the unique bar
code found on the cart are required fields. Can’t have one
with out the other.
• Auditor/Management exception: An auditor exception will most
likely occur because the employee shelving the books screwed
up at some point and we need them to stop what their doing so
they don’t make any more mistakes. In this scenario, when the
employee scans the employee ID and cart the system should
lock them out from doing anything else and notify them to see
management. It should close their cart as well.
• Cart not closed: There will be cases when the person shelving
forgets to close out the cart. In this situation we will need the
following functionality applied to help combat this and resolve
the issues as quickly as possible.
○ Management will need to be alerted of any carts open for
shelving and not closed within 1 hour (time should be
configurable). The alert should include the cart bar code
and employee who opened it.
○ If a cart was accidentally returned to receiving before it
was closed, the receiving team should not be allowed to
open it before it is officially closed for shelving.
○ Employee should not be allowed to open another carts or
take any other action in the system until they have closed
the cart. If they attempt to do this anmessage must be
displayed.
○ No employee can have more than one shelving cart
opened to them at a time?
Shelving Page Mock Up
Auditing:
The auditing system allows us to efficiently verify the correctness of the shelving
procedure
item placement by regularly monitoringemployeeshelving activity.
Step 1: A pool of recently shelved SKUs arepicked to be audited.
(There is a random sample of SKUs that are taken from each group of
books that are shelved.)
Step 2: Auditor is sent a SKU that they are suppose to scan throughout
the warehouse.
Step 3: Auditor will go to the designated location (based off of the SKU
they are about to scan)
Step 4: SKU is scanned (If SKU is not found in the proper location move
to step 6)
Step 5: New SKU will be given to auditor to go and verify that the book
is in the correct location in the warehouse. (process continues until all
the SKUs in the Audit pool have been verified)
Step 6: If SKU is not found then Manager will be notified to handle the
situation. Auditor continues to Step 5.
Have to rememeber the proximity and number of auditors in the
warehouse
Pick Sheet and SKU Mock Ups
Picking Sheet: Multiple Item
M1-13-04
Order #
Student Name
Ship to Address
ISBN TITLE SKU
0131430211 Financial Reporting and Analysis
001-15
0131704168 International Economics
0131878565 Understanding Financial Statements
0131485237 Essentials of Strategic Management
Picking Sheet: Single Item
Order #
Student Name
Ship to Address
ISBN TITLE SKU
0131430211 Financial Reporting and Analysis
001-15
Sample SKU: