Professional Documents
Culture Documents
Sample Design Project InvenDora
Sample Design Project InvenDora
A Design Project
In Partial Fulfillment
By
Jason Kyle Avanceña
Adviser
December 2021
ABSTRACT
Creating a paper receipt and misplacing it could hinder your business and
could harm it. A mistake of losing one's order receipt could also be a danger of
losing a customer. Creating the order in paper-based takes time especially if you
wrote the wrong information. Being able to digitize a business is an assurance
not only for keeping track of your order history but it is also a great way for you to
grow your brand, gain new insights and acquire loyal customers. The InvenDora
system is a user-friendly system that tracks the order history, orders of the
customers, updates, adds a user, updates stock, and creates a new order in the
most simple way possible
ii
TABLE OF CONTENTS
ABSTRACT ii
LIST OF FIGURES v
LIST OF TABLES vi
CHAPTER 1 1
1.1 Rationale of the Study 1
1.2 Statement of the Problem 2
1.2.1 General Objective 2
1.2.2 Specific Objectives 2
1.3 Significance of the Study 3
1.4 Scope and Limitations 4
CHAPTER 2 5
CHAPTER 3 10
CHAPTER 4 13
4.1 Conceptual Framework 13
4.2 Analysis and Design 14
4.2.1 Use Case Diagram and Description 14
4.2.2 Entity Relationship Diagram 18
4.3 Development Model 19
4.4 Development Approach 21
4.5 Software Development Tools 22
4.6 Project Management 23
4.6.1 Schedule and Timeline 23
4.6.2 Responsibilities 25
iii
4.6.3 Budget and Cost Management 26
4.7 Verification, Validation and Testing 27
BIBLIOGRAPHY 28
APPENDIX A 31
APPENDIX B 33
APPENDIX C 34
CURRICULUM VITAE 46
iv
LIST OF FIGURES
v
LIST OF TABLES
vi
CHAPTER 1
INTRODUCTION
1
With all this, the PovaDora goat store family business has been running
on a manual accounting system ever since it started. The family has been
struggling in organizing the records of receipt in its paper-based form most
especially if they lose it. Having paper-based records of receipts and order
records may also need a lot of space for storing, as there are a lot of orders from
the different customers. It also takes time in writing the record, especially since
everything is handwritten. This difficulty also includes updating the order where
our client needs to carefully write the order and receipt. Thus, it would be safe to
say that transitioning from a manual system to computerized will be a large help
to PovaDora, and even much more so if they were to adopt a system that takes
into account the form and heart of their business, meat products.
2
○ Add and create functionality for keeping track of how
many kilos of a certain product is currently
available/stored
Meat Shops. Meat Shops are a necessity as they provide quality meat
products that we use in our everyday meals. An inventory management system
can help improve the management in the quality and quantity of meat provided to
the customers.
3
1.4 Scope and Limitations
The system utilized a database catered to handling products and
inventory. The database entries contain information for managing meat products,
namely the product’s name, available stock (in kilograms), and price per
kilogram. Its features are based only on recommendations and gaps in the
PovaDora business.
The system only has two types of users: (1) Registered users and (2)
Administrators. Both of these types of users can only be created by an
administrator. There is one provided default administrator account, while
users/employees must agree to having a registered account should they be
registered users. Internet connection is always present when using the
application.
4
CHAPTER 2
RELATED SYSTEM
Security
Most if not all inventory systems have functions in place in order to protect
assets and data. One of these functions is an admin system, wherein different
users and accounts are registered within a database that have assigned levels of
permission for access to certain functionalities of the system. To add, only users
that have been given accounts may actually use the system in order to prevent
unwanted tampering of inventory data and create a way for allowed identities to
be verified.
As such, Abisoye et al. (2013) implemented a login page as the entry point
for their system to ensure security, after which a splash screen and the main
menu is shown upon successful entry.
5
the business. This data and history is recorded and can be found in the system’s
Details menu.
Traceability
Basic inventory management and traceability tracking are must-have
features in software systems for all meat producers. Traceability is the
identification of individual, real-life goods using a "lot number" or "batch number"
that stays with each food item as it passes through the inventories, and inventory
management encompasses a set of business activities that include receiving,
production, and sales.
Meat processors must keep records for basic inventory management and
traceability, the receiving of products will include the parts of the meat ordered. A
batch number should be entered for each item received. If the supplier or original
maker hasn't allocated a batch number to the item, you'll need to assign one. All
of your final product sales should be tracked. Customers' identities, as well as the
batch number of each item sold to them, should be kept track of. Recall features
should be able to simply construct a report that traces the supplier, inventories
in-stock, goods created, and consumers for any ingredient or finished product
using the lot tracking utilized throughout the system. For actual recall events, as
well as simulated recalls and traceability verification for third-party audits and
certifications, it's critical to use recall features.
ACCTivate
The ACCtivate system is an inventory management system that includes
lot tracking, partial catch-weight support, and barcode scanning, but no scale
integration. ACCTivate can track inventory down to the component level and
calculate sales based on weight. Tracking both pieces and weight for inventory
tracking and reporting does not work. Only on sale is the catch weight. It is
possible to manually add weights to each piece, but it is not compatible with a
digital scale.
6
ACCTivate is a client/server software solution for Microsoft Windows that
connects with QuickBooks desktop versions. For a multi-user situation, you'll
need to install it on your own computer, which should be a server computer on
your LAN. Instead of maintaining your own server, you might pay a fee to have it
hosted by a third-party hosting service.
DEAR Inventory
The DEAR Inventory is a cloud-based inventory management system
that's simple to use and best suited for uniform weight final products, such as 12
ounce packaged beef jerky. DEAR includes powerful lot monitoring and food
safety recall functions, as well as barcode scanning and label printing, and it will
generate recall customer letters automatically. DEAR integrates with a variety of
cloud-based systems, including cloud-based accounting systems QuickBooks
Online and XERO, eCommerce solutions Shopify, Amazon, Bigcommerce,
WooCommerce, Magento, eBay, Neto, and Etsy, shipping logistics system
ShipStation and point-of-sale and payment processors PayPal, Vend, Stripe,
and Square. For individuals who want to personalize reports and forms, DEAR
now integrates with MS-Office Word.
7
Inventory Optimization of Fresh Foods
Fresh food, such as meat products, can easily spoil within a matter of
days when not properly managed. There should be an inventory control system
for fresh products. A study was conducted on analyzing the inventory
management of fresh pork in Shang Mao Cheng Supermarket. First, it is found
that consumers are sensitive to the price and freshness of the pork. Second, the
best sales cycle of pork is three days, as the fourth day will cause a decrease in
quality. Third, the price is the highest during the preservation period of the meat,
slightly higher than market price, and gradually decreases at the end of the sales
cycle.
As shown in Table 1 are the related systems being cited in this study.
8
Table 1
ACCTivate ✔ ✔ ✔
DEAR ✔ ✔
At-Thoyyib ✔ ✔ ✔
InvenDora ✔ ✔ ✔ ✔
9
CHAPTER 3
TECHNICAL BACKGROUND
This chapter discusses the various tools, features, and concepts that were
discovered to be beneficial to the proposed system.
The session between the web server and the browser on your mobile
device is encrypted if you see https. By glancing at the Uniform Resource
Locator (URL) in your browser's web address bar, you may quickly identify web
servers that have https enabled.
The Secure Socket Layer (SSL)/Transport Layer Security (TLS) protocol is
a combination of the Hypertext Transfer Protocol (HTTP) and the Secure Socket
Layer (SSL)/Transport Layer Security (TLS). TLS is a security and authentication
protocol that is widely used in browsers and Web servers. SSL encrypts data
sent over an SSL connection with the use of a public key. SSL is supported by
the majority of web browsers.
CSS Framework
CSS frameworks provide a basic structure for designing consistent
solutions to tackle common recurring issues across front end web development.
They provide generic functionality which can be overridden for specific scenarios
10
and applications. This greatly decreases the time needed to start creating
applications and websites. It is particularly useful when arranging all the
application’s functionalities with a friendly user interface in mind, allowing the
user to use the application with ease. The CSS Framework goes hand-in-hand
with HTML to create the UI and design of the application, which will be the main
interactive point end-users will depend on.
Database MySQL
Git
Git is a distributed revision control system that is accessible as free
software on all major development platforms. Git distinguishes itself from its
forerunners by elevating the software's modifications to first-class citizens.
Software revisions are important to developers, and git enables this by providing
each developer with a complete private copy of the software repository and a
variety of techniques to manage changes inside it. The ability to link a local
repository to many remote ones enables developers and their managers to
create a wide range of interesting distributed processes, the majority of which
would be difficult to run on a standard centralized version control system. The
local repository also makes git more responsive, simple to set up, and
independent of the Internet.
GitHub is a git repository hosting service that uses a Web-based user
interface to simplify many repository maintenance activities while also
encouraging collaboration in open source projects. (Spinellis, 2012, 100-101). It
11
is the main repository that the developers will use to keep track, update, and
manage the development of the application.
PHP language
PHP is a free popular server-side open-source programming language
mainly used in developing web applications and sites. Its features include but are
not limited to:
● Manipulate, add, manage, delete, create files on the server (back-end)
● Communicate with a database
● Allow developers to create dynamic content on the webpage
● Control permissions, who uses the application
Mainly in the back-end, the application will use PHP as its main
programming language. It is used to communicate with the database created
using MySQL, and its seamless integration and ability to be embedded with
HTML allows for ease of development.
12
CHAPTER 4
Figure 1 presents the main flow of the application and how data is
processed. There are four main modular components that work in conjunction to
achieve the desired functionalities. Each component’s functionalities are
categorized into their own in the figure.
1. Product Database: Show different products in stock, their
descriptions, and price per kilo.
2. Order/Reservation: Keeps track of current orders or reservations
and respective customer information, and history of past orders.
3. User System: For security and administrative capabilities.
13
4.2 Analysis and Design
14
Table 2
Use Case Description of Log In
Use Case Name: Log In
Alternative Flow: 2.1 If not all text fields are inputted, an error message
will be prompted and the sign in will be unsuccessful
2.2 If the text field contains an invalid input, an error
message will be prompted and the sign in will be
unsuccessful
Table 3
Use Case Description of Create, Edit, Manage Product
Use Case Name: Create, Edit, Manage Product
Alternative Flow: 2.1 If not all text fields are inputted, an error message
15
will be prompted and the add product will be
unsuccessful
2.2 If the text field contains an invalid input, an error
message will be prompted and the add product will be
unsuccessful
3.1 If there is a mistake with the information with the
added product, the user clicks on Edit.
3.2 Edit the information needed to be changed
3.3 Click the Save button
7.1 If there is no Product listed, a blank Product page
will be shown
Table 4
Use Case Description of Create, Edit, Manage Reservation/Orders
Use Case Name: Create, Edit, Manage Reservation/Orders
Alternative Flow: 2.1 If not all text fields are inputted, an error message
will be prompted and the add order will be
unsuccessful
2.2 If the text field contains an invalid input, an error
message will be prompted and the add order will be
unsuccessful
3.1 If there is a mistake with the information with the
16
added order, the user clicks on Edit.
3.2 Edit the information needed to be changed
3.3 Click the Save button
7.1 If there is no Order listed, a blank Order page will
be shown
Table 5
Use Case Description of Create New User/Admin
Use Case Name: Create New User/Admin
Precondition:
Alternative Flow: 2.1 If not all text fields are inputted, an error message
will be prompted and the add user will be unsuccessful
2.2 If the text field contains an invalid input, an error
message will be prompted and the add user will be
unsuccessful
Table 6
Use Case Description of View History and Order Details
Use Case Name: View History and Order Details
Brief Description: A user is able to view the history and past order details
17
4.2.2 Entity Relationship Diagram
As shown in Figure 2, Use Case Diagram, the registered user can access
all the modules . The admin can access all modules.
18
4.3 Development Model
The project will be implemented through the agile method. The agile
method is able to administer the process for managing a project that involves
constant collaboration and working in continuous iterations of development and
testing throughout the software development cycle of the project. In addition, it
breaks down the project into several phases to deliver project accomplishments
smoothly. (Hamilton, 2021)
19
Design involves the process of identifying possible features and how the
system will operate for the user. The researchers will design a prototype of the
system in order to provide a visual representation of the system to the client.
Development is the stage where both front-end, back-end and also the
database will be coded.
Test this is the stage where it entails a thorough examination of the
features and the functionalities of the system and its other components to identify
any potential problems. The blockbox testing will be performed by the developers
in collaboration with the client.
Deploy this is the stage where the application will be available on the
web.
Review this stage refers to reviewing the system after the deployment and
further testing will also be conducted.
Launch this is the final stage, it is where the system will be released for
the client to be used.
First, the researchers must figure out what the client expects from the
system. The client was searching for a simple approach to manage their sales,
such as adding, updating, reading, and/or deleting/cancelling orders transactions,
these will be some context of the system. The method then progresses to the
following level until the last stage is accomplished. This method enables rapid
and continuous collaboration as well as the breakdown of the application
development into sprints in order to meet a deadline and test the outcomes.
Every sprint requires everyone’s participation. Goals that were not met in the
previous sprint can be carried over to subsequent sprints.
20
4.4 Development Approach
The application system was designed using a mixture of the top-down and
bottom-up approach. First, the main product database component was created
as this was essential for creating two of the other main components, the Report
System and the Reservation System. The user/admin system was designed
separately from the other components as there is not much overlap in
functionality between them except for access and permission. Figure 4 presents
the approach that was used in the study.
Table 7
Software Development Tools
21
Google Chrome 86.0.4240.75 Provides a web
browser simulation of
the application.
22
4.6.1 Schedule and Timeline
To ensure that the output is completed efficiently, the researchers
must adhere to the system’s development timetable and deadline.
Table 8
Gantt Chart of Activities, First Semester, SY 2021-2022
First Semester
Week 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
Activities
Plan - Documentation
- Chapter 2 Related
System
Plan - Documentation
- Chapter 3 Technical
Background
Plan - Research
Objectives &
Statement of the
Problem
Plan - Documentation
- Chapter 4 Design
and Methodology
Plan - Documentation
- Chapter 1 &
Abstract
Design - Designing of
Prototype based on
Specifications
Finalizing the
23
Documents
Develop - Initial
UI/UX Development
Test - User
Acceptance Testing
Presenting to Client
and Application
Review
4.6.2 Responsibilities
As the system develops, members are assigned to one or more
modules. If a member’s module is unable to be completed, the other
members can aid in the completion of the module.
24
Table 9
Responsibilities
Jason Kyle Avanceña Front-end and Back-end Login & Registration Page
Developer and Dashboard
Ma. Carmela Labandiro Front-end and Back-end History Module and Add
Developer Product Module
Jon Francis S. Pasana Front-end and Back-end Product List Module and
Developer New Order Module
Project Manager
Ashley Mae M. Turla Front-end and Back-end Order List Module and
Developer Search Module
Table 10
Budget and Cost Management
Laptop 1 20,000.00
Data/Wifi 1 999.00
Snacks 10 250.00
Total 14 23,249
25
4.7 Verification, Validation and Testing
When used on large systems, black-box testing is effective. Block-box
testing refers to testing a system without prior knowledge of the coding or internal
workings. User-acceptance testing is a type of testing in which the end user, such
as the client, verifies the application’s functionality and accepts the software
application before it is deployed. UAT is done at the end of the testing process.
The block box testing method will be used by the researchers. Black box
testing enables testers to examine and analyze data communication between
modules as well as their functionalities. Two(2) family members of the owner will
conduct the testing. Furthermore, any bugs discovered will be documented and
fixed by the developers.
26
BIBLIOGRAPHY
Abisoye, O. A., Boboye, F., & Abisoye, B. O. (2013, September 1). Design of a
computerized inventory management system for supermarkets. Index of /.
Retrieved September 16, 2021, from
http://repository.futminna.edu.ng:8080/jspui/handle/123456789/6048.
Amahalu, N., Abiahu, M.-F. C., & Chinyere, O. (2017, July 27). Comparative
analysis of computerized accounting system and manual accounting
system of quoted microfinance banks (mfbs) in Nigeria. SSRN. Retrieved
October 21, 2021, from
https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3008043.
Arcega, C. K., Datinguinoo, E., Guerra, J., Guno, C., Mayuga, H. J., Villamena,
E., & Manongson, J. L. (2015). Computerized vs. Non-computerized
Accounting System of Small and Medium Enterprises in Lipa City,
Philippines: A Comparative Analysis . Asia Pacific Journal of Academic
Research in Business Administration , 1(1), 48–55.
Boiko, A., Shendryk, V., Boiko, O. (2019). Information systems for supply chain
management: uncertainties, risks and cyber security. ScienceDirect.
Retrieved October 1, 2021 from
https://www.sciencedirect.com.ezproxy.usc.edu.ph/science/
article/pii/S1877050919301152.
D. Spinellis, "Git," in IEEE Software, vol. 29, no. 3, pp. 100-101, May-June 2012,
doi: 10.1109/MS.2012.61.
27
Huang, K. (September 27, 2019). Inventory Optimization of Fresh Foods Based
on Shang Mao Cheng Supermarket. ACM. Retrieved October 1, 2021,
from https://dl.acm.org.ezproxy.usc.edu.ph/doi/epdf/10.1145/3364335.336
4384.
Ilias, J., Kasim, S., Hassan, R., Mahdin, H., Ramli, A. A., Fudzee, M. F. M., &
Salamat, M. A. (2017, November 12). At-Thoyyib Inventory Management
System. CORE. Retrieved September 17 2021, from
http://doi.org/10.26480/aim.02.2018.12.16.
Saxena, R. (2019, January 9). A beginner's guide to Css front end frameworks.
Medium. Retrieved September 15, 2021, from
https://blog.zipboard.co/a-beginners-guide-to-css-front-end-frameworks-80
45a499456b.
Software for inventory & traceability tracking for meat processors. University of
California, Agriculture and Natural Resources. (n.d.). Retrieved September
16, 2021, from
https://ucanr.edu/sites/CESonomaAgOmbuds/Selling_Meat/Additional_Re
sources/sdf/.
28
What is mysql: Mysql explained for beginners. (2021, August 19). Hostinger
Tutorials. Retrieved September 30, 2021, from
https://www.hostinger.ph/tutorials/what-is-mysql
29
APPENDIX A
TRANSMITTAL LETTER
30
31
APPENDIX B
INTERVIEW GUIDE
32
APPENDIX C
SOFTWARE REQUIREMENT SPECIFICATION
1. Introduction
1.1. Purpose
Table 11
Term Definition
33
TLS Transport Layer Security
2. Overall Description
Table 12
Functional Requirements
ID FUNC-001
34
functionalities of the website such as
register new admin.
ID FUNC-002
ID FUNC-003
ID FUNC-004
35
and a cancel button for the admin to
be clicked. The admin can also search
the last name of the customer to find it
easily.
ID FUNC-005
36
Wireframe of Invendora: A web-based meat inventory management system
for Lolong and Lucy's Goat store
Login Form
In this page this where the admin will input their credentials
37
Home page
The home page is the landing page of the admin when logged in.
1. Register button, when clicked the admin can create a new admin account.
2. Home button, when clicked the user will be redirected to the home page.
3. Products button, when clicked the user will be redirected to the product
page.
4. New Order button, when clicked the user will be redirected to the New
Order page.
5. Orders button, when clicked the user will be redirected to the Orders page.
6. History button, when clicked the user will be redirected to the history page.
7. Logout button will let the user log out to their account and will be
redirected to the landing page which is the login page.
38
Register form
39
Products Page
This is where the admin adds a new product, search, update and delete.
1. The user can search specific product name in just inputting it in the search
box
2. Search button, when clicked the list of products being searched will
display.
3. New Product button, when clicked the user will redirect to the new product
modal.
4. Update button, let the user update the product.
5. Delete button, the product will be deleted from the list.
40
New Product Modal
41
New Order Page
This is where the admin adds a new customer information together with their
order
42
6. User will choose product the customer will order in which the product is
already added
7. User will input the quantity
8. User will select the date the customer ordered
9. User will select the date the customer wants it to be delivered.
10. Add Order button, when clicked all the information above will be saved
and the user will be redirected back to New Order Page.
Orders Page
This is where the admin manages the order of each individual customer.
1. User inputs the customer’s last name to find the customer’s order
2. Search button, when clicked the customer’s order will be displayed.
3. Truck icon, when clicked the customer’s order will be marked as received
and will be added to the history.
4. Update button, when clicked the user can update the customers order or
the customers information.
5. Cancelled button, when clicked the order will be cancelled and the order
will be placed in the history page.
43
History Page
This is where the admin can see the history of the customers ordered.
1. Details button, when clicked the user will be able to view the information of
that order, the user will be redirected to the details page.
2. Retrieve button, when clicked the user will be able to retrieve that order
back to the orders page.
Details
This is where the admin can view the details of the order in the history page.
44
CURRICULUM VITAE
CONTACT INFORMATION
PERSONAL INFORMATION
EDUCATIONAL BACKGROUND
45
CONTACT INFORMATION
PERSONAL INFORMATION
EDUCATIONAL BACKGROUND
46
CONTACT INFORMATION
PERSONAL INFORMATION
EDUCATIONAL BACKGROUND
TECHNICAL SKILLS
● Microsoft Office
● Programming (C, Java, Lua)
47
● Web Development (HTML, CSS, MySql, JavaScript, PHP)
● Adobe Premiere, Adobe Photoshop
● Others (Clip Studio Paint, Paint Tool SAI)
WORK EXPERIENCE
Cebu City Risk Reduction and Management Council
N Escario St., Capitol Site, Cebu City, Cebu
On-The-Job Trainee
(January - February, 2019)
48
CONTACT INFORMATION
PERSONAL INFORMATION
EDUCATIONAL BACKGROUND
TECHNICAL SKILLS
● Has sufficient knowledge in Microsoft Office Applications
49
● Sufficient experience in Programming languages such as C, Java, HTML,
CSS, MySQL, PHP, Javascript.
● Has sufficient background experience in Visual Studio, GitHub, JIRA.
● Sufficient experience in Frameworks such as Laravel, ReactJS.
WORK EXPERIENCE
Mendero Medical Center
Cebu North Road, Consolacion, Cebu
On-The-Job Trainee
March 2019
50