Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. In the Synapse web client, Alice navigates to the Folder she wants to download
  2. Alice selects "Download Options" and chooses the relevant options to select all* (see: Limitations) the contents of the folder to add them to her download list. 
  3. Alice navigates to her download list and creates a .zip package of the files she's selected for export. 

...

1b: Download partial contents of Folder

Note: Use Case 1b (Download partial contents of Folder) is not currently deemed a high priority so this use case will be supported through either a combination of Use Case 1a (Download entire Folder) with Use Case 4 (Refining the download list) OR via Use Case 3 w/ Alice selecting the things she wants from the Folder. 

Use Case 2: Download from View

Alice wants to download the files/tables represented in a View (e.g. a FileView) that's been curated by Bob. Bob has created this FileView to leverage relevant annotations to present different kinds of datasets to Alice; Alice wants to peruse the FileView and choose the files she wants to download. 

...

Alice wants to "shop" for individual files as she browses through various projects. Bob has no involvement in this case. (smile) 

...

Workflow

  1. In the Synapse web client, Alice navigates to various files and folders. 
  2. Alice clicks on the download icon next to each item and is presented with the option to download file immediately or add file to download list.
    1. If Alice chooses to download each selection individually, no download list is created. 
    2. Items are only added to the download list IF Alice chooses them. 
  3. When Alice is done choosing her selections to be added to the download list, she visits her download list and begins downloading. 

Use Case 4: Refining the Download List

Alice has added items to her download list but realized that she doesn't need all of them right now. She wants to edit the list to remove items prior to creating her download package. 

Workflow

  1. In the Synapse web client, Alice navigates to her download list (either via her profile page or via the notifications

Use Case 5: Download History

...

  1. In the Synapse web client, Alice navigates to her download list and clicks on "Download History". 
  2. Alice remembers that it was the most recent package that she needs and sorts the history back package date. 
  3. Alice clicks on "Download Package" to get the same .zip package again. 

Limitations

In order to deliver a maximally functional initial feature, we need to set some limits to ensure the feature will be performant and users will understand the expected behavior. 

  • Total number of files in a single download package: up to 100
  • Total package size: TBD

Priorities

For initial release, it is critical that we support #1 and #2 above. Use Case #3 is not yet #1a, #2a, #2b, #3, and #4 above. It is acceptable to phase in these features as the team deems best, over a relatively short period of time.

Use Cases #1b and #5 do not yet have a clear user need, so we will de-prioritize it them until we have more data. 

...

https://www.figma.com/proto/cjRT94oMAbvuSC8nwwoddDEk/multi-file-download

Open Questions

QuestionOutcome
Should we support the case where a user starts their download list in one session and then resumes and completes the download in in another?No documented user need for this (yet) but we imagine it might become a case.
What is a sensible limit on the number of files and/or the total package size?100 files for initial release; need to determine sensible max package size.
Should we describe failure cases separately or incorporate those into each use case above?TBD. For example, user attempts to add a folder to the download list but folder contains too many items. What is the expected interaction there?




Not Doing (Out of Scope)

  • Bulk download of fileHandles within Tables, a.k.a. the mobile BRIDGE data use case. 
  • Bulk download of submissions from evaluation queues, a.k.a. the challenge use case. 

...