freedomofpress / securedrop

GitHub repository for the SecureDrop whistleblower platform. Do not submit tips here!
https://securedrop.org/
Other
3.63k stars 685 forks source link

Long term improvement to admin UX: SecureDrop Admin GUI/wizard #3640

Open redshiftzero opened 6 years ago

redshiftzero commented 6 years ago

Description

During the last architecture meeting, we discussed the appliance model of SecureDrop, where admins are far more hands-off compared to today. The medium-term goal here is that a less technical administrator may be able to act as an administrator for SecureDrop. They should rarely encounter issues in the happy path of SecureDrop life, as it would be expected that a less technical admin will escalate almost any issue encountered to free/paid support.

To enable the appliance vision to come to fruition without creating an unmanageable support burden, we would need to improve system reliability and prevent more bugs from hitting production sites (major steps towards this will be taken when some of the testing/CI improvements we are working on land in develop).

Next, we would need to make the install and management process simpler from the admin perspective, which is what this ticket is about. The proposal here is to create a Qt-based admin GUI/wizard that is an interface for the currently-existing securedrop-admin tool. It could look something like this from the Admin's perspective:

First launch

screen shot 2018-07-13 at 4 42 54 pm

First install

Prompts guide the user through the install steps:

screen shot 2018-07-13 at 4 43 45 pm

Post-install view

screen shot 2018-07-13 at 4 44 12 pm

While I'm filing this in case someone in the community is inspired to work on pieces of this (e.g. parts of the sdconfig and install GUI can be implemented incrementally), we have significant work to do to before making this fully a reality. For example, shipping this is blocked until the workstation code is packaged up properly: https://github.com/freedomofpress/securedrop/issues/3502

And the full post-install admin GUI is blocked until we have an (at least mostly) automated method for installing journalist/admin workstations: https://github.com/freedomofpress/securedrop/issues/1177

User Research Evidence

Lots of people want SecureDrop, and being insufficiently experienced with the CLI is often a barrier, which inhibits adoption.

Lots of people also install SecureDrop despite the lack of experience with the CLI and end up struggling and requiring a lot of help. If we spend some time making routine actions way easier for these people that will use SecureDrop anyway, then we can use limited engineering time to address the more complicated issues in SecureDrop.

User Stories

As a SecureDrop admin, I want installing SecureDrop be simple such that I am not confused/annoyed.

As a SecureDrop developer, I want working on SecureDrop to involve more wizards.

huertanix commented 6 years ago

This is a noble pursuit and I too want to involve more wizards into SecureDrop.

@redshiftzero Could you add the UX label so I can easily find this later on? :>