You are on page 1of 43

DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

VISVESVARAYA TECHNOLOGY UNIVERSITY

“Jnana sangama”,BELAGAVI-590014

DBMS PROJECT REPORT

ON

Inventory Management System

Submitted in partial fulfilment for the award of the degree of bachelor of engineering in
computer science and engineering

Submitted by

UNDER THE Guidance of

Assistant professor

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

SRI KRISHNA INSTITUTE OF TECHNOLOGY

BANGALORE – 560090

Dept of CSE,SKIT 1
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

VISVESVARAYA TECHNOLOGY UNIVERSITY

“Jnana sangama”,BELAGAVI-590014

SRI KRISHNA INSTITUTE OF TECHNOLOGY


BANGALORE – 560 090

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

CERTIFICATE

This is to certify that the project Work entitled “ENGINEERING STREM BOOKS” is the
bonafide work carried out in partial fulfilment for the award of the degree of Bachelor of
Engineering in Computer Science and Engineering from Visvesvaraya Technology
University Belagavi during the year 2021-2022

Signature of the Guide Signature of the HOD Signature of the Principal

Assistant professor Professor & head

Name of the Examiner External viva Signature with date

1.

2.

Dept of CSE,SKIT 2
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

ACKNOWLEDEGMENT

Any achievement does not depend solely on individual efforts but on the guidance,
encouragement and cooperation of intellectuals, elders and friends. A number of
personalities, in their own capacities, have helped us in carrying out this mini project work.
We would like to take this opportunity to thank them all.

This completion of min project work brings a sense of satisfaction, but it is never complete
without thanking the persons responsible for its successful completion.

I express my heartfelt sincere gratitude to Dr SHANTHARAM NAYAK, Professor and


HOD, Department of Computer Science and Engineering, Sri Krishna Institute of
Technology, Bengaluru, for his valuable suggestions and support.

I extend my special in-depth, heartfelt, sincere gratitude to my guide Prof Kusuma H. P.,
Assistant Professor, Department of Computer Science and Engineering, Sri Krishna Institute
of Technology, Bengaluru, for her constant support and valuable guidance for completion of
the mini-project work.

I would like to thank all the teaching and non-teaching staff members in my Department Of
Computer Science and Engineering, Sri Krishna Institute of Technology, Bengaluru, for their
support.

Finally, we thank our parents and friends for their moral support.

Siddalingesh SM

Srinivas Rao S

Dept of CSE,SKIT 3
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

ABSTRACT
Inventory Management System is important to ensure quality control in businesses
that handle transactions revolving around consumer goods. Without proper inventory control,
a large retail store may run out of stock on an important item. A good Inventory Management
System will alert the retailer when it is time to reorder. Inventory Management System is also
an important means of automatically tracking large shipments. For example, if a business
orders ten pairs of socks for retail resale, but only receives nine pairs, this will be obvious
upon inspecting the contents of the package, and error is not likely. On the other hand, say a
wholesaler orders 100,000 pairs of socks and 10,000 are missing. Manually counting each
pair of socks is likely to result in error. An automated Inventory Management System helps to
minimize the risk of error. In retail stores, an Inventory Management System also helps track
theft of retail merchandise, providing valuable information about store profits and the need
for theft-prevention systems. Automated Inventory Management System work by scanning a
barcode either on the item. A barcode scanner is used to read the barcode, and the
information encoded by the barcode is read by the machine. This information is then tracked
by a central computer system. For example, a purchase order may contain a list of items to be
pulled for packing and shipping. The Inventory Management System can serve a variety of
functions in this case. It can help a worker locate the items on the order list in the warehouse,
it can encode shipping information like tracking numbers and delivery addresses, and it can
remove these purchased items from the inventory tally to keep an accurate count of in-stock
items. All of this data works in tandem to provide businesses with real-time inventory
tracking information. Inventory Management System make it simple to locate and analyze
inventory information in real-time with a simple database search.

Dept of CSE,SKIT 4
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

TABLE OF CONTENTS
PAGE NO’S

1. INTRODUCTION 7

2. ANALYSIS 8-9

2.1 SYSTEM ANALYSIS 8

2.2 SYSTEM SPECIFICATIONS 9

