290 likes | 534 Views
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
E N D
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 hours Implementation: 39 hours Testing: 45.5 hours Write-up: 13 hours Presentation: 13 hours
Inventory Management Form Simple inventory management form.
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
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