General Discussion

Tech Talk: Implementation – Promoting a form (Dev -> UAT -> Prod)

  • 1.  Tech Talk: Implementation – Promoting a form (Dev -> UAT -> Prod)

    Posted 07-18-2024 10:00
    Edited by Ian Chamberlain 07-18-2024 12:41

    A typical TrueContext deployment includes a Development FormSpace, a User Testing FormSpace (UAT) and a Production FormSpace.

    Access and permissions for each FormSpace are managed through the creation of user Groups. Each FormSpace can have a different set of users with access. For example, you can have an HR Development FormSpace and an Inspection Development FormSpace, and assign a different set of “Development Users” to each FormSpace.

    This is the path that your forms should take when copying forms and promoting them into a Production space.

    A diagram of a user acceptance testing

Description automatically generated

    Development FormSpace

    • Purpose: This FormSpace has a copy the developer can change at any time in the interest of improving the form. Only developers should be able to submit this form, if the developer breaks it while they are working it, they won’t affect anything that is in use in the field.

    • Access: Reserved for experienced users familiar with the Live Portal and form building. These are your workflow builders.

    • Connections: Linked to development instances of back-end systems.

    User Acceptance Testing (UAT) FormSpace (Optional but important)

    • Purpose: This copy gives you a version to use for testing by more than just the developers, while keeping the development copy for the developer to continue working on. A separate FormSpace for UAT provides a similar function to our Can Test permission but gives non-developers access. The developer can continue to work on the form without annoying users with frequent updates.

    • Access: Limited to a small group of users who will use the workflows daily in production and can offer usability feedback.

    • Connections: Linked to development instances of back-end systems. (OR UAT if they are available)

    Production FormSpace

    • Purpose: The Production copy should be for actual field users and should have the most restricted access —users should not have Can Create permissions.

    • Access: All users who need to use the workflows and mobile-only users.

    • Connections: Linked to production instances of back-end systems.

    Note:  You should copy Forms from Development or UAT. Don’t create or edit them in the Production FormSpace.

    Before you copy from one FormSpace to another:

    • Ensure that you either have a connection for each different environment or provide access for your connection across all your FormSpaces.

    • Copy any data destinations that are attached to the form into the different FormSpaces BEFORE you copy the form.

    • Ensure that you tweak the destinations that were copied to align with the FormSpace that they are in. For example, if you copy an Email destination over into Production, you might want the Subject, Body and To fields to be different than what you had in Development.

    • When working with the form, you should usually copy it instead of moving it. Moving the form will remove it from the DEV FormSpace but copying it will keep a copy in both FormSpaces.

    Once you have created the connections across your FormSpaces and copied over all your Data Destinations, it’s time to copy the form.

    Note: The first time that you copy the form, select "Create Form" as the Target Form. Every other time after that, select the "Create as a New Version of an Existing Form" and copy it on top of the existing version so that you can maintain Version History even when copying forms between formspaces.

    Use a naming convention so that as a developer or a tester, if you have access to more than one copy from the app, you know which is which. FormSpaces are not visible in the app — if someone has access to all three copies, they will show all the same name. Clear naming also helps when you are looking at submission data as it will be easy to see which version of the form you are looking at (Dev/UAT/Prod)

    Here is an example of what your FormSpaces might look like with a consistent naming convention.

    Production Form Name

    Job Hazard Analysis

    UAT Form Name

    UAT - Job Hazard Analysis

    Development Form Name

    DEV - Job Hazard Analysis

    As always, let us know should you have any questions around anything in this post, happy to help anytime.

    For more information, visit our docs portal page: Introducing and Testing New Form Versions in a Production Environment.

    #TechTalkImplementation

    ------------------------------
    Ian Chamberlain
    Solutions Architect
    TrueContext
    ------------------------------



Reminder: Content posted to our Community is public content.  Please be careful not to post Intellectual Property that you do not have permission to share.  For more information please refer to our Terms Of Use