“JIRA Admin Mistakes” in Denver

In 2017 the Strategy for JIRA Tour delivered 20 “JIRA Mistakes” virtual and physical presentations as we rolled through Texas, New Mexico, and Arizona.  In 2018, we’re tackling the west coast with planned stops in California, Nevada, Oregon, and Washington!  See the tour schedule.

Denver Atlassian User Group

Our first 2018 presentation, is a virtual one in Colorado.  Rachel Wright is the featured speaker at the February 21 meeting of the Denver User Group.   She’ll present “Top JIRA Administration Mistakes” based on the JIRA Strategy Admin Workbook. 

The goal of the “Top JIRA Administration Mistakes” presentation is to keep others out of what I call the “JIRA swamp.”  Or, if you’re already in it, help dig you out. This session is different – it’s about strategy.  It’s recommendations from years of cleaning up horrible JIRA configurations!  It’s about what you should do, what you shouldn’t do, and why.  Hear the mistakes I made as a JIRA administrator and real examples of problems to avoid.  Would you rather your application be an organized, tidy, and trimmed garden or a foggy, contaminated, overgrown swamp?

Atlassian Users Groups are where users meet, learn, network, and share best practices. The groups meet locally, all over the world, on a quarterly or more frequent basis.  User Group members are newbies and veterans who like to “talk shop” about Atlassian software, about Agile development, and about related business topics.  At these events, you can network with your peers, share solutions, meet Expert Partners, get special content from Atlassian, and enjoy a beer.

Will you be in Denver on Feb 12?  Join us, join the User Group in your city, or start a group!

Best Practices for Creating a Custom Workflow

If you’re on a software team, you probably use the default Jira workflow or something close to it.  But what if you’re on a business team or the default options don’t fit the way you want to work?  Then it’s time to create a custom workflow.

A workflow is a standard set of statuses (steps) and transitions (movement between steps) that each issue follows in its lifecycle.  Statuses take an idea from “conception” to “completion”.  Each Jira project can have its own workflow and each issue type within a project can have its own workflow as well.  For example, the Legal team has a specific process for contract review and a general process for all “other” types of requests.  Their Jira project might include issue types like the standard “Task” and a custom type like “Contract.”

  • The “Task” issue type has a very simple workflow, with the statues “To Do” and “Done.”
  • The “Contract” issue type requires additional statuses for approval and execution steps that occur in a contract review process.

  RECOMMENDATION
In the beginning, keep workflows as simple as possible, until you’ve uncovered a deficiency or process step that needs special attention.

Custom Workflow Tips

The steps below outline the best practices for creating a workflow:

  1. Before creating a new custom workflow, have the user explain their real life process to you.  The workflow should be as simple as possible.
  2. First, draw (preferably on paper) a workflow to ensure it makes logical sense and all forward and back transitions are accounted for.  You can use the “Custom Workflow Documentation” template in the Jira Strategy Admin Workbook or in ThinkTilt’s Process Template library as a way to communicate and document workflows.
  3. After drawing the workflow, write the workflow out in words. This can uncover additional needs you may have neglected to draw or consider.
  4. Include logical backwards transitions so users can self-manage issues.
  5. Give users options to abandon or stop progress on issues at appropriate times.
  6. Give project-level administrators appropriate options to fix improperly transitioned issues.
    • Example:  Include a “reopen” transition button in the final status to address issues that were improperly closed.
  7. Use transition conditions sparingly.  If a condition is needed, set the restriction to a project role, rather than to an individual, for easy maintenance.
  8. Use transition validators and post functions to minimize the amount of manual work a user has to do.
    • Automatically assign an issue to the reporter when moving to an “information needed” or “verification needed” type of status.
    • Automatically assign an issue to the Project Lead in a “triage” type of status.
    • Automatically move a parent issue to “In Progress” when a child issue starts progress.
  9. Name your statuses:
    • Name statuses so they reflect the current state.  Good status names immediately tell a user what is occurring and what state an issue is in the workflow process.  For example, “Pending Review”, “In Review”, “Being Reviewed”, “Awaiting Review”, etc.
    • Make any status names short and easy to understand what is happening.  Long, multi-word names are harder to query and may be truncated on certain screens.
  10. Name your transitions:
    • A Transition name should be short and reflect an action taken.
    • Good transition names immediately tell a user what action to perform to progress an issue.  Example:  For an issue in “Pending Review” status, a good transition name would be:  “Review Complete.”  If you need a “pass/fail” situation, where an action must pass a test before a transition can occur, good transition names would be:  simply “Pass” and “Fail.”
    • Bad transition names confuse the user about how to move forward.  Example:  “Review.”  A transition button should signify the start or end of an action.  The word “Review” is ambiguous.  If a user clicks “Review,” does that mean they should start a review or that the review has already occurred?

