- 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
- Email batches of users from signups thus far.
- Email should contain a link to a feedback survey.
- All tools in beta suite pass bi-hourly tests when run in parallel submission mode
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
- 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
|1||Access||The user will be able to signup on the Brown Dog web page and get a quota in terms of alotted requests per month as well as requests per hour. The Brown Dog account will give them access to BD Fiddle, each of the clients, the Tools Catalog, and the ability to generate tokens to make calls from within the applications they create.||Low||Seems be nearly there.|
|2||Beta 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.
|High||Work in progress|
|3||Fence API v0||Users who are developers will have access to a consistent, compact, and straight forward API providing them with extraction, conversion capabilities to be called within their own applications.||Medium||Defining the API is straightforward, however, will need to fix all of the clients|
The user will have access to the latest features through the production instances of Clowder, Polyglot, Fence, and BDMon.
|Low||Most auto-deployed at this point|
|5||bd-swarm||The user will experience relatively consistent response times when submitting requests, whether there are many requests being made to the system at that instant or only a few.||Low||Need a few additional scripts in bd-swarm to scale and monitor things|
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:
Nearly Complete, needs polish, fix to Jupyter, fix to DataWolf, bug testing
|7||Test files||BDFiddle 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.||Low||Work in progress|
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:
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.
Some bug fixes with regards to how data can be referenced on the web
|9||Command Line Interface||The 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||Need to figure out the apt-get part, do some cleanup, documentation, and testing|
The user will be able to download a setup.exe from the Brown Dog webpage to install the Windows client. The client will modify the Windows file manager such that when a user can convert local files by simply right clicking on the file and selected the desired resulting format and index/search local folders by similarly right clicking on a folder to index then search its contents based on extracted metadata.
Some cleanup, documentation, and testing still needed
|11||R Library||The user will be able to run R snippets obtained from BDFiddle by copying and pasting them in their code and installing the bd.R library via cran (e.g. install.packages("browndog")).||Low||Need to figure out the cran part and do some testing|
|12||Python Library||The user will be able to run Python snippets obtained from BDFiddle by copying and pasting them in their code and installing the bd.py library via pip (e.g. pip install browndog).||Low||Need to figure out the pip part and do some testing|
|13||Matlab Library||The user will be able to run Matlab snippets obtained from BDFiddle by copying and pasting them in their code and installing the bd.m library downloaded from the Brown Dog web page.||Low||Needs some code cleanup and testing|
The user will be able to find documentation and examples to help them along. Specifically up to date:
|High||Will need to recruit effort from the entire team|
|15||User Support||Users will have user support towards quickly fixing service issues and answering questions. The user will be able to get support from a support email and confluence questions.||Medium||Will need a plan to support with dev staff for the time being and transition over to a new dev ops branch of the group over time|
|16||Beta User Email & Survey||Users that have signed up to Brown Dog will receive an email notifying them of the beta release, some quick instructions (with graphics), link to BDFiddle, and link to feedback survey.||Low||Can use signup email and XSEDE survey as a starting point.|
User interaction and design
Below is a list of questions to be addressed as a result of this requirements document: