A Billiards Point of Sale Application

Download Report

Transcript A Billiards Point of Sale Application

A Billiards Point of Sale
Application
Christopher Ulmer
CS 470
Final Presentation
System Overview
• Goal
– Develop a system that will manage the operation of a
billiard hall in an efficient manner
– Keep a database of all transactions for book-keeping
purposes
– Client is Run-A-Rack Billiards
• Why
– The current system is slow
– You can only have one module open at a time in the
current system
Why does a pool hall need a
computer?
• Pool tables are not coin operated
– The customer rents the table
• A computer helps keep track of the status of each table
• Not just pool
– food, merchandise, bar, etc.
• A computer helps track inventory
• Book-keeping
– A computer can keep exact records of each transaction,
daily sales, etc.
Background
• I was employed at Run-A-Rack/Hot Shots
Billiards in Anchorage from June 1998-July
2002
– I’m very familiar with the current system used
• I have based all decisions for this project on
my experience as an employee of a pool
hall and a customer of various other pool
halls
Why I chose this project...
• Current system is outdated
• Lack of support for the current system
• Systems like the one at Run-A-Rack
Billiards cost several hundred dollars
• Customize
Customize
• The new software is customized to fit the
needs of Run-A-Rack Billiards
– The current software has many features that are
not needed
– Stubs were left in the code so additional
features may be added
• Barcode scanner
• Cash drawer
• Lights
Specifications
•
•
•
•
•
•
Setup
Employee management
Member management
Inventory management
Transaction
Table-Time keeping
– Ability to “pause” players
Additional Specifications
• Ability to use keyboard only
• Easy to back-up
Database
• A Microsoft Access database was used to
store all information
–
–
–
–
–
Pool tables
Members
Employees
Inventory
Transactions
Development Language
• Visual Basic 6.0
– The data control was used to connect with Microsoft
Access
– Small tables
• Accessing records from the tables does not take very long
(tables are indexed on appropriate fields to allow fast searches)
– Ability to create user-friendly interfaces
– Time constraints
• There was a limited amount of time to finish the project
– VB is user-friendly from a programming point of view and
provided the tools necessary to finish the project
Development Strategy
• Populate the database with test data
• Use prototyping to develop and refine each
module
– Each module is dependent on the database but
are independent of each other
System Requirements
•
•
•
•
Windows 98 or higher
256 Mb of memory
266 MHz or higher
1024 by 768 pixel resolution
System Design
• Load most commonly used forms at
execution time
• Store all information in a single database
• Load some table data into arrays
– This makes the application run faster
– Less time accessing tables
Planning
10%
10%
30%
Implementation
Testing
Requirements
10%
Write-up
Design
5%
Presentation
35%
Estimated 130 hours total:
Requirements: 6.5 hours
Implementation: 39 hours
Write-up:
13 hours
Design:
Testing:
Presentation:
13 hours
45.5 hours
13 hours
Time-Keeping Form
Setup
Employee Management Form
Inventory Management Form
Simple inventory management form.
Security
Conclusion
• Produced a system that will manage the operation
of a billiard hall in an efficient manner
• Challenges
– Put as many features into the software as I could in a
limited amount of time
– Get my software to work efficiently with the database
• Solution
– Use prototyping to get an idea of how long each
module will take
– Use Visual Basic’s data control to access tables and
queries
Questions???
Mock-up of Transaction Form
Table Relationship
Setup
• Allows user to set pool table pricing and
location on the Table-Time keeping form
– Limit 99 pool tables
• This is so the table can be addressed with a two digit
number
– Limit 9 players per table
• This is so the number of players can be entered by
typing one number
Employee Management Form
• This is where employee information is held
– Personal information
– Security information
• Employee’s access level
• Employees may be added
• Employees may be deleted
• Employee’s information may be changed at
any time by an employee with appropriate
authority
Inventory Management Form
• Add new items to inventory
• Edit information about each item
– Code, description, sale price, etc.
• Adjust inventory
– Add or remove a given amount of an item from
inventory.
• This can only be opened by an employee
with appropriate authority
Transaction Form
• This is where purchases are made
• A transaction may consist of many items as
well as the table cost for players on a given
pool table
• All transactions will be stored in the
database
Table-Time Keeping Form
• The Main form
– This is displayed most of the time
• Shows table layout
– Each table image shows the table’s number as
well as how many players are currently being
charged
• Contains commands for opening all other
forms