3. DESIGN APPROACH 10-16

3.1 INTRODUCTION TO DESIGN 10

3.2 DATA FLOW DIAGRAMS 10-11

3.3 E-R DIAGRAMS 14-15

4. PROJECT MODULES 17-18

5. OVERVIEW OF TECHNOLOGIES USED 19-25

6. IMPLEMENTATION 26-30

6.1 CONCEPTS AND TECHNIQUES 26

6.2 TESTING 26-29

5.3 TEST CASES 29-30

7. SNAPSHOTS 31-39

Dept of CSE,SKIT 5
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

8. CONCLUSION 40

9. FUTURE ENHANCEMENTS 41

LISTS OF FIGURES

1. DATAFLOW DAIGRAM 3.1 12

2. SCHEMA DAIGRAM 3.2 13

3. ER DAIGRAM 3.3 16

Dept of CSE,SKIT 6
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

CHAPTER 1

INTRODUCTION

Inventory management and supply chain management are the backbone of any
business operations. With the development of technology and availability of process driven
software applications, inventory management has undergone revolutionary changes in any
business or organization, all functions are interlinked and connected to each other and are
often overlapping. Some key aspects like supply chain management, logistics and inventory
form the backbone of the business delivery function. Therefore these functions are extremely
important to marketing managers as well as finance controllers. Inventory management is a
very important function that determines the health of the supply chain as well as the impacts
the financial health of the balance sheet. Every organization constantly strives to maintain
optimum inventory to be able to meet its requirements and avoid over or under inventory that
can impact the financial figures. Inventory is always dynamic. Inventory management
requires constant and careful evaluation of external and internal factors and control through
planning and review. Most of the organizations have a separate department or job function
called inventory planners who continuously monitor, control and review inventory and
interface with production, procurement and finance departments.

Dept of CSE,SKIT 7
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

CHAPTER 2

2.1 SYSTEM ANALYSIS


1. Existing System

The existing system is a manual one in which designated personnel are


maintaining records to store information stock data, location, products and orders
from the clients who availed the service or used the amenities. It is very difficult
to maintain historical data.

DISADVANTAGES:

The following drawbacks of the existing system emphasize the need for computerization:

● A lot of copies of all available details have to be made

● Need of manual management of stocks.

2. Proposed System

This web-application is used to take note of each and every location of stock
locations, products stored in location and transport of products. The user can log in
on the web-app and add, delete or edit all the details such as location, products,
product movement. The user has to either register or log in to access the web-app.
This application will display the list of all locations, products and product movement.

3. Objective of the System

The objective of the inventory management system project is to design software


to fully automate the process of storing data of inventory using simple add, edit and
delete options provided in web-app.

Dept of CSE,SKIT 8
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

2.2System Specifications
Hardware Requirements:-
● Pentium-IV(Processor)

● 256 MB Ram

● 512 KB Cache Memory

● Hard disk 10 GB

Software Requirements: -
● Operating System: Windows/Unix

● Back-end: Python-Flask framework, SQLAlchemy

● Front-End: HTML

● Database: Sqlite

● Web Server: WERKZEUG SERVER.

Dept of CSE,SKIT 9
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

CHAPTER 3
DESIGN
3.1 INTRODUCTION:

Design is the first step in the development phase for any techniques and
principles for the purpose of defining a device, a process, or system in sufficient
detail to permit its physical realization.

Once the software requirements have been analyzed and specified the software
design involves three technical activities - design, coding, implementation, and
testing that are required to build and verify the software.

The design activities are of main importance in this phase because, in this
activity, decisions ultimately affecting the success of the software implementation
and its ease of maintenance are made. These decisions have the final bearing on the
reliability and maintainability of the system. Design is the only way to accurately
translate the customer’s requirements into finished software or a system.

Design is the place where quality is fostered in development. Software design


is a process through which requirements are translated into a representation of
software. Software design is conducted in two steps. Preliminary design is concerned
with the transformation of requirements into data.

3.2 DATA FLOW DIAGRAMS:

