Geo: Improve UI/UX on Administrator Panel
> Appreciate your systems administrator - they guarantee a smooth experience for all other Geo users. - *The Wise Geologist* ### Introduction GitLab Geo is actively used by any user in distributed teams and/or important for Disaster Recovery. Systems administrators are responsible for installing Geo, upgrading GitLab (and Geo), configuring Geo, deciding what data to replicating, monitoring/alerting, troubleshooting Geo and potentially failing to a secondary. Their user experience for Geo is important because difficulties administrating Geo can negatively impact Geo's adoption. Allowing systems administrators to work with Geo easily will ensure that all other GitLab users have the best user experience possible. If systems administrators are not empowered to solve any issues quickly, this will negatively impact all other users. For this reason, improving the user experience for systems administrators is an important part to making Geo successful. ### Problem to solve Geo requires extensive interactions with the command line but also offers a graphical user interface located at `http://gitlab.example.com//admin/geo/nodes`. This interface allows administrators to view important information regarding their Geo installation, monitor the health of the system and perform some corrective actions. The following problems are known or assumed: * The Geo Administrator Panel is incomplete and does not allow systems administrators to perform relevant tasks for all data types * The Geo Administrator Panel UI does not adhere to the overall GitLab Design System * Many tasks are confusing (e.g. Adding a new Geo node) and require moving in and out of the UI and the CLI * The UI is different between the Primary and the Secondary * Many tasks are not yet available in the UI * Monitoring is challenging * Configuration is error prone and sensitive * We don't fully understand what the jobs to be done are for systems administrators and what their priority is * Naming is inconsistent ### Intended users * [Sydney - Systems administrator](https://about.gitlab.com/handbook/marketing/product-marketing/roles-personas/#sidney-systems-administrator) ### Further details <details> <summary> Samples of the current admin interface:</summary> Overview: ![Screenshot_2020-02-07_at_10.33.49](/uploads/345663e97f69048413199fbbf5cc643a/Screenshot_2020-02-07_at_10.33.49.png) Details: ![Screenshot_2020-02-07_at_10.36.31](/uploads/ef1c2b54f87a00fc426541cdc7dbcc66/Screenshot_2020-02-07_at_10.36.31.png) Secondary details: ![Screenshot_2020-02-07_at_10.34.41](/uploads/d3834acdc90b3b3131fd58424c6d6c74/Screenshot_2020-02-07_at_10.34.41.png) Settings: ![Screenshot_2020-02-07_at_10.34.01](/uploads/d7bb36d42bb0922addb738ab47a43e82/Screenshot_2020-02-07_at_10.34.01.png) </details> ### Proposal * Interview at least 5 systems administrators to understand their use case and validate that the Administrator Panel requires improvements * Create early drafts and sketches for how the Administrator UI could look like * Define all jobs to be done * Create design sketches for a re-designed user interface * Validate designs with systems administrators * Technical evaluation of which functions can be presented in the UI * Define individual implementation issues and strategy for how to deliver Administrator UI in small iterations ### Testing * This will require both frontend and backend testing ### Documentation * We should provide clear documentation for the UI focusing on how to accomplish specific jobs ### What does success look like, and how can we measure that? * Measure user satisfaction before the redesign and after * Provide a UX scorecard before and after * Define jobs to be done and assess how many can be performed e.g. 2/10 via UI ### What is the type of buyer? * Premium * Ultimate ### Links references * [Geo sketching session](https://gitlab.com/gitlab-org/geo-team/discussions/issues/4944)
epic