# DTAP Advanced: practices for multi-DTAP environments

**URL:** <https://community.novulo.com/t/dtap-advanced-practices-for-multi-dtap-environments/198>\
**Category:** Wiki\
**Created:** [May 27, 2024, 12:37pm UTC](https://community.novulo.com/t/dtap-advanced-practices-for-multi-dtap-environments/198 "2024-05-27T12:37:58Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Joost](https://yyz2.discourse-cdn.com/flex008/user_avatar/community.novulo.com/joost/32/87_2.png) [@Joost](https://community.novulo.com/u/Joost)\
**Post date:** [May 27, 2024, 12:37pm UTC](https://community.novulo.com/t/dtap-advanced-practices-for-multi-dtap-environments/198/1 "2024-05-27T12:37:58Z")

</div>

The post [DTAP: Best practices and database copy tool](https://community.novulo.com/t/dtap-best-practice-database-copy-tool/186) describes the set-up of various DTAPs for your Novulo application.

When you use DTAP in combination with Headless CMS, there is another set-up that allows for various parallel tracks of individual development of the front-end (head) and the Novulo back-end.

This can be very useful when the release cycle of the front-end is different from the back-end.  
It can occur that the Novulo DTA-environment is preparing for a new release due in a few weeks from now, but that your Front-end needs a release much faster, and must be tested on the current production environment.

Then, you need a Pre-live environment, on the same version and configuration and with similar data as production, to Test and Accept your Front-end.

You need your front-end Test and Acc to be able to switch betwen Prelive and Test/Acc.

This is then the set-up and connection when the front-end is releasing faster than back-end.

digraph { rankdir=tb; node [shape=rectangle fontname="Helvetica,Arial,sans-serif"] subgraph { label="Novulo" Dev -\> Conf -\> Test -\> Acc -\> Prelive -\> Prod } subgraph { node [color="blue"] HTest [label="Test"] HAcc [label="Acc"] HProd [label="Prod"] HTest -\> HAcc -\> HProd } HProd -\> Prod HTest -\> Prelive HAcc -\> Prelive { rank = same; Dev; Conf; Test; Acc; Prelive; Prod} { rank = same; HProd; HTest; HAcc } }

And when your front-end and back-end are on the same cycle, and the front-end prepares for new back-end releases, you have a more traditional set-up.

digraph { rankdir=tb; node [shape=rectangle fontname="Helvetica,Arial,sans-serif"] subgraph { label="Novulo" Dev -\> Conf -\> Test -\> Acc -\> Prelive -\> Prod } subgraph { node [color="blue"] HTest [label="Test"] HAcc [label="Acc"] HProd [label="Prod"] HTest -\> HAcc -\> HProd } HProd -\> Prod HTest -\> Test HAcc -\> Acc { rank = same; Dev; Conf; Test; Acc; Prelive; Prod} { rank = same; HProd; HTest; HAcc } }