The DFD takes an input-process-output view of a system i.e. data objects to flow
into the software, are transformed by processing elements, and resultant data objects
flow out of the software.Data objects represented by labeled arrows and
transformation are represented by circles also called bubbles. DFD is presented in a
hierarchical fashion i.e. the first data flow model represents the system as a whole.
Subsequent DFD refines the context diagram (level 0 DFD), providing increasing
details with each subsequent level.The DFD enables the software engineer to develop
models of the information domain & functional domain at the same time. As the
DFD is refined into greater levels of detail, the analyst performs an implicit functional

Dept of CSE,SKIT 10
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

decomposition of the system. At the same time, the DFD refinement results in a
corresponding refinement of the data as it moves through the process that embodies
the applications. In a context-level DFD for the system, the primary external entities
produce information for use by the system and consume information generated by the
system. The labeled arrow represents data objects or object hierarchy.

RULES FOR DFD:

Fix the scope of the system utilizing context diagrams.

● Organize the DFD so that the main sequence of the actions

● Reads left to right and top to bottom.

● Identify all inputs and outputs.

● Identify and label each process internal to the system with Rounded circles.

● A process is required for the data transformation and Transfers. Thus,


never connect a data store to a data Source or the destinations or another
data store with just a Data flow arrow.

● Do not indicate hardware and ignore control information.

● Make sure the names of the processes accurately convey everything the
process is done.

● There must not be an unnamed process.

● Indicate external sources and destinations of the data, with squares.

● Number each occurrence of repeated external entities.

● Identify all data flows for each process step, except simple Record retrievals.

● Label data flow on each arrow.

● Use details flow on each arrow.

● Use the details flow arrow to indicate data movements.

Dept of CSE,SKIT 11
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

DATAFLOW DIAGRAMS:

Fig: 3.1

Dept of CSE,SKIT 12
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

3.3 Schema Diagram:

A database schema can be represented in a visual diagram, which shows the database
object and their relationship which represents the logical view of the databaseand how
the relationships among them are represented.

FIG:3.2

Dept of CSE,SKIT 13
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

3.3 E-R Diagrams:

The Entity-Relationship (ER) model was originally proposed by Peter in 1976


[Chen76] as a way to unify the network and relational database views. Simply stated
the ER model is a conceptual data model that views the real world as entities and
relationships. A basic component of the model is the Entity-Relationship diagram
which is used to visually represent data objects. Since Chen wrote his paper the
model has been extended and today it is commonly used for database design For the
database designer, the utility of the ER model is:

● It maps well to the relational model. The constructs used in the ER model can
easily be transformed into relational tables.
● It is simple and easy to understand with a minimum of training. Therefore, the
model can be used by the database designer to communicate the design to the end-
user.
● In addition, the model can be used as a design plan by the database developer to
implement a data model in specific database management software.

Connectivity and Cardinality


The basic types of connectivity for relations are one-to-one, one-to-many, and
many- to-many. A one-to-one (1:1) relationship is when at most one instance of entity
A is associated with one instance of entity B. For example, "employees in the
company are each assigned their own office. For each employee, there exists a unique
office and for each office, there exists a unique employee.
A one-to-many (1:N) relationship is when for one instance of entity A, there are
zero, one, or many instances of entity B, but for one instance of entity B, there is only
one instance of entity A. An example of a 1:N relationship is
● a department has many employees

● each employee is assigned to one department


A many-to-many (M: N) relationship, sometimes called non-specific, is when for one
instance of entity A, there are zero, one, or many instances of entity B and for one
instance of entity B, there are zero, one, or many instances of entity A. The

Dept of CSE,SKIT 14
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

connectivity of a relationship describes the mapping of associated.

ER Notation
There is no standard for representing data objects in ER diagrams. Each
modeling methodology uses its own notation. The original notation used by Chen is
widely used in academic texts and journals but rarely seen in either CASE tools or
publications by non- academics. Today, there are several notations used, among the
more common are Bachman, crow's foot, and IDEFIX.
All notational styles represent entities as rectangular boxes and relationships as
lines connecting boxes. Each style uses a special set of symbols to represent the
cardinality of a connection. The notation used in this document is from Martin. The
symbols used for the basic ER constructs are:
● entities are represented by labeled rectangles. The label is the name of the entity.
Entity names should be singular nouns.
● relationships are represented by a solid line connecting two entities. The name of
the relationship is written above the line. Relationship names should be verbs
● attributes, when included, are listed inside the entity rectangle. Attributes that are
identifiers are underlined. Attribute names should be singular nouns.
● the cardinality of many is represented by a line ending in a crow's foot. If the
crow's footis omitted, the cardinality is one.
● existence is represented by placing a circle or a perpendicular bar on the line.
Mandatory existence is shown by the bar (looks like a 1) next to the entity for an
instance is required. Optional existence is shown by placing a circle next to the
entity that is optional

