diff options
Diffstat (limited to 'roadmap.mdwn')
-rw-r--r-- | roadmap.mdwn | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/roadmap.mdwn b/roadmap.mdwn new file mode 100644 index 0000000..2a9d611 --- /dev/null +++ b/roadmap.mdwn @@ -0,0 +1,169 @@ +[[!meta title="Road map"]] + +# Roadmap + +The current goal of Obnam development to get the software to a state +where its author uses it for real, for at least a subset of their live +data, and is ready to ask others to try the software. + +~~~roadmap +goal: + label: "Lars uses Obnam2 for real" + depends: + - incremental_backup + - docs + - clean_code + +docs: + label: "Obnam has docs" + depends: + - manual + - code_docs + +deb: + label: "CI builds an obnam2.deb automatically" + depends: + - ci + +ci: + label: "CI builds and tests obnam" + status: next + +e2_server: + label: "Lars has an Obnam server running on home server" + depends: + - server_provision + +server_provision: + label: "The Obnam server at home is provisioned with automation" + depends: + - deb + - access_token + +https: + label: "The Obnam server requires using https, not plain http" + depends: + - ci + +access_token: + label: "The Obnam server at home requires using an access token signed by a well-known public key" + depends: + - https + +client_token: + label: "The Obnam client generates the access token itself" + depends: + - access_token + +e1_client: + label: "Lars has the Obnam client installed on his laptop, configured to back up personal projects" + depends: + - nice_ux + +initial_backup: + label: "Lars has made an initial backup of personal projedts in less than an hour" + depends: + - e1_client + - e2_server + +incremental_backup: + label: "Lars has made a no-op incremental backup of personal data in less than a minute" + depends: + - initial_backup + - incremental + +filetypes: + label: "The Obnam client backs up and restores all interesting types of files" + depends: + - symlinks + +regular_files: + label: "The Obnam client backs up and restores regular files, with uid, gid, mtime, permissions" + +directories: + label: "The Obnam client backs up and restores directories, with uid, gid, mtime, permissions" + depends: + - regular_files + +symlinks: + label: "The Obnam client backs up and restores symlinks, with uid, gid, mtime, permissions, target" + depends: + - directories + +incremental: + label: "The Obnam client backs up only new or changed files" + depends: + - filetypes + +nice_ux: + label: "The Obnam client provides a nice user experience" + depends: + - client_token + +clean_code: + label: "Lars has reviewed all code and tidied up anything that's not clean and idiomatic" + depends: + - code_docs + +code_docs: + label: "The code is documented for someone wanting to use the Obnam create as a library" + depends: + - manual + +tests: + label: "Everything in Obnam has automated tests" + depends: + - acceptance_criteria + +acceptance_criteria: + label: "The Obnam acceptance criteria are up to date and sufficiently comprehensive" + +manual: + label: "There is a rudimentary user manual for others" + depends: + - tests +~~~ + + +# Roadmap legend + +```roadmap +goal: + label: | + This is the end goal: + if we reach here, there + is nothing more to be + done in the project + depends: + - finished + - blocked + +finished: + status: finished + label: | + This task is finished; + the arrow indicates what + follows this task (unless + it's blocked) + +ready: + label: | + This task is ready + to be done: it is not + blocked by anything + +next: + status: next + label: | + This task is chosen + to be done next + +blocked: + label: | + This task is blocked + and can't be done until + something happens + depends: + - ready + - next +``` |