How users interact with apps
Ria Noche avatar
Written by Ria Noche
Updated over a week ago

When building an app, it's important to understand how an end user may interact with your app through workspaces. This understanding will guide you in designing attributes and boards, and help identify some cases to test for.

In this article, we will walk through how users interact with apps using an example of a user analysing a precinct development with Kinesis' Sustainability app. This workflow can be generalised or extended to different use cases, apps, and attributes.

Setting up the workspace

The first thing a user does when starting a project is create a new workspace. A newly-created workspace will have the Kinesis Platform app added by default, which provides an overview of scenarios. They will then add your app (and any of its dependencies) to the workspace. They may add other apps to the same workspace.

Adding_app_denpendencies.PNG

At this point, there will be one scenario, the Baseline, with no locations. Your app should support being added to workspaces with locations or attribute values for those locations.

It is important to note that users may check your app's pre-configured boards at any point in this workflow. In the case of the example Sustainability app, the boards will show that there is no data until all required inputs have been entered.

Building scenarios

The next thing a user will do is build scenarios. Naturally, they will start by adding locations to the Baseline scneario. Locations can be added one at a time or imported (along with their attributes) from existing workspaces.

When creating a new location, the user is able to pick a point anywhere in the world by clicking on a map or entering exact coordinates. Most of the time, the locations will be somewhere you expect and fully support, however, it is important to remember that locations may be created in unexpected areas, such as:

  • Regions or countries that you don't have good data for

  • In the middle of the ocean

  • Somewhere without a road network

  • Borders of certain geographies

Adding_new_location.PNG

Once they have created the locations, they will now add values to relevant attributes to describe their scenario.

Adding_location_attributes.PNG

Here are some things to note about entering attribute values:

  • These attribute values can change over time with stages, and there may be stages where there are no set values for that attribute; in this case, they simply inherit the values of the stage immediately prior to them.

  • There can be some validation rules applied on the values that are defined by your app. For example an acceptable range for numbers, or a dropdown of options.

  • For attributes with multiple values, some fields may be populated while some fields may not.

    Attribute with compound value

  • For attributes where you can add items, there may be items that the user created themselves.

    Add usage item

They can also change attribute settings:

Change attribute settings

The next thing they may do is build alternative scenarios that they want to compare. There are several ways to create new scenarios:

  • Adding a new scenario, which essentially duplicates the Baseline scenario

  • Duplicating another scenario

  • Making changes to an existing scenario then saving it as a new scenario

Other changes that can be made to scenarios:

  • Removing a location from a scenario

  • Undoing/redoing any modifications they've made within a scenario, prior to publishing their draft

Exploring outputs

Once the user has constructed a scenario, they would expect to see results in the boards. Users interact with boards to review the results provided by apps, understand the effects of certain changes in scenarios by manipulating views, or piece together a narrative to share with teammates.

When viewing a board, users can switch between scenarios to compare them.

Scenario_comparison_in_boards.PNG

They may delete blocks that they don't need, or add blocks from other boards that they want to view together.

Users can create their own visualisations using the outputs from your apps, and how you structure these outputs will affect how they configure these visualisations.

When interacting with visualisations, they can hover or select data points to view details, and scrub time when applicable to view how data changes over time.

Timeslider.gif

They can also filter the data shown on visualisations.

Filtering data on visualisations

This is a common workflow that users go through when interacting with apps and can be generalised or extended to different use cases, apps, and attributes.

  1. Setting up the workspace

  2. Building scenarios, and

  3. Exploring outputs

Did this answer your question?