Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

General - Statistics Page #2219

Closed
8 of 13 tasks
ninest opened this issue Mar 17, 2024 · 0 comments · Fixed by #3105
Closed
8 of 13 tasks

General - Statistics Page #2219

ninest opened this issue Mar 17, 2024 · 0 comments · Fixed by #3105
Assignees
Labels
epic A feature that will take many tickets to complete

Comments

@ninest
Copy link
Member

ninest commented Mar 17, 2024

Overview

The team needs aggregated statistics from the data in FinishLine on a regular basis. This is difficult to accomplish manually due to the complex data structure powering FinishLine. Let’s build a page for all our stats needs.

Stakeholders

Product Stakeholder: @martin0he , @ninest , @naishahmistry
Software Stakeholder: @martin0he
Reference Users:

User Story

As an admin, I want to be able to create preset layouts of graphs representing data, so that guest users can access and view them.

As a lead, I want the ability to create custom presets of graphs and save them to the database, so that other users can access them to get an overview of the organization statistics.
As a guest user, I want to understand the financial and project statistics of the organization, so that I can make a positive impact in the team.

As a project lead, I want to view statistics for the progress of a specific car over a certain period, so that I can track its development and performance over time.

As a finance lead, I want to generate a breakdown of spending per car part for each team, so that I can identify areas where cost optimization is possible.

As a finance manager, I want to be able to track spending per team, so that I can accurately allocate budget for each team's car parts.

Success Metrics

New pages and sample URLS

Statistics pages
Dropdown nagivation
New chart page
Separate chart page

Sample page URLs:

  • /statistics
  • /statistics/<view id>
  • /statistics/<view id>/new
  • /statistics/<view id>/<graph id>

When the date is updated:

  • /statistics/<view id>?startDate=<start date>&endDate=<end date>
  • /statistics/<view id>/<graph id>?startDate=<start date>&endDate=<end date>

Some views, however, will have a start date and end date saved. For example a view titled "Report 2024" will have a start date of 2024/01/01 and end date of 2024/12/31. If this view or charts from this view are opened, there will be a default start date and end date, and the URLs will look something like this:

  • /statistics/report-2024-id?startDate=2024-01-01&endDate=2024-12-31
  • /statistics/report-2024-id/<graph id>?startDate=2024-01-01&endDate=2024-12-31

For all views, apart from UUID, also generate a permalink from the title. If the view is titled "Report 2024", the permalink should be something like report-2024. Add unique index to permalinks

Every view/graph should be linkable

Statistics page navigation:

image

New Graph form:

When the "new graph" button is clicked, you are taken to a new page where you can select the data, chart type, etc, and see a preview of the chart before it is created.

Form for creating a new visualization

  • Title: name of chart
  • Car: select one car
  • Team: select one team
  • Project: select one or more projects
  • Data: Select one or more data sources
    Options:
    Finance options
    Budget
    Engineering
    Change requests (total, open)
    Design reviews
    Any other data specific to engineers
    Group: select what to group data by
    If nothing is selected to group by, the x axis will be time
    Chart type: default will be line chart (time on x axis, count on y)

image
image

image

image
image
image
image

Specific Graph Details Page:
image
image

(see the URLs above for clarification on the timeframe in the "create view" page)

Create New View Page:
image
Post creation snackbar:
image

Sample charts:

Example: change requests over time

  • Car: …
  • Team: …
  • Project: Suspension 22A
  • Data: change requests
image

Example: comparing budgets of two projects by time

  • Project: Pedalbox 1.10.0 and Pedalbox 2.7.0
  • Data: budget
  • Timeframes will not match, so y axis should be time from start of whatever (project/car/team)
image

Example: Bar chart comparing overall budgets of multiple projects

  • Project: Projects A, B, and C
  • Data: budget
  • Group by: project
  • Chart type: bar
image

Example: Pie chart comparing overall budgets of multiple projects

  • Project: Projects A, B, and C
  • Data: budget
  • Group by: project (if nothing is selected for grouping, it will default to a line chart)
  • Chart type: pie
image

Example: Pie chart comparing the number of change requests for all heads (or leads) of a team:

  • Project: Project A
  • Data: change requests
  • Group by: heads
  • Chart type: pie

image

Rollout

TODO

Out of Scope

TODO

Background / Context

Previous product analytics epic: #228
Previous statistics epic: #531

Acceptance Criteria & Mock-ups

https://www.figma.com/file/qmXuySSwfiD942HwmSSEMe/NER-Product-and-Design?type=design&node-id=6557-15222&mode=design&t=qCilVA6dnedepINu-0

Tickets

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
epic A feature that will take many tickets to complete
Projects
Status: Done
Status: Done
Development

Successfully merging a pull request may close this issue.

3 participants