It’s easy to customize workflows and therefore easy to go overboard, creating more structure than you really need.

Phased Approach

It’s certainly possible to capture every little step in your work process and build that into a complex and long Jira workflow.  An alternative however, is a phased approach.  Simply break your process into phases that represent a collection of smaller steps.  The phases represent key decision points. An issue can’t be moved to another phase until the requirements of that phase have been satisfied.  Your Jira status represents the entire phase, rather than a status for every small step in the phase.

Example:  Your company is signing a partnership agreement 
The contracts process requires a review of the contract by both parties and potential edits before final execution.  It’s a predictable process requiring a short workflow like:

Open > In Review > In Execution > Closed

Sample Legal Contracts Workflow

  TIP
A generically named status like “In Review” is better than a legal-specific name like “In Contract Review”.  Other Jira projects can use the generic version regardless of what type of thing needs review.  You want to share assets and schemes between projects as much as possible.

The Legal team is doing many things in the background that may not need to be reflected in the workflow.  For example:

In the “In Review” phase, the Legal team is reviewing the contract, researching legal topics, communicating with internal teams, negotiating terms with the external company, etc.

In the “In Execution” status, the CEO is finding his favorite signing pen, both companies are trading paperwork, and your Legal team is entering the final result into their contracts database.

In the above example, is it useful to create a status for every step that occurs in the contracts process?  Do you need to track how many times the contract was modified during the review process?  Do you need to track which parties have signed the agreement so far?  If the answer is “no” a phased approach may be more useful.  Also, it might be more useful to track signature collection in a custom field.

  RECOMMENDATION
If you’re not going to report on something (ex: “How many contracts have been signed by us?” in the above example) that status or custom field may not be necessary or useful.

Don’t over-complicate your custom workflow with steps and statuses you don’t really need.  Your end users will thank you for it.

System, Application & Project Admins: Who Does What in Jira?

I was recently asked:  “If Jira project admins can now edit their own workflows and screens, what’s left for the application admin to do?”  Plenty!  Application admins are still very much needed, and their work extends way beyond managing a Jira project.  Further, the new project admin abilities aren’t as liberating as they may sound.  Let’s examine the types of admin users.

Types of Jira Admin Users

There are many different types of Jira admin users and responsibilities vary depending on the type.  Admin users generally fall into one of the following categories:

  • System Level Administrators – Users with the ability to perform absolutely every Jira administration function
  • Application Level Administrators – Users with permissions to perform most Jira administration functions
  • Project Owners or Leads – A project’s single point of contact, often responsible for project strategy decisions
  • Project Level Administrators – Users with permissions to manage settings for individual Jira projects.  (Example: Components, project users, etc.)

While the admin types have distinct abilities, a user can be multiple types of administrators at the same time.  For example, an application administrator may also be the owner of a specific Jira project.   An application administrator could be a system administrator as well if those roles have been combined.  For the differences between application administrator and system administrator permissions, see the “Managing Global Permissions” documentation.

Jira Admin Responsibilities and Abilities

Each admin level has a distinct set of responsibilities.  Below we’ll address the four admin types as two levels:  system/application and project.

System Level Administrators & Application Level Administrators

