You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 17 Next »

Target releaseTBD
Epic(s)Beta Release Tasks
Document status
DRAFT
Document owner
Lead Developer/Architect
Lead Tester

Goals

  • Initial open release of Brown Dog
  • Highlight what can be done with a Data Transformation Service through an initial suite of transformation tools, a number of sample clients, and sample data allowing a user to quickly try things out

Background and strategic fit

The beta release will:

  • Provide the community with a first glimpse of Brown Dog
  • Allow the Brown Dog team to increase exposure through presentations and hands on tutorials
  • Allow the team to identify bugs through real world usage and harden the service towards a 1.0 release

Assumptions

  • Many users will want to try out the system without too much effort
  • Will need to support very novice users (easy to use interfaces/samples)
  • Some users will begin to regularly use the system, throwing many requests at the service

Requirements

#TitleUser StoryEffortStatusNotesAssignment
1Beta Tools & Tools Catalog

The user will be able to try out one of a number of tools spanning a range of scientific domains and general data usage tasks.  Upon signing up for an account the user will be able to explore the tools catalog (utilizing the same account) to see what transformation tools are available as well as what each is capable of doing.  These tools will be deployed under the elasticity module so that a user can try the tool via one of a number of possible client interfaces as well as tested every other hour to ensure each tools available.  The user should come away with a sense of the breadth of data currently and potentially supported over time, the flexibility of the system, the potential for contributing tools of their own, and the types of tools that would fit as part of the service.

HighWork in progress
2BDFiddle

The user will explore Brown Dog for the first time through BDFiddle.  As a user friendly web interface the user will be able to upload data, try out transformations, and discover alternative ways to utilize Brown Dog within other programming languages.  Specifically, the user will be able to:

  • upload a file or point to file URL
  • select an output OR a specific tool for a transformation
  • get the output of the transformation
  • get a code snippet that can be pasted and executed in Matlab, R, and Python
  • launch a Jupyter notebook to try the python code
  • download the needed libraries for Matlab, R, and Python
LowNearly Complete, needs polish and bug testing.
3Test filesBDFiddle should have a tab containing a sample file for each of the the beta tools allowing the user to quickly try out any of the capabilities provided.LowWork in progress
4Bookmarklet

A quick and user friendly interface allowing users to try Brown Dog on arbitrary web pages.  From BDFiddle the user will be able to drag the Brown Dog graph in the corner to their bookmarks toolbar.  While navigating the web the user will be able to click on this bookmark to activate the bookmarklet which will:

  • add a menu to each link/image on the page allowing the user to download the corresponding file as a different format
  • popup a search box when the user presses ctrl+F allowing the user to search across links/images on the page based on extracted contents from the corresponding files (e.g. extracted text)

Sample pages should be provided to the user so that they can quickly try this interface out.  The bookmarklet should work with each of the sample files on the BDFiddle sample files page as well.

MediumSome bug fixes with regards to how data can be referenced on the web 
5Command Line InterfaceThe user should be able to install on Ubuntu via "apt-get browndog" the Brown Dog command line interface and then utilize it to convert local files (e.g. bd -output jpg foo.tif) and index/search local folders (e.g. bd -v /foo).  The user will be able to handle large files by passing in the --bigdata flag which moves needed tools locally vs send the data to the remote servers.  The user will be able to get help by passing in the --help flag.  The user will be able to tell what data types are supported, available tools, output formats, and tools that can be moved locally via appropriate flags.Low  
6Windows Client    
7R Library    
8Python Library    
9Matlab Library    
10Documentation   
11Admin/Support plan    

User interaction and design

Questions

Below is a list of questions to be addressed as a result of this requirements document:

QuestionOutcome

Not Doing

  • No labels