Designing UX flow: User Story

@gbathree @david.n.forster I am pulling together information from the outline you created here https://gitlab.com/our-sci/webserver/issues/5 to approximate the user’s perspective in terms of UX. I have recently come across an interesting article suggesting that a simple text document sometimes helps the design process of the UI more than just going directly to the wireframe.

Please feel free to add other user stories I have been missing.

Designing UX flow for the Web application and visualization feature

In order to design the web application, there needs to be a firm understanding of the user’s expectations in terms uf UX.

User who just uploaded some data

As someone who just used the Android application for uploading a result, I would like to check if it actually arrived and verify integrity.

When I log in, I would like to see data that is relevant to me, possibly the application should let me know that I have just contributed new data and display a preview of it.

When I look at the entire set of data I submitted I would like to see which of the data is new. If data is available from other users for the same survey, I would like mine to be highlighted.

When pressing on a single row (which corresponds to a survey result) I would like to see the data not inside the table but in the same form as when I looked at it on the Android device.

I want to be able to select multiple data rows and hit a share button, so I can someone else a link to the results.

Researcher that checks in to see results of recently submitted samples

As a researcher I am managing a macro script and see visualization of the data that is received by the web application.

Someone can do a measurement and submit data which is going to be added to my macro script. Navigating to the macro script, I would like to see what and how many datapoints have been added.

When using the macro script to train a model, I would like then to see how my model has improved over time.

I would like that my model can be applied when a user makes a new measurement and has instant results with a degree of certainty for the prediction.

At any time I want to be able to adjust the macro script, the model I am training and be able to download the entire data set I am interested in.

When I am developing the platform offline, I want to be able to already apply my macro script to existing data results.

I want to be able to share my dashboard with someone else by just sending them a link. When they visit the link. After more data is collected, I want that the same link will show the improved results due to the newly collected data.

User who wants to explore and understand the platform

I don’t fully understand what the platform does but understand the vision and concept and am interested to see concrete examples of how the application works, what it means for someone who is using the app and someone who is building research based on data submission.

I would like to see examples of how data looks after it has been visualized. Best I would like to see a simple example of research that I can grasp without deep technical understanding.

After understanding that the platform’s data is a living thing, I would like to know what this means and see how adding new data benefits the platform. Maybe I would like to have a time-slider where I can visually see how the model or resulting data becomes more meaningfull over time by progressively allowing more data to be considered.

When considering the platform I would like to have a simple example survey that allows me to contribute some data and instantly see the feedback on the web application. The web application or android application should guide me towards completing a first survey, it does not need to be connected to a hardware device but could be a scalar value I enter.

Client who submitted samples for analysis

As a client I would like to immediately see the state of the work I sent to the lab. Also I would like to be informed which of the results I am expecting are done and are relevant (by seeing highlighted rows in my data table). I would like to easily access the visualization of a single result, similar to what I would expect to see on the mobile Android device.

If I sent in a couple of samples, I would like to see a meaning full data visualization and possibly comparison to foreign data, where my data is clearly highlighted.

Not only would I like to see scalar values of the lab results, but what it actually means for me and how my results compare to other results.

I would like to have meaningful correlation to data that is publicly available but not submitted by me, such as weather data or soil data if available and relevant.

Also I would like the data to be human and have possibly a comment from the person in the lab respnsible with a few sentences what is relevant or meaningful to their expert opinion.

For portability I would like to be able to download all results and visualization as PDF or CSV and be able to share a link where my data is anonymized.

If something is unclear to me I would like to immediatelly be able to talk to a person who has knowledge of my data and possibly has done the lab work.

Developer who wants to test and develop macro or micro scripts

As a developer who partially understands the flow of data on the platform I would like to write my first survey, micro- and macro script for testing purposes.

I would like to see an example that I can deploy myself on an Android device.

When I installing the development environment I would like the process to be easy and streamlined.

I would like to see a clear path of what it takes to create firmware / scripts for my own device in order to estimate how long it will take me to integrate into the platform. I would like to know if I can take my data and go somewhere else without jumping through hoops at a later stage.

If I already have a hardware sensor that supports the serial protocol, I would like to know how difficult it is for me to integrate it into the platform in terms of hardware I need and software I am writing. I would like to know where I can buy required hardware and how long it takes me to get started.

I don’t want the web application to lock me into a tutorial as I can explore features myself and don’t need exessive handholding. I want to be able to find information about how to go about writing code and setting up survey when I need it.

I am used to intelligent IDEs and want the dev environment to support me with obvious method signatures. For my first project I don’t mind if my plot axis are not ideal or things look rough around the edges. Rather than being bombarded with options and function arguments I would like to be able to see a clear program flow and understand the concept of how pieces of code fit together.

When hitting build in an example project I don’t want to run into any errors or issues, I want it to compile out of the box so I can try it out on the Android device or web application.

My last resort when stuck is to get in touch with a developer who has done something similar or someone who maintains the platform. I would like to get an instant response best via chat or forum.