Skip to content
This repository has been archived by the owner on Jul 24, 2024. It is now read-only.

Support Page UX Design #334

Closed
syndesis-bot opened this issue Nov 15, 2017 · 34 comments · Fixed by #1586
Closed

Support Page UX Design #334

syndesis-bot opened this issue Nov 15, 2017 · 34 comments · Fixed by #1586
Assignees
Labels
cat/design concrete UX design. Use this for PRs containing UX designs. group/uxd User experience (UX) designs
Milestone

Comments

@syndesis-bot
Copy link
Collaborator

@dongniwang 2017-10-17 UX Design
@syndesis-bot syndesis-bot added this to the Sprint 20 milestone Nov 15, 2017
@syndesis-bot syndesis-bot added cat/design concrete UX design. Use this for PRs containing UX designs. group/uxd User experience (UX) designs labels Nov 15, 2017
@syndesis-bot
Copy link
Collaborator Author

syndesis-bot commented Nov 15, 2017

@paoloantinori 2017-10-18

Relates to: #191

@syndesis-bot
Copy link
Collaborator Author

@paoloantinori 2017-10-18

Related to this topic, I have a comment on the current UI in presence of errors:

  • My integration fails to deploy for whatever backend reason. The integration listing page shows me only that my Integration is in Pending status, but there is no other useful error. I had to check Openshift logs to find the root cause.

Despite the aim is to simplify the tool to the end user, I think we have to share some more specific hint of what might be wrong with the user. Currently, the only option she has is to delete the integration.

@syndesis-bot
Copy link
Collaborator Author

@dongniwang 2017-10-18

Hi @paoloantinori, thank you for your suggestion on error handling. I agreed there's room for improvement on the current implementation.

It would be great if we can better inform users with specific error message so it's easier for them to troubleshoot. Additionally, I believe capturing specific error message could also help the support folks better understand the problems/issues.

This is a collaborated efforts among ux, back-end and front-end. @gashcrumb , do you have any insights into this?

Do we track error handling under this issue? Or should we file another issue to track it separately? @amysueg @sjcox-rh @gashcrumb

@syndesis-bot
Copy link
Collaborator Author

@amysueg 2017-10-18

Yes, thank you @paoloantinori

@dongniwang Error handling seems broader than just this one issue so I would suggest a new issue to improve error handling in the UI. First, we need a list of all the possible error conditions and when and where they occur. Is there such a thing? Or at least a starter set?

@syndesis-bot
Copy link
Collaborator Author

@paoloantinori 2017-10-18

I'm still new to this system, so probably @rhuss is a better person to reply to this.

In general, in any sw or java based sw you have a set of "expected" errors, that are the "easy" ones, since you can foresee them.

Then you have a more generic group that could logically be referred to as "anything else" that includes either errors that are currently still not classified, or eventually error that are so chaotic that don't really belong to any classification, but that anyhow should still be at least logged so that can give a hint about what's not working.

@syndesis-bot
Copy link
Collaborator Author

syndesis-bot commented Nov 15, 2017

@rhuss 2017-10-19

Currenty the error handling and live monitoring of integrations is part of a bigger story which we want to tackle for TP4.

What we already start is to connect the health status of an integration into the UI (#166). We will need to come back to this issue when we are at. I hope at the beginning of next week.

@syndesis-bot
Copy link
Collaborator Author

@paoloantinori 2017-10-20

While reasoning on this functionality, even from a UX pov, I was thinking that there are support information can be divided in:

  • global information
  • integration specific information

And with this classification in mind I was asking myself if this has to be an isolated page, or if, at least the integration specific information, should actually be presented within the current Integration view.

I'm not sure what's best. I'm just some food for thought.

@syndesis-bot
Copy link
Collaborator Author

@paoloantinori 2017-10-25

Hi @amysueg . Do you have any news on this activity?

@syndesis-bot
Copy link
Collaborator Author

syndesis-bot commented Nov 15, 2017

@amysueg 2017-10-26

@paoloantinori The UX team has laid out a schedule of our design work by Sprint based on the product priorities that came out of the F2F meeting, and we have scheduled this work for an internal (UX team) review around the first week of December.

From related issue: #191
"...we allow the user to choose which information to extract, and just produce a .zip file that he's going to download on his own desktop. Leaving the step of attaching it to a case as a manual step for the user."

Assume that the workflow will be:

  1. Go to Help menu
  2. Select a menu item labeled "Support" or "Red Hat Support"
  3. Open a modal page that is a form displaying options for the download (sensitive information protected, etc.). Can you share more about what choices those will be initially?
  4. The user selects options then "Download" button. There should be some instruction on the page that indicates the sending to Red Hat Support is a manual process and where to send the zip file.

@dongniwang @sjcox-rh please add your thoughts

@syndesis-bot
Copy link
Collaborator Author

@amysueg 2017-10-26

It looks as though the work is being scheduled for Sprint 19, so you need UX design sooner? We can shuffle some things around - when do you need the UX designs @paoloantinori ?

@syndesis-bot
Copy link
Collaborator Author

@paoloantinori 2017-10-27

Hi @amysueg, thanks for your input. I think there has been some miscommunication regarding what was expected for spring 19. Anyhow I will start the work with the info you gave me that are definitely more than enough to define the development direction.

Thank you

@syndesis-bot
Copy link
Collaborator Author

@amysueg 2017-11-14

@dongniwang Dongni created a few designs for this.
@rhuss @paoloantinori - once we have more detailed requirements regarding what to show on the download page, we'll be happy to update the designs.

technical_extensions_empty_state copy
technical_extensions_empty_state

@syndesis-bot
Copy link
Collaborator Author

syndesis-bot commented Nov 15, 2017

@paoloantinori 2017-11-15

Hi @amysueg , thank you for the update. Please see the linked issue here for more details: #191

@amysueg amysueg assigned dongniwang and unassigned amysueg Nov 16, 2017
@amysueg
Copy link

amysueg commented Nov 17, 2017

On hold until after Sprint 20 demo per Paolo; we'll move this to Sprint 21 during planning cycle.
(I commented on the old ticket in the syndesis-ux repo... )

@amysueg
Copy link

amysueg commented Nov 17, 2017

And to save @paoloantinori from having to copy and paste, here is his response:
Confirmed.
As a future reference, the characteristic of this page is that it's gonna get new elements with time; depending on evolution of the platform and the information that we identify as being useful.

So in my view it will have a filtering text box, to allow the user to display a subsection of the main form.

And the form will probably be divided in multiple logical sections, like: "platform information", "integration information", and possibly more.

An example of the interaction is a user that wants to attach logs.
She can choose to attach platform logs
She can choose to attach Integration logs
In case of Integration she might want to chose to attach only the logs for an arbitrary subset of Integration(pods) that she want to share.

@dongniwang
Copy link
Contributor

@paoloantinori

Sorry for the confusion, but this is the new monorepo ux issue. Copying your comments from syndesisio/syndesis-ux#47 (comment)

Confirmed.
As a future reference, the characteristic of this page is that it's gonna get new elements with time; depending on evolution of the platform and the information that we identify as being useful.

So in my view it will have a filtering text box, to allow the user to display a subsection of the main form.

And the form will probably be divided in multiple logical sections, like: "platform information", "integration information", and possibly more.

An example of the interaction is a user that wants to attach logs.
She can choose to attach platform logs
She can choose to attach Integration logs
In case of Integration she might want to chose to attach only the logs for an arbitrary subset of Integration(pods) that she want to share.

@lhein
Copy link
Contributor

lhein commented Nov 27, 2017

There should be an explanation on the support dialog describing what this screen is about, why it offers downloads and what to do with the downloaded file.

@amysueg
Copy link

amysueg commented Nov 27, 2017

@lhein Thank you for the comments.

Can someone confirm what the user should do once she has downloaded the file? Is there an email address we would specify in the UI, or a link to another page where more information would be provided? @paoloantinori @rhuss

@rhuss rhuss modified the milestones: Sprint 20, Sprint 21 Nov 27, 2017
@paoloantinori
Copy link
Contributor

paoloantinori commented Nov 27, 2017 via email

@amysueg
Copy link

amysueg commented Nov 27, 2017

I understand. However, when @lhein suggests that we inform the user in the UI what to do with the downloaded file, do we actually include an email address or the location of an FTP site? That's what I'm unclear about. And if we do include an email address in the UI, what email address? [email protected]?

@sjavurek copying you for your thoughts, thank you.

@sjavurek
Copy link

Sorry, I'm way behind on my e-mails. Hopefully the meeting this morning helped. These files can be very large so an e-mail address won't work. The FTP site (dropbox.redhat.com) is our ideal place, however, I do not think there is a web based interface for that. I'm researching it.

After our call, I'm also wondering about our discussion for the checkbox to allow us to export a project with credentials. I know we mentioned have a little "i" information pop up but given the ramifications of sharing your credentials, I wonder if we need to have a pop up when the user a checks that box, i.e. something like "By checking this box you agree to share your username/passwords" for this integration.". What do you think?

@sjavurek
Copy link

@paoloantinori @rhuss I was mulling over the meeting in my mind this morning. Why is it less taxing to the system or easier for us to download a large file locally then to stream it to dropbox.redhat.com? It just seems like an extra step for customers to take that is rather cumbersome. I think this should be as easy as possible.

Sorry for the rehash, I'd just like to understand. :-)

Susan

@rhuss
Copy link
Collaborator

rhuss commented Nov 29, 2017

@sjavurek The problem is that we can't guarantee that the backend (Syndesis) can reach dropbox.redhat.com (although very likely as we are talking about 'integrations' which naturally require accessing external systems, too). But maybe more important, it's about giving the user the opportunity to check the logs before sending it out to the support. Could be that this is the German in me ;-), but if this is not a problem, we should offer both possibilities. For the "Upload to Red Hat Support" option, we would need some extra fields (e.g. email address, notes) so that we can later correlate back to the user when uploaded.

