Data Structures and Algorithms: Designing an Inventory System Report

Verified

Added on  2022/10/11

|10
|2487
|10
Report
AI Summary
This report details the design of an inventory system for a company dealing with household and food items. It explores key variables like product ID and supplier ID, along with the range of items. The report examines inventory operations such as ABC analysis, economic order quantity (EOQ), cross-docking, and cycle counts. Furthermore, it proposes the use of the Quicksort algorithm for sorting and binary search for searching, justifying their efficiency for large datasets. The report also considers system scalability, addressing potential changes like company mergers and the resulting adjustments to variables, ranges, and operations. The conclusion emphasizes the benefits of data structures and algorithms in enhancing operational efficiency and the value of data analysis for informed decision-making within the inventory system.
Document Page
r
DATA STRUCTURE AND ALGORITHM
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Table of Contents
Introduction.............................................................................................................................................2
Inventory system key variables and range...............................................................................................2
Key variable........................................................................................................................................2
Variables..............................................................................................................................................3
Range...................................................................................................................................................3
Inventory operations................................................................................................................................4
ABC analysis.......................................................................................................................................4
Economic order quantity......................................................................................................................4
Cross Docking.....................................................................................................................................5
Inventory Cycle Count.........................................................................................................................5
Reviewing stock..................................................................................................................................5
Safety stock level safety......................................................................................................................5
Bulk Shipment.....................................................................................................................................5
Algorithm................................................................................................................................................5
Sorting algorithm.................................................................................................................................5
Searching algorithm.............................................................................................................................6
Changes to the system.............................................................................................................................7
Conclusion...............................................................................................................................................8
Document Page
Introduction
Currently, business operations have become so much intensive and where a lot of people are
involved in them. In these operations leads to a lot of data which require processing every
moment. So, the system required to process the data must have these features into consideration:
efficiency. timely, fault tolerance, etc. in different business activities. These activities include
searching certain information or sorting data.
Selection of an appropriate algorithm and data structure during the execution of these business
operations and activities (Chang, 2013). These algorithms may be complex and expensive but
their efficiency and speed while working on a certain data set either by performing a search or a
sort operation in a company’s system are considered more so that the business is able to compete
with other businesses.
For instance, a company wants an algorithm to be incorporated into the inventory system they
are developing. The system will be dealing with a lot of information about different products
thus it should be able to manage all that information efficiently. The kind of products the
company is dealing with varies from household products to food products information whereby it
is all required to be entered in the system. So, efficiency is required while working with the
system, timeliness and reliability are also key elements for the system. These are ensured by the
kind of data structure and algorithm coded in the system to assist in performing those tasks. It is
always advisable while developing such kind of system, the stakeholders take into consideration
that the company or business might change or increase in size so that the system isn’t interfered
with as a result of information to be processed increases.
Inventory system key variables and range
Key variable
In a given data set there is a variable which is uniquely defined that is capable of manipulating
other variables and the data. This unique variable is called the Key Variable. It is very important
to have a unique variable while querying process in the database where the query is to be
Document Page
executed on a certain data table. In the inventory system we are developing, there will be
different data tables where every t=data table will be having a unique variable that is the key
variable that will help in querying. Some of these data tables are:
i. Product data table where the data or information about the product will be stored. In
this table, every product must be given a unique identifier which is the key variable
such as product or item id.
ii. Purchase data table-This table will contain information on the company purchases of
different products where product will be having its specific purchase id.
iii. Supplier data table- This table will contain information on the supplier of different
products where product supplier will be having specific supplier id.
Variables
Mostly in programming, a variable is seen as a label or a place holder. Programmers tend to use
variables to make the data more understandable and easier to use. The use of these variables also
makes the work of referencing data to other data easier. While working on these variables, some
information may change thus changing the variable too. Also, in data management the same
happens while using the variables. Every single area has different variables. For instance,
products may have the following variables: type of product, name of the product, cost of the
[product, manufacturer and dates.
Also, purchases their different variables that may be used to label items being bought and sold.
These variables are purchase_id, product_id, quantity, date, order_number, town/city.
Also, every supplier of each product detail will be recorded in the supplier data table whereby a
single supplier may be suppling many and different products. There are variables that are used as
place holders or real products. Some of the variables to represent supplier’s details are name,
phone number, email, address, etc.,
Range
Range classify the extent to which something varies in (Brodfuehrer, Purcell, Wang and Worm,
International Business Machines Corp, 2013). It is an interval in data that is put into
consideration from sample size and that data seem to be having corresponding characteristics.
For our system food items or households’ items have ranges. For the case of household range up
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
to 300 items or products while food items are up to 200. These ranges help in selection of the
most efficient data structure or algorithm to be incorporated in the system being developed.
Inventory operations
Inventory operations involve any process including those ones that ensure the system is very
efficient, timely, reliable while manages the products the system is dealing with in production
process. These operations include:
ABC analysis
In inventory control and management, ABC analysis is required in materials demand and their
distribution. This analysis helps in prioritizing products required more or have a lot of demand;
thus, a larger quantity is produced (Chen, Li, Kilgour and Hipe, 2010). So, if the product is not
required or it doesn’t have a better sale, its production is lowered. For instance, Product B has a
lower priority compared to product A, due to its demand. Product C is being demanded more
than product B but less than product A thus its production will be slightly lower than Product A
production and more than product B production.
Economic order quantity
In every company, economic order quantity is calculated in their inventory in order to reduce the
cost of inventory. EOQ helps to determine the number of items or units to be added to the
company’s inventory. It is reviewed frequently to monitor the inventory level. It also provides a
model to calculate the point at which a reorder is to be made and the maximum quantity to be
reordered to avoid shortage.
There is a formula that defines Economic Order Quantity:
EOQ = √(2(CS)(DR) / (HC)), or the square root of (2 x CS x DR / HC)
Where:
EOQ= Economic Order Quantity
CS = Cost for setups e.g. shipping which is in every order
DR = Demand rate of the quantity annually
HC = Holding costs which is calculated annually for every unit
Document Page
Cross Docking
When t comes to business, a competitive advantage is a key thing where cross-docking is a
strategy that can be implemented for the same to improve the efficiency in delivering the
services and time. So, cross-docking is whereby the products or goods are delivered to the
retailer or the customer directly from the manufacturer or the supplier. This strategy helps to
reduce the time wasted while storing and also the cost.
Inventory Cycle Count
This is a kind of auditing technique which involves inventory counting at specified day with no
intentions of disrupting the daily business.
Reviewing stock
It is a key measure of stock control in the inventory of keeping track of the stock you have. This
ensures that what is in the store is the same quantity that is in the inventory system. Generally, it
reduces the occurrence of errors while carrying out the cycle count.
Safety stock level safety
In every inventory, there is an extra stock level that is always maintained when stock runs out
before the supplier supplies which may be caused by uncertainties in demand and supply. So,
enough stock level ensures the business is always operational as planned and expected. Safety
stock is an extra quantity added in inventory acting like a buffer in cases where demand increases
unexpectedly and the supply if not in a point to deliver
Bulk Shipment
In most cases, bulk shipment is the process of transporting a number of items on bulk or huge.
Some items or goods are either transported in bulk because of the high demand the have or their
size
Algorithm
Sorting algorithm
In sorting algorithm, Quicksort is considered to be very efficient on data sets that are huge where
in our case inventory is dealing with huge data of different products. It is based on data
partitioning where the data is considered as the main array which is partitioned into smaller
Document Page
arrays that are then compared which one is smaller than the other with the help of a pivot value.
It has a complexity of Ο(n2) that is the worst case. n represents the number of items.
Justification
Due to its divide and conquer application, it’s considered the best for this scenario.
quicksort(data array [], x, y)
{
// x is the starting or first index, y is the Ending or last index
if (x < y)
{
//x = partitioning index
X = partition (dataarray, x, y) ;
// Before x
quickSort(dataarray,x, x- 1);
//after x
quickSort(dataarray, x + 1, y);
}
}
Searching algorithm
The searching algorithm helps in checking and retrieving an element from a given data set. This
type of algorithm is categorized into two: interval and sequential search which depended on the
kind of search you want to perform. Examples of sequential search are linear search while for
interval search is binary search.
In this case, the binary search is considered to be the most efficient technique for search. It works
on a sorted data structure. It divides the list into sets and stops when it finds the element that
matches the element being search.
Justification
Binary search implements recursion technique and it spends less time.
tabler-icon-diamond-filled.svg

Paraphrase This Document

Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser
Document Page
Changes to the system
Initially, as the system was being developed, future changes were put into consideration whereby
a company might increase data processing leading to a lot of data to be processed by the system,
or a company might merge with another company (Jacobs and Chase, 2009). When all these are
considered, the system is said to be scalable. For instance, if the system’s merge, the following
will be noted:
Key Variable
When two companies’ systems merge, that in most cases they were working on the same sector
whereby the key variable will not be interfered with.
Variables
Also, variables in both system will remain the same because the products or items they are
working with are the same
Range
Every company had the range of household’s items and food items When they merge the
production will increase because it will sum households’ items for both companies and also food
items for both companies. Therefore, the range will change.
Operations
Document Page
As they merge, operations will be more even if they are the same, so effectiveness and efficiency
will be required. So mare techniques will be included. These techniques will help the system to
be more efficient.
Sorting and searching algorithm
These algorithms will still be in place because they are the most efficient. That is, in case of the
huge data that is now being collected and require proper sorting, quicksort algorithm is capable
of working with huge data (Ilves, Harnefors, Norrga and Nee, 2014)
Conclusion
Data structures and algorithms application on our systems have brought efficiency and
effectiveness in day to day operations, Currently, due to the advancement of the technology,
businesses or companies are able to benefit from a better analysis of data that involves their
activities. This analysis of data may be locally that is from within the systems that the company
or business is using for management and also it can be globally that is from different search
engines and sites from the internet where any search that relates to the company thus help in
decision making of the company. In our case, the inventory system will assist the business in
managing and controlling the data or information that runs within the business. Due to changes
in the future where the company might merge with another and they start producing different
products then some variables are going to change. So provided the items being produced don’t
change while they merge, nothing will be changed because that was already considered during
the design thus the system will remain efficient.
In consideration of this report, if the system is developed without unnecessary errors, the system
will be performing its operations successfully.
Document Page
References
Brodfuehrer, R.J., Purcell, T.P., Wang, M.S. and Worm, K.J., International Business Machines
Corp, 2013. Method and apparatus for generating partitioning keys for a range-partitioned
database. U.S. Patent 8,364,677.
Chang, C.I., 2013. Hyperspectral data processing: algorithm design and analysis. John Wiley &
Sons.
Chen, Y., Li, K.W., Kilgour, D.M. and Hipel, K.W., 2010. A case-based distance model for multiple
criteria ABC analysis. Computers & Operations Research, 35(3), pp.776-796.
Ilves, K., Harnefors, L., Norrga, S. and Nee, H.P., 2014. Predictive sorting algorithm for modular
multilevel converters minimizing the spread in the submodule capacitor voltages. IEEE
Transactions on power electronics, 30(1), pp.440-449.
Jacobs, F.R. and Chase, R.B., 2009. Operations and supply management: The core. New York,
NY: McGraw Hill/Irwin.
chevron_up_icon
1 out of 10
circle_padding
hide_on_mobile
zoom_out_icon
[object Object]