Every knowledge area has its own terminology, and the same applies to software applications. While the nomenclature used on this platform follows market standards whenever possible, some specific terms related to the system may have special meanings in this context.
This glossary includes most of the terms and keywords used by our platform, as well as concepts and related technologies relevant to our context.
It is recommended to read this glossary at least once after using our platform for a few months. Reviewing the definitions and concepts, combined with your experience, will enhance your understanding of the system and improve your efficiency in creating applications.
Name | Description |
---|---|
AccessTypes | Each Point is associated with an AccessType, which defines the rules for reading and/or writing values for that Point. Some rules that can be set are Polling rate, whether a read is performed on startup, and whether you write values to that Point. The AccessType allows users to configure the way in which clients can access data points in the system. |
AlarmArea | n AlarmArea is a hierarchical grouping of AlarmGroups that allows for a more organized and structured approach to managing alarms. An AlarmArea can have child AlarmAreas, allowing for a hierarchical structure of AlarmGroups and AlarmItems. This is useful for large systems with many alarms, as it provides a more intuitive and manageable way of organizing them. |
AlarmItem | An AlarmItem is a tag or expression monitored by the Alarm Module. It contains information such as the tag name, the alarm condition (what triggers the alarm), and the associated AlarmGroup. Each AlarmItem can have its own configuration properties, such as Limit, Deadband, and Message, which define the alarm behavior and characteristics. |
AlarmGroup | An AlarmGroup is a collection of AlarmItems that share common properties and characteristics. It is a way to group alarms together for easier management and organization. Each AlarmGroup can have its own configuration properties, such as AckRequired, AutoAckTime, and Sound, which apply to all of its AlarmItems. |
App Domain, Application Domain | Represents the virtual isolated computer environment, where a .NET application runs. Isolated, in its context, means that the memory areas and components used by programming running in that environment are completely isolated from other programs running in the same computer. The inherent isolation of the .NET domains creates an intrinsically safe protection for the running solutions, as it prevents one process from interfering with another, allowing even two different versions of the same program to run side by side. A more technical definition if AppDomain is the boundaries that the CLR (Common Language Runtime) provides around the objects created from the same application. |
Application, Project, Solution | Refers to solution or final system created using the platform. The terms Application. Project and Solution were used with close meaning, referring to the engineering configuration and files necessary to implement the an application intended to deploy in a production environment. With the release of version 10, Project is now used to refer to applications created with version 9.2 or older, as Solutions refer to applications created with version 10 and up. |
Application Modules | The application modules are software components facilitating interactions between a system and its external environment or various system parts. The application modules encompass Alarms, Devices, and Historians. They are called "application modules" because they are applied to specific tasks or applications within the system. These modules continuously monitor, collect, and process information, ensuring that the system remains in its desired state. |
Assembly | Refers to an executable file (.EXE or Library.DLL) created using managed code and Microsoft .NET framework. |
Asset Tree | The Asset Tree is a hierarchical representation of the solution data model. It may contain variables and data templates that match physical equipment in the production environment, as well as any enterprise or auxiliary variables necessary to implement your real-time application. |
Audit Trail | The Audit Trail is a feature of the Alarm Module that logs all changes made to AlarmGroups and AlarmItems, including creation, modification, and deletion events. It tracks and records the history of changes to the alarm configuration, providing a clear audit trail of who made what changes and when. This is useful for troubleshooting, analysis, and compliance purposes. |
Build and Publish | The Build process involves compiling the solution code and Publish is creating a read-only version of the solution for distribution in regulated sites. |
Categories | Metadata labels that be used across all configuration tables, assisting to organize large size application. |
Channels | Channels are created and configured to handle specific communication protocols and drivers. Each channel is defined by a specific protocol driver and connection type, such as RS-232 or TCP/IP. Channels allow the module to access multiple devices (such as PLCs) using the defined protocol and interface. The configuration of Channels is on the Solution Explorer, at Devices → Channels. |
Client | A client is a software component that interacts with a server or services, including types such as .NET Clients, HTML5 Clients, and Remote Clients. |
Connection Target | The connection target configuration sets up the location of the data source to be used. Typically, you can select from three types of locations:
|
Component, User Controls | Graphical User Controls available to create displays. Components and user controls refer to the customizable objects and elements used to create interactive displays. These objects can range from pre-built controls, like alarm windows and trend charts, to custom-designed components tailored to your specific application requirements. |
DatasetDBs | For the Dataset Module to communicate with an external database, a connection must be created with specific parameters. These connections, created within the Datasets → DBs section of the module, are referred to a DatasetDB. |
Date Template (UDT) | Data templates, or UDT's (User Data Types), are user-defined data structures that can include variables of any type and references to other templates, creating a hierarchical data structure. When creating tags based on templates, each variable in the template is referred to as a property. An example of a data template is a simple PID information template with properties such as ProcessValue, Setpoint, and ControlValue. |
DatasetFiles | A Dataset File is a logical name that defines parameters for reading and writing files in ASCII, Unicode, or XML formats. |
DatasetTables | A DatasetTable is a logical name created within a solution to set up access to a specific table in a connected database. These tables are listed within the Datasets → Tables section of the module. The tags in the real-time database can be easily mapped to columns in the tables to perform insert, update, or read operations. |
DatasetQueries | In the context of the Dataset Module, a DatasetQuery refers not only to an SQL query string but also to a solution object that has a logical name, an SQL query related to that logical name, and other parameters defined within the Datasets → Queries section. The DatasetQuery allows to customize the SQL statements with tags evaluated in real time, as well to use its result in the real-time application. |
Designer, Solution Designer | Application and User Interface to configure FrameworX Solutions. |
Display / Screen | A Display is a window or frame of your application’s user interface. A display can contain multiple graphical elements. The elements of a display can be static, meaning they always appear the same, like a title or an image, or dynamic, such as a gauge or a color status indicator. For the context of the documentation, the terms display and screen can use as equivalent, when referring to an user interface window. When referring the configuration objects or the module, the term Display is used. |
Draw | Part of the Solution Designer configuration used to draw and animate displays and synoptic screens. |
DLL Hell | Term used to refer the complications on running the legacy Windows applications as there is no built-in isolation on the DLL libraries, memory and COM objects used by the applications. The .NET Framework completely eliminated that problem. |
Domain, Server Domain, Client Domain | Refers to the values and location of objects at run time. Domain server objects running on the server are the objects running on the server during runtime. Values associated with this object are system-wide. Client domain means that the object is running on the client station and each machine can have different values. |
Dynamics and Animations | Dynamics and animations are real-time changes that can be applied to graphical elements to communicate different messages. For example, a rectangle's color can be changed dynamically based on the value of a real-time tag. |
External TagProviders | External TagProviders enable direct interaction with variables in remote systems, bypassing the need to create specific tags in the solution. They establish connections with tag sources, which can be set up in a table or directly in the assets, enhancing the versatility of data access and exploration within the Unified Namespace. |
Enumerations | Enumerations define a series of potential values or ranges for a variable, mapping messages and colors to each state. When connected to a tag, the enumeration value enhances data interpretation, providing context to the different states the variable can assume. |
Forms, Report Forms | Report Forms are Rich Text documents that can be saved to disk or visualized on displays. The content can include real-time tag values, tables, and symbols. These forms can be saved as Text or PDF files. |
Graphical Element | Graphical elements are the components used in the interface, such as shapes, check boxes or trend charts. |
Image resources | Image resources are imported image files that can be used in your solution as graphical elements. |
Industrial icons | Industrial icons are a pre-built set of icons designed specifically for use in industrial automation applications. |
Internal Module | Features and programs that implement internal system functions which run without any user configuration. |
FactoryStudio | Scalable product version by I/O and Clients, simple to advanced SCADA / HMI, IIoT Edge and Gateway all built on Tatsoft’s FrameworX. |
FrameworX | Our software platform. It's also used in the context to refer to the underlying technologies and components of the platform. |
FrameworX Unlimited | Includes unlimited Clients, Connections and Developers. Built-in drivers, SQL, OPC UA, MQTT and more. |
FX EDGE | A FrameworX Edge application |
FX MQTT Broker | Our embedded Broker for testing |
FX MQTT Simulator | A MQTT Client simulator (with Sparkplug) for testing, included in the product installation |
Hot Updates / Hot Reload | Hot Updates are a subset of online configurations that allow the application of offline solution changes without disrupting the runtime environment. They maintain solution stability and prevent downtime, ensuring the solution remains up-to-date with the latest changes. |
HistorianTables | HistorianTables groups Tags for historical archiving. Using the Historian Table, you can define the Tags to be stored in each Target Database. Additionally, you can configure standard settings for all tags in a group, such as when to save new data and how long to keep it in the database. |
HistorianTag | A HistorianTag refers to any internal or external Tag whose values are stored in a HistorianTable. In addition to Tags from the platform, you can include dynamic references to external data using the TagProvider function. |
Project File | Refers to the SQL Studio encoded database that contains the Project configuration. The extension .TPROJ references the current project still under development. The extension .TRUN references read-only published projects. |
Layout | Layouts allow the organization of the user interface into frames or panels, acting as containers for your Displays. For instance, a typical layout includes a top display that remains constant with navigation buttons, and an area below where different displays can be shown. |
Modifier (Device/Points) | Auxiliary parameter to effect read and write points for a device, the treatment of Arrays, bit masks, strings, swap and other operations in which a DataType definition can not define them completely. |
Modular architecture | Modular Architecture is a foundation of our platform. Its core is based on compartmentalization, break down complex system functionalities into distinct and standalone modules. The modular architecture provides flexibility in design and configuration while ensuring that changes or adjustments to one module won't inadvertently disrupt or compromise another. |
Module | A program that accesses the database in real time (RtDB) and can be composed of one or more Assemblies. |
Namespace | An address space. All objects created with a Namespace have unique names. "Address space" can also be understood as a form of tier objects. All process variables are grouped in the tag namespace; all reports grouped in the namespace report. The name of an object should be unique within the namespace to which the object belongs. |
.NET CodeBehind | .NET CodeBehind is a programming feature that allows you to write custom code in VB.NET or C# for your solution. This code can be used to define event handling methods, perform calculations, or manage application behavior based on user input or real-time data. |
Nodes | Each device connected to the system through channels is called a Node. Nodes can be individual devices or groups of devices. Each node contains one or more Points. The configuration of Nodes is in the Solution Explorer, at Devices → Nodes. |
Online Configuration | This feature allows real-time modifications to a running solution without stopping its execution. Users can adapt the solution to changing requirements, enhancing flexibility and responsiveness. |
Object Type (RunObj type) | Determines the type of runtime object (display, report, script). |
Objects, Runtime Objects | Runtime objects are those objects visible (through their names) to access the Solution via scripts and displays, such as Tags, Reports, Alarms, Displays among others. The namespaces also identify which execution module is responsible to update those values, for example the Alarm Module will start and will update the values of the runtime objects associated with the alarms. |
PanelType | A Panel is containers for organizing the displays graphical elements. The PanelType defines how those elements will be organized. Our Platform support Canvas and Dashboard as PanelTypes. Canvas (or Process Screens): The elements are in a drawing surface, where each element has its specific location and size. Grid (or Dashboard Screens): The elements are placed in Grid, which size, columns are rows are responsive, which the graphical elements adjusting accordingly. |
Permissions, PermissionsGroup | Permissions are set levels of access for each user that determine what they can/ cannot do within the solution. |
Pollicies | Policies manage requirements on User Identification and Session control. |
Plugins | Excerpts of a Solution, it can holds Tags, Displays, or any other objects. Useful to create reusable components and enforce development standards. |
ObjectValues, PropertyValue | Runtime objects (e.g.: Tags, deviceNodes, etc.) can have one or more properties defined. The TAG and the property value, for example, MIN, MAX, description, among other properties. |
PropertyWatch | Diagnostic utility to check and modify the values of the objects at runtime. |
Parameters(Tag Configuration) | Definition of the parameters of behavior and values processing for Tags. |
Process Modules | Process modules refer to the software components that manage and execute a system's internal logic and data transformations. They encompass Scripts, Reports, and Datasets. They are called "process modules" because these components deal specifically with the internal processes and workflows that enable the system to function efficiently. |
Plug-in | Sub-set of a FrameworX Solution. Plugins are created using the Solution-Export command, selecting which parts and objects from the Solution will be exported. The Plugins can be imported or used by other solutions. |
Points | Points are individual items that can be read or written from/to nodes. They can be registers, I/O values, or variables residing in field devices (nodes). Each Point is bound to a specific Tag in the Solution configuration. |
Product Family | Specify the many options in our product line. It includes: FrameworX: Our Unlimited version, unlimited Clients, I/O and development, server based with all the tools you need FactoryStudio: Scalable, by the number of I/O & clients EdgeHMI: Scalable by I/O, more affordable EdgeGateway: Embedded device communications and processing at the edge or as flexible secure gateway This Product Family reflects in the software licenses. |
Product Family and Model | Define the Licensing Requirement for to run the Solution in Production. Even the Designer is unlimited, you should always setup those fields properly, so the Designer will limit its functionality consistent with the License required for field deployment. Define the Licensing Requirement for to run the Solution in Production. Even the Designer is unlimited, you should always setup those fields properly, so the Designer will limit its functionality consistent with the License required for field deployment. |
Project File | In order to facilitate distinction of current version with legacy product versions, Project File, refer to files with extension .tproj created with version 9.3 or older. |
Protocols | Protocols are the rules for communication between devices. Our software supports a variety of communication protocols. |
Protocols are the rules for communication between devices. Our software supports a variety of communication protocols.Solution | Application for real-time data built on the platform. It includes the configuration for all Modules, all stored and managed as a single entity. |
SolutionDB / SolutionDatabase | SolutionDB (or Solution database) is a database that contains configuration information. Matches files with the extension <Solution>.dbsln (current type, for example) or <Solution>_ version.Teng (type released, for example). |
Solution File / Solution Name | The configuration of an application (solution) is saved is a file with extension .dbSln. All modules settings are stored in that file. The solution name matches the name of the configuration file. |
Property or Attribute | Property (value) associated with a Tag or object. |
Real time database, RunDB, Runtime Database, RtDB | The real time database created when the Solution is running. All objects running accessible (such as Tags, Displays, Reports) are objects on the Runtime Database, also called Real-Time Database or RtDB. |
Rendering Engine | A rendering engine generates visual output from an application's display drawing. In our context, the Engine can be WPF, HTML5, or Portable meaning that the same displays can be rendered to WPF or HTML5 clients. |
Runtime | A Solution with modules loaded and running. Runtime refers specifically to the phase where a solution is in active execution. Related to running tests, carrying out validations, and handling other critical tasks associated with deploying a solution. During this phase, the software effectively utilizes all configured modules — such as Devices, Alarms, and Historian — to execute tasks, manage data, and perform automated operations based on predefined settings. The Runtime environment operates in a seamless manner, integrating with the Solution Designer workspace and the Unified Namespace to ensure real-time data exchange and process control. The term "Runtime" or "Runtime environment" refers to the execution environment, when the solution is running, distinguishing it from the Configuration (or Engineering, or Development) phase. "Runtime" also denotes the software components and computer processes that are in execution when the solution is started. |
Runtime Database | The runtime database is an in-memory real-time database that stores and manages Unified Namespace data during the execution of a solution. It provides an event-driven data exchange of the values of tags and assets between various modules, such as alarms and displays. The runtime database is implemented by the TServer.exe process, ensuring efficient and reliable data management. |
RuntimeUsers | These users are created and retrieved from an external encrypted SQL database or other identification servers. |
TargetPlatform | Defines the Operating Platform where the Solution is intended to Run. It can be Windows Only (.NET Framework 4.8), or Multiplatform (Linux and any OS support .NET 8.) |
Runtime Startup | Operation that is the Solution at run time. This operation can be performed from the program TStartup.exe in the current version of FactoryStudio, or TServer.exe in the published version of the Solution. |
Script References | External DLLs included for a script or display code compilation. |
ScriptClass | A library of functions and methods that can be used in Script Tasks, Expressions, or from the Code Behind on graphical Displays. |
ScriptExpression | One line of code in response to an event, where the entire script isn't necessary. |
ScriptTask | Defines code that executes in reaction to an event (trigger) or periodically at specified intervals. |
Smart symbols | Smart symbols are graphical elements that combine visual representation with dynamic properties and connections to real-time tags and templates. |
StorageLocation | The StorageLocation defines where database variables will be stored or read for use in charts and calculations. You can use any SQL Database. For integration with third-party products designed to store long-term time-related values, known as time-series databases or Historian tools, you need to use the TagProvider. |
Tag | A process variable. Name of a Namespace that includes all the variables created by the user in a Solution configuration. A tag represents real-time and historical data variables that modules can read, write, and subscribe to. Tags can be created locally within the solution or accessed remotely via External TagSources connectivity. Additional metadata, known as tag attributes (e.g., last update time, quality status, description), are automatically generated when creating a tag. Tags are the central point of the Solution Configuration. When configuring modules, they will interact using the tags, such as in these examples: • Devices Module: Maps tag values to field equipment like PLC registers. • Datasets Module: Links tags to SQL database tables and queries. • Scripts Module: Performs analytics and calculations using tags. • Historian Module: Creates a time-series archive of tag values. • Displays Module: Enables operator displays to show values corresponding to tags, regardless of their data source. |
Tag Type | Defines the type of objects in the Tag Namespace: Digital, analog, text. These Tags are a class of compounds or properties accessed directly such as minimum, maximum, Value, quality. Each property is internally created as ValueType. |
Task (Script.Task) | Task program written in VB.NET (or C #) that runs on the server or client during the runtime of a solution. The execution will be on the server or client, depending on the configuration of the domain property in the script. |
Time-Series | Time-Series data is a collection of data, usually a list, or a set, or a stream of data, often with one entry following after the other in time, so a "series" of data readings over some consecutive time period. A single time-series data point is usually represented as a data value, such as a temperature reading (e.g. 56) and the time at which that reading was done (a.k.a. the "time-stamp" or "timestamp"). E.g.: It is helpful for analysis if the timestamps from various systems use the same "clock" and "time zone", so often people use UTC time (Universal Coordinated Time) as the "common" time zone. This helps avoid the potential confusion and extra work to "align" the data from various time zones. |
TManager | The program that performs the configuration of a solution. |
Toggle | Reverses the value of a variable. Values greater than zero are converted to zero; zero is converted to the value "1". |
Trust, Partial Trust, Full Trust | Partial Trust: Environment in which an application has limited access to resources (restricted access to files from particular folders, running other applications, etc.). XBAP applications that run within a browser (e.g., Internet Explorer) should run in "Partial Trust". |
Unified Namespace | A software solution that acts as a centralized repository of data, information and context where any application or device can consume or publish data needed for a specific action. FactoryStudio 9.2 fully incorporates this concept: you can create, consume or integrate to a variety of namespaces. The Unified Namespace (UNS) centralizes data in complex systems like smart manufacturing, offering semantic data structuring. It aggregates, normalizes, and provides data access, streamlining communication and integration among disparate systems. As a middleware layer, the UNS translates raw data into actionable information, ensuring device interaction within a hub-and-spoke architecture, minimizing direct communications, and maximizing flexibility. The Unified Namespace provides a centralized data repository and a standardized method for organizing and accessing data from various sources. This concept streamlines data management, enhances system interoperability, and simplifies the development of applications that utilize data from multiple sources. |
Users | Anyone accessing the solution, either in engineering (Designer Tool) or in runtime mode (Displays). |
Visibility (Tag Visibility) | Refers to the tagging system; Tags can be Private, Public or Protected. In another context, the graphical objects in a display can have a visibility dynamic property to appear or not when the screen is running. The Tag Visibility can be Public, Protected or Private Public: The value of the Tag during the execution of the Runtime is available for access to external Programs via TCP / IP or OPC Server. Also, the value of Tag is necessarily global or shared in all the client stations (Server Domain). Protected: Read-only. Private: A Tag set to "Private" can not be accessed by external applications (OPC Server, TCP / IP) and will run in Client or Server machines according to the application configuration with the following characteristics: Tags used only in modules called by the client (such as displays and Reports) run in the scope of the client, or may have different values on each client machine (Client Domain); Tags used in server modules, such as Devices and Alarms have a unique value in the system (Server Domain). |
WebData, Reports WebData | WebData encapsulates everything needed to exchange JSON, XML, or HTML data with other applications or save its contents to a file. Web Data objects can also be used in displays, enabling interaction with web services and REST APIs. |
XBAP | Xaml Browser Application (XBAP) is a graphical application using the XAML technology that runs inside a web browse. This is a legacy technology no longer in use.. |
In this section: