diff --git a/83-energy-efficient.md b/83-energy-efficient.md new file mode 100644 index 0000000..48d47a9 --- /dev/null +++ b/83-energy-efficient.md @@ -0,0 +1,72 @@ + + + +## Preamble + + Idea: 83 + Title: Energy Efficient Status + Status: In Progress + Created: 2018-02-19 + + +## Summary +A specific issue about the energy efficiency of different parts of Status (`status-go`, `status-react`, `desktop` (when running on a laptop battery). + + +## Swarm Participants + + + + + + + + +- Lead Contributor: @mandrigin (~25h) +- Contributor (Go): @feuGeneA +- Contributor (QA): @lukaszfryc (~10h/week) + + +## Product Overview +Energy consumption is a crucial part of the mobile experience, and even though it is related to performance, it is worth having a separate. +The end goal is: +- to provide a toolkit and guidelines to test energy efficiency of different parts of an app on different platforms; +- using this toolkit to fix the top battery drainers; +- notice regressions early by having tests in place. + +### Goals + +1. Create a BoK for Energy efficiency testing: https://github.com/orgs/status-im/projects/18 +a. test apps are created for both Android and iOS +b. test cases are written and tools are created to measure the energy efficiency of both Status client (status-react+status-go) and tests apps (status-go exclusively). +c. tests are run on a regular basis +d. (stretch goal) tests are automated for both platforms + +2. Fix obvious issues with energy consumption +https://github.com/orgs/status-im/projects/17 + + +## Exit criteria +- We have test cases and tools to check the energy efficiency of `status-go` and `status-react` independently; +- We can notice regressions/improvements caused, e.g. by updating the version of `go-ethereum` or new features of Status; +- Top energy draining issues are identified and fixed. + +## Success Metrics +KR: +(1) foreground energy consumption is < 120% of the apps in a similar class (messengers) +(2) background energy consumption is < 120% of the apps in a similar class (messengers) + + +## MVP(s) +MVP1 (docs & process): Create and integrate energy efficiency testing as a part of the release process (date: *Mar, 30*) +MVP2 (development): Create a low-power background mode for status-go (date: *Mar, 30*) + + +## Supporting Role Communication + + +## Useful Links +https://github.com/dgryski/go-perfbook + +## Copyright +Copyright and related rights waived via [CC0](https://creativecommons.org/publicdomain/zero/1.0/).