These administrators need to consider the health of the application, impact to the application, and maintenance implications for each decision and change they make.  These admins need to be chosen carefully, audited regularly, and approved by the application owner.

Application admins typically have the following responsibilities:

  1. Assist the Jira Advisory Board in maintaining established standards
  2. Communicate standards, procedures, changes, and maintenance outages to your Jira Ambassador team and end users
  3. Assist end users with user-specific settings
  4. Assist Project Level Administrators with managing settings and maintaining their projects
  5. Complete approved customization requests or suggest alternative solutions within established standards
  6. Manage users, groups, and access
  7. Create and configure new projects, schemes, and assets
  8. Remove projects, schemes, and assets when they are no longer needed
  9. Perform application upgrades
  10. Vet, install, and upgrade apps, plugins and integrations
  11. Check logs for and address errors
  12. Develop and maintain documentation and end user training materials
  13. Monitor and ensure the overall health of the application

Download this list as a worksheet at: jirastrategy.com/link/admin-responsibilitiesTip:  Turn this worksheet into a Jira Admin job description!

Project Owners & Project Level Administrators

Each Jira project has a listed “Owner” or “Lead” who is sometimes also the default issue assignee.   Additionally, individual projects can have an unlimited number of administrators.  As  such, there’s an opportunity to involve additional users in project-level maintenance and  management.

Project admins typically have the following responsibilities:

  1. Set and maintain Components, Versions, and other project-specific settings in accordance with established standards
  2. Manage users and groups in the “Users and roles” area
  3. Routinely triage (or appoint a triage person) to assign and review issues as they are created
  4. Maintain the data and accuracy of data in the project space
  5. Report any project issues or customization needs to the Jira Support team
  6. Respond to questions or approvals requested by the Jira Support team

additional Editing Abilities

Additionally, project admins have limited workflow editing abilities in Jira version 7.3 and limited screen editing abilities in version 7.4.  Also in 7.4 these abilities can be enabled or disabled through Permission schemes.

Project admins can only utilize assets that already exist.  For example, they can add an existing status to their workflow or an existing custom field to a screen, but they cannot remove a status, create or rename statuses, or create new custom fields.  They can modify transitions, but not edit transition screens or transition behaviors (properties, conditions, validators, or post functions).  Further, these editing abilities only apply to projects where the workflow and the screens are not shared with other projects.  If you’ve been sharing project configurations, as highly recommended in the Jira Strategy Admin Workbook, it’s possible that few or none of your project admins will have these new editing abilities.  Additionally, the default workflow and default system screen still cannot be edited by anyone.  Read more about these features in the 7.3 and 7.4 release notes.

How to check for Workflow Editing Abilities

  1. Use the Admin UI
    If you have few workflows, you can manually look for ones that are only used by one project.  In the Jira Admin UI, visit Admin > Issues > Workflows.  Click the “View” link next to each workflow.  The following page will show how many projects use the workflow.
  2. Use Atlassian’s Script (Jira Server Only)
    Atlassian created an admin helper script to detect workflows and administrators impacted by the 7.3 change.  The script requires node.js and you must be able to execute it on your server.
  3. Use the Database (Jira Server Only)
    This method is not perfect but it got me to the data I needed.  Work with your database team to improve the sample queries or format them for your database type.

First, I counted the number of projects used by each workflow, looking for any that are not shared (those with a project count of 1.)

Sample Query:  SELECT wse.workflow, count(p.pname) AS `Projects Using Workflow` FROM nodeassociation n INNER JOIN project p ON p.ID = n.source_node_ID INNER JOIN workflowscheme ws on ws.ID = n.SINK_NODE_ID INNER JOIN workflowschemeentity wse on wse.scheme = ws.ID WHERE n.source_node_entity = ‘Project’ and n.sink_node_entity = ‘WorkflowScheme’ GROUP BY wse.workflow ORDER BY `Projects Using Workflow`, workflow;

Next, I retrieved project details for each of the not shared workflows.  I mainly wanted to know the project id, project name, and lead.

