catworkx has developed an in-house integration solution based on Atlassian tools to make complicated app development processes as lean and structured as possible. The entire development process is outsourced to a Jira process. The link to Confluence, Bitbucket and Bamboo increases the level of automation. In addition, work processes can be easily monitored and tracked by everyone involved. The app development process in Jira is rounded off by implemented release management.

Application Lifecycle Management with Atlassian Tools at catworkx
Highlights
- Thanks to the automatic creation of development projects, Confluence areas, Bitbucket repositories and Bamboo plans, an administrator is only required once to implement the process and maintain the system, but is no longer needed to create projects, areas, etc.
- The development process is standardized.
- The traceability of the entire development process up to the artifact of the version is guaranteed.
- Naming conventions are automatically adhered to.
- Changes only need to be made to one workflow.
- ALM only contains standardized apps and no “Script Solutions”.
Software development at catworkx primarily supports the company's own consulting activities and is characterized by a large number of individual customer developments. In the course of 16 years of Atlassian activities, catworkx has derived over 260 additional solutions (apps) from this, which are available on request or via the Atlassian Marketplace.
The initial situation:
For sustainable and quality-assured development of all apps, catworkx aims to instantiate the entire development toolchain, with its own Jira project and associated Confluence space, Bitbucket repository and build plan. At first glance, the administrative overhead for a relatively small development offers the opportunity to reduce dependency on individuals and realize self-service through a high degree of automation. As the existing integration options within the Atlassian toolchain do not cover the automation requirements, catworkx decided to develop its own integration solution.
The solution approach:
Jira leads the entire development process. The entire automation chain is linked to a Jira process. The Jira process represents the app on a meta level, from which the administrative processes in particular are triggered via a workflow:
- Automatic creation of a Jira project, which is used to control the actual (further) development of the app.
- Automatic creation of an area for the app documentation in the external Confluence.
- Automatic creation of a repository in Bitbucket.
- Automatic creation of a build plan in Bamboo.
The app process later serves as a central entry point from which the entire development process can be monitored and tracked, thus ensuring traceability. All of the app processes are located in a dedicated project and simultaneously represent the app catalog.


In terms of the actual feature development, a development workflow is implemented that is run entirely via triggers from Bitbucket. The developer does not have to leave their development environment and works in a tool. When a feature branch is created, the process automatically switches to the “In progress” state. Further transitions towards QA also take place automatically, triggered by triggers in connection with pull requests in Bitbucket and their acceptance or rejection. The Jira/Bitbucket integration offers all of these functions as standard.
catworkx has made an additional extension for the release management of its own apps, again choosing implementation via a Jira process. Synchronization functions from the catworkx Version Management for Jira app are embedded in its workflow in order to create, update and publish “real” versions of the project.
In addition to the greater flexibility achieved by mapping a real workflow in release management and the additional fields for version information, a release branch can easily be created using Jira's on-board tools. This allows access from the app process to the version artifact. catworkx draws further added value from the fact that the in-house app Issue Publisher for Jira can be used to generate automatic release notes as a Confluence page.