Follow

ALM Integration - JIRA - Tutorial

Tutorial:

Prerequisites:

  • Instance of SD Elements with two projects
  • JIRA project

Note: In order to get your tasks from SDE to sync to a project in JIRA you first have to set up a system level ALM connection that can be utilized by all Business Units in the instance.

Basic Use:

  1. Start with giving your connection a name and choosing an ALM system to use such as JIRA or Rally. There may be slight variation in the form depending which you choose (for instance asking for an api token in the credentials instead of username and password) but not that different. Let’s use JIRA as an example for now.
  2. Now you have to provide credentials so that SDE can access the ALM server in order to sync. Context root should be filled in if the ALM server is behind a proxy.
  3. Even though Advanced JIRA Configuration may seem optional it’s not since the default field values are not necessarily valid. Must go check what these are in the ALM project and fill them in properly. Check the Workflow Scheme for the JIRA project to know what to put here. You might want multiple states in ALM to correspond to Done in SDE so just comma separate them. Check the Workflow Scheme for the JIRA project to know what to put here. You might want multiple states in ALM to correspond to Done in SDE so just comma separate them. (Note: Show JIRA classic workflow example where Resolved and Closed both correspond to Done in SDE). Check what issue types are valid and all your sde tasks will be created as that issue type in JIRA. We only have Tasks and sub-tasks so lets set it to tasks.
  4. Choose authoritative source. If a task in JIRA is Done but the corresponding task in SDE is TODO this will determine what it should actually be set to on sync
  5. Tasks to Synchronize – can filter SDE tasks to sync. For example if you only sync Done tasks the first time, nothing will show up in JIRA even though the sync was a success because we haven’t set anything to Done in our SDE project yet. However once a task is already in the ALM the status will be updated regardless.

That’s all you need for basic usage on the system level!

Now, to configure a particular project go to that project and set up an ALM connection on the project level.

  1. Choose a parent
  2. Get the JIRA Key from JIRA
  3. Choose sync frequency of how often SDE will check JIRA for updates

That’s it! You’re done! Can now sync to JIRA!

But now if you wanted to sync two SDE projects to one JIRA project, how would you if tasks are identified by their title and you have the same tasks in both projects? 

More Complex Use:

  • Custom priority field

If custom priorities other than the default have been configured in JIRA can remap the SDE then must map these to SDE numerical priorities

{"1-6":"Trivial", "7-9":"Major", "10":"Blocker"}

  • ALM Title Format

Can do this by setting the ALM title format this way similar tasks in different projects can be identified differently.

                        (Application-Title)

                        (Application-Context)

Make sure to set the context at the connector configuration on the project level. That is what will be used here 

  • Custom fields mapping and custom lookup fields

Note: These must have the exact same values to work!

Custom Fields Mapping just set the fields for the task the first time you sync and the SDE tasks are created in the ALM, Custom Lookup Field are used as unique identifiers to find the corresponding task in the ALM. If you go and change the Custom Fields Mapping after having synced to an ALM project for the first time nothing will change...

Note: ALM parent issue-can sync SDE tasks as sub-issues 

Overview of the Integration:

  • OSD onsite, assume direct access to JIRA (in app integration)
    • What are issues related?
    • What needs to be setup?
    • Expectations about config of JIRA project that would work
    • Not making implicit assumptions about fields
    • Describe what type of integrations product supports
      • 1:1 correspondence between SD Elements project and JIRA project
      • Multiple SD Elements projects syncing with a single JIRA project
    • First sync
      • Trial run / dry run
      • Need project key
      • Issue type to be used
        • Bugs/stories/tasks
      • Subtype/subtasks, we support it
        • There is a requirement that pro integrator enters specific parent issue identifier in order to support subtasks
      • Identify which fields needed to be filled in
        • By default enter a set of fields
        • Org may put in additional req of what additional fields need to be set
        • Some are very proprietary
        • If its not required the they won't be filled in
        • If it is req, what is the default? No default…
        • Option exists
      • Move over: 
        • Task identifier, title
        • Description
        • Howtos embedded in description
        • Priority (our 1-10, to their custom priorities)
        • Task tags (not categories)
        • Status (we only sync on this)

Use title, include application project name.

Custom lookup fields (connector, scroll down, option to set JSON dictionary, unlimited set of fields that will restrict the lookup).

Use application name, possible for project name.

Expose 3 macros:

  • Application macro
  • Project macro
  • Context macro
    • Will almost never be used
    • User defined string that has to be entered in the config setup

JIRA exposes standard priority field.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

Comments