Dept of CSE,SKIT 15
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Fig:3.3

Dept of CSE,SKIT 16
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

CHAPTER 4
Modules

1. PRODUCT DETAILS MODULE


2. LOCATION DETAILS MODULE

3. PRODUCT MOVEMENT MODULE

1. PRODUCT DETAILS MODULE:


● PRODUCT NAME
● PRODUCT DESCRIPTION
● PRODUCT QUANTITY
o PRODUCT NAME: Each product has a name and is allotted with
unique product ID.
o PRODUCT DESCRIPTION: Each product has a description stating all
the details about it.
o PRODUCT QUANTITY: Each product will have the quantity number
specified.

2. LOCATION DETAILS MODULE:


 LOCATION ID
 LOCATION NAME
o LOCATION ID: Every location will be allocated with a unique ID.
o LOCATION NAME: Each location ID will be having a name to it.

3. PRODUCT MOVEMENT DETAILS:


 PRODUCT NAME
 QUANTITY
 DATE MOVED

Dept of CSE,SKIT 17
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

 FROM LOCATION
 TO LOCATION
o PRODUCT NAME : Name of the product to be moved.
o QUANTITY: The number of products to be moved.
o DATE MOVED: When the products are moved.
o FROM LOCATION: Location where the products are moved from.
o TO LOCATION: Destination of the product movement.

Dept of CSE,SKIT 18
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

CHAPTER 5

OVERVIEW OF TECHNOLOGIES USED

HTML
HTML, which stands for HyperText Markup Language, is the predominant
markup language for web pages. It provides a means to create structured documents
by denoting structural semantics for text such as headings, paragraphs, lists, etc as
well as for links, quotes, and other items. It allows images and objects to be
embedded and can be usedto create interactive forms. It is written in the form of
HTML elements consisting of "tags"

surrounded by angle brackets within the web page content. It can include or can
load scripts in languages such as JavaScript which affect the behavior of HTML
processors like Web browsers, and Cascading Style Sheets (CSS) to define the
appearance and layout of text and other material. The W3C, a maintainer of both
HTML and CSS standards, encourages the useof CSS over explicit presentational
markup.

HyperText Markup Language(HTML) is the encoding scheme used to create


and format a web document. A user need not be an expert programmer to make use
of HTML for creating hypertext documents that can be put on the internet.

Most graphical e-mail clients allow the use of a subset of HTML (often ill-
defined) to provide formatting and semantic markup not available with plain text.
This may include typographic information like-colored headings, emphasized and
quoted text, inline images, and diagrams. Many such clients include both a GUI
editor for composing HTML e-mail messages and a rendering engine for displaying
them. The use of HTML in e-mail is controversial because of compatibility issues
because it can help disguise phishing attacks, because it can confuse spam filters and
because the message size is larger than plain text.

Dept of CSE,SKIT 19
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

NAMING CONVENTIONS
The most common filename extension for files containing HTML is .html. A
common abbreviation of this is .html, which originated because of some early
operating systems and file systems, such as DOS and FAT, limited file extensions to
three letters.

HTML APPLICATION
An HTML Application is a Microsoft Windows application that uses HTML
and Dynamic HTML in a browser to provide the application's graphical interface. A
regular HTML file is confined to the security model of the web browser,
communicating only to web servers and manipulating only webpage objects and site
cookies. An HTA runs as a fully trusted application and therefore has more
privileges, like creation/editing/removal of filesand Windows Registry entries.
Because they operate outside the browser's security model, HTAs cannot be executed
via HTTP, but must be downloaded (just like an EXE file) and executed from the
local file system.

