department-of-veterans-affairs / vets-design-system-documentation

Repository for design.va.gov website
https://design.va.gov
36 stars 55 forks source link

Reconcile Full-width Alert vs. Banner #816

Closed humancompanion-usds closed 1 year ago

humancompanion-usds commented 2 years ago

Full-width Alert: https://design.va.gov/components/alert#full-width Banner: https://design.va.gov/components/banner

We're missing the Full-width Alert variation in our Sketch file and thus I was just about to add it. But I'm reading the guidance and I'm hard pressed to tell the difference between this Alert variation and the Banner. My understanding on the use cases for Banner from Dave Conlon was essentially what is under the Full-width Alert variation (i.e. a hurricane alert; government shutdown affecting VA services, etc.) They show up in different places but otherwise how does one choose between them?

Discussed with Allison who offered up this:

Per our guidance, full width...

And our guidance for banner is...

It strikes me that there are two problems here:

  1. The styles of alerts offered in both cases seem dubious.
  2. Very important information vs. emergency information. The urgency of the comm is also relevant here though, again, we just decided to put the IE11 warning for those users in a Banner which will run for week or months and thus, in my mind, is not terribly urgent. Timely maybe.

In short, we need to do some investigation and make some decisions in order to provide clear guidance on when to choose. We may also decide to merge these into different variations of the same component.

seanasewell commented 2 years ago

@humancompanion-usds I read the documentation a few times and am still confused. I agree, it seems like it should be merged. This might be an unpopular opinion but I only see site-wide messaging as informational. Informational with two variations:

  1. Informational (dismissible): Example is a Covid 19 banner message. This message warrants a site-wide banner message because it is important site-wide information to the user. It will live on the site for awhile so it should be dismissible. Why? Because the message doesn't affect if or how a user completes tasks on the site.

  2. Informational (not dismissible): Example of this is a temporary governmental shutdown. This message warrants a site-wide banner message because it is important information to the user. It will be a temporary message so it shouldn't be dismissible. Why? Because the message does affect if or how a user completes tasks on the site.

It feels inconsistent to me for a site-wide banner to be in a warning or an error state. We use warning and error states to signify consequential actions. Usually seen on-page or in-line of something.

Warning state - Used to warn a user, such as when there are negative consequences, and when something has gone wrong. Error state - Used when there is a problem or something destructive is about to occur.

Site-wide banners aren't typically consequential are they? Unless we are warning the user that the site is going to blow up as a consequence of one of their actions, I don't see a use case for it. Even in the example we have in our documentation, we've represented an informational message with the styling of an error alert. This doesn't make much sense to me. The message is also being represented in a dismissible and non-dismissible state. But how does a designer know when to use one over the other?

Like I said earlier, this might be an unpopular opinion 😂

GnatalieH commented 2 years ago

@humancompanion-usds and @seanasewell I want to share the Homepage banner product outline that @thehastingsp shared with me this morning. She has some upcoming work that may be relevant. Just some background info for y'all.

GnatalieH commented 2 years ago

I also want to share this article on notifications that I came across this week. This graphic really stuck with me:

hierarchy-alerts

I don't want to sidetrack the conversation, but I like the idea of being strategic about system communications to the user and potentially having a hierarchy for different types of comms.

caw310 commented 2 years ago

@seanasewell

humancompanion-usds commented 1 year ago

@seanasewell - While I'm out on vacation here is how we can move this issue forward. Based on the conversation in DSC and looking at the audits and our existing content IA, here is what I'd like to propose:

1. Re-define our Banner component and limit it to System Maintenance

2. Break full-width Alert out into a distinct new component: Announcement

3. We update the Alert component to be clear that it is not for those other 2 components

In short, I think the Content team already did the hard part by defining the IA and which component is used when. It's just that our component documentation tries to be too generic and not point folks to those distinctions. In fact, we don't even link to the Content guidance on those components. Compounding the problem is all of the full-width alerts that really should be Facility based (which we covered in DSC) or written by the Content team and simply selected by the appropriate authors.

Tasks are to coordinate with Katy on the code for each and to start on the Sketch updates. If you get to the draft of the guidance revisions, great.

humancompanion-usds commented 1 year ago

I updated my previous comment based on conversation with Sean and Natalie.

k80bowman commented 1 year ago

@humancompanion-usds I just read through your comment. There is quite a bit of engineering work, here is how I would break down what I'm seeing:

Does this sound reasonable?

humancompanion-usds commented 1 year ago

@k80bowman - Let's meet and discuss. After the meeting with Dave and co. I think we can shorten this list.

k80bowman commented 1 year ago

Notes from discussion with @humancompanion-usds:

humancompanion-usds commented 1 year ago

@DanielleThierryUSDSVA and I agreed as part of this work to reclassify the "We’re working on the site" message to move from Access to System and to use the MaintenanceBanner component.

k80bowman commented 1 year ago

After a couple of questions and a conversation with @humancompanion-usds, I wanted to document and clarify the engineering strategy for this work. I've written it up in a Confluence doc, but to summarize what is there, here is the work I am recommending:

humancompanion-usds commented 1 year ago

@k80bowman and I talked again and decided to hold off on most of the engineering work until the following is done in guidance:

Some immediate dev tasks are:

humancompanion-usds commented 1 year ago

Had a fruitful discussion with @DanielleThierryUSDSVA where we decided a few things:

First, we agreed that there is a need to move away from Alerts being used to highlight information on static pages. In particular, Warning alerts don't belong outside of user feedback. We also agreed that we could use another component to sit alongside Featured Content, which is for highlighting eligibility requirements. For that I suggested we repurpose the Alert - Background-only with icon informational component for strictly this purpose. We agreed and now will determine if that's possible in Drupal. I'm going to create a new issue to track this.

Secondly, we will create a video informing editors on the proper use of alerts and banners. Danielle has done this before on building a page. We can then link to that video, which will be in the Drupal Knowledge Base, from the Design System.