source: main/eko-disco-specs/trunk/use-cases/meter-reading.rst @ 10629

Last change on this file since 10629 was 10584, checked in by uli, 11 years ago

Add initial docs.

File size: 2.8 KB
RevLine 
[10584]1Use Case: Reading a Meter
2***********************************************************************
3
4.. Description of a use case
5.. The description must be formulated as seen from system (not: actors)
6.. Describes those changes an (outside) actor can notice
7.. Short and abstract as possible, as long as necessary.
8.. Each use case must have at least one actor involved
9.. Each use case must have a trigger and a result
10
11
12Short Description
13-----------------------------------------------------------------------
14
15A meter is read and the read values are stored in system.
16
17
18Actor(s)
19-----------------------------------------------------------------------
20
21meter reader, web portal
22
23
24Trigger(s)
25-----------------------------------------------------------------------
26
27a read-meter form is requested from portal
28
29
30Result(s)
31-----------------------------------------------------------------------
32
33The new meter values are stored in database.
34
35
36Incoming Data
37-----------------------------------------------------------------------
38
39username, password, meter id, amount, datetime of reading
40
41
42Outgoing Data
43-----------------------------------------------------------------------
44
45login form, meter form, success message
46
47
48Precondition(s)
49-----------------------------------------------------------------------
50
51The system is running
52
53
54Postcondition(s)
55-----------------------------------------------------------------------
56
57The system is running
58
59
60Invariant(s)
61-----------------------------------------------------------------------
62
63
64
65
66Essential Steps
67-----------------------------------------------------------------------
68
69* authenticate meter reader
70* get meter id, meter value, datetime
71* check input values:
72
73  * does the meter id exist?
74  * if not, ask and add a new one
75  * value >= old value?
76
77* add new reading in database
78* output success message
79
80
81Open Issues
82-----------------------------------------------------------------------
83
84Meter data input can also be performed by some automatic system:
85
86  - automatic meters send their data automatically (how does these
87    data look like and where is it stored?)
88
89  - a smartphone/tablet app might deliver the data by photograph/OCR
90
91These input devices need an API to deliver data or they require some
92API to be able to input data into the system.
93
94
95Change Log
96-----------------------------------------------------------------------
97
98+------------+----------+------------+--------------------------------+
99| Timestamp  | Who      | New Status | What                           |
100+------------+----------+------------+--------------------------------+
101| 2013-09-04 | uli      | init       | initial specs                  |
102+------------+----------+------------+--------------------------------+
103
104
105Remarks
106-----------------------------------------------------------------------
107
108
109.. raw:: latex
110
111      \pagebreak[2]
Note: See TracBrowser for help on using the repository browser.