Python
Python is an interpreted high-level general-purpose programming language. Its
design philosophy emphasizes code readability with its use of significant indentation.
Its language constructs as well as its object-oriented approach aim to help
programmers write clear, logical code for small and large-scale projects.
Python is dynamically-typed and garbage-collected. It supports multiple
programming paradigms, including structured (particularly, procedural), object-
oriented and functional programming. It is often described as a "batteries included"
language due to its comprehensive standard library.
Python was conceived in the late 1980s by Guido van Rossum at Centrum Wiskunde
& Informatica (CWI) in the Netherlands as a successor to the ABC programming
language, which was inspired by SETL, capable of exception handling and
interfacing with the Amoeba operating system. Its implementation began in
December 1989. Van Rossum shouldered sole responsibility for the project, as the
lead developer, until 12 July 2018, when he announced his "permanent vacation"
from his responsibilities as Python's "benevolent dictator for life", a title the Python

Dept of CSE,SKIT 20
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

community bestowed upon him to reflect his long-term commitment as the project's
chief decision-maker. In January 2019, active Python core developers elected a five-
member "Steering Council" to lead the project.
Python 2.0 was released on 16 October 2000, with many major new features,
including a cycle-detecting garbage collector (in addition to reference counting) for
memory management and support for Unicode.
Python 3.0 was released on 3 December 2008. It was a major revision of the
language that is not completely backward-compatible. Many of its major features
were backported to Python 2.6.x and 2.7.x version series. Releases of Python 3
include the 2to3 utility, which automates the translation of Python 2 code to Python
3.
Python 2.7's end-of-life date was initially set at 2015 then postponed to 2020 out of
concern that a large body of existing code could not easily be forward-ported to
Python 3. No more security patches or other improvements will be released for it.
With Python 2's end-of-life, only Python 3.6.x and later are supported.
Python 3.9.2 and 3.8.8 were expedited as all versions of Python (including 2.7) had
security issues, leading to possible remote code execution and web cache poisoning.
Flask

Flask is a micro web framework written in Python. It is classified as a


microframework because it does not require particular tools or libraries. It has no database
abstraction layer, form validation, or any other components where pre-existing third-party
libraries provide common functions. However, Flask supports extensions that can add
application features as if they were implemented in Flask itself. Extensions exist for object-
relational mappers, form validation, upload handling, various open authentication
technologies and several common framework related tools.

The microframework Flask is part of the Pallets Projects (formerly Pocoo), and based on
several others of them.

Werkzeug

Werkzeug (German for "tool") is a utility library for the Python programming language, in
other words a toolkit for Web Server Gateway Interface (WSGI) applications, and is licensed
under a BSD License. Werkzeug can realize software objects for request, response, and utility

Dept of CSE,SKIT 21
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

functions. It can be used to build a custom software framework on top of it and supports
Python 2.7 and 3.5 and later.

Jinja

Main article: Jinja (template engine) Jinja, also by Ronacher, is a template engine for the
Python programming language and is licensed under a BSD License. Similar to the Django
web framework, it handles templates in a sandbox.

MarkupSafe

MarkupSafe is a string handling library for the Python programming language, licensed under
a BSD license. The eponymous MarkupSafe type extends the Python string type and marks
its contents as "safe"; combining MarkupSafe with regular strings automatically escapes the
unmarked strings, while avoiding double escaping of already marked strings.

ItsDangerous

ItsDangerous is a safe data serialization library for the Python programming language,
licensed under a BSD license. It is used to store the session of a Flask application in a cookie
without allowing users to tamper with the session contents.

Features-
 Development server and debugger
 Integrated support for unit testing
 RESTful request dispatching
 Uses Jinja templating
 Support for secure cookies (client side sessions)
 100% WSGI 1.0 compliant
 Unicode-based
 Extensive documentation
 Google App Engine compatibility

Dept of CSE,SKIT 22
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

DATABASE TABLES:
USER:
USERS table has the attributes id(primary key), username(primary key) and
password.
Name Type Is null

Id INTEGER NOT NULL

Username TEXT NOT NULL

Password TEXT NOT NULL

PRODUCT:
PRODUCT table has an attributes productID(primary key),
productName, productDescription and QTY.

Name Type Is null

productID INTEGER NOT NULL

