---
title: "How to Build a Model"
slug: "how-to-build-a-model"
description: "In this documentation article, learn how to build a model in Test Modeller."
tags: ["Building Models", "Get Started", "Test Modeller"]
updated: 2024-09-27T15:01:03Z
published: 2024-09-27T15:01:03Z
canonical: "knowledge.curiositysoftware.ie/how-to-build-a-model"
---

> ## 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.

# How to Build a Model

In this documentation article, learn how to build a Model in Quality Modeller.

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

A model must have at least one Start Node, and one End Node. Each block must be in a path that begins and ends with a Start and End point.

All actions except for Pools must be connected to another action by arrows or "edges”. Together, these actions must form paths between Start and End points. To move these actions, hover over the text and your cursor will change to a four-directional arrow, this allows the actions to be moved around the canvas.

To connect actions other than Pools, click inside the block and drag the mouse to the following block: ![](https://cdn.document360.io/77f722a6-2d0a-49fa-8074-572515a6c4b8/Images/Documentation/image-1679064327012.png)

Arrows are directional. Two Tasks connected by an arrow denote a linear step in a system's logic, either activities performed by a user or internal to the logic of the system itself.

Tasks can have multiple Edges. This denotes the different routes through a system's logic, determined for instance by data entered or by processes for error handling.

A "Condition" block functions like an "IF" statement, posing a condition that Tasks performed by a user or the system can fulfil. These Tasks might lead to further Tasks being performed by the system, or actions expected of the user. Alternatively, a condition can lead to further conditions.

In the abstract, a Model of a system under test might reflect the linear, cause-and-effect logic of a system as follows:

![](https://cdn.document360.io/77f722a6-2d0a-49fa-8074-572515a6c4b8/Images/Documentation/image-1679064392178.png)

The completed models should be directional graphs through a system's logic, from Start events to End events. Logical processes or Tasks are ordered sequentially as steps between the start and end-point, including decisions. The "paths" from start to end points are equivalent to possible tests, with each "Task" block a test step. These tests are routes through the system's logic in the form "IF this, THEN that, THEN that…".

---

## Example Model in Quality Modeller

The following is a simplified example of a model built to test a log-in page's authentication. Users must enter a valid username and password, and then they should be authenticated. Any other combination of valid or invalid username and password should lead to the user not being authenticated.

In terms of cause-and-effect, IF-THEN logic discussed above, this model presents the following paths between the start and possible end points:

1. IF(user enters a valid username AND a valid password), THEN user is valid and Authenticated.
2. IF(user enters an invalid username AND a valid password), THEN user is invalid and is not Authenticated.
3. IF(user enters an invalid username AND a invalid password), THEN user is invalid and is not Authenticated.
4. IF(user enters a valid username AND a invalid password), THEN user is invalid and is not Authenticated.

These paths are equivalent to test cases. They can be represented in the following decision table:

![](https://cdn.document360.io/77f722a6-2d0a-49fa-8074-572515a6c4b8/Images/Documentation/image-1679064468832.png)

Quality Modeller is Curiosity's flow-driven model-based tool which provides a range of accelerators and connectors for building flowcharts rapidly. This includes importers for existing requirements and test cases, as well as recordings and scans of already built systems. These accelerators are designed to significantly reduce the time and technical knowledge needed to model complex systems, unlocking the value of model-based test automation.In the Project and Releases section of Quality Modeller you can manage your existing projects and create new ones.

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.

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 Start Node is a trigger that occurs at the start of a model. To use one, drag it from the Actions panel onto the Model canvas.

The End Node is the event that terminates the model. To use one, drag it from the Actions panel onto the Model canvas. There can be more than one End Node, each controlling for a unique outcome.The journey through the Flow ends at an End Node. Where a Model is used as a Subflow within another Model, the End Nodes become the outward connection to the master Model.

## Related

- [Quality Modeller 101](/test-modeller-101.md)
- [Quality Modeller](/get-started-with-test-modeller.md)
- [Building Models in Quality Modeller](/building-models-in-test-modeller.md)
- [How to Create a Model](/how-to-create-a-model.md)
- [The Model Editor User Interface Explained](/the-model-editor-user-interface-explained.md)
