This article describes the JIRA integration for Meisterplan and how to set up and use the JIRA connector required for this feature.
Please note that the JIRA connector is still in the BETA phase.
- How the JIRA Integration for Meisterplan Works
- Case 1 - Schedule Starting at a Given Point in Time
- Case 2 - Schedule Starting Today
- Scheduling in Meisterplan
- Example Using Two Teams
- Setting Up the JIRA Connector
- Settings (Import Configuration XML File)
- Executing the Connector
- Download Link
How the JIRA Integration for Meisterplan Works
The JIRA connector can read issues from JIRA and transfer them to Meisterplan as projects. The summary of an issue will be transferred as project name. As project allocation, depending on the estimation mode, hours entered for each issue can be transferred directly, or story points can be converted via the velocity specified in the connector properties. In the JIRA connector, you can also specify whether the allocations will be assigned to a role or a resource.
The project duration is derived from the capacity of the specified role or resource. The project will be created with the duration required by the role or resource to finish the task. Issues for which no allocation has been specified in JIRA will be created as Meisterplan projects without allocations and with a duration of one day.
When multiple issues are imported, the order of issues returned by your import query in JIRA will be used to rank and schedule the imported projects in Meisterplan. The next project will automatically be started after the project ranked immediately above it. This way, when issues are imported from JIRA, the resulting Meisterplan projects will always constitute the current plan.
In addition to the summary, estimates, and rank, the JIRA status of an issue is also transferred. If it hasn't already been entered in Meisterplan, it will be added to the status list. If colors are associated with status options, the Gantt color scheme by status will display these colors.
If there is a custom project field of the URL type in Meisterplan, a direct link to the issue in JIRA can be transferred to Meisterplan and opened there in the edit project window.
Case 1 - Schedule Starting at a Given Point in Time
If allocations are imported from JIRA issues from one of the ESTIMATE, ESTIMATE_SUM or STORYPOINTS fields (see Settings below), it can be inferred that the imported schedule starts at a given point in time. The allocations imported via one of the three fields don't change with time. Therefore, when one of the three fields is used, a start date should also be set in the configuration xml file. When importing story points, a conversion rate also needs to be specified via the velocity item.
In Meisterplan, the projects will be imported sequentially starting at the configured date. The configured date can be in the past or in the future.
Case 2 - Schedule Starting Today
If allocations are imported from JIRA issues from one of the REMAINING_ESTIMATE or REMAINING_ESTIMATE_SUM fields, the schedule can be aligned with the today line. In this case, the start date should be left empty. In the configuration xml file. With each import, the schedule is automatically realigned with the today line. The remaining hours will be displayed as a project of decreasing length.
In Meisterplan, the projects will be imported sequentially, starting at the today line.
Scheduling in Meisterplan
After importing the current schedule from JIRA, alternative variants can be easily simulated. By changing project lengths while keeping the amounts of allocation unchanged (stretching and shrinking), you may simulate which projects can be done simultaneously in a given period. The rank in Meisterplan may be changed in order to prioritize projects. You may also examine multiple variants by using scenarios.
If a proposal is approved, priority changes can be entered in JIRA. The requested order of projects can be communicated to the team for the next sprint planning.
Example Using Two Teams
Case: I have two teams working agilely with JIRA, whose roadmaps should now be visualized in Meisterplan. The topics are managed in JIRA as epics. Estimates are given in story points.
- In the resource pool, create two roles "Team A" and "Team B".
- In the resource pool, create each team member as a resource whose primary role is set to "Team A" or "Team B".
- In the settings, under Data Sources, create a Webserviceconnector for each team: "JIRA Connector Team A" and "JIRA Connector Team B".
- In the settings, under Field Configuration, create a custom project field of the URL type: "jira_url" (will be prefixed "cust_" automatically, so the full field name will be "cust_jira_url").
- In the settings, under User Management, create a Meisterplan user to use for the import: "JIRA". This user must have Administrator or Data Manager access level in order to be able to import data.
- Create a configuration xml file for each team.
- The URL, User, Password and Database should be the same in both xml files.
- Enter the Import Code from the Webservice connector created in Meisterplan for the respective team in each xml file.
- Enter a separate JIRA query for loading the matching epics for the respective team in each xml file.
- Set the JiraEffortSource property to STORYPOINTS in both xml files.
- Enter the Velocity (story points per person day) of the respective team in each xml file.
- Enter a Start Date for the schedule. This can be different for each team because epics that are partially done still receive full allocation according to the story points entered in JIRA.
- Enter the "cust_jira_url" field you created for the link as mpUrlCustomField property.
- Execute each connector separately via the command line (see section "Executing the Connector" below).
- The epics will be displayed as projects.
- The two teams will be displayed as roles allocated to the imported projects.
- The order of projects will be equal to the order of the epics in JIRA (by global rank)
- The projects will display the JIRA status in the Status field.
- The epic can be opened in JIRA out of Meisterplan via the URL field in the edit project window.
Setting Up the JIRA Connector
The JIRA connector can currently only be used as a stand alone tool combined with a Webservice connector created in Meisterplan.
- Download connector: JIRA Connector BETA and unzip this file.
- Check for the Java Runtime Environment (enter "java -version" on command line). If this is missing, download and install it.
- Create any required Webservice connectors in Meisterplan (one for each configuration xml file, each of which may use a separate JQL import query).
- Optional: Create a separate Meisterplan user for the JIRA import.
- Create one configuration xml file per connector and configure it (see section "Settings" below).
- Execute the connector for each configuration xml file via the command line (see section "Executing the Connector" below).
Settings (Import Configuration XML File)
The xml file must have the following structure and data:
<!-- This JQL query selects all JIRA issues to create as projects in
type = Story AND sprint = 517 ORDER BY priority ASC
<!-- Admissible values are ESTIMATE, ESTIMATE_SUM, REMAINING_ESTIMATE,
REMAINING_ESTIMATE_SUM and STORYPOINTS -->
<!-- The velocity is used to calculate the story points per person day
<!-- A velocity of 2 will result in 2 story points per person day -->
<!-- if ESTIMATE, ESTIMATE_SUM, REMAINING_ESTIMATE or
REMAINING_ESTIMATE_SUM are selected, the value will be divided by
the velocity -->
<!-- Title of the role or resource for which allocations are imported in
<!-- Enter the title for a resource as "Last name, First name" -->
<!-- If this property is set and the referenced field is a custom URL
field in Meisterplan, the URL of the imported JIRA issue will be
entered in this field -->
<!-- If this property is set and the date specified as YYYY-MM-DD is
valid, this is used as the start date for the first project and the
capacity calculation. -->
<!-- Otherwise, the current day will be used as start date. -->
Executing the Connector
The connector is executed via the command line. Both the jar file "jira-connector.jar" and the configuration xml file "jira-import.xml" used here are example file names and should be replaced by the actual files to use:
java -jar jira-connector.jar --mode CLI --config-file jira-import.xml