productName TEXT NOT NULL

productDescription TEXT NOT NULL

Dept of CSE,SKIT 23
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

QTY INTEGER NOT NULL

LOCATION:
LOCATION table has the attribute locationID(primary key) and locationName.

Name Type Is null

locationID INTEGER NOT NULL

locationName TEXT NOT NULL

PRODUCT_MOVEMENT
PRODUCT_MOVEMENT table has the attribute movementID(primary key), productName,
Timing, fromlocation, tolocation, QTY

Name Type Is null

movementID INTEGER NOT NULL

productName TEXT NOT NULL

Timing TEXT NOT NULL

fromlocation TEXT NOT NULL

tolocation TEXT NOT NULL

Dept of CSE,SKIT 24
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

QTY INTEGER NOT NULL

PRODUCTS :
PRODUCTS table has the attribute productID(foreign key), productName,
productDescription

Name Type Is null

productID INTEGER NOT NULL

productName TEXT NOT NULL

productDescription TEXT NOT NULL

Dept of CSE,SKIT 25
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

CHAPTER 6
IMPLEMENTATION:
6.1 concepts and techniques

Implementation is the stage where the theoretical design is turned into a


working system. The most crucial stage in achieving a new successful system and in
giving confidence on the new system for the users that it will work efficiently and
effectively.

The system can be implemented only after thorough testing is done and if it is
found to work according to the specification.

It involves careful planning, investigation of the current system and its


constraints on implementation, design of methods to achieve the changeover, and an
evaluation of change over methods apart from planning. Two major tasks of
preparing the implementation are education and training of the users and testing of
the system.

The more complex the system being implemented, the more involved will
be the systems analysis and design effort required just for implementation.

The implementation phase comprises of several activities. The required


hardware and software acquisition is carried out. The system may require some
software to be developed. For this, programs are written and tested. The user then
changes over to his new fully tested system and the old system is discontinued.

6.2 Testing

Testing is the process of executing a program with the intent of finding an

Dept of CSE,SKIT 26
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

error. Testing is a crucial element of software quality assurance and presents the
ultimate review of specification, design, and coding.

System Testing is an important phase. Testing represents an interesting


anomaly for the software. Thus a series of testing is performed for the proposed
system before the system is ready for user acceptance testing.A good test case is one
that has a high probability of finding an undiscovered error.A successful test is one
that uncovers an as undiscovered error.

Testing Objectives.
● Testing is the process of executing a program with the intent of finding
an error.

● A good test case is one that has a probability of finding an as-yet-


undiscovered error.

● A successful test is one that uncovers an undiscovered error

Testing Principles
● All tests should be traceable to end-user requirements.

● Tests should be planned long before testing begins.

● Testing should begin on a small scale and progress towards testing on a large.

● Exhaustive testing is not possible.

● To be most effective testing should be conducted by an independent third party


The primary objective for test case design is to derive a set of tests that has the
livelihood for uncovering defects in software. To accomplish this objective
two different categories of test case design techniques are used. They are

● White box testing.

● Black box testing.

Dept of CSE,SKIT 27
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

White-box testing:
White box testing focuses on the program control structure. Test cases are
derived to ensure that all statements in the program have been executed at least once
during testing and that all logical conditions have been executed.

Black-box testing:
Black box testing is designed to validate functional requirements without regard to the
internal workings of a program. Black box testing mainly focuses on the information
domain of the software, deriving test cases by partitioning input and output in a manner
that provides thorough test coverage. Incorrect and missing functions, interface errors,
errors in data structures, errors in functional logic are the errors falling in this category.

Testing strategies:
A strategy for software testing must accommodate low-level tests that are necessary
toverify that all small source code segment has been correctly implemented as well as high-
level tests that validate major system functions against customer requirements.

Testing fundamentals:
Testing is the process of executing a program with the intent of finding an
error. A good test case is one that has a high probability of finding an undiscovered
error. If testing is conducted successfully it uncovers the errors in the software.
Testing cannot show the absence of defects, it can only show that software defects are
present.

Testing Information flow:

Information flow for testing flows the pattern. Two classes of input were
provided to test the process.The software configuration includes a software
requirements specification, a design specification, and a source code.

