User Flow for the Upload Files section in GCBM Simulation Editor #330
Replies: 5 comments 20 replies
-
According to me, we can have: /classifiers will upload classifiers And finally an endpoint /uploadComplete to indicate that upload is done So in the backend the same is happening |
Beta Was this translation helpful? Give feedback.
-
The /uploadComplete is to perform the check that everything is uploaded as expected |
Beta Was this translation helpful? Give feedback.
-
The first option will work the best, If a user has uploaded an invalid file then we can send a response for that particular file to be invalid. In case of uploading multiple files, the user has to again upload all the files. This can get complicated easily. Keeping different endpoints for different files will also enable us to make any changes in the backend if needed for a particular file. So according to we we can go ahead with the first option. |
Beta Was this translation helpful? Give feedback.
-
Hi, thanks for opening the discussion, all of us can share our ideas here as we go on to develop the gcbm simulation editor.
I think having separate endpoints to upload a particular input type might not be a good idea because adding all of them with the one that I mentioned above might be too much from the user's pov? I might be totally wrong here. We can list files of a particular category if they are present in separate folders. Currently, we are cut pasting all input files in one folder(input/run4) right after they are pre-processed(in the upload endpoint). But we can do this step after the user has finished verifying/editing them. |
Beta Was this translation helpful? Give feedback.
-
Hi everyone, just sharing what I had in mind: Currently, disturbances, classifiers, db and miscellaneous - all are uploaded through one end-point call. Let’s also give a user separate end-points to upload these separately: The above will also help us solve the problem where we can support other runs like GCBM.Belize: Runs without disturbances? Currently they error out, how can we fix this? I like what has been suggested before in the discussion, and this is what I had in my mind: It will probably be worth introducing more end-points, to allow users who need to know what are the configs before they want to edit, and again separately: /list/all
/list/classifiers
/list/disturbances
/list/miscellaneous
# Or: /config/<>/view
/disturbances/config/view
/classifiers/config/view
/miscellaneous/config/view
# Or: /config/<>/edit
/disturbances/config/edit
/classifiers/config/edit
/miscellaneous/config/edit |
Beta Was this translation helpful? Give feedback.
-
According to the new changes on the backend, all the configs which are dependent on the
.tiff
files (along with some other files) are auto-generated.I wanted to discuss the flow of the user on the front-end for uploading the files, reviewing the config generated on the backend, making any changes if necessary, and finally running the simulation.
I was thinking we can keep 4 pages for uploading files - Disturbances, Classifiers, Input Database, and Miscellaneous (as shown in the image).
Each page will explain a little about the type of file, and any naming conventions that are required for the files.
After opening a section and uploading files - let's say disturbances, a list of uploaded file names and their meta-data will be shown, as displayed in the wireframe. And a "Preview Generated Config" button can be shown for users to change any configs if needed. Same for classifiers, input db, and miscellaneous files.
A problem with this is that currently, all the files are uploaded together to the backend on the
/upload
endpoint, and only then are the configs generated. This means that the users will have to go to all the four sections, upload files there.. and then come back to the previous sections to check the generated configs./upload
endpoint to 4 endpoints -/uploadDisturbances
,/uploadClassifiers
,/uploadDB
, and/uploadMiscellaneous
. After each upload, users can get the generated configs on the same page, and make any changes if needed.I actually prefer the first option. On each page, they'd upload the respective file type and below get to see/edit the generated configs then and there. Since only classifiers are required, and disturbances, area boundaries are recommended but optional (according to this doc), user can visit the upload page for which they have the files available, and skip the others.
Also, currently, there is no endpoint for fetching and changing the config for a file. On the frontend, in the "Preview Generated Config" modal, the users can review the config, make changes and save. So, we would require an endpoint which can take the filename and provide the generated config, and also one to save the new file contents if they're changed.
After everything's uploaded and changes are made for the configs, the users can move to the Configure Parameters section (Local Domain, Modules, etc.) and make any changes if needed. At the Run Simulation, we would again need an endpoint for sending the changes in parameters config to the backend.
And since the simulation takes a long time (20 to 30mins), I was thinking we can e-mail the user the output's link. The user won't stay on the same page for that long.
All of this is open for discussion, if you think something can be changed please do put up your ideas.
CC: @aornugent
Beta Was this translation helpful? Give feedback.
All reactions