---
title: "Modelling UIs"
slug: "modelling-uis"
description: "UI interfaces will at some point need testing, some will be a future concept while others evolve as requirements change. "
tags: ["Art of Modelling", "Learning Portal", "Get Started", "Test Modeller"]
updated: 2024-09-27T15:01:03Z
published: 2024-09-27T15:01:03Z
canonical: "knowledge.curiositysoftware.ie/modelling-uis"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://knowledge.curiositysoftware.ie/llms.txt
> Use this file to discover all available pages before exploring further.

# Modelling UIs

## 2.1 Modelling an Existing UI

This video introduces a simple customer logic screen where emails and password fields and different elements of the application get picked up from a URL, to eventually clicking on the sign-in button. Then in the Model you will see how different (user) journeys get tracked.

[Embedded content](https://www.youtube.com/embed/NaCClnajb44?&amp;wmode=opaque&amp;rel=0)

UI Interfaces will at some point need testing, some will be a future concept while others evolve as requirements change. The segments consist of [1] Modelling an Existing UI. [2] Modelling a UI Concept. [3] Modelling an Evolving UI.

---

## 2.2 Modelling a UI Concept

Modelling upfront is a key part of Test or Behaviour-driven development, from which User Stories are Generated. At which point, developers can action the User Stories to write an Application or at least produce initial Test Scenarios to test it against, or as soon as the Application is ready and available to be tested.

**[Embedded content](https://www.youtube.com/embed/-JFSpnla5dM??list=PLd_AqXM4vM-Bihc9Qx3Sl3pUCsC6S8XoV&amp;wmode=opaque&amp;rel=0)**

You'll see that much of the same logic exists as in segment 1 [Modelling an existing UI] with automation [Waypoints] used as simple placeholders now waiting for the application to be built. Also waiting for automation that can then overlaid on top of the model.

Despite the application not actually existing, at the start we lay out three blocks to explain the high level goal or high level use case of this page. In this segment [2 of 3] it considers some key differences involved in modelling a UI when the application doesn't already exist, rather than an existing one.

---

## 2.3 Modelling an **Evolving**UI

As a UI evolves according to requirements, a Model gives a focus for different stakeholders to collaborate within the Quality Modeller canvas. From coming in and explaining some of the most basic functionality or (User) Journeys on your App through to where a model has its different nodes Rules applied, the outcome is to embed Data ready for Automation.

[Embedded content](https://www.youtube.com/embed/xOX-lK9_1KQ??list=PLd_AqXM4vM-Bihc9Qx3Sl3pUCsC6S8XoV&amp;wmode=opaque&amp;rel=0)

The example considers the credentials as seen in segment 2 [modelling a UI concept] in which different combinations of credentials are mapped out simply as either invalid or valid. However, as this model evolves to reflect the UI’s requirements, its scope is increased.

This includes not only the email, but also the passwords decision trees. Additionally, rule-based generation [Rules] are used on Task Blocks, essentially saying that for any instance given the logic as invalid data, will be forced down the invalid credentials route to inform Test Cases.

The invalid password gets pushed through into a negative scenario, where we end up with a necessary error state.

A Model is a canvas and the Flow that is built onto it. There are several types of Model, some of which display different tabs and tools on the toolbar in Quality Modeller.

Modelling or modelling systems or functions is the main function of Modeller. Modelling or system modelling is the use of models to conceptualize and construct systems in business and IT development. A common type of systems modelling is function modelling, with specific techniques such as the Functional Flow Block Diagram and BPMN Diagrams.

Quality Modeller is Curiosity's flow-driven model-based tool which provides a range of accelerators and connectors for building flowcharts rapidly. Align all stakeholders to quality outcomes and create critical assets early, delivering superior software at speed.

A Task is an activity performed either by a user, or internally by the system. It is also used for performing test data assignments.

Test cases are equivalent to paths through the model of a system under test. They are generated automatically from a model, with or without test data and test automation associated with them. Test Modeller has coverage techniques using advanced algorithms to generate the smallest set of test cases needed to test given features with a required level of rigour.

## Related

- [The Art of Modelling](/the-art-of-modelling.md)
- [Test Case Vocabulary](/test-case-vocabulary.md)
- [Model Common Understanding](/model-common-understanding.md)
- [Coverage in Test Case Design](/coverage-in-test-case-design.md)
- [Form, Cause and Change](/form-cause-and-change.md)
- [The Art of Modelling Test Approaches](/the-art-of-modelling-test-approaches.md)
