ministryofjustice / analytical-platform

Analytical Platform • This repository is defined and managed in Terraform
https://docs.analytical-platform.service.justice.gov.uk
MIT License
9 stars 4 forks source link

⚗️ Spike: Break down Dashboarding Epic #2996

Closed julialawrence closed 7 months ago

julialawrence commented 8 months ago

User Story

As an engineer I would like to break down the Dashboardig epic and generate plan of attack and story stubs that will allow the team to deliver to the definition of done of the epic.

Value / Purpose

This plan of attack will not only highlight any lingering questions and assumptions and identify dependencies and information gaps but will also be used to track path to completion of the epic.

Useful Contacts

Edwin Bajomo, Julia Lawrence

Hypothesis

If we carry out a break down exercise with the involvement of the PM , DM and SO, we will give the team more confidence that they're delivering the right thing.

Proposal

We are seeking to address the following:

Business requirements:

  1. Who will be responsible for that?
  2. How will the process be carried out?
  3. Any dependencies?
  4. Team involvement?
  5. Is this a blocker to other deliverables?

Quicksight Pilot

  1. We are currently offering QS to 45 active users on an adhoc basis with management being entirely manual. We would like to carry out a pilot on managing. this offering in code as maintainability and scaling will form a part of our selection criteria.
  2. What should we look at automating?
    • User creation? Yes and should be integrated into control panel
    • Permissions management? Yes and also should be integrated into CP
    • Datasource creation? Unsure
    • Dashboard creation? No but potentially styling and backups
    • And more!
  3. Scope of the pilot
  4. Level of collaboration with other teams
  5. Stories for delivery

    Identity and Access Management

  6. How best to structure pilot to dogfood AAD integration

    Make recommendations on dashboard and visualisations tools to be integrated onto the Analytical Platform

  7. ???

Definition of Done

julialawrence commented 8 months ago

Gathering Business Reqs

  1. Get list of current users, pass it to....someone Quicksight Pilot Plan of Execution:
  2. Determine approach -- story (import vs build)
  3. ???
julialawrence commented 8 months ago

Actions:

  1. Roadmapping Session resulting in tickets
  2. Ask app requestors to try pilot
  3. Part of the research that might be useful would be taking a user like that (someone that makes dashboards) and getting them using this and gather info from them
  4. Research costs to productionise.
julialawrence commented 8 months ago

Scope of the pilot:

  1. We would like to carry out a pilot on managing. this offering in code as maintainability and scaling will form a part of our selection criteria.
  2. Discovery of controlling datasource access via Control Panel (access managed separately for QS not IAM)
  3. Ok to proceed with pilot re: costs
  4. Only users with AAD identity can use QS pilot.
julialawrence commented 8 months ago

Decisions:

  1. In order of preference:
    • Rebuild in Apps and Tools London
    • If we are unable to auth a user in DPAT QS and have them be able to assume their CP role/permissions, we move onto rebuilding in AP Data Prod in London
    • If that doesn't work for any reason, we try importing current resources ^ Move EPIC

Story: High-level diagram of proposed architecture Story: Enable AAD auth in auth0 for CP Story: As such, the critical first task/story is allow a user to authenticate with their CP identity to QS in another account and access a datasource backed by S3 in AP Data Prod Stretch story: Map across AAD user identity to their GH permissions/role in CP (One user? Many users? All Users????????!!!!!!!!1111ONE)

julialawrence commented 7 months ago

https://mojdt.slack.com/archives/C04M8224WCV/p1706005322914609 <-- link to related docs.

julialawrence commented 7 months ago

Link to breakdown doc: https://docs.google.com/document/d/1F0s_G_D5g_JJncTkDReVfkxevATN2fZMPuZ5xYQ0_ds/edit