Applications in Vision App Maker are built from a small set of configuration concepts. A domain holds an application, modules organize its features, and data, rules, views and workflows define how each module behaves.

The concepts

ConceptWhat it isWhere it is configured
DomainThe root concept: a group of related processes that share business logic, user interface or integration logic. Each application has its own domain, connected to its own business database.Administration › Domains
Domain versionA domain can have several versions, to capture changes to its processes over time.Administration › Domains
ModuleThe unit that organizes a feature. A new module is defined for each type of functionality that needs its own instance.Modules
ParameterA variable of a module or process, defined by its data model. For an order process, the order value is a parameter.Data › Parameters
Custom typeA complex data structure with named attributes. It usually corresponds to a table in the database.Data › Custom types
EntityA data entity with a name, description and attributes.Data › Entities
List of valuesA key-value list used by parameters, attributes and drop-down fields, with labels per language.Data › Lists of values
Business ruleLogic written as a functional or arithmetic expression, built from predefined operators.Rules
ViewA user interface screen. Views are built visually or in HTML.UI › Views
MessageA text shown to the user, of type Warning, Error, Info or Custom, with versions per language.UI › Messages
WorkflowModels a real-life process as a succession of activities that move an instance from one state to another.Workflows
ActivityA step of a workflow. It shows one or more views to the user, or runs automatically.Workflows › Activities
StateA status that a workflow instance passes through.Workflows › States
PluginA connector to a third-party system or to a platform module. Plugin definitions list every plugin available in the installation; plugins are the configured uses of them.Plugins
TemplateA document template used to generate PDF or Word documents.Templates

How the concepts relate

A domain contains all configuration of an application: modules, parameters, data types, rules, views, workflows, plugins and templates. Configurators select the domain they work on in App Factory Studio.

Modules

A module describes a data model, meaning a set of related business entities, together with the business rules applied to it. There are three module types:

TypePurpose
ProcessA module with a workflow attached.
ServiceA module that performs an activity or a set of activities.
ApplicationA succession of interfaces with no workflow attached.

Modules support events, which run configured operations when the module or its elements are accessed. Events can be defined:

  • at the start and at the end of an activity;
  • when an instance is initiated, loaded or saved;
  • on a temporary save;
  • when the module is initialized;
  • when the workflow state changes.

Data

Parameters are defined at domain level and bound to each module that uses them. A parameter can have a simple type or a complex type, such as a custom type. A custom type becomes available in a module through a parameter of that type.

Workflows

A workflow belongs to a module and describes the path that the module's instances follow. It contains states and activities, with at least one of each. A transition starts from a state, runs an activity and leads to one or more possible new states.

Rules everywhere

Business rules connect the other concepts. A rule can calculate an attribute value, validate a field or decide whether a button is visible. It can also choose the next state of a workflow, call a plugin or fill a section of a document template.

Plugins

A plugin instance is configured once, with its inputs bound to rules, parameters, other plugins or constants. Rules call it by its identifier, and view fields can use it as a source for lists of values.

Tools in App Factory Studio

ToolUse
Module testerSimulates a module. The Viewer tab shows the interface from the user's perspective; the Rule tester tab tests rules, checks parameters and supports debugging.
Module exporterExports or imports a module.
Configuration managerExports a domain's configuration for backup or deployment, and imports a configuration to update an application.
Refresh configurationPublishes the configuration so that the runtime uses the latest changes.

The Administration menu manages configuration users, domains, permissions, users, roles and cultures (languages and localization settings). Permissions are attached to roles and then to workflow transitions, so only users with those permissions can reach an activity.