Professional Documents
Culture Documents
Inventory Management System
Inventory Management System
Presented
Supervised By :
Dr Zain Al Balfagih ,
Dr Khulood Rambo
Written By:
Ayesha Fawad,
I
INVENTORY MANAGEMENT SYSTEM
Presented
Supervised By :
Dr Zain Al Balfagih ,
Dr Khulood Rambo
Written By:
Ayesha Fawad,
II
III
Signature Page
Course Instructor
_____________________________________
NAME OF INSTRUCTOR
Committee Member
______________________________________
Committee Member
______________________________________
_____________________________________
IV
V
ABSTRACT
The system will be created to be used by the users and the managers. The
system created to be part of the Hashem company manual inventory system
which makes the system accessible at all times and anywhere simply by using a
web browser and Internet connectivity.
This research project present all the steps that led to the creation of the system
starting from gathering data about different systems that were implemented in
different business applications earlier .then specifying the requirements of the
system and using use case and DFD analysis method that is needed to
accomplish the design and development phase of the system.
I can say that the application was successfully implemented, and the aim of the
project was achieved.
VI
ACKNOWLEDGEMENT
Many people have helped , supported and encouraged me during the stressful
time ,when I was working on the senior project .
I would also like to thank my family for their affection , prayers ,patience and
support. They gave me the comfort and stress which was needed to motivate me
.Their motivation and encouragement gave me the strength to do our best and
finish the project successfully.
Also , I would like to thank my client which I was lucky in this case ,the client
was my father who provided with me all the necessary information and
suggestions needed to complete the project.
19 April 201
VII
1
Table of Contents
Abstract 5
Acknowledgement 6
List of tables 11
List of Figures 12-14
Chapter 1 Introduction 15
1.1 Introduction 16
1.1.1Background of the Company 16
1.1.2 Organization Review 17
1.2 problem Statement 18
1.3 Research Scope 18
1.4 Research objectives 19
1.4.1 General Objectives 19
1.4.2 Specific objectives 19
1.4.3 Learning objectives 20
1.5 Research Methodology 20
1.6 Required Tools 22
1.6.1Microsoft SQL Server 22
1.6.2 Microsoft Visual Studio 22
Features 22
1.6.3 C# 23
Features 23
1.6.4 Microsoft ASP.Net 23
Key Advantages 23
1.7 Gantt Chart 24
1.7.1 Timeline 24
1.7.2 Task identification 25
1.8 Report Outline 29
1.9 Conclusion 29
Chapter 2 Literature Review 30
2.1 Introduction 31
2.1.1 What is Inventory Management System? 31
2.2 Types of inventory management systems 31
2.2.1 Perpetual inventory systems 31
1
2.2.2 Periodic inventory systems 32
2.3 Objectives and Tasks 32
2.4 Components of Inventory Management Systems 32
2.4.1 Barcode reader (barcode scanner) 32
2.4.2 Radio frequency identification (RFID) 33
2.4.3 Order management 33
2.4.4 Asser tracking 33
2.4.5 Service management 33
2.4.6 Product identification 34
2.5 Principles of inventory management systems 34
2.5.1 Demand forecasting 34
2.5.2 Warehouse flow 34
2.5.3 Inventory Turns /Stock Rotation 35
2.5.4 Cycle Counting 35
2.5.5 Process auditing 35
2.6 Advantages of inventory management system 36
2.6.1 Cost savings 36
2.6.2 Increased efficiency 36
2.6.3 Warehouse organization 36
2.6.4 Updated data 36
2.6.5 Data Security 37
2.6.6 Insight into trends 37
2.7 Disadvantages of Inventory Management Systems 37
2.7.1 Cost 37
2.7.2 Complexity 38
2.7.3 Risk of fraud 38
2.7.4 Accuracy Issues 38
2.8 Similar systems 39
2.8.1 Vendor management systems 39
2.8.2 Traker systems 39
2.8.3 Warehouse management systems 40
2.8.4 Supply Chain management systems 41
2.8.5 ERP systems 42
2.8.6 Operations management systems 44
2.9 Software tools 45
2
2.9.1 Inflow inventory software 45
2.9.2 Pro Active Inventory Manager by Accuware 47
2.9.3 Pos Maid Software 47
2.9.4 ABC inventory software 48
2.9.5 BS1 Enterprise Accounting Free Edition 49
2.9.6 Chronos e Stock Card Inventory Software 50
Conclusion 51
Chapter 3. System Analysis 52
3.1 Introduction 53
3.1.1 Resource allocation 53
3.2 The client’s current system 53
3.3 Information Collection 54
3.4 User requirements 55
3.4.1 System requirements 56
3.4.2 Non-functional requirements 56
3.5 System activities 58
3.5.1 Use cases 59
3.5.2 Use cases description 62
3.5.3 Data Flow Diagram 65
3.5.4 Functional Decomposition Diagram 66
Conclusion 66
Chapter 4.0 System design 67
4.1 Introduction 68
4.1.1ER 68
4.2 ER Diagram 69
4.3 Data Dictionary 71
4.4 Physical database 75
4.5 System environment 75
4.5.1 Hardware specifications 75
4.5.2 Software specifications 76
4.6 Sitemap 77
4.7 Prototypes 77
4.7.1 Login page 77
4.7.2 Inventory manager dashboard 77
4.7.3 Supplier information page 78
3
4.7.4 Message page 78
4.7.5 Inventory information page 79
4.7.6 Product information page 80
4.7.7 Order information page 81
4.7.8 Admin manager dashboard 82
4.8 Conclusion 82
Chapter 5. System Implementation 83
5.1 Introduction 84
5.2 Review of the changes in requirements 84
5.2.1 Development of the project 85
5.2.2 Tools selection 85
5.3 Creating the database and the tables 86
5.3.1 Tables 86
5.3.2 Implementation issues 86
5.4 Creation of Master page 87
5.4.1 Creating the Pages and the Contents 87
5.5 Database connection 87
5.6 Creation of User interfaces 88
5.7 Screenshots of the interface of the application 102
5.8 Testing 102
5.8.1 Testing Methodology 102
5.8.2 Mapping use cases to system requirements 104
5.8.3 Mapping Scenarios to Use Case 104
5.8.4 Mapping Scenarios to Test Cases 105
Chapter 6.0 Conclusion 107
6.1 Introduction 108
6.2 Check objectives 109
6.3 Requirements that were not met 109
6.4 Challenges and Difficulties faced 110
6.5 Future works 110
6.6 Recommendations 111
6.6.1 Application Recommendation 111
6.6.2 Course Recommendation 111
7.0 References 113
Appendix 116
4
LIST OF TABLES
5
LIST OF FIGURES
6
Figure 26 Manager’s use cases 63
Figure 27 Inventory manager use case 64
Figure 28 Data flow diagram 67
Figure 29 Functional Decomposition Diagram 68
Figure 30 Entity Relationship Diagram 70
Figure 31 Products Table 75
Figure 32 Orders Table 76
Figure 33 inventory table 76
Figure 34 supplier table 77
Figure 35 materials table 77
Figure 36 Staff table 78
Figure 37 Site Map 79
Figure 38 System login page 80
Figure 39 System Dashboard 80
Figure 40 Supplier information page 81
Figure 41 Message page for inventory manager 81
Figure 42 inventory information page 82
Figure 43 product information page 83
Figure 44 order information page 84
Figure 45 Admin manager dashboard 85
Figure 46 Updated ERD 87
Figure 47 Visual studio 2012 with SQL Server 2008 connection 90
Figure 48 Screenshot of part of the database connection 91
Figure 49 Login page 91
Figure 50 Master page / Dashboard of the system 92
Figure 51 Screenshot of the code of the Master page 92
7
Figure 52 First web page of the application 93
Figure 53 About us page 93
Figure 54 mission page of the company 94
Figure 55 what we offer page 94
Figure 56 value addition page 95
Figure 57 corporate responsibilities page 96
Figure 58 contact us page 96
Figure 59 product page 97
Figure 60 supplier information page 98
Figure 61 orders page 99
Figure 62 orders page 100
Figure 63 Staff page 101
Figure 64 Messages page for the inventory manager 101
Figure 65 Admin manager dashboard 102
Figure 66 send messages page 103
Figure 67 view information page 104
Figure 68 product evaluation of vendor’s page 104
8
INTRODUCTION
9
Chapter 1. INTRODUCTION
1 INTRODUCTION
10
collaboration with other partners and in the implementation stage through
contracting and finance.
Civil works
• Structural works
• Architectural works
• Mechanical work
HVAC
• Plumbing works
• Electrical works
• Special works
Subcontracting
• Fire Fighting
• Landscaping
• Specialized works
• Skylight
11
1.2 Problem Statement:
The process of manually looking for the inventory available in stock is really
time consuming and cumbersome that includes the person responsible to see
how many materials are in the inventory , how many materials have been
ordered and received and keep the record of the time that will take for the
suppliers to process orders and other various tasks included in inventory .
The project will implement a database for inventory management which will
include the vendor analysis performance of the products and calculate the cost
of materials at the end of the project .Online inventory management system will
provide all the information needed and required for inventory related in
understanding in easy way and that will reduce the time taken for the inventory
manager to record all the products that are in inventory which takes too much
time. This will help the inventory manager to list out all the details using the
system or search all the inventory information.
12
The research covers the planning, analyzing and designing phases of the system.
A prototype is also created to describe how to use the system. Implementation
and testing is also included in this research.
This section illustrates the three types of objectives general, specific and the
learning objectives that are required in order to complete this project.
The following points are considered the general objective of the research
Conduct and research the real life workflow and be able to understand
and identify real life and business problems.
To propose a solution to the problems identified.
Analyze and design a solution that fulfills the client’s needs .
After doing the literature review and conducting the research about the system,
there are some expected deliverables on these following topics:
13
Understand what the task management system are , how they work ,and
their importance in today’s business world.
Identify the data, processes and knowledge involved in the problem.
Prepare system requirements analysis.
Learn how to design and implement a system into real life workflow.
This section identifies the steps that were followed to achieve the goal of this
research. The methodology that I have chosen and intend to use for this project
is the Systems development life cycle .This methodology is chosen because it
has all the steps that will be followed that must be performed for the
development of a successful and better system .This project based on the SDLC
methodology will reduce errors and produce better results at the end of the
project. The system development life cycle (SDLC) categorizes the
development of any system into the following: planning, analysis, design,
implementation and testing. This is the division that will be followed throughout
this project as Figure1 shows the five main stages in an SDLC.
Figure1 SDLC
Project planning , feasibility study: In this phase the team establishes a high
level view of the project and specify its goals.
14
environment to identify possible environment .There are further sub steps in the
analysis phase and they are :
System Design:
System Implementation
This phase includes the coding and the implementing the system for the use of
the client.
System Testing
The team will test the system and checks for error, bugs and interoperability.
15
Maintenance:
What happens through system entire life , the changes ,correction, addition,
move to a different computing platform or say migration and porting and more.
This is the least valuable perhaps the most important stage at all.
This section provides a brief description of the major software tools to be used
in developing the application. This includes Microsoft SQL Server, Microsoft
Visual studio and c#.
Microsoft SQL Server is a relational database management system that uses the
structured query language SQL to access and manipulate the stored data
developed by Microsoft. It is software product whose primary function is to
store and retrieve data as requested by software applications. Its scope includes
data query and data update , schema creation and modification and data access
control. In SQL server , the RDMS is integrated within the visual studio IDE to
simplify data access from windows applications.
It can install the database in separate server with the same data and it can install
it with the same server .The servers must be in the same network. Their version
of the SQL based on the applications and the size of the business.
Features:
Visual studio can edit the code easily by the code editor. Also it has two levels ,
which are machine level and source level debugger. For the designing, it has
many designers like Windows Form Designer, WPF designer and Web
designer. Additionally visual studio supports other products.
16
1.6.3 C#
Features
1.6.4 ASP.NET
17
ASP.NET has built-in authentication and authorization tools that
provide a developer with the ability to create highly secured
applications.
Support of Mode-View-Controller concept.
1.7.1 Timeline:
18
1.7.2 Task identification:
The tasks that were carried out during each phase are then illustrated in the
diagram above.
And
The tasks that were carried out in each of the phases of system development life
cycle are identified and explained as below:
The first stage in the system development life cycle is Planning and following
were the tasks that were carried out in the Planning phase are as follows:
Planning Phase:
19
Specify some user requirements for the different users which will later be
explained in the system analysis phase of the system development life
cycle.
System Analysis:
The second stage was the System analysis and following were the tasks that
were carried out during this phase of the system development life cycle and are
as follows:
The process models that were created in the analysis phase are explained
as below :
Use cases Diagrams : These diagrams were developed on the basis of the
system functional requirements and the description of the use cases were
also provided with the function of the actor with the use case and what
the system will interact with the user and the function of the system in
response to that particular use case.
Data flow Diagram : This diagram was developed to show how the data is
linked in between the different users of the system and what are the data
sources if any from where the data will be needed for the databases.
Functional Decomposition Diagram: This diagram was developed in
order to establish the link between the different users and their common
functionalities.
20
System Design Phase:
There were some tasks that were carried out in the system design phase that are
explained as below:
Implementation phase:
The last phase of the system development life cycle is the implementation
and testing phase and following are the tasks that were carried out during this
phase and are described as follows:
21
Development of the project : How the project will actually progress
further .This listed out some of the tasks to be carried out in the
implementation phase .
Selection of tools : The tools and softwares specifications and the
hardware specification that were used in developing the application was
then displayed .
Screenshots of the application and the screenshots of each of the web
page that was created was also included as part of this phase.
Testing phase:
The tasks that was carried out in the final stage of the system development life
cycle is explained as below:
Three different types of testing methodology that was used for implementing
the application and are as follows:
Unit testing: after coding in the implementation phase, a unit test was
performed upon on the code.
User acceptance testing: was performed by the client to check that the
application meet the requirements.
System Integration Testing: making sure that all different webpages of
the application is well able to communicate with each other.
Following were the different tables that were included in this phase which are as
follows:
Mapping system requirements to use cases :Use cases were then mapped
to the system requirements (functional requirements).
Mapping scenarios to use cases: Some scenarios were provided and these
were then mapped to the use cases.
Test scenarios and test cases: Test scenarios were provided and some test
cases were provided with the result of applying the test cases.
22
1.8 Report Outline:
Chapter five: provide details about the implementation and the testing phase.
Chapter six: provides the limitations, challenges faced and the conclusion.
1.9 Conclusion
This chapter clarified an identification of current problem and states the possible
solution for this. In addition and exemplification of research methodology,
research scope, objectives of the research and the software tools that will be
used to develop the application are included.
23
LITERATURE REVIEW
24
CHAPTER 2 LITERATURE REVIEW
2.1 Introduction
In the previous chapter 1 discussed earlier the main objective of the senior
project is to implement an inventory management system for reducing the errors
and workload of employees in the Hashem Construction and Trading Co .This
chapter will be cover the content that will include the different types of
inventory management systems , similar systems how is it used , different soft
wares used for the inventory management etc.
This is a computer based system for tracking inventory levels, sales , orders and
deliveries. Companies use this system to avoid the overflowing of products and
prevent product outage .This tool is used for organizing inventory data that was
previously stored in excel sheet manually which was really cumbersome process
and time consuming. This tool can be associated which is similar to distribution
software, as distributors that can compete with less cash tied up in inventories
have a distinct advantage over their competitors.
There are two main types of inventory system which can then be classified in
two categories namely:
25
2.2.2 Periodic inventory systems:
The Inventory Software is the base with components like Barcode or RFID
scanner, Barcode or RFID label printer. There is Retail Inventory System,
stockroom inventory, warehouse Inventory System, and fixed asset inventory.
For the most efficient Inventory System should be integrated with the rest of
your operations like sales, shipping and receiving, accounting, and billing. You
still can isolate the inventory tracking if that is critical to your operation.
26
Additionally, nearly all barcode readers contain decoder circuitry analyzing the
barcode's image data provided by the sensor and sending the barcode's content
to the scanner's output port.
Companies that are primarily service oriented other than product oriented uses
the inventory management software to calculate the cost of materials that is
used to provide services such as cleaning supplies.
27
2.4.6 Product identification
Barcodes are the often used means to whereby the data on the products and the
orders is inputted in the inventory management software. A barcode reader is
used to read barcodes and look up information on the products they represent.
Radio-frequency identification (RFID) tags and wireless methods of product
identification are also becoming more popular.
Demand forecasting
Warehouse flow
Inventory turns/stock rotation
Cycle counting and
Process auditing
2.5.1 Demand forecasting: This depends on the industry, inventory ranks in the
top five business costs. Accurate demand forecasting has the highest potential
savings for any of the principles of inventory management. Both over supply
and under supply of inventory can have critical business costs. Whether it is
end-item stocking or raw component sourcing, the more accurate the forecast
can be.
2.5.2 Warehouse flow: the old concept of the warehouse being dirty and in
unorganized form is outdated and costly. Lean concepts including the S5 have
28
found way in warehouse. Sorting , setting order, systematic leaning and
ensuring discipline makes sure that money is worth spent in all these processes.
The principles of any inventory management are not different form other
system. Each process from housekeeping to inventory transactions requires a
proper, formal standardized process to ensure correct results.
Defining the success level for stock rotation is critical to analyzing your demand
forecasting and warehouse flow.
2.5.4Cycle counting
Proactive source error identification starts with process auditing .One of the
most important principles of inventory management is to process auditing which
should be done often .Process auditing should take place at every transactional
steps from receiving and to shipping inventory including all the inventory
transactions that takes place in between the processes.
29
2.6 Advantages of inventory management system
The some of the advantages of inventory system are thus summarized below
which can prevent the organization /firm from suffering from big financial loss
and other problems that may occur during the daily operations of the firm that
can be viewed as the materials being out of stock or machine failures and many
other operations happening on daily basis.
2.6.1 Cost savings: In many cases companies inventory is one of the largest
investments along with its workforce and locations. inventory management
systems helps the companies to cut the expenses by minimizing the amount of
unnecessary products and materials in storage.it also helps companies keep lost
sales to a minimum by having enough stock to meet demand .
2.6.2 Increased efficiency: the inventory management system allows for may
automated inventory task for example the system can automatically collect data
, calculate costs .this also reduces in costs saving and time saving and thus
consequently leading to increase in business efficiency.
2.6.4 Updated data: provides up to date and real time data on inventory levels
is and advantage of inventory management system. Company executives can
usually access the software through their mobile devices , laptop for checking
30
current inventory numbers this automatic updating of inventory allows the
business to make informed decisions.
2.6.6 Insight into trends this helps tracking the products which are in stock
and from which suppliers do they come from and the length of the time they are
stored is made possible with inventory management system by analyzing this
data the company can optimize their inventory levels and maximize the use of
warehouse space. Additionally firms are more prepared for the demands and
supplies of the market, especially during special circumstances such as a peak
season on a particular month.
The disadvantages of using the inventory management systems where there are
pro’s to suing a particular system will be automatically followed by some of the
drawbacks or the cons of using the system .
2.7.1 Cost
31
inventory-management tasks is tempered by the cost of additional barcode
readers.
2.7.2 Complexity:
Any computerized system carries the risk of intrusion, and with a computerized
inventory management system comes the risk of fraud as well. A dishonest
vendor could hack the system to receive payment for products never delivered,
or a dishonest employee could redirect checks to themselves.
A computerized system alone does not ensure accuracy, and the inventory data
is only as good as the data entry that created it. Companies that plan to use a
computerized inventory management system need to have a system in place to
validate their data and check the numbers reported by the system. A select
hand count or targeted audit may be necessary to ensure the integrity of the
system.
32
2.8 Similar systems
A comparative study
This system is a new trend for inventory management system. With this system
the distributors can control inventory management for customers .The reports
are calculated on daily basis and are transferred from the customer to the
vendor. The data gathered from these reports lets the vendor knows when to
recalculate the stock of the customers merchandise. This method significantly
reduces the load of paper work /the cost and the labor .There are few drawbacks
of using this method which is this will be difficult for the distributor/suppliers to
keep up with demand of the product that is popular and is demanded by the
customers from all around the world. Companies believe that the money saved
in time and labor is worth the risks involved.
33
2.8.3Warehouse management systems:
Warehouse management system used previously could only store the data of
stock locations .the current systems are so complex and data intensive that they
require a dedicated staff to operate the system. High end system may include
routing and tracking technologies such as RFID and voice recognition.
It does not matter how complex the system but the goal remains the same that to
provide the management for information that it needs to move efficiently and
control the movement of the materials within warehouse.
34
Figure 7 : Warehouse Management Functionality
The organizations that make up the supply chain are “linked” together through
physical flows and the information flows. Physical flows involve the
transformation, movement, and storage of goods and materials. They are the
most visible component of the supply chain. But is equally important as the
information flows. Information flows allow the various supply chain partners to
coordinate their long-term plans, and to control the day-to-day flow of goods
and material up and down the supply chain.
35
Figure 8 : Supply Chain Management
36
Inventory management.
Shipping and payment
ERP provides an integrated real-time view of core business processes, using
common databases maintained by a database management system. ERP systems
track business resources including cash, raw materials, production capacity and
the status of business commitments: orders, purchase orders, and payroll. The
applications that make up the system share data across the various departments
(manufacturing, purchasing, sales, accounting, etc.) that entered the data. ERP
facilitates information flow between all business functions, and manages
connections to outside stakeholders.
37
Figure 11 : ERP system
38
Figure 13 : Operations and Information Management System
Inflow software helps to organize and inventory system to track and control the
stock with the help of executive dashboard helps to generate nice reports as the
end result.
39
Figure 15 : in flow software
40
Figure 16 : In flow Inventory Software
Pos Maid is free software for inventory management and control which is very
helpful in merchandise retail sale like in provision store, super market store,
electronics goods store etc. POS stands for Point of Sale. This program has
many good features like you can easily fill in your inventory and has complete
control over it; customer and employee management, financial report
generation, account management, low stock alerts etc. This software is
recommended for small business stores.
41
Figure 17 : POS Maid Inventory Software
42
Figure 19: ABC Inventory Software
43
Figure 20 :BSI Accounting Free edition software
44
Figure 21 : e Stock Card Inventory Software
Conclusion
This report clearly shows the introduction to the system with a detailed
description of the advantages and disadvantages of the system and also presents
a detailed comparative study of the similar systems and the similar softwares
that are used to develop inventory management system applications in business
settings.
45
SYSTEM ANALYSIS
46
Chapter 3 Analysis phase
3.1 Introduction
The primary goal of the system analysis to improve and enhance the efficiency
of the current system .Therefore it is very important to study the specifications
and the requirements of the system.
The objective of the chapter is to focus on the analysis phase of the system by
providing a detailed description of the system activities which includes the
functional and nonfunctional requirements .It will include a Use Case Diagram
that defines the functional requirements of the system as well as a Data Flow
Diagram that describes the flow of t the actors and the different processes
involved. In short,this chapter focuses on the analysis phase of the system
development life cycle .
People:
The current system at the company is being operated manually using Excel
Spreadsheets as a database for collecting information ,which has many
drawbacks and limitations such as lack of centralized information and updating
of data takes time .At this time the company does not have an independent
system that satisfies their requirements and can better deliver the process from
the shipment order is placed till the time the order is received .The processes
involved in the current system are then described below:
47
When we receive the Purchase Order we prepare a bunch of document:
Starting with filling a Work Order Form which contains all the information
regarding the Customer and Project attached with material list to be delivered,
Copy of Purchase Order, and Copy of Quotation.
Take the signature of procurement Manager and Finance Manager to process the
delivery.
Submit it to Stock & Doc. Controller, who enter all these information in Oracle
System which allows our Yard team to see booked Work Order in the system.
Based on the Work Order booked in system the Yard Team issue a Delivery
Ticket and arrange the delivery to the customer. After receiving the Customer
signed Delivery Ticket it has been forwarded to Finance Department to attach
this Delivery Ticket to the Invoice.
The collected data is not organized which means the data is scattered in soft and
hard copy files or emails between the employees which means updated
information about the inventory system us not always delivered at the
appropriate time when needed between the employees and the other vendors.
Sources
Structured interviews
Unstructured interviews
The success of the system depends mainly on identifying and understanding the
client’s needs in system and addressing the right way of delivering information.
48
In this phase , it is important to obtain the requirements from the client and
understand their needs of the system .Consequently, meeting and questionnaires
was conducted with client in order to understand the complete processes and
activities they would like to be included in the system. Users of the system were
identified through this phase as well and how each user is involved with the
system was recognized and understood. All the provided information from the
client was important and more helpful that was required to move on the next
step of analysis phase ,which is stating the system requirements.
2. Admin should
3.Admin –managers
49
System Requirements
System:
1. The system should display a login screen where users can access the
system by entering their username and password .
2. The system should store information about the customers, products,
suppliers, orders , delivery order .All the users should have a profile
page. The page shall include all the necessary information about them.
3. The system shall keep track of all processes and changes happening to the
data between login and logout times of the users.
4. The system should provide authentication to the users by verifying the
user name and password before accessing the system.
5. The system should inform the inventory manager about the low levels of
inventory and send alerts to the user when the inventory levels is low.
6. The system shall allow the new users to be added or delete the users .
7. The system shall provide a feedback/evaluation of the products from the
vendor.
8. The system should be able to calculate the cost of materials that will be
used for different stages of the project.
9. The system shall be able to update the inventory data including the order
data, supplier data, customer data etc.
10.The system should enable the users to logout after using the system when
the user clicks on the logout button.
Usability
The system should be available by all the authorized users from all the
respective departments .In order to accomplish this objective the system should
have a simple and well-designed interface that provides and easy navigation
through the webpages.
50
Accessibility
The system should be made accessible to the people outside the company as
well which mean the system should be made globally accessible that everyone
can use and anyone can use the system regardless of the location and can get the
information they acquire .
Performance
Speed
The system response time is a significant requirement because the action cannot
be postponed or delayed. The system should be fast enough to satisfy the
user’s needs and should not waste their time.
Security
The data and information about customers is the main asset in the company;
therefore the system must be highly secured from external threats and
unauthorized users. In order to access the system users should login with
authorized user name and password to ensure authentication.
Availability :
Data currency:
The system should have real time updates , delays are not acceptable.
Data retention:
The system should be able to store only the useful data , and data that will used
later on.
51
Accuracy
The new system should try to reduce errors that are in the existing system .The
accurate system will improve and ease all the processes from searching to
updating customer information to generating inventory reports and many other
services. Consequently this will lead to improved customer satisfaction.
Friendly GUI’s
The users of this system have different types of roles in the company and
different levels of technical skills, therefore the system should be accessible by
all the users. Consequently, the system should provide an easy to use , friendly
Graphical User Interface (GUI).
Maintability
The system should be maintained in order to perform the best of its ability.
The system should be flexible enough to allow improvements for the future and
should be able to adapt any additional future change in activities; the system
components can be modified for more changes and features allow the addition
of new features without disturbing the main functionalities of the system.
Disaster recovery:
The system should be able to recover from an unsuitable problem .and should
back up data.
Error handling:
The system should be able to handle unexpected errors quickly and easily.
52
are used to describe the sequence of events and interactions between the actor
and the system.
Admin
Admin-managers
Users
2.All users :
53
All users in inventory management system can :
54
Figure 26 Manager’s use cases
Admin-managers can
55
Figure 27 inventory manager use cases
Checks inventory.
Add product detail with prices.
Updates inventory status.
Send alerts.
Create, edit supplier data.
Create, edit product data.
Create, edit order data.
The following section will mention a description of the sequence of events and
interaction between the system and actor of some of the essential use cases:
56
1-Use case : Edit the supplier’s information
3.SM enters the username and 4.System verifies the username and
password password then opens the main
system menu
Goal: the inventory manager wishes to send alerts about the inventory status
57
Actor: Inventory manager Inventory system
1- IM login the system 2-System displays the login page
Goal : The Inventory Manger wishes to add the product details with their prices
58
3.5.3 Data Flow Diagram (DFD)
1. users
2. Inventory manager
3. Admin –manager
59
3.5.4 Functional Decomposition Diagram
3.6 Conclusion
This chapter provided with the use cases and the use case description for the use
cases and also data flow diagram with the functional decomposition diagram is
also included in this chapter .
60
SYSTEM DESIGN
61
Chapter 4 System Design
4.1 Introduction
This system will include the system design, which includes the entity
relationship diagram (ERD), the data dictionary of the system and the system
interface
The objective of this chapter is to provide and insight in the user interface that
shows how the system will actually look like and the different pages include in
the system.
4.1.1 ER Diagram
62
4.2 Data Dictionary
He data dictionary includes the database fields and relationships , as well as the
types of data .This helps in creating the database of the system and to
understand how data is related to each other in the system database
Inventory Table
Product Table
63
Material Table
Order Table
64
Supplier Table
Staff Table
65
4.3 Physical Database:
As shown in the tables below , physical database has been created ; each table
has the needed attributes and the foreign keys and the primary keys for each
table is clearly shown.
Products Table:
This is the first table which is the : Products Table .It can be clearly seen the
primary key for the table is “product id” and the attributes assigned for each row
when it comes to data entry .The table has foreign key which are related to the
material, supplier and inventory table below which are “material id”, “supplier
_id” and “inventory_ id “.
Orders Table:
Orders Table is the second table ,it contains few attributes related to order .the
primary key is of course order id and the table contains three foreign keys that is
connected to the supplier table,product table and the material table namely as
“supplier id”,”product_id” and “material_id”.
66
Figure 32 Orders Table
Inventory Table :
Inventory Table is the third table ,it contains all the related information to the
inventory .the primary key is “inventory id” and the table also contains three
foreign keys which is related to the products and the materials table namely as
“product id” and “material id” and “order_ id”.
Supplier Table:
This is the fourth table .The primary key is of course “Supplier id” and the table
has three foreign keys which are related to the material , product and order
tables namely as “material id”, “product id”, and “order id”.
67
Figure 34 :Supplier Table
Materials Table :
This is the fifth table and the primary key for the Materials table is of course
“material id” .The table has three foreign keys which are related to Supplier
table, inventory table and product table namely as “supplier id” , “inventory id”
and “product id “.
Staff Table:
This is the sixth table and it shows all the attributes for the staff. The primary
key for the table is of course “Staff id” and the table has one foreign key that is
“inventory _id”.
68
Figure 36 Staff table
RAM 4 MB
69
4.5 Site Map
Figure 37 SiteMap
This section presents and initial storyboard for the proposed system .Each page
was designed to provide the functions of the system. The first iteration is based
on the website structure layout .
70
4.6 Prototypes
The first page of the system is the login page where the users will enter their
username and password in order to access the system. The page includes the
client logo and provides a link to retrieve the password in case of forgetting it.
71
Figure 39 System Dashboard This is the dashboard for inventory manager .
This page shows the supplier information and vendor product evaluation and the
order history as the sub pages
72
Figure 41 Message page for inventory manager
The inventory manager can send messages and update inventory status and send
alerts when inventory levels in stock is low
The page displays the inventory information which the inventory manager can
then choose to either add/delete the inventory .
73
4.6.6 product information page
The inventory manager can add products with the details like the price of the
product and can also chose to remove the products and can also update the
product categories .
74
4.6.7 order information page
The inventory manager can then choose to add /remove orders and also update
orders and orders list.
75
4.6.8 Admin manager dashboard
The admin manager can then choose to search for information or view
information.
4.7 Conclusion
This chapter provides detailed description about the different tables to be used
in the database and the sitemap for the interface of the applications that provides
generalized view of the whole interface and also provides with the detailed
description of prototypes for the interface.
76
Implementation and Testing
77
Chapter 5 Implementation and Testing
5.1 Introduction
This chapter provides all the detailed information regarding the both
implementation and testing phases of the system. For the implementation there
are four parts ,the first one is reviewing the requirements from senior 1 and the
tools, the second part is the details of the creation if database, the third part is
the details of the creation of the interfaces, and the last part is about the database
connection, it will also include some parts of code explanations and user
interfaces .
The database was updated , some tables were removed which were not
needed
The ERD was updated
The interfaces was slightly changed
The inventory manger can send messages
The admin manager can also send messages
78
Some of the requirements were not accomplished , therefore these will be listed
in chapter 6.
Objectives:
Some of the new concepts, required features ,and the application development
area in general are new experience for me ,in order to develop this project
successfully ; I alone have conducted literature review in senior 1 and research
about inventory management and the most used software tools . And in senior 2,
I also have read and look at tutorials on some of the features like how to
develop the application and connecting database with the interface or vice versa
I had evaluated the tools and have chosen the most suitable tool that supports
the applications requirements
79
Processor Dual Pentium 4 /1.6 GHz
RAM 4 MB
5.3.1 Tables:
The database was created in SQL server 2008 and also in visual studio which
was connected with SQL server 2008 and was named as database. The tables
were created by the design view in the SQL server and were executed there .The
application needs products, Orders, Inventory, Supplier, materials and Staff
tables.
Some of the challenges that I faced while creating the tables before in the same
application file in visual studio but then it was recommended that it is better to
use SQL server for database creation ,one of the first problems was
downloading the tool itself I downloaded the 2008 version which was not
compatible with visual studio 2010 and installation of the tool took time
because of slow internet connection and some errors in installation process this
tool was installed and uninstalled several times till the tool was completely
installed successfully without any errors. Secondly it was not the first time
using the tool as I already used this tool for my internship project /work , I
created a database and for that there needs to be connection which took time
because of some errors it was successfully completed after so much of trials. I
created the database and then added the tables and named as database and
inserted some data into the tables creating relationship between the tables was
so much confusing the foreign keys and the primary keys which I had created in
visual studio 2012 application then I recreated database in SQL server 2008
and connected with visual studio 2010.
80
Figure 47 visual studio with SQL server 2008 connection
The creation of the user interface starts with the creating the master page ,then
creating the other pages and creating the contents in these pages .The master
page is to be linked with the rest of the content pages
As the database is in the SQL server and we need to read the data from the
server to the webpages , and also store new added data to the database, we need
to connect the database to the application. So in the server name I typed the
name of the server and connect to be created Database which is Inventory
Management System. This is the code that connects the application with the
database. Below is the code that connects the application with the database.
Some of the items such as the inventory and Dashboard ,test boxes need to read
the data from the database ,so I had added the Grid View and the SQL Data
Source and was emphasized by me that the queries will return the required data
in each item.
81
Figure 48 screenshot of the part of the database connection with one of the
webpage
Main page:
Figure 49 Login page The user can then type in username and password and
then granted access to the system for use .this is the page that links to the
dashboard of the system.
82
Dashboard for inventory manager:
This dashboard has three pages that is the admin manager portfolio and the
inventory manager portfolio and all of these pages link to the web pages namely
by clicking on the login page and the other IMS page that is where users can
learn more about the application.
83
The above code shows the part of the master page and the connection with the
sql server with the website and the webpages .
Introduction page :
Figure 52 The first page of the application that is the homepage which is a brief
description about the company .this page displays the introdcution of the
company giving few details about the company .
About us page:
Figure 53 The About us page which contains five hyperlinks which are linked
to each webpage of it’s name like the mission page is linked to the misssion and
84
so on.
Figure 54 The mission page of the company which is created from hyperlink
the page with the page of the name .The page displays the mission of the
company and is listed in bullet form.
Figure 55 What we offer page.This page displays what we offer including the
goals of the company.
85
Value addition page:
This is the page that displays information about the value addition of the
company.
86
Corporate Responsibilities page:
This is the page that has six hyperlinks and each hyperlinks points out to the
associate links respectively as the user clicks on each link.
Contact us page:
87
This page displays information about the contact details including the telephone
,fax and email address of the company.
Product page:
This page displays information about the product and requires the user to input
some basic information about the product .
88
Supplier information page
The page displays information about supplier and has options of edit ,delete
and insert information .
89
Figure 61 Orders page
This page displays the vendor details incluidng name ,contact and details . The
page also includes add new item by vendor address and remove item by filling
the details.
90
Orders page:
This is the same page as the above page but the page displays the product order
details where the users can choose to either delete,edit and insert the
information.
91
Staff page
This page displays information about the staff page where users can edit, delete
and insert information by filling in the required fields as shown.
Messages page:
92
The inventory manager can send messages by writing the messages in the text
box and can also chose to send alerts and update inventory status as part of the
usability options by the inventory manager.
This is the dashboard for the admin manager where the manager can send
message and view information about the different categories .
93
Send messages page:
The admin manager sends message to the inventory manager about the
inventory status and update the inventory manager when the inventory level is
low and needs to be replenished.
94
View information page:
The page displays the table where user can view inventory details including
inventory id , inventory name etc.
95
This page displays the product evaluation of vendor’s where vendor can
evaluate the product by filling in details like vendor ,vendor product code and
other details of vendor etc.
5.7 Testing
Different types of testing have been applied on the application which are as
follows:
1. Unit testing : after coding in the implementation phase ,I will start a unit
testing for the code .Internet Explorer, Mozilla Firefox, Google Chrome were
the platforms in which the code was tested .
2. System integration testing : making sure that all different parts of the
application is able to communicate with each other.
The table below map the use cases that were done with system requirements, to
check if the requirements are fulfilled
96
Delete, Create,edit create,edi create,edi
Req Create, edit Create,edit create,edit
View View and and delet t and t and
Login product and delete and delete send messages
dashboard information modify inventory delete delete
Use Case data staff data supplier data update inventory statussend inventory alerts
DB data order material
Login(emp/u
ser)
Login(mana
ger)
Delete,add
and modify
DB
View
information
(admin)
View
information(
emp /user)
View
dashboard
(manager)
Createdit
and delete
product
data
Create,edit
and delete
inventory
data
Create,edit
and delete
staff data
Create, edit
and delete
order data
Create, edit
and delete
material
data
create,edit
and delte
supplier
data
send
messages
updates
inventory
status
send alerts
97
Table 15 Mapping use cases to system requirements
The table below provides the use vases and gave some scenarios , and what is
expected from the system to behave if this scenario occurred
98
5.8.4 Test Scenarios and Test cases
99
create,edit and The manager selects The manager The manager success
delete staff data staff data can create,edit can create,edit
and delete staff and delete staff
data data
create,edit and The manager selects The manager The manager success
delete order order data can create,edit can create,edit
data and delete and delete
order data order data
create,edit and The manager selects The manager The manager success
delete material material data can create,edit can create,edit
data and delete and delete
material data material data
create,edit and The manager selects The manager The manager success
delete suplier supplier data can create,edit can create,edit
data and delte and delte
supplier data supplier data
send The emplloyee will The message The message success
messages(emp) send messages to the will be sent by will be sent by
manager the manager the manager
update The manger will The system The system did failed
inventory update inventory displays the not display the
status(manager) status updated updated
inventory inventory
status status
send alerts The manager will send The system will The system will failed
(manager) alerts to the system display the not display the
alerts alerts
view The manager will view The system The system success
information information displays the displays the
data of the data of the
selected selected
category category
Table 17 Test scenarios and test cases
The table above is the same as before it provides the use cases and gave some
scenarios , and what is expected from the system to behave if the scenario
occurred ,and what is the result after testing the scenar
100
CONCLUSION
101
Chapter 6
6.1 Conclusion
This part of the research paper (senior 2) consists of seven chapters. Chapter
one present’s the project’s scope ,problem statement and the project objectives
is also included in this chapter. Chapter two ,a review of many similar online
inventory systems that have been implemented in different companies and
some of the advantages and disadvantages of using the system and review of
similar soft wares is also included in this chapter .In the third chapter ,the
gathered requirements were analyzed and presented in a way that assists in
designing the required application and also Functional Decomposition Diagram
,DFD and use cases of the system is included .In the fourth chapter this presents
the logical database and the physical database and the ER diagram showing the
attributes and the relationships between the entities carrying the attributes and
the design of the system is illustrated. This includes the initial site map ,and the
storyboard(prototypes) of the system’s interfaces .Finally chapter 5 concludes
the first phase of the research and chapter 6 will include the conclusion with the
with the difficulties faced and Chapter 7 includes the references .
102
6.2 Check Objectives
Objective Complete:
Look at the available tools in market
based on the project requirements
Select the suitable tools for developing
the Inventory Management system
Develop the application
Create the physical database
Create the application interface and
contents
Integrate the application with the
database
Test the features of the application
within each development
Table 18 Check objectives
1. Due to the shortage of time as part of the dashboard for the inventory
manager displaying product details in charts could not be created
2. I could not create an option for calculation of cost of materials at the end
of the project as part of the dashboard for the inventory manager.
3. I also could not create a dashboard for the employee as was stated in the
functional requirements.
4. For the inventory manager the usability option of sending messages to the
manager relating to the inventory status no proper form of email /sms
system is implemented as part of the inventory manager dashboard .This
was created very abstract to give an overview about it.
5. There was not much options for the admin manager as the tasks were the
same as inventory manager .There could have been more of these tasks
added as part of admin manager dashboard that could not be
implemented.
103
6.4 Difficulty faced:
While working on the project I had faced lot of problem and difficulties that
were handled with proper time management and research .
1. Selecting the group for the project which was the difficult phase that took
some time as the other students from senior 1 already had their project
with their groups .
2. Selecting a particular topic for project also took some time. The idea of
the project was completely changed from the CS 390 research seminar
course to be implemented in senior 1 and senior 2 project.
3. Selecting the sub topics and modules to be developed.
4. Took so much time in review of literature.
5. Gathering requirements and analyzing them.
6. Face difficulties in developing the data flow diagrams.
7. The ER diagram was recreated after reviewing requirements in senior1.
8. Time management in between the project and the rest of the courses as in
senior 1. I was taking 17 credits each course with 3 credits and all
important courses . As I was alone so I had to focus on all tasks by myself
but was handled successfully.
9. Designing an appropriate application interface: The interface was
recreated to meet the requirements of the application. I had spent ample
time researching the best application interface.
10. Searching the best tools and platforms to build the application .The
initial start to the project was difficult as I was tempted to depend upon
previous knowledge .However, I spent time learning new tools ,
programming languages and database platforms.
11. Lacking knowledge of the technical support and resources for the
implementation and testing phase.
104
technology and more powerful and would be more helpful for the inventory
managers at the companies.
6.6 Recommendations
I suggest from my experience that the department should encourage the students
from both the Computer Science and Information System to team up for senior
projects .This will develop a strong blend of capabilities of the project. Also
provide technical support for the students and offer the required tools and
tutorials.
105
BIBLIOGRAPHY
106
Chapter 7.0
REFERENCES
10.<http://en.wikipedia.org/wiki/Supply_chain_management>.http://www.trake
rsystems.com/
107
11."Vendor Management System." Wikipedia. Wikimedia Foundation, 12 Nov.
2014. Web. 12 Dec. 2014.
<http://en.wikipedia.org/wiki/Vendor_management_system>.
12."Top 5 Best Free Inventory Management Software For Windows." Top 5
Freeware RSS. N.p., n.d. Web. 12 Apr. 2014.
<http://www.top5freeware.com/inventory-management-software-for-windows>.
108
Appendices
109
APPENDICES
APPENDIX A : SURVEY
1 What is your role within and organization?
Manager
Developer
Accountant
Engineer
Others
2 What is the current way of tracking the inventory at the organization?
3 Do you use inventory management application?
Yes, for my personal use.
Yes , for my professional use .
Yes ,for both.
No , I don’t know how to use it.
No , because I don’t know what is it.
4 If yes, what software or application do you use?
5 If yes ,how often do you use the inventory management application?
Daily
Weekly
Monthly
6 On which platform would you prefer to use the application?
Desktop /laptop using Web application.
Mobile application.
Both.
Others.
7 About the low levels of inventory in the inventory, how do you manage
the inventory?
Email
SMS
Call the manager
Update inventory status
Others
110