Difference between revisions of "Point Of Sale"

From CSCWiki
Jump to navigation Jump to search
(Created page with "CSC pop crediting / point of sale project.")
 
m (rewording in re. complaint)
 
(6 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
CSC pop crediting / point of sale project.
 
CSC pop crediting / point of sale project.
 +
 +
== Implementation details ==
 +
=== Data storage ===
 +
* sqlite db with Kerberos taking care of permissions?
 +
** Pro: easy
 +
** Con: potential for concurrency fail on NFS http://www.sqlite.org/faq.html#q5
 +
* web service that runs on Caffeine and stores things in a MySQL db?
 +
** Pro: allows for web UI admin. Python makes such a service easy to code.
 +
** Con: security, complexity, dependence on Caffeine and MySQL.
 +
 +
=== Administration interface ===
 +
* hammer into ceo, or have a ncurses based standalone app on office terminals that talks to back-end db
 +
 +
=== Front-end / UI ===
 +
 +
== Development milestones ==
 +
=== Mile 1 ===
 +
Enroll cards and associate them with users. Scan a card, get back userid.
 +
 +
=== Mile 2 ===
 +
Add ability to transfer funds to a user's account. Scan a card, display a balance, show a large button that decrements balance when pressed.
 +
 +
=== Mile 3 ===
 +
Scan a card, display a balance, show buttons representing purchase options, decrements balance correctly based on price of button pressed. Polished UI and sane timeout values.
 +
 +
Ready for (at your own risk) member use.
 +
 +
=== Mile 4 ===
 +
Fix bugs and security flaws. Implement any nice-to-have features. Ready for general member use.
 +
* Barcode reader for headless scan&go purchase
 +
* Logging for purchasing metrics and bug tracking

Latest revision as of 12:36, 3 June 2014

CSC pop crediting / point of sale project.

Implementation details

Data storage

  • sqlite db with Kerberos taking care of permissions?
  • web service that runs on Caffeine and stores things in a MySQL db?
    • Pro: allows for web UI admin. Python makes such a service easy to code.
    • Con: security, complexity, dependence on Caffeine and MySQL.

Administration interface

  • hammer into ceo, or have a ncurses based standalone app on office terminals that talks to back-end db

Front-end / UI

Development milestones

Mile 1

Enroll cards and associate them with users. Scan a card, get back userid.

Mile 2

Add ability to transfer funds to a user's account. Scan a card, display a balance, show a large button that decrements balance when pressed.

Mile 3

Scan a card, display a balance, show buttons representing purchase options, decrements balance correctly based on price of button pressed. Polished UI and sane timeout values.

Ready for (at your own risk) member use.

Mile 4

Fix bugs and security flaws. Implement any nice-to-have features. Ready for general member use.

  • Barcode reader for headless scan&go purchase
  • Logging for purchasing metrics and bug tracking