Test configuration includes test plans and test cases and test tools. Tests are
conducted and all the results are evaluated. That is test results are compared with
expected results. When erroneous data are uncovered, an error is implied, and
debugging commences.

Dept of CSE,SKIT 28
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Unit testing:

Unit testing is essential for the verification of the code produced during the coding phase
and hence the goal is to test the internal logic of the modules. Using the detailed design
description as a guide, important paths are tested to uncover errors within theboundary of
the modules. These tests were carried out during the programming stage itself. All units
of ViennaSQL were successfully tested.

Integration testing :

Integration testing focuses on unit-tested modules and builds the


program structure that is dictated by the design phase.

System testing:

System testing tests the integration of each module in the system. It also tests
to find discrepancies between the system and its original objective, current
specification, and system documentation. The primary concern is the compatibility of
individual modules. Entire system is working properly or not will be tested here, and
specified path ODBC connection will correct or not, and giving output or not are
tested here these verifications and validations are done by giving input values to the
system and by comparing with the expected output. Top- down testing implementing
here.

Acceptance Testing:
This testing is done to verify the readiness of the system for implementation.
Acceptance testing begins when the system is complete. Its purpose is to provide the
end-user with the confidence that the system is ready for use. It involves planning and
execution of functional tests, performance tests, and stress tests in order to
demonstrate that the implemented system satisfies its requirements.

Tools of special importance during acceptance testing include:


Test coverage Analyzer – records the control paths followed for each test case.

Timing Analyzer – also called a profiler, reports the time spent in various regions

Dept of CSE,SKIT 29
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

of the code are areas to concentrate on to improve system performance.

Coding standards – static analyzers and standard checkers are used to inspect
code for deviations from standards and guidelines.

5.3 Test Cases:


Test cases are derived to ensure that all statements in the program have been
executed at least once during testing and that all logical conditions have been
executed.

Using White-Box testing methods, the software engineer can drive test cases that

● Guarantee those logical decisions on their true and false sides.

● Exercise all logical decisions on their true and false sides.

● Execute all loops at their boundaries and within their operational bounds.

● Exercise internal data structure to assure their validity.

The test case specification for system testing has to be submitted for review before
system testing commences.

Dept of CSE,SKIT 30
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

CHAPTER 7
SNAPSHOTS:

Dept of CSE,SKIT 31
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Dept of CSE,SKIT 32
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Dept of CSE,SKIT 33
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Dept of CSE,SKIT 34
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Dept of CSE,SKIT 35
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Dept of CSE,SKIT 36
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Dept of CSE,SKIT 37
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Dept of CSE,SKIT 38
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Dept of CSE,SKIT 39
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

Dept of CSE,SKIT 40
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

CHAPTER 8
CONCLUSION
The package was designed in such a way that future modifications can be done

easily.

The following conclusions can be deduced from the development of the project.

● Automation of the entire system improves the efficiency

● It provides a friendly graphical user interface which proves to be better


when compared to the existing system.
● It gives appropriate access to the authorized users depending on their
permissions
● It effectively overcomes the delay in communications.
● Updating information becomes so easier.

● System security, data security, and reliability are striking features.


● The system has adequate scope for modification in the future if it is
necessary.

Dept of CSE,SKIT 41
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

CHAPTER 9
FUTURE ENHANCEMENTS:

● We can even further make it private and secured by implementing


2Factor Authentication.
● We can give away this software for more people and organizations
to conduct Beta Testing and based upon the results we can just
make those changes and be assured of the application developed.
● We can make it more space and resource-efficient so that this
application consumes lesser RAM and ROM and battery power
(if available).

Dept of CSE,SKIT 42
DBMS PROJECT INVENTORY MANAGEMENT SYSTEM

BIBLIOGRAPHY

Websites Referred:

https://docs.python.org/3/

https://flask.palletsprojects.com/en/2.0.x/

https://www.w3schools.com/TAGS/default.ASP

Youtube videos reffered :

https://www.youtube.com/watch?v=oA8brF3w5XQ

https://www.youtube.com/watch?v=8PPvgexhmYg

https://www.youtube.com/watch?v=Z1RJmh_OqeA

Dept of CSE,SKIT 43

You might also like