Primary Concern is the display of data to authenticated and authorized users
Across all UX formats, such as: application forms, reports, dashboards, notifications, analytics
Across all UX presentation channels, such as: Website, Desktop, Native Mobile Applications
Provides a data-driven framework for maintaining record data and initiating workflow to support business processes
The data-driven user experience updates are published synchronously across all platforms without needing recompilation or redeployment of components
Records are displayed in application forms using Form Definitions to configure UX components to render the Instance data for the user in real-time
Form Definition + Instance data = User Experience
Form Definitions define a user’s experience of an application form:
What can they see?
What can they do?
The user experience can be determined by the following factors:
User’s authorization – groups, teams, roles
State of the Instance being displayed
Other custom rules as required
Provide Create, Read, Update and Delete (CRUD) UX functionality for the record data
Initiate workflow using Data in Action services as the user interacts with the application form
The application form enables state transition events to maintain the lifecycle of individual records
Modify the User Experience including: fields, actions and events
Can cascade state transitions to child instances
Can trigger Data in Action services before or after state changes
Easily extend the available user experience components where required
The Form Definition dynamic page builders provide a framework to present anything, for example:
Reports – interfacing to report servers
Documents – combining XML/XSLT to render HTML/PDF
Extracts – pulling data directly into spreadsheets
Dashboards – integrating with analytics technologies
Focus on working with the business to get the right data fields on the forms
Can be done in real-time in business workshops
Easy to change as business needs evolve
Merge professional IT staff with citizen developers into a consolidated team
Extend the back-office with connectors so citizen developers can provide micro-UX using no/low-code platforms to enhance business processes and automation
What can the user see?
A user must have access to the Instance through a Group or Team to display it in a Form
A Form Definition defines the Concept that controls the user experience
Forms are divided into a set of Tabs
Each Tab has a set of Rows
Each Row has a set of Fields
Each Field implements a single aspect of the Record data
Display a data field that the user can modify or interact with
Display read-only data
Integrate with external data sources (eg: Google Maps)
The Field implementation is generic for the data type and its function is determined by:
The specific Record data being displayed including its current life-cycle state
The Roles assigned to the User
Custom rules where needed
What can the user do?
At sign in, a User is granted access to a set of Form Definitions that determine which Instances the User can see
When a User opens a Form Definition, fine-grained access to the functionality presented by the Form is determined by the user’s Roles
Forms display commands that can be used to initiate action against the Record
Presentation initiates the action but does not participate in it
The enforcement of separation of concerns means that the implementation of the action is within the Data in Action service area
Forms display events that can be used to change the state of the Record
Events are a special case of a command where the intent is to change record state
Can cascade state changes down into child Records based on the Parent-Child hierarchy
Controls the life-cycle of a Record using allowed state transitions
Can initiate action before or after the state transition
Completion of the command returns a result to the form presentation and the user experience refreshes appropriately