@lhein
Copy link
Contributor

lhein commented Nov 29, 2017

I would just put in some more detailed explanation why one should zip the logs and then what to do with that archive mentioning that they can be sent to some email address AND/OR uploaded to some official dropbox folder. Tbh the URL dropbox.redhat.com doesn't really show its a support thing. Also it might be reasonable to ask the user to create a Jira issue / Salesforce case and attach the file there.

@rhuss
Copy link
Collaborator

rhuss commented Nov 29, 2017

@lhein I think its the sheer size of the logs which can be too large for sending via mail or attaching to a JIRA ticket. Saying this, we must be also clear that creating and sending these logs can put quite some burden on the backend (even when used with streaming). Also we should make it as simple as possible for the citizen user.

On the other hand, it's not really clear to me now, how large the files are really are and whether we are optimizing too early.

@paoloantinori
Copy link
Contributor

paoloantinori commented Nov 29, 2017 via email

@sjavurek
Copy link

Anything larger than 1GB has to go via the FTP site. There are ways to chunk up large files to work around that but its a lot of work to reassemble them. It's much easier to simply put it on the FTP site at this time.

With that said, we do not have a browser based option at this time, however, there is some work being done in this area as we plan to replace this dropbox at somepoint. The final solution has not been verified yet but I've been looped into some of the conversations.

Do we have any early tests that may help us estimate the size of the file in question?

Perhaps we can let the customer implement their own integration as Paolo mentioned? By default, we can download it but allow the customer a way to override that and use their own integration. [1] highlights a support tool which is command based. Technically they can even open a support ticket using this tool and attach small tickets to the case. Integration to the FTP site where ever that may be in the future is forthcoming.

[1] https://access.redhat.com/solutions/2112#supporttool3

@lhein
Copy link
Contributor

lhein commented Dec 1, 2017

1 GB log files in a compressed archive? I am tempted to say that something is wrong with the way the logs are handled if it comes to such sizes. But thats just me maybe.

@rhuss
Copy link
Collaborator

rhuss commented Jan 9, 2018

Any news on this story ? I move it over to Sprint 23 / TP4 as I guess its not finished yet.

@rhuss rhuss modified the milestones: Sprint 21, Sprint 23 Jan 9, 2018
@dongniwang
Copy link
Contributor

@rhuss waiting on @sjavurek to do a final review then I'll create a PR for it. We're almost there!

@dongniwang
Copy link
Contributor

PR #1168 merged, closing this issue.

@paoloantinori
Copy link
Contributor

Hi @dongniwang I have a couple of feedback for you now that the main functionality is there and we are working to align the ui the designed one:

  1. i think we should cover a way to inform the user if the creation of the download.zip fails, for any unforseen reason
  2. the creation of the archive might be slow. how much slow will depend on the hw on which the platform is deployed, current load and many other buttefly-effect factors. for this reason I wonder if we should provide a message telling the user that her request to produce a file to download has been acknowledged and that it will be fulfilled as soon as possible.

@paoloantinori paoloantinori reopened this Feb 7, 2018
@dongniwang
Copy link
Contributor

Hi @paoloantinori, thank you for the feedback! I agreed that we should have a way to keep users informed during the process. Here's the proposed solution:

  1. Use PatternFly Inline Notification pattern so we can display an error message when download fails.

screen shot 2018-02-08 at 10 18 58 am

2. If users have to stay on the support page while download is happening, we can show a spinner to inform users that their request has been acknowledged and is being processed. We're using a similar spinner/progress indicator in the [Import/Export UX design](https://github.com/syndesisio/syndesis/blob/master/ux/designs/importexport/importexport.md).

screen shot 2018-02-08 at 10 26 04 am

@michael-coker - Can you please help @paoloantinori with the UI implementation? Thanks so much! I'll create a UX pr to update the design later, but meanwhile, please go ahead with the implementation.

cc: @amysueg @sjcox-rh

@mcoker
Copy link
Contributor

mcoker commented Feb 8, 2018

@paoloantinori how would you like to handle the messaging and processing indicator work? Will you build the base functionality and pass off to me to handle the styling, or do you have a different workflow in mind?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
cat/design concrete UX design. Use this for PRs containing UX designs. group/uxd User experience (UX) designs
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants