Difference between revisions of "Point Of Sale"

From CSCWiki
Jump to navigation Jump to search
m (rewording in re. complaint)
 
(5 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.
  
== Milestone 1 ==
+
== 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.
 
Enroll cards and associate them with users. Scan a card, get back userid.
  
== Milestone 2 ==
+
=== 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.
 
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.
  
== Milestone 3 ==
+
=== 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.
 
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.
 
Ready for (at your own risk) member use.
  
== Milestone 4 ==
+
=== Mile 4 ===
 
Fix bugs and security flaws. Implement any nice-to-have features. Ready for general member use.
 
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