dieterich-lab / medex

Intuitive Graphical User Interface for Medical Data Exploration
MIT License
4 stars 3 forks source link

Error handling is not sufficient #3

Closed AljoschaK closed 4 years ago

AljoschaK commented 4 years ago

There are multiple errors that are not sufficiently handled if the user does the wrong action: Instead a "Internal Server Error" is shown. These Errors should be caught. Please try to find any occurences of a user action, that can cause an Error and put an informative Warning instead. Known examples that need to be handled are (but there might be more): The same parameter is selected twice in the scatter plot When the user selects the same parameter for x and y in the scatter plot, this causes an Error. Instead The User should see the warning "x and y cannot be the same parameter. Please select two different parameters." No Plot selected If in the plotting tab, the user selects no plot (neither scatter plot or heat map) and presses "plot data", there will be an error. Instad the user should see a warning "Please select plot type." Missing Data for a parameter If a parameter contains no data at all, and a plot is created this will show an error. This can be reproduced the following way:

AljoschaK commented 4 years ago

An appropriate Warning needs to exist also for the boxplot, if one or more values are not selected, we get an uncatched error at the moment

AljoschaK commented 4 years ago

Coplot Tab The user can select two times the same category or same numeric, but this will lead to an uncatched error.

AljoschaK commented 4 years ago

Scatter plot Here as well we get an error when selecting two times the same numeric parameter.

AljoschaK commented 4 years ago

In addition to no values at all, we also need to handle the situation where one variable is completely fine, but the other one is empty: But if only one parameter has no values, but the other one has data, the app will break.

This can be simulated by:

This will break the app. This should be handled.

AljoschaK commented 4 years ago

All known errors that could happen upon user interaction were addressed.