At Atlassian, we take great pride in the software we ship, and even greater pride in the success our customers achieve when they use our products. #JiraHeroes is our new monthly spotlight series where we ask customers to share their success stories with Jira Software. We hope that customers will find inspiration on how to overcome their own challenges by hearing how our #JiraHeroes overcame theirs.
This month, we’re featuring @Rachel Wright, a certified Jira Administrator and author of the Jira Strategy Admin Workbook, who shares how she leveraged apps to help a medical device company improve their change management system. Read more to hear Rachel’s best practices for selecting the right app for your organization.
Hello Community! I’m Rachel Wright, a certified Jira Administrator and author of the Jira Strategy Admin Workbook. I help organizations adopt, set up, clean up, maintain, and migrate Jira Software, Jira Service Management, and Confluence.
What I love about Atlassian tools is that they are infinitely extendable. Jira is super powerful on its own, but you can continue to extend it with additional capabilities. If the application doesn’t have a needed feature, there’s probably a third-party app that provides the functionality.
Today, I’ll help you wade through the hundreds of apps in the Atlassian Marketplace so you can choose the best one for your needs, application type, and use case.
Before we dive in, here’s a little bit of background information. An Atlassian app is software that extends the functionality of the core application. Apps were previously called “add-ons” and “plug-ins”. In other software, added functionality is sometimes called “extensions” or “modules”. Regardless of what you call them, apps bring additional capabilities or extend native functions such as: add more workflow post functions, add more reporting capabilities, improve project and portfolio management abilities, and more.
First thing to do is ensure the functionality you desire isn’t already available by Jira Software or provided by an app that’s already installed. For example, there’s an app for Jira Server and Data Center to restrict a workflow transition to a user listed in a custom field. In Jira Cloud, however, that function is a built-in workflow condition. Be sure to not duplicate existing capabilities.
There’s no “one size fits all” method for conducting this research, but here are some ways to ensure functionality is not already available in your existing instance:
Read the Jira product documentation
Review the documentation and feature list for any installed apps
Search the Jira admin area where you think settings for a feature may exist
1. Visit the Atlassian Marketplace. Application administrators can also access the app list from within the applications. In Jira Cloud, click the “cog” or “gear” icon at the top right and select “Apps” in the menu. In Jira Server and Data Center, select “Manage apps” instead.
Use the marketplace search bar to find apps by name or vendor name. You can also use the navigation menu on the left sidebar to filter apps based on application and deployment type. As you’ll see, there are hundreds of apps! You can filter to a more manageable number.
2. Create a list of potential apps to compare and evaluate. Use a table similar to the one below to document your own problem to solve and compile an initial list of apps for further analysis.
App Name | URL | Price | Notes |
Ex: Jira Misc Workflow Extensions (JMWE) |
marketplace.atlassian.com/apps/292/jira-misc-workflow-extensions-jmwe innovalog.atlassian.net/wiki/spaces/JMWEC/overview |
Ex: 1.25 per month per user | Ex: Includes point and click rules and scripting capabilities |
To learn more about an app, click the tabs at the top of the page.
Be sure to read all the information on the app’s marketplace page. Under the app title is the name of the vendor. Click on the vendor’s name to see other apps they’ve developed and learn what type of customer support is available.
Some apps are free and some are paid. The paid apps usually include a free trial. Keep in mind that most app pricing is based on the total count of active application users.
Also, don’t miss the “Documentation” link and other useful details at the bottom right of the app’s overview page. Most vendors publish use cases, recipes, examples, and samples to showcase app features.
3. Compare capabilities of the potential apps you’ve identified.
Before you start or install any free trials, here are a few things to consider:
What does the app do?
How will it be used at your company?
How many users can use it?
How often will it be used?
Does Jira already have a standard mechanism (or already installed app) to accommodate the requested feature(s)?
Are there alternative similar apps?
Is the app compatible with your Jira application type and deployment type?
Are there any compatibility issues with other installed apps?
Are there any external or internal dependencies?
Is the app created and supported by a trusted source?
What information is available about the vendor?
Is contact information available?
Is installation or post-install support available?
Does the app appear well maintained?
What is the current version number?
What is the date of the most recent update?
How often are updates made?
Do updates appear ongoing?
Is the app widely used?
Are there favorable reviews?
Do the favorable reviews appear legitimate? (Are they written by users, or by app authors?)
Do reviews and support issues mention bugs, performance, support, or security problems?
What is the price and renewal price for the license level?
Is there a free trial?
Who can help test the app? (Include the requestor, end users, and application admin users.)
Does enough data (and the right kind of data) exist in the test environment to test the app?
Now that you have a deeper understanding of app capabilities, it’s time to pair down the list to the strongest contenders.
4. Install and evaluate the top three app candidates in your test environment.
Some areas to explore include:
Does the app do what's advertised and meet your needs?
Does the app behave in an intuitive and usable way?
Are there any browser incompatibilities?
Does the app have a feature which could be misused or used maliciously?
Does the app impact performance? Specifically check UI load times, especially for large instances.
Are errors present in the logs? (Jira Server and Jira Data Center only)
How does the app fit into the application maintenance and upgrade (Jira Server and Jira Data Center only) schedule?
[Add additional test cases here]
5. Uninstall apps you’re not using.
Sometimes app trials leave behind remnants like additional custom fields, for example. Be sure to remove any unneeded app elements or settings.
6. Install the selected app in your production environment and maintain it for the long term.
Regularly review the list of installed apps to see if there are any actions needed. For example, you may need to update a version, address a compatibility issue, or reapply a license key. Track the expiration dates of all apps and be sure you have enough time to secure funding before subscriptions or free trials expire.
I previously worked with a multi-million dollar medical device company who wanted to ensure that their large, internal system change requests always had an owner that would oversee and manage the process. Prior to my involvement, there were too many changes made without the desired leadership oversight, which led to unintended collisions and surprises for teams not aware of the change.
What this client needed was conditional logic in Jira Software that would require an owner to review all the big, impactful, high visibility changes before any work was started. For example, require an entry in a custom field depending on the value selected in a different custom field.
At the time, my client was already using 3 different Jira workflow apps. Rather than add an additional app and increase the complexity of my client’s instance, we evaluated each of the apps for the required functionality. While some of the apps only had a “point and click” interface, one of the apps had both the “point and click” interface and scripting capabilities (great to have both options in one app!).
I ended up scripting a simple solution, even though my coding days are over. This allowed me to test each app to see which would best suit my client’s needs. The first app we tested simply didn’t have the capability needed, so it was easy to exclude. The second and third apps accomplished what we wanted, but the third one was much easier to navigate and configure. It also had less of a learning curve and was already heavily used for other functions, meaning it was likely to remain funded in subsequent years. We ultimately selected the third app for these reasons.
To address the change management visibility problem, I took several steps to implement the conditional logic. First, I created a custom user picker field to collect the name of the change request’s owner. Next, I created a custom select field with “Small”, “Medium” and “Large” values to collect the size of the change. Finally, I created a scripted workflow validator to make the owner field required if the issue type is “Change Request” and the size is “Large”.
This small but impactful change was very easy to implement. First, I built the use case in a test environment and used features in the app to craft the proper syntax and test the result without impacting existing Jira data. Then I gave my client a quick demo to show the result and collect any feedback. Before building the use case in production, I created a change request Jira issue to request approval to modify the live application’s configuration. Finally, I built the use case in production and added documentation describing the change for the end user audience. Now, large changes receive the desired visibility and there are fewer collisions for the company.
Evaluate apps to understand which are available for Cloud, Server, and/or Data Center. Sometimes apps are available for multiple deployment types but the features and capabilities differ. Always make sure that an app is compatible with your application type, deployment type, and version. Don’t make my mistake and waste time reading the wrong documentation.
For every configuration change you make and every app you install, always consider the long-term health of the Jira application. Knowing the best way to solve a problem and how it will impact your application in the future is the difference between a good administrator and a great one.
Thank you for reading my app selection recommendations! How is the selection process managed at your organization? Please share your tips with the community using the comments section below.
If you have questions, feel free to email me at rwright@jirastrategy.com or connect on LinkedIn. Happy choosing!
Thank you so much for sharing your insights, Rachel! ❤️
Are you inspired by Rachel's story? Do you have a story of your own that you’d like to share? Check out our call for submissions, and let us know you’re interested in the comments below! 🙌🏼
Rachel Tang
7 comments