Campaign Metrics
From UrbanWiki
This project focuses on standardizing the logging of typical measurements for performance, usability, and user participation (reputation) to a common format/access to a centralized server. For ease of access, aggregation, and propagation.
Contents |
[edit] Specification
For more information: Campaign_Metrics_Specification
[edit] Metrics
The following are proposed metrics that the system should support. Please add/remove as necessary. Calculations are accepted, but measurements are preferred. For example, measurement: timestamp of first data point; calculation: upload frequency for campaign.
[edit] Participant
- # of campaigns participating in
measure(['participant', guid('uid.example@domain.tld'), 'join'])
- # of campaigns abandoned
measure(['participant', guid('uid.example@domain.tld'), 'part'])
- Upload frequency
measure(['participant', guid('uid.example@domain.tld'), 'post'], date(), 'date')
- Use of Beta distribution for confidence/reputation
#todo helper.beta(namespace, namespace) # returns: mean, confidence
[edit] Contributions
- Count of "invalid," and other tags/attributes, of images
measure(['participant', guid('uid.example@domain.tld'), 'data.invalid'])
- "Quality," using common rating convention among the campaign (ie. 5 stars), of images
measure(['participant', guid('uid.example@domain.tld'), 'data.quality'], 3)
# or
measure(['data', guid('uid.picture.png'), 'quality'], 4)
[edit] Campaign
- # of participants
# Accessible from participant namespace
- lifetime
# Accessible from the Date statistics using the first and last column
- data coverage (area, period)
# Accessible from the Location statistics using the area column
[edit] Access
- Frequency a participant checks in with the system
# code
measure(['participant', guid('uid.example@domain.tld'), 'visit'], date(), 'date')
# Accessible via participant.GUID_of_participant.visit.statistics.frequency
- Frequency/count of upload method use
# code
measure(['participant', guid('uid.example@domain.tld'), 'data.upload.method'], 'email', 'string')
# Accessible via participant.GUID.data.upload.method.statistics.values
- web form
- sms
- client software (ie: campaignr)
- Upload delay (server receiving timestamp - capture timestamp)
# code
measure.start('data.upload.delay')
...
measure.stop('data.upload.delay')
# Accessible via data.upload.delay.duration.mean
- Network technology use for upload
measure('data.network', 'gsm', 'string')
- GSM
- 3G
- WiFi
- Device used (using HTTP_AGENT)
measure('device', 'iphone', 'string')
[edit] Performance
- Latency between data processing modules
- Crashes - log when app crashes whenever possible.
- Battery life, signal strength, etc. w/ info about what sensors are in use.
[edit] Interaction
- For applications that have multiple "Activities"/views/functions log frequency of usage of each. Eg. How often do participants visit the stats or summary screen.
- How often, and delay, does a participant respond to triggers?
- How often do they launch the application on their own without any prompt or reminder.
- Log turning on and off sensors and services by participant.
[edit] Privacy
- For applications that have privacy-preserving features, log frequency of usage of each. For example:
- How frequently does a user delete data?
- How frequently does a user replace data or routes with new data or routes?
- If the default is sharing data, how often does the user opt to not share data?
- If the default is not sharing data, how often does the user opt to share data?
- How many users have deleted accounts?
[edit] References
[1] S. Reddy, K. Shilton, J. Burke, D. Estrin, M. Hansen, and M. Srivastava, “Evaluating participation and performance in participatory sensing,” in Proceedings of the International Workshop on Urban, Community, and Social Applications of Networked Sensing Systems (UrbanSense08), Nov. 2008.

