Understanding distributed development for an application
When you use continuous integration and delivery (CI/CD) workflows, you set up the systems in your environment based on your workflow requirements. For example, if only one team is developing an application, you can use a single system for application development and branch merging.
However, you can use a distributed development environment if multiple teams are simultaneously developing an application. A distributed development environment can comprise multiple development systems, on which developers author and test the application. They then migrate their changes into and merge them on a development source system from which those changes are packaged and moved in the CI/CD workflow.
When you configure a distributed development environment, ensure that you are following best practices for development and version control.
- For more information about development best practices, see Understanding best practices for DevOps-based development workflows.
- For more information about versioning best practices, see Understanding best practices for version control in the DevOps pipeline.
- Understanding the benefits of distributed development
Distributed development environments offer a number of benefits when multiple development teams are working on the same application. For example, each development team can continue to work on its own Pega Platform server even if other team servers or the source development system are unavailable.
- Understanding the components of a distributed development environment
Distributed development consists of several systems, including remote development systems, the source development system, and an automation server.
- Developing applications, merging branches, and deploying changes in a distributed development environment
When you work in a distributed development environment, you generally work in branches and merge them to incorporate changes into the base application. The implementation of some of your tasks depends on your specific configuration, such as which automation server you are using.