Developing collaborative Digital Service applications
In a development team, all developers have their own sandbox development environments, which include the BMC Helix Innovation Studio SDK and a cloud-based instance of the BMC Helix Innovation Studio. In a development environment, an option to install a master or single BMC Helix Innovation Studio is not available. Therefore, if multiple developers want to simultaneously work on a Digital Service application and access the updates, the developers must set up a collaborative development environment.
A collaborative development environment enables multiple developers to perform the following tasks:
- Easily work on a single environment from different locations
- Participate in updating an application simultaneously
- Maintain all project files in a source control system
- Obtain the latest source code files easily
Process for setting up a collaborative development environment
In a collaborative development environment, you can do one of the following tasks:
- Collaborate with multiple developers for working on a single application bundle
- Collaborate with multiple developers for working on their individual application bundles
For multiple developers to access and update the application bundles, you must set up a collaborative development environment as described in the following process:
Task | User | Action |
---|---|---|
1 | A single developer | Creates a new bundle project by using the archetype. For more information, see Creating-a-Project-using-Maven-and-the-Archetype. |
2 | A single developer | Optionally builds, deploys, and tests the bundle project. The developer is not required to export or deploy the project in BMC Helix Innovation Studio. For information about building and deploying a project, see Creating-a-Project-using-Maven-and-the-Archetype and Deploying-the-custom-code-based-applications-to-development-environments. |
3 | A single developer | Checks in the bundle project source code and definition file to the source control system. The following files are checked in:
The following folders are not checked in:
|
Process for multiple developers working on a single application bundle
The following table describes the tasks that multiple developers must perform to work on a single application bundle.
Task | User | Action |
---|---|---|
1 | All developers | Coordinate to ensure that only a single dedicated developer works and updates individual definition files at any point of time. |
2 | Single dedicated developer who works on | Performs the following tasks to build the project and make it available to all developers in a team:
For more information, see the following topics: |
3 | All developers | Perform the following tasks to access the latest application and update the definitions:
For more information, see the following topics: |
The following image describes different stages when multiple developers are working on a single application bundle:
Limitation
In a collaborative environment, the following limitation is applicable when updating definitions of a single application:
Changes made by only one developer for a particular definition file can be committed to the source control system at a given point of time. If multiple developers update a single application bundle, then their changes are not checked in to the source control system. Only the single dedicated developer can save and check in the changes.
A developer who is not the dedicated developer can save the project changes by performing the following tasks:
- Coordinate with other developers and become the single dedicated developer to work on the bundle project.
- Undeploy the existing project from the sandbox environment.
- Update the definitions and check in the updated files to the source control system.
Process for multiple developers working on individual application bundles
After the developer who built the bundle project has checked in the updated project files, all developers in the development team can obtain the bundle project and deploy it to their sandbox instances of BMC Helix Innovation Studio.
The developers must perform the following steps to deploy and update the application bundle in their sandbox environments:
Task | User | Action |
---|---|---|
1 | All developers | Undeploy existing version of BMC Helix Innovation Studio from their individual sandbox instances. For more information, see Deploying-the-custom-code-based-applications-to-development-environments. |
2 | All developers | Perform the following steps for deploying the application to the sandbox instances:
For more information, see the following topics: |
Where to go from here
To start working in BMC Helix Innovation Studio, deploy your Digital Service application for the first time.