Sample Query: SELECT p.id AS project_id, p.pname AS project_name, p.lead AS project_lead, ws.name AS project_associated_workflow_scheme, wse.workflow AS workflow_scheme_associated_workflow FROM project p LEFT OUTER JOIN nodeassociation na ON na.source_node_id = p.id AND na.sink_node_entity = ‘WorkflowScheme’ LEFT OUTER JOIN workflowscheme ws ON ws.id = na.sink_node_id LEFT OUTER JOIN workflowschemeentity wse ON wse.scheme = ws.id LEFT OUTER JOIN jiraworkflows jw ON jw.workflowname = wse.workflow WHERE  wse.workflow = ‘Workflow Name 1’ OR wse.workflow = ‘Workflow Name 2’ …

I put all the info into a spreadsheet for further analysis.  From this abbreviated workflow and project list, I was able to examine individual project settings, like screens and permission schemes, to determine who would be able to take advantage of additional project admin features.

Deciding exactly what you want project admins to do may require experimentation as you adjust to the possibilities of Jira 7.3 and beyond. Ultimately, you’ll want to maintain a balance between providing ease and flexibility while still maintaining standards and control at the system/application level.

What other duties do application/system and project admins have at your company?  What’s your strategy for communicating responsibilities to users?  Can you improve any of the workflow editing ability detection methods?  Add your thoughts to the comment section below.

Teaming Up for Jira Business Teams

Jira began as a tool for software teams but has evolved into a tool for any team!  Business teams can benefit from Jira’s task collection, lifecycle tracking abilities, and built-in reporting.  Whether you’re on a Marketing team launching your next campaign, a Legal team preparing your next agreement, or a Human Resources team supporting people and processes, any team can track their work with Jira!

ThinkTilt and Rachel Wright would like to see more teams experience the benefits of Jira.  That’s why we’ve formed a new partnership “teaming up for business teams” to help you get started, thrive, and conquer your team’s “to do” list.  We’re collaborating on a series of articles to help you on your way.  Additionally, some of the worksheets from the Jira Strategy Admin Workbook are being added to ThinkTilt’s Process Template library.

Even if your team isn’t technical you can still use high-tech tools!  Email distros, spreadsheets, and shared network drives – be gone!  Your team has a real issue tracking database now with Jira.

About ThinkTilt

ThinkTilt’s Jira app, ProForma makes it easy for business teams to build and deploy online forms, backed by Jira’s great workflow engine. Empower every team in your organization to take control of their processes and deliver first class request management. All the information you need, where you need it.

About Rachel Wright

Rachel Wright is an entrepreneur, process engineer, and Atlassian Certified Jira Administrator.  She is the owner and founder of Industry Templates, LLC, which helps companies grow, get organized, and develop their processes.  Rachel also uses Atlassian tools in her personal life for accomplishing goals and tracking tasks.  Her first book, the “Jira Strategy Admin Workbook, was written in Confluence and progress was tracked in Jira!

We challenge you to think of a type of team that wouldn’t benefit from Jira!

Join the Jira Conversation on Facebook

We started out with the Strategy for Jira LinkedIn group, as a way to connect and discuss Jira strategy.  Do you prefer Facebook?  Join the new Facebook group at: https://www.facebook.com/groups/strategyforjira/ and post your question by emailing strategyforjira@groups.facebook.com.

We’ll post updates and answers to your questions on both social sites.  You’re free to start your discussion on either.

Ways to Connect

Group Rules

It’s simple – be helpful and kind.  There are no stupid questions.  We were all new administrators once and there’s usually more than one way to do something.  Please post your tips, ask questions, and answer questions about anything related to Jira strategy.  Let’s make this informative and fun.

Who wants to ask a Jira admin question?  See you on social media!

Industry Templates Joins “Give With DreamHost!” #pledge1percent

What’s the first thing you did this morning?  Brushed your teeth?  Drank coffee?  Took a shower?  Whatever you did, you probably used water.  Many of us have no idea what it’s like to be thirsty.  We have plenty of water to drink and use in our daily lives.  That is not true everywhere in the world.

Rachel Wright, President of Industry Templates, LLC and author of the Jira Strategy Admin Workbook has made a donation to DreamHost‘s 20th birthday partnership with Charity:Water.   Rachel has hosted all her business projects with DreamHost since 2003 and continues to be a very happy customer.  DreamHost is matching up to $10,000 of donations until Dec 31, 2017.  Charity:Water helps build projects that provide clean drinking water to people in need worldwide.

Pledge 1% MemberIndustry Templates, LLC is a member of Pledge 1%, a corporate philanthropy movement dedicated to making the community a key stakeholder in every business.  As a proud member of this program,  we annually donate 1% of sales, product, and employee time to help the community.

Join the Give With DreamHost! campaign and help prevent diseases caused by unsafe water and poor sanitation.

 

“JIRA Admin Mistakes” in Phoenix

The Strategy for JIRA Tour rolls on!  Rachel Wright is in Phoenix, Arizona to deliver her “Top JIRA Administration Mistakes” presentation on November 9, 2017.

Do you need help cleaning up your Jira application?  How about managing users, configurations, or multiple instances?  Join us and lets talk shop!

The goal of the “Top JIRA Administration Mistakes” presentation is to keep others out of what I call the “JIRA swamp.”  Or, if you’re already in it, help dig you out. This session is different – it’s about strategy.  It’s recommendations from years of cleaning up horrible JIRA configurations! It’s about what you should do, what you shouldn’t do, and why.  Hear the mistakes I made as a JIRA administrator and real examples of problems to avoid.  Would you rather your application be an organized, tidy, and trimmed garden or a foggy, contaminated, overgrown swamp?

Atlassian Users Groups are where users meet, learn, network, and share best practices. The groups meet locally, all over the world, on a quarterly or more frequent basis.  User Group members are newbies and veterans who like to “talk shop” about Atlassian software, about Agile development, and about related business topics.  At these events, you can network with your peers, share solutions, meet Expert Partners, get special content from Atlassian, and enjoy a beer.

Will you be in Phoenix on November 9?  Join us, join the User Group in your city, or start a group!

Final Chance for 20% off Print JIRA Strategy Admin Workbook

My publisher is retiring their coupon program.  Eek!  This is your very last opportunity for a discount on the print version of the JIRA Strategy Admin Workbook!  Act now – this final 20% off coupon code is only valid until October 31, 2017!

Last Chance – 20% off the Print Version
Code: UY7NXHVB Shop Now

After October 31, this discount code and any previous codes will be invalid.  The print version of the book will only be available from Amazon, where I have no ability to offer discounts.

Looking for the digital version?  Get it here.

TIP: Send this coupon to your purchasing department or ask your manager if they’ll reimburse you from their annual training budget! Companies can deduct educational materials on their taxes.

How to Use

Visit https://www.createspace.com/6602253 and click the “Add to Cart” button on the left.   In the text field at the bottom, enter “VLW4RYTB” and click the “Apply Discount” button.  See screenshot below.

Atlassian Customer ShipIT Creates Dynamic Jira Map

Each quarter, Atlassian has a 24 hour hackathon, called ShipIt, where they stop all work duties to create something awesome.  It embodies their culture of innovation and demonstrates a sacred company value: “Be the change you seek.”

This week, 24 non-Atlassians participated in the first Atlassian User Group (AUG) Leader ShipIt.  Since we’re Atlassian customers, volunteers, and have work duties we can’t ignore, our hackathon lasted 3 weeks, instead of 24 hours.  We worked nights and weekends to bring our ideas to life and then submitted our finished products as a three minute video.

Project Planning at Atlassian Summit

We were one of 10 teams that accepted the ShipIt challenge.  Our team included six AUG Leaders from all over the country.  We named ourselves “Atlas”.  We wanted to solve a visibility issue that impacts the AUG program and we wanted to use Atlassian products to do it.

Problem Statement

As an Atlassian User Group Member, an AUG Leader, or member of the Atlassian Community Team, I’d like to:

  • See a visual representation of the active AUG locations around the world
  • Find the user groups near my location
  • View each group’s size, contact details, and the website URL
  • Encourage traveling users to connect with additional groups
  • Create a dynamic solution which will never be out of date or require manual maintenance
  • Encourage new membership by showing existing user groups
  • Encourage new group formation by showing location gaps
  • Use Atlassian tools to store the data and collaborate during the project

Our Solution

Jira Custom Fields

We built a dynamic map that pulls its data from Jira issues!  We started with a Jira project, where each user group is represented by an issue.  The project has custom fields, like “Map Location” and “Group Size”, to hold information about each group.  The project has custom workflow statuses, like “Active” and “Inactive”, to show the current state of each group.

We used Jira’s REST API to retrieve issue data for only user groups in certain statuses.  Next, we injected the JSON results into SQL 2016.  We then restructured the data for map use.  For example, we translated the plain text “Map Location” values into coordinates the Google Maps API would understand.  Finally, we created a script that automates the REST API calls and the Geocoding of the locations.  The script also generates an HTML file with all the user group data plotted.  The process of updating the HTML file on the server is automated too.  The file is uploaded to our Confluence instance and versioned through the REST API.  It is also published to an external website, demonstrating additional viewing abilities.

When a user group transitions to another status, or if any Jira issue data is updated, those changes are automatically reflected on the map!  This includes changes to the group’s name, estimated user counts, and group contact information.  The map requires no manual updates, which was a project goal.

Clicking a map pin displays city information, like the group size, the city contact email address, and a link to the group’s website.  The map also automatically centers to your current location and counts the total number of active user groups displayed.  The look and feel is fully customizable and results can be embedded on other websites, including Confluence and Jira.

Additionally, we used HipChat’s Botler service to create map entry point.  In HipChat, if an AUG Leader types “an AUG in” as in “Is there an AUG in Nebraska?” a link to the map will automatically appear.  See our creation in action with the three minute ShipIt video below.

You can also demo our proof of concept live!  NOTE:  This is an “https” link with no SSL certificate installed.  A browser warning will display and is expected.

Atlassian Products Used

We started collaborating in person at the Atlassian Summit user conference and used Atlassian tools to stay connected after returning home.  We used:

  • Trello to collect user stories, feature requests, and track progress,
  • Confluence to make decisions and document solution details,
  • HipChat for daily discussions and immediate feedback,
  • and Jira to store all user group location and status data.

Our Team

We’re very proud of what we built and had an awesome first Atlassian ShipIT experience!

  • Mark Livingstone, IT Director at Qualcomm and San Diego, CA AUG Leader
  • Marlon Palha, Head of Business Systems at ITHAKA and New York City AUG Leader
  • Stephen Sifers, Network Operations Center Manager at Sagiss and Dallas, TX AUG Leader
  • Jeff Tillett, Agile IT Operations Manager at AppDynamics and Dallas, TX AUG Leader
  • Justin Witz, Chief Technology Officer at FRA PlanTools LLC and Charlotte, NC AUG Leader
  • Rachel Wright, Author of the Jira Strategy Admin Workbook and member of the AUG Leader Council.

Q&A with JIRA Author Rachel Wright

Follow the Gator to the “Help & Learning” Area

Meet JIRA author Rachel Wright at Atlassian Summit in San Jose, CA!  After her Summit presentation, starting at 3:00 PM PDT, Rachel will host a book Q&A in the Atlassian Summit “Help & Learning” area.  Look for her in the Online Community section, across from the Tempo booth.

Meet the author, learn from her JIRA mistakes, and talk shop about JIRA strategy!

Not at Summit?  Use coupon code SUMMIT for 15% off the digital version.

The JIRA Strategy Admin Workbook is different – it’s not documentation. It’s over 150 recommendations from years of cleaning up horrible JIRA configurations.  This book includes 32 real life examples of what NOT to do, over 50 worksheets to get you organized, and templates, code snippets, and wording samples to help you establish and streamline processes.