Use Case: Reading a Meter *********************************************************************** .. Description of a use case .. The description must be formulated as seen from system (not: actors) .. Describes those changes an (outside) actor can notice .. Short and abstract as possible, as long as necessary. .. Each use case must have at least one actor involved .. Each use case must have a trigger and a result Short Description ----------------------------------------------------------------------- A meter is read and the read values are stored in system. Actor(s) ----------------------------------------------------------------------- meter reader, web portal Trigger(s) ----------------------------------------------------------------------- a read-meter form is requested from portal Result(s) ----------------------------------------------------------------------- The new meter values are stored in database. Incoming Data ----------------------------------------------------------------------- username, password, meter id, amount, datetime of reading Outgoing Data ----------------------------------------------------------------------- login form, meter form, success message Precondition(s) ----------------------------------------------------------------------- The system is running Postcondition(s) ----------------------------------------------------------------------- The system is running Invariant(s) ----------------------------------------------------------------------- Essential Steps ----------------------------------------------------------------------- * authenticate meter reader * get meter id, meter value, datetime * check input values: * does the meter id exist? * if not, ask and add a new one * value >= old value? * add new reading in database * output success message Open Issues ----------------------------------------------------------------------- Meter data input can also be performed by some automatic system: - automatic meters send their data automatically (how does these data look like and where is it stored?) - a smartphone/tablet app might deliver the data by photograph/OCR These input devices need an API to deliver data or they require some API to be able to input data into the system. Change Log ----------------------------------------------------------------------- +------------+----------+------------+--------------------------------+ | Timestamp | Who | New Status | What | +------------+----------+------------+--------------------------------+ | 2013-09-04 | uli | init | initial specs | +------------+----------+------------+--------------------------------+ Remarks ----------------------------------------------------------------------- .. raw:: latex \pagebreak[2]