a billiards point of sale application christopher ulmer cs 470 final presentation

29
A Billiards Point of Sale Application Christopher Ulmer CS 470 Final Presentation

Upload: brice-hunter

Post on 24-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

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

Estimated 130 hours total:Requirements: 6.5 hours Design: 13 hoursImplementation: 39 hours Testing: 45.5 hoursWrite-up: 13 hours Presentation: 13 hours

30%

35%

5%

10%

10%

10%

Implementation

Testing

Requirements

Write-up

Design

Presentation

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