department-of-veterans-affairs / va.gov-cms

Editor-centered management for Veteran-centered content.
https://prod.cms.va.gov
GNU General Public License v2.0
99 stars 69 forks source link

Spike: Grouping permissions together for easier management #7960

Closed kevwalsh closed 2 years ago

kevwalsh commented 2 years ago

User Story or Problem Statement

How might we lessen the crazines of /admin/people/permissions?

Particularly for the content permissions.

This was spun out of #7092

Acceptance Criteria

Implementation steps

## Design principles Veteran-centered - [ ] `Single source of truth`: Increase reliability and consistency of content on VA.gov by providing a single source of truth. - [ ] `Accessible, plain language`: Provide guardrails and guidelines to ensure content quality. - [ ] `Purposely structured content`: Ensure Content API can deliver content whose meaning matches its structure. - [x] `Content lifecycle governance`: Produce tools, processes and policies to maintain content quality throughout its lifecycle. Editor-centered - [ ] `Purpose-driven`: Create an opportunity to involve the editor community in VA’s mission and content strategy goals. - [ ] `Efficient`: Remove distractions and create clear, straightforward paths to get the job done. - [ ] `Approachable`: Offer friendly guidance over authoritative instruction. - [ ] `Consistent`: Reduce user’s mental load by allowing them to fall back on pattern recognition to complete tasks. - [ ] `Empowering`: Provide clear information to help editors make decisions about their work. ### CMS Team Please check the team(s) that will do this work. - [ ] `CMS Program` - [ ] `Platform CMS Team` - [ ] `Sitewide CMS Team ` (leave Sitewide unchecked and check the specific team instead) - [ ] `⭐️ Content ops` - [ ] `⭐️ CMS experience` - [ ] `⭐️ Offices` - [ ] `⭐️ Product support` - [ ] `⭐️ User support`
msbtterswrth commented 2 years ago

I think permission group will allow us to group perms by persona. Looks like there was some previous work done in this air table around personas. We should explore this idea more.

There is also another module that creates an improved view so the table is not so long as well as adding a few nice filters for searching through permissions. This one seems very promising as well, we should consider replacing PFM with this improved module.

image

kevwalsh commented 2 years ago

I think permission group will allow us to group perms by persona. Looks like there was some previous work done in this air table around personas. We should explore this idea more.

  1. i think Personas are of limited use here, because personas are design tools, and by definition are about not meant to be absolute and infallable, but permisisons are. So it adds a level of complexity without giving us much in return. The "Content creator" roles are mapped to products, which is as close as we can get to personas, and there's no reason to abstract those ones out further. The permissions in there are product specific and can't be grouped, and they are limited mostly about what content type you can create.
  2. The role grouping that may be possible is to take all those checkboxes that are identeical for the 3 Editorial workflow roles, and collapse those together. But i'm not sure how much of a win that is, it's like one checkbox plus a module with config, instead of 3 checkboxes, per permission.
Screenshot Permissions_filtered_by_modules___VA_gov_CMS
  1. FPA module does seem like an improvement over FPM, and i guess it's a pretty quick one ... maybe we need to get a couple eyes on it in a PR environment?
msbtterswrth commented 2 years ago

Thanks for this thoughtful summary. I'm going to create a follow up ticket to get FPA into a pr for perusal by others for potential future release.