1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# req-012
As a user, I want to record a beer transaction in Schist by SMS, so that my
purchase of beer in cash when I have access to my phone is recorded as a beer
transaction.
Source: req-011
Satisfied by: req-043, req-044, req-045, ass-010, req-046, req-047, req-118,
req-119, ass-025
Related to: req-076
## Use case
Trigger: The user buys a beer.
1. If Schist is not in the user's phone contacts, or if the user doesn't have
phone signal, battery charge or phone credit, go to req-013.
2. If the user doesn't know how to form the right command, they use the help
interface until they do know how to form the right command.
3. The user sends an SMS to Schist.
4. If the command is invalid or incorrect, Schist sends help text to the user,
then go to step 3.
5. Schist inserts a beer transaction into Schist's database.
6. Schist sends an OK response to the user.
### Extensions
#### The user gets the date wrong
If the user gets the date wrong, tough -- it's good enough.
#### The user omits the counterparty or gets the counterparty wrong
If the user gets the counterparty wrong, tough -- it's good enough.
#### The user gets the amount wrong
If the user gets the amount wrong, the error will turn up in a reconciliation
transaction the next time the user reconciles their accounts.
#### The user enters the transaction more than once
If the user enters the transaction more than once, they may delete the
transaction later if they spot it. Otherwise, the error will turn up in a
reconciliation transaction the next time the user reconciles their accounts.
|