12 Getting Started with JIRA: How To Manage Issues

This article is a part of Astral Web’s Comprehensive Guide to JIRA!

Previously: 11 Getting Started with JIRA: Issue Management with Basic Agile Workflow

How To Manage JIRA Issues

Editing and assigning issues are good features, but now it’s time to understand best practices on how to manage all of your issues in JIRA.

In general, we will look at two types of users who will be using issues: Managers (those who are responsible of assigning tasks) and General Users (those who are responsible for doing the tasks).

Managers need to schedule, customize, and inter-relate all existing issues to successfully achieve project goals. Sometimes, they will need to bulk change multiple counts of issues and maybe even change security permissions on individual issues if non-employee users need access.

General Users will need features such as attaching files and images (such as screenshots), commenting, logging work progress, and get notifications on issues they need to follow.

Below we showcase all the options that are available on each JIRA issue.

Useful Features For Managers

Here are useful features for manager level users on JIRA. Make sure your permissions (described in other sections of our series) are set if or if you don’t want managers to have access to these features.

Scheduling an Issue

The default method to add a schedule to an issue is using the “Due date” field. This field uses a date field so, you’ll easily be able to save dates. You will be able to use this date field to show on dashboard widgets or export to calendar data.

However, Astral Web uses external gantt charts (GanttPro) so we configure custom fields called “Start Date (GanttPro Start Date)” and “End Date (GanttPro End Date)”. We then disable the default “Due date” field so all of our staff use the same fields to schedule tasks (whether they sync to the external GanttPro tool or not).

In this way, all members can track their issues by due date on their dashboard calendar, while managers can continue to use GanttPro using same end/due dates.

Adding a field to an issue

By default, some fields may not be showing on the screen you want to fill details. The available fields vary by different screens: Create Issue screen, Edit Issue Screen (both sidebar and full screen), and others. On the Create issue screen, you can select “Configure fields” to see which fields are active and others that can be added. You will need to have management permission to access this feature, but most manager and general user level should be able to see. If it is not visible, talk to your administrator.

Creating issues using the CSV importer

While creating issues directly on JIRA is convenient, sometimes you may have a whole WBS (work breakdown structure) document that you want to import. You will need to organize your template to make sure that all attribute headers and values match your project settings, but once this has been done, it’ll be so much easier when you want to add dozens or hundreds of tasks at once.

In our case, we know we have custom fields that we sync with external tools, so we make sure those fields are covered in our template. We even have a master projects template that holds about 150 tasks that helps kick-start our managers to make progress on their projects.

To bulk import your tasks, make sure your document is converted into a .csv file. (In Google Docs, you can export using File > Download as > Comma-separated values.) Then, you have to options to access the import page.

One is the “Import issues” button from the “Create issue” screen.

Or, from Admin > System > Import and Export > External System Import.

Then, you will be at the import csv page where you can select your .csv source file.

If you import often, then creating a configuration file that helps you assign issues to projects and map all data values to the right headers. You can get this at the end of the import, if you would like.

Select “Next” button.

Select your project that you have created under “Import to Project” dropdown.

Select “Next” button.

All fields should automatically be assigned. If there is no issue select “Next” button.

To make sure your data is good, press “Validate” button. This process may take a few minutes.

If you have more than one error, please fix your CSV file.

If you only get one error “Fatal error during import: Parent Issue cannot be null” you are ok. This is because the validator does not know that Sub-Tasks cannot have a unique ID.

You can proceed to select “Begin Import”.

Confirm that the count of issues are the same as what you have prepared in your CSV, and your import is all set.

Creating a Sub-Task

Sub-tasks are useful when a large issue needs to be split into smaller tasks, such as when you need to assign different people or multiple deadlines are required.

If you are on a full-page issue, then you will click on the “Create subtask” icon.

You will be able to quickly add sub-tasks that are under the current parent issue.

After you add a sub-task, you will be able to edit and manage the sub-task like any other issue. In the breadcrumbs, you will easily notice that a task is under another parent issue. This feature of of many that is helpful for managers to organize different levels of tasks. You may also find other features such as Epics, Versions, and Components useful when creating task relationships. (Details in our topics!)

Linking Issues

Using sub-tasks is limited 2 levels, so you will not be able to assign many issues under another. Instead, you can use issue linking. Linking issues are useful or tasks such as bugs, so you know that a bug is related to a specific issue.

On the full-screen issue page, you can select the “Link issue” button to show the Linked issues block. You will be able to easily search issues to link. You can also define the type of relationship such as “is blocked by”, “blocks”, “has to be done after”, “related to”, and more. These are not only labels, but actually function as they are read. So, if you define an issue to be done before or after another specific issue and you try to close an issue wrongly, JIRA will notify you that something goes wrong.

Modifying Multiple (Bulk) Issues

As a manager, modifying multiple issues at once is a life saver. Even something simple as closing issues at once, or re-assigning a bulk of issues to another person or project, these can be done quite easily.

In your project, go to your Issues and filters tab.

You can use the simple search, or click “Advanced search” for better results.

For example, I want to re-assign everything assigned to a specific person to another person. I will use JIRA Query language to filter down the issues to the project and assignee. (Please search JQL for more details on how to query.)

Next, select the “…” menu on the top right.

Because the query creates a specific list, you are able to use this list to make bulk changes. So, next, select “Bulk change all ** issues(s)”.

You will be able to further refine your list, or select the top check box to select all. Select “Next” on the bottom of the page.

You will be able to edit issues (field values in issues), move issues (from one project to another), transition issues (change status), delete issues (permanently remove from JIRA), watch issues (assign who gets notifications to the issues), or stop watching issues.

Select Edit issues to make issue changes.

You will be able to change multiple values at once, but here we will re-assign all the issues to someone else. Make sure you select the checkbox and choose the new assignee.

Select “Next” at the bottom of the page to confirm. (You can also choose to get an email log of the operation by selecting the checkbox .)

Once you press confirm, your editing will complete.

Useful Features For General Users

General Users features are the most commonly used features that all team members will need to use, unless you are a guest user that can only view issues.

Attaching a File

You can attach files by dragging in documents or files directly into the issue description or into comments. They will automatically be listed in the “Attachments” section of the issue.

To delete an attachment, selec the “X” icon on a file under the Attachments section.

Attaching a Screenshot

Attaching a screenshot is also easy. This applies to any copied image. After you copy an image or take a screenshot capture, select Ctrl+V to paste the image into the issue description or comment. Your image will be saved automatically as an attachment.

Cloning an Issue

In a case you want to duplicate or clone an issue, you can go to the “…” menu on the top right and select clone. JIRA will create the same issue on a new issue ID number for you.

Commenting on an Issue

Any user with the permission can comment on an issue. Go to the bottom Activity section on an issue to add a comment.

Editing Rich-Text Fields

Comments are one example, but you will be able to style your content in Rich-Text Fields.

You can bold and italicize text, add bullets, images, and even block text in quote or code format.

Watching and Voting on an Issue

If you are a reporter or assignee, you will be a watcher and get notifications as how you have set in your admin settings. However, in case you want to watch or have other members to follow an issue, go to the top of the issue and select the “Watch options” icon. You will be able to add users to watch and get notifications.

Logging Work on an Issue

Work log is useful for tracking how much time has been spent on a specific issue. In the Activity section, switch the view to Work log to view all work that has been logged to the issue.

To add a new work log, go to the top of the issue and under “…” menu select “Log Time”.

In the popup you can log the amount of time and the description of the work that has been done. The feature relates to the “Estimate Time” of the task a manager has assigned, so members do not under or over report work done on tasks.

We hope that gives you greater insight on what JIRA issues are capable of! Stay tuned for more in our upcoming articles.

Next: Coming Soon

11 Getting Started with JIRA: Issue Management with Basic Agile Workflow

This article is a part of Astral Web’s Comprehensive Guide to JIRA!

Previously: 10 Getting Started with JIRA: User Interface

What is an Agile Workflow?

An agile workflow is a project management style that takes an iterative approach to development where regular feedback is folded into intervals of work called sprints. This is in contrast to a more traditional waterfall style workflow where development is based on set phases prior to launch (e.g. develop database, then back end, then frontend, etc.).

In an iterative, agile workflow, teams can be diverted to different issues while another part of the project is being resolved. Customers can also review more of the project throughout the development period, instead of waiting until the very end of each phase.

Such workflow has both pros and cons, but in an ever changing web development environment, being agile and flexible is important to stay competitive. At Astral Web, our workflow is hybrid with our internal processes being iterative, but our reporting still shows traditional development phases, such as “Design Phase”, “Development Phase”, and “QA Phase”. We maintain milestones for our clients, but internally we are working with multiple components and schedules simultaneously.

Your JIRA workflows are setup, and your team members are ready to manage tasks. If you haven’t yet, it’s time to create a new project with all your customized settings configured.

Atlassian is continuously updating new JIRA Cloud project features, so please see their latest notes on the options available.

Everything you want to know about next-gen projects in Jira Cloud

https://community.atlassian.com/t5/Next-gen-articles/Everything-you-want-to-know-about-next-gen-projects-in-Jira/ba-p/894773

Otherwise, adding people, setting issues and workflows, and other general settings should be the same. Please go through each tab to check defaults or switch to any custom configurations you have made in the steps before.

For more details on workflows, checkout our previous article: Before You Start Using Atlassian JIRA Part 2: Create A Master Workflow For Your Business

Create an Issue

If your project is set up, you can finally begin to create and assign tasks.

Either start from your project or your dashboard and select the “+” icon on the very left menu bar. If you started from your dashboard, you will need to select the correct Project to create the issue.

Next, select the issue type. Our maser workflow contains multiple types of issues, and each issue has its own custom workflow in alignment with the master workflow. This is because, some issues have higher priority or different steps. For example, if we find a bug, we never want this issue to start from a backlog and sit there until someone moves it forward. We want bugs to be flagged immediately and ready for review by project managers.

We also customized what field should be inputted by the reporter for each type of issue. This helps reporters to complete details without missing anything. A general task would only have a Summary and space to describe the task, but Bugs require more details such as Preconditions, Steps to reproduce, and Expected results.

Editing an Issue

Your new issue should be under the Backlog section, or the location defined as the issue type’s starting point within your workflow.

Backlog issues may not show inside your Kanban board if you did not set up your Kanboard board to display Backlog. Also, you may not have a Backlog tab if you did not set up Backlogs. These can be changed in the Kanban Board settings accessed from the top right “…” option on your Kanban board and go to “Board Settings”.

To edit your issue, you can simply select it to see a mini-view inside your browser. You will be able to change the basic options such as comment, change status, or access your plugins. If you need to change the content of the issue, as long as you are the reporter or admin of the project, you will be able to click any of the fields to make changes.

You can also see the issue on a full page by clicking the issue ID.

You may see this page first, if you have accessed the issue from other methods instead of the backlog section.

Moving an Issue

You can visually move an issue from status to status on your Kanban board.

This is an alternative to selecting your issue status from the issue status dropdown inside your issue details. The mobile JIRA Cloud app, you will only have the select from dropdown option, unless your version supports touch and drag on Kanban boards.

If you need to move an issue to another project, you can do so from the issue details page and select the “…” menu and choose “Move”.

You will go through administrative steps to transfer the data to other projects.

We will cover more of these administrative options in future articles!

Magento Multi Source Inventory Introduction

Magento’s latest version 2.3.0 introduced a much discussed feature, Magento MSI, or Multi Source Inventory. It gives Magento more flexible, more capable inventory management functions that match Magento’s already powerful multi site capabilities.

In a sentence: Inventory is managed across multiple sources that are mapped to sales channels (aka websites) via stocks .

This gives businesses the ability to:

  • Track physical inventory across multiple physical sources
  • Implement more complex multi source (or Omnisource) fulfillment strategies

The New Concepts:

Salable Quantity

Without MSI, Magento has a single QTY value for all simple products. A purchase of a product deducted directly from that number.

MSI introduces a new figure, Salable Quantity, that exists in tandem with QTY. Essentially, it’s an intermediate calculation to ensure that you don’t oversell, while the QTY is maintained across at source level and only updates with shipments or returns.

In order to maintain an accurate salable quantity, reservations made against salable quantities with unfulfilled purchases. In terms of what you see in the admin panel, there isn’t much difference but this is one of the features that allows tracking of salable inventory across multiple channels/websites.

magento multi source inventory diagram

Sources

A core component of MSI, sources represent physical inventory sources. Sources will generally represent warehouses, brick and mortar stores, or drop shippers but can be structured according to individual business structures.

Stocks

Stocks are simply a tool to organize sources into groups according to business flows. Sales channels (websites) are mapped to one or more sources via stocks . Taking a simple example, if we have both a warehouse and a brick and mortar store that are capable of fulfilling US orders, we might assign both of these sources to a stock called “US Ecommerce,” which serves as our stock for our US storefront (website).

How They Add Up

Let’s take a look at the graphic again. Below we have a single warehouse, with a single online sales channel/website. Our source is called “Warehouse” and our stock is called “Bicycle Shop Marketplace.” Salable Quantity at the Stock level is determined by the Quantity at Source level, minus any thresholds we’ve set, minus any pending orders on eBay(note we’ve just grabbed the the magento graphic here – eBay can be considered a website here).

This is essentially the non-MSI magento stock setup, the only exception being that salable quantity is takes two thresholds into its calculation.

magento muli source inventory diagram - one source one stock and one website

Let’s say our sales are growing and we’ve decided to open a new UK brick and mortar store (Flagship store), and two EU websites: UK and Germany (DE).

These two new websites can have orders fulfilled with inventory from both our original warehouse and the new brick and mortar store. This is achieved by assigning these two independent sources to a single stock, “Bicycle Shop UK,” which in turn serves inventory for both of the new websites.

Orders from our eBay storefront continue to be fulfilled only by our warehouse.

magento msi diagram, two sources, two stocks and 3 websites

Continuing to grow, we open up a new US Brick and mortar store, and build a new US website.

Fulfillment for our other websites remains unchanged, but we’ve decided to fulfill orders for our new US website from the two previous sources, as well as our new brick and mortar store.

This is accomplished by creating a stock for the US website which has all three sources assigned to it. This brings us back to the full graphic:

Configuration Overview

*Editors note: we’re starting form scratch and not using the same source, stock and storefront names used in the above diagrams.

Below is a brief look at where MSI shows up in the Magento admin panel:

Sources:

Each installation starts out with a Default source that can’t be disabled. If you’re setting up multiple sources you can rename the default source to better reflect the warehouse or store that it represents.

The only mandatory fields for a source are Name, Code (development use), and Country. Additional fields for unique source contact info and location data that would be utilized for any distance-based source selection algorithm.

Due to the fact that sources are integrally tied to order and shipment histories, they can’t be deleted. However, they can be disabled with the same effect, removing them out from any fulfilment equation.

When setup is completed, your “sources” page should represent all your physical inventory sources as in our sample below (Three US and one Canadian):

Magento MSI manage sources configuration

Stocks

magento MSI stock admin panel navigation

Again, stocks are used for source organization and mapping, so different operation’s stock setup will be unique. In the below example, we’ve set up our “US Ecommerce” stock to represent two of our US sources:

As the object that connects sources to sales channels, both websites and and inventory sources are selected in the Stock view (in this case we’ve added Amazon to represent multi channel operations).

Note that, if multiple sources are assigned to a stock, the admin can drag and drop into a different order. This order is used by the default MSI Source Selection algorithm outlined below.

Source Selection Algorithms:

One of the MSI features with serious potential is support for Source Selection Algorithms which programmatically suggest optimal fulfilment sources for items in an order.

At the time of writing, the only out of the box algorithm in MSI is the “SSA Priority” algorithm for Magento 2.3, but expect updates with new versions soon.

The primary feature of this algorithm is that it prioritizes Sources in the order chosen by the admin on the “Stock” level through a drag and drop list.

In the below screenshot, two sources are assigned to our “US Ecommerce” Stock, and our Seattle Warehouse source will be prioritized by the Priority algorithm due to its position here in the admin.

The full priority algorithm follows this logic:

  1. Checks each source for virtual salable quantity in their assigned order at stock level (top to bottom)
  2. Selects source if a stock level is present (including any aggregate configuration and out of stock thresholds)
  3. Moves down the list to fulfill entire order
    1. E.g. if Seattle source has right socks and New York source has left socks and we’ve sold a configurable product, “Pair of Socks,” 1 simple product will be deducted from each source.
  4. Skips disabled sources assigned to stock.

Custom Source Selection Algorithms

Appealing to multi-channel sellers and larger operations is the potential to customize a source selection algorithm to optimize inventory logistics and shipping costs.

According to Magento:

Magento supports custom development and extensions to add alternative algorithms to prioritize sources. For example, you can have one priority algorithm based upon geography and another based upon expense of stock or a customer attribute. When the cost of stock changes, your implementation can easily change algorithms to ensure the lowest cost.

In other words, you can create the algorithm that’s most appropriate for your operations.

A couple other examples that might be factored into a custom Source Selection algorithm:

  1. Choose source based on cheapest shipping cost
  2. Choose source based on fasted shipping time
  3. Choose source based on national (tax) borders

Again, these more complex algorithms need to be written by third party developers at this point, but the most widely applicable calculations to be incorporated into future Magento releases.

Create In-Page (Anchor) Links in WordPress

The newest versions of WordPress with the Gutenberg editor make inserting anchor links a very straightforward task.

Step 1: Add Link to Section Headers:

The new WordPress interface has a field specifically for adding anchor links to blocks that are using a header tag (H1, H2, H3). Simply click on your header block, open the Advanced dropdown, and give your header a unique link (no spaces or characters).

If you view the html you’ll see that this field inserts an <id> tag to your header that had to be manually added in the classic editor:

<h2 id="first-section-header"><strong>What is Lorem Ipsum</strong></h2>

Step 2: Link Table of Contents to Section Header

For this step, simply use the hyperlink tool to add the unique link you’ve created preceded by a “#” (hash or pound).

Step 3: Repeat As Needed

If you are working with the classic WordPress editor, the only difference is that you’ll need to create the anchor links for each heading directly in the HTML or using an extension.

Cyber Security Practice for Individuals and SMBs

Cyber Security Best Practices Article Banner

The most secure methods for protecting personal and sensitive information are constantly evolving as industry practices and bad actors continue to push each other to the next level.

However, there are several best practices to follow that minimize your risks and, by extension, the risk of any organizations that you belong to. Below we outline a few starting points which protect both individuals and businesses.

  1. Basic Best Practices
    1. Track Breaches and Leaks
    2. Password Security
    3. 2FA Authentication
  2. Browsing and Usage Habits
    1. Confirm SSL Connections
    2. Caution with Email Links and Requests
    3. Up-to-date Operating Systems
  3. Organizational / Company Security
    1. Structured Access
    2. Access Sharing
    3. Employee Changes
    4. Clean Desk Policy
    5. Document and Educate
    6. Alligator Moats
 

Basic Best Practices:


 

Find out whether your data has already leaked:

If you’ve been active online for a while, there’s a good chance that you’ve already been involved in some sort of data leak. A cool website built by Troy Hunt, https://haveibeenpwned.com, scrapes a variety of public sources to provide a database of compromised emails and accounts associated with breaches.

You can subscribe for notification if your email is discovered in any future breaches, hopefully giving you a better chance of mitigating any fallout.

If nothing else, check out this site to get a sense of how common data breaches are and get inspired to put in a little extra effort.  

Passwords:

The best place to start in securing yourself and your organization is your passwords. For the points steps below, a password manager such as Last Pass is a great option that allows you to quickly create, update and manage your passwords.

If you’re an organization for which security has to be absolutely airtight, you may want to manage your passwords internally. However, in most cases, the security gained from a dedicated third party manager is greater than the risks of having all your passwords in one location.

Password Makeup: The obvious starting point for security is to ensure that your passwords are making use of as many characters as possible.

If you’ve tried to use your old go-to password from 2005 (e.g. myDogsName) you’ll notice that most sites won’t accept a simple string of letters anymore. However, simply substituting a 0 for an o and adding a “!” isn’t much of an upgrade. Massive databases of common substitutions and punctuation placements makes the password myD0gsName! only marginally more secure than the original.

Modern browser versions as well as password managers will auto generate and store complex passwords for you. When using an application like this, there’s no reason not to make your passwords as long as possible, making them exponentially more difficult to crack.

When storage of an auto-generated password isn’t an option (e.g. your password for your password manager), a good method is to create a “passphrase.” For example, YouknowmybirthdayisonJuly2(woohoo)butyoustillwon’tcrackthis!

Password Diversity: Making use of unique passwords for different accounts means that, when a breach occurs on one account, the remainder of your accounts don’t immediately become available to whoever gives it a shot.

Password Frequency: Similar to above, changing your passwords at regular intervals reduces the chances of being affected even if your account information has been compromised. If you’re working with software like we do, you can often set passwords to expire at set intervals.

Two Factor Authentication (2FA)

Wherever possible, use 2 factor authentication. Despite hackers finding sophisticated ways around 2FA, it’s still an extremely important component of online security

Nearly all major companies now support some form of two factor authentication through apps such as Google Authenticator and Authy or direct SMS.

If you can’t be bothered to use 2FA for all of your accounts, be sure to have it in place for the most crucial ones such as your email and your password manager (any accounts that share access and information with other websites and services).

If you manage an organization or network, we’d suggest making 2 factor authentication mandatory for all users.

 

Browsing and Usage Habits (Operational Security)


 

Confirm SSL Certificates

There’s really no excuse for websites that store any personal information (not to mention accept payments) to be without an SSL certificate. Up-to-date browsers are increasingly forceful about alerting you to being on websites that have insecure elements but you can ensure the connection with a browser extension such as HTTPS Everywhere by the EFF.

The most common way for your accounts to be hacked is not through a superspy remotely hijacking your computer but rather through simple emails that trick you into forking over the keys to the kingdom.


When you receive an email with any request for you to login or provide information, take an extra moment to verify the domain of the sender and the domain of the link provided. Not seeing a green HTTPS padlock on any login page is a significant red flag.

Any company that takes security seriously will not ask you to provide your password via email or phone call.

In the event of any suspicion, look up publicly listed information and contact them directly.

Furthermore, look out for unusual requests from contacts within your organization or contacts list. Maybe you have a great password, but your friend doesn’t – use another channel to confirm that the request really came from your friend or coworker.

Keep Operating Systems and Applications Up-to-Date

Easily skipped over inconvenient interruptions, the updates to your browsers, software and operating system often include crucial security patches.

 

Organization Security


 

For most smaller organizations and businesses, the best first step is to enforce the points outlined above at at an organizational level: have minimum password requirements, use an organization-wide password manager and require 2FA for any accounts connected with your business. Wherever possible, enforce enforce enforce! It’s easy for all of us to get complacent so, wherever it’s an option, enforce these measures through software or platform settings (microsoft, G Suite).

Again, these tips are a supplement rather than a substitute for a comprehensive internet/information security plan.

Structured Access

Larger businesses should have systems in place for a hierarchical information access. However, it’s important to implement for smaller businesses as well, even if it’s not an explicit policy – the basic concept is to segment access so that individuals (and networks) are only interacting with the information that’s necessary for their work.

At smaller businesses and startups where one individual can wear a lot of hats, it’s rarely so black and white. However, it’s still important to take basic steps to audit access at scheduled intervals.

Don’t Share Access

This may sound obvious, but, particularly in smaller organizations, it’s very easy to make “exceptions” in the interest of expediency, particularly when clients are involved as they our in our daily workflow. In those situations, it’s helpful to be able to fall back on “I’m sorry, we’re unable to do that due to an internal policy,” as it draws a line on the conversation, even if someone thinks they have a compelling argument for sharing.

Employee Changes

When an employee moves on, it’s an absolute must to change their passwords and review access immediately. Make sure that someone is responsible for a full audit of their access to primary and related company accounts. The more organized your password and SOPs for access management, the easier this is.

Clean Desk Policy:

For offices with access to sensitive information, communicate an explicit policy against any written passwords or credentials being left on desks where passers-by can see them.

Document and Educate

The fact is that we’re all busy and security can easily become an abstract concept that takes a back seat to the immediate task at hand. The more that your security measures are documented and communicated, the less likely they are to be considered “suggestions” by employees and coworkers.

Implementing a regular audit of password security, 2FA and access and communicating best practices for operational security in writing makes security more tangible. Making it clear that these steps are for each individual’s security can be more effective than a dry document about company assets.

Alligator Moats

The modern business needs to be alert to more than just cyber threats; ninja’s are out there and you need to take actions to defend against them.

After you’ve dug your moat, we’d recommend investing in robot alligators – regular alligators just eat bad ninjas, cyborg alligators laser them and eat them simultaneously. Any serious security professional will tell you that this is just good sense.

Ok, just kidding… get regular alligators

10 Getting Started with JIRA: User Interface

This article is a part of Astral Web’s Comprehensive Guide to JIRA!

COMPREHENSIVE GUIDE TO JIRA 10

Previously: 09 Getting Started with JIRA: User Roles & Permissions

By now you may have gotten used to how JIRA Clouds looks and navigates, but here are some additional details about the interface that you may or may not already know.

Dashboards

Dashboards are the first page your users will land when they log into JIRA. The space is useful for filtering and sharing JIRA information, which is achieved by adding different types of gadgets such as search filters, pie charts, and other data collection formats.

image1

System Dashboard

The default dashboard you will get when you start JIRA is the System Dashboard. This default dashboard includes the “Introduction”, “Assigned to Me”, and “Activity Stream” gadgets. These are basic and fairly useful, but there are much more gadgets that JIRA provides for you to make user of. To do this, you will need to create new custom dashboards.

Custom Dashboards

To add modify or more gadgets, you will need to create a new dashboard since you cannot make changes to the default dashboard. Select the top right “…” icon and select “Create Dashboard”. You must be an admin or user with permission to create new boards, and usually only the creator or user with higher permissions will be able to make changes.

Add a name (e.g. “Project Team ABC Dashboard” or “Design Team Dashboard”) that will be relevant to the users who will be using this dashboard.

image4

We have created 3 basic levels of dashboards for our teams. Our highest level is a “Company Dashboard” that displays top level overall project information so we can quickly view the status of multiple projects at once. Only administrators can access this dashboard. We also have dashboards for each team by function such as “Design Team”, “Development Team”, and “Sales Team”. These filter projects and issues so they are most useful for each team and their members. We also have “Project Dashboards” for larger projects, so the project managers can get an overview of their entire project on the dashboard.

We use different dashboard gadgets to share information. For example, our Project Dashboard shows a calendar with hot issues, a line chart to show how many tickets have been created, and a pie chart to show the status of all of the tickets. This helps us understand the overall situation of one project.

image7

Dashboard Gadgets

JIRA offers a few dozen dashboard gadgets to use. There are some 3rd party gadgets that can be purchased, but we have never tried any. Not many of the gadgets are amazing, but they do basic data collection and show different charts. The Calendar gadget and Pie Chart are some of the most useful ones. We recommend you to try all of them to see and feel if they are useful for you.

image5

The most important factor is the data you are feeding to the gadget, which is all controlled by another feature called “Filters”. We will discuss how to use Filters in another article, but note that adding a gadget will not have enough power to filter fine details.

One type of gadget that is missing and we would love to have (which apparently used to be available in a much older version) is one that can add plain text or code. JIRA decided to remove these features. But, we do describe in our previous article that the “Introduction” section under your JIRA General System Settings is the only and best way to share custom text and basic code. Otherwise a 3rd party gadget may fulfill your needs.

More Dashboard Space

Select the “Edit layout” button to change the dashboard layout. You will be able to select between basic 1-3 columns. We use the default 2-column layout since it’s a good balance. The 3-column layout gets too small to show detailed information. You can try switching between them to see which works best for you. Just be careful that your gadgets may jump around when you make changes.

image2

You can also improve your viewing space by making the side menu smaller. Click the divider between the left menu and right side content to make the menu bar smaller. It isn’t much, but it does help to show more content on the right side if you have a small monitor. Otherwise you can zoom out on your browser (e.g. “ctrl” + ”-”) to see more.

image3

Look and Feel

The overall usability of JIRA Cloud cannot be changed so much, but you can change the logo and colors of your interface. Go to the section under “JIRA Settings” > “System” > “Look and feel”.

We added a nice company logo (and JIRA since we had some extra space), which needs to be around 368px by 64px. There are also options to show Titles on browsers tabs, Colors, and Time Display.

image6

You can only choose two colors for interface. The background color of your sidebar, and the Text and Icon colors. It would be nice to have more control, but you can at least unify colors for easy reading or differentiate between multiple Atlassian web-apps, or just having the right color for your company.

image8

JIRA Cloud, as most web-apps, is limited to modifying the interface, but we hope these tips help you improve usability for your team members.

Next: Getting Started with JIRA: Issue Management with Basic Agile Workflow

09 Getting Started with JIRA: User Roles & Permissions

This article is a part of Astral Web’s Comprehensive Guide to JIRA!

COMPREHENSIVE GUIDE TO JIRA 9

Previously: 08 Getting Started with JIRA: Manage Your User Profile

General Configuration

After we have added some users that can help configure and check our changes, we can now complete our general configurations that apply to your entire JIRA system.

The “Title” of your JIRA should be related to the overall system. We just simply named ours “Astral Web’s JIRA”. The naming isn’t too important, since the most prominent place you ever see it is in the tab title area.

image10

A very useful setting is the “Introduction” section. This section allows for some basic JIRA markup code that lets you add links, styling, and images.

image11

Go ahead and select “Edit Settings” to make changes.

image2

JIRA dashboards don’t allow any html code (unless you buy a 3rd party plugin), but you are able to add the “Introduction” block, so it may become useful for sharing important notes with all of your users.

Here is an example of how our Introduction block looks like on our main dashboard.

image4

Use the “Internationalization” settings to configure default language settings for all of your users. We use JIRA in both English and Chinese with English being our primary language, so we have “Other” for Indexing and “English” as our default system language. Language display settings can be changed per user as described in our previous User Profile article.

image5

Options are useful if you want to customize even further. We used the default setting as-is, but you can optimize what users see and access by turning on or off all the features you actually need to use. For example, Voting is a great feature for prioritizing issues, but we don’t use it in any of our teams. So, we could turn it off and keep it hidden from all of the interfaces. For now, our teams just ignore these options if we don’t need them.

Security

Security options are going to be important if you have different types of internal or external users on your project teams. You don’t want all of your users of to have admin powers that allows them to accidentally add or remove important users, features, or billing options. Define which users are admins early on, so only specific users have access to these high-level options as describe in our previous articles.

Project Roles

Project Roles are what you want to change for all the types of users you want to define and configure permissions for.

image7

In addition to the system Administrators roles, we have added “PM (Project Manager)”, general “Team Member”, and “Guest Reporter” roles.

Project Manager Roles

PMs will have full access to their own projects allowing them to add/remove users and configure their projects as they please. The highest-level option they have is to delete their project. They cannot change global settings such as system settings, workflow schemes, etc.

General Team Member Roles

Team Members can only be invited to a project by a PM, and can only create, edit, and delete issues within the project. They can see other users’ issues and support editing them, but they will not be able to change any project settings.

Guest Reporter

Guest Reporters are roles reserved for our external stakeholders who need access to our project tickets. They can never see other projects, nor can they view issues they are not related to. So a PM must assign or add a Guest Reporter as a watcher to tickets they need access. Otherwise, the Guest Reporter can create and modify their own issue within the project.

Add Your Custom Roles

Above are examples that we use, but you should add your own custom roles as necessary. Go to the bottom of the list to “Add Project Role” to add your own.

image3

The new role will be added to the list. You will be able to add this role to different “Permission Schemes”. We will explain after our next step to set up “Global Permissions”.

Global Permissions

Global Permissions are configurations for top level users. If you have multiple Atlassian tools, you will be able to configure how different admins can access the different tools. Global Permissions apply to all projects, so you will most likely only add admin groups or users in this area.

image9

To add your new Project Roles to different permissions schemes, select the “Permission Schemes” in the description or click the “Permission Schemes” on the left menu panel.

image8

We created a new permission scheme that we apply to all of our projects that we create called “AW Project Planning”. You can do this by selecting the “Add permission scheme” button on the top right.

image1

After you create a new scheme, it will be listed on the permissions schemes list page. Select “Permissions” under the actions column to change configurations.

image6

Inside the scheme, you will see a list of actions and options for Projects, Issues, Comments, and more. You can assign different roles to each of these actions. Once a role has been assigned to an action, then the user within that role for each project will be able to access the feature. For example, we add PMs to the “Administer Projects” permission so they can make high-level changes to projects. We do not add other roles. Other general roles are added to the “Browse Project” permission.

In this way, we continue to add our roles to permissions so we can balance security, efficiency, and necessity for all of our teams and projects.

Next we’ll show you how to change your JIRA interface appearances.

Next: 10 Getting Started with JIRA: User Interface

08 Getting Started with JIRA: Manage Your User Profile

This article is a part of Astral Web’s Comprehensive Guide to JIRA!

image6

Previously: 07 Getting Started with JIRA: Start From Your Free Trial

Manage Users

The first thing you should set up are the users, starting with yourself, that will be accessing your JIRA Cloud. As a JIRA administrator, you will be able to add, remove, and edit any user. For each user, you will be able to assign different groups, project roles, and applications. Your Atlassian site uses single sign on for all your applications so your members don’t have to different accounts if you have multiple applications such as Confluence.

Add Admins

Add your administrators (or just yourself for now is ok) so we can work on JIRA setup together. Go to “JIRA Settings” from the dashboard and select “Users”  under User Management. Type in your administrator emails and select “Jira Software” so they have access to JIRA when they finish registration. Your other applications will show here, so you can select them as necessary if you would like.

image5

Organize Groups

If you’re a small team, you may be okay with less organization, but setting customized permissions for different types of member is good for management and security. There are several default system administration groups. You should be in the highest “site-admins” and “administrators” to have access to these backend setting options. Don’t change access details of these groups since you may lose access to key features. If you need custom access, start adding new groups and add new users to the custom groups.

image7

We customize our users into groups that relate to our internal departments. Project Managers have access to most projects and permission to modify project contents so they have their own group. Designers have access to the design team board and general access to most projects. Engineers are assigned to their responsible projects by project managers. By hiding options that are not relevant to each user, security improves and helps each member focus on what they need to do most. You do not need to create a group for each project, since each project will have user settings that is much quicker to manage. You will be able to add whole groups and adjust permissions per group or individual for each project.

Customize Roles

To customize the access permissions by role, go to “Project Roles” under “JIRA Settings” > “Security”. The highest role a user could be assigned is an “administrator” that grants  permission to edit and delete a project. Lowest is “View only”, which only allows a user to see issues related to them and cannot modify those issues. We added a few extra roles that are easy to change by project managers. Most are for internal members, but we also have external guest roles prevents external users from accessing too much options or information of our projects.

image8

Update Individual Profiles

Each user can update their user profile under “Your profile” menu from the bottom left of the JIRA dashboard screen. Adding a profile image is highly recommended when you have a large team so it is easier to identify each other on thumbnails and name searching.

image4

You can also change settings of JIRA per person under “Personal settings”. We have English and Chinese speakers, so here they can individually set their preferred language setting when they use JIRA. You can also translate workflows and statuses in the backend so all of your documentations are optimized for different languages. Each user can also have their own time zone, if they work remotely or in a different area from your main team.

image2

Maintain Users

We review our member list each month to make sure only active users are registered. We have many projects and guests accounts, so we are careful to communicate with each project manager to understand who needs access. We try to stay in our 50 user subscription limit to control our budget for JIRA.

If a user needs your help or you need to see how a dashboard looks like on a different user’s account you can login as another user under the User Management section. A “Log in as user” option is available under each user. However, you will not be able to log in as another admin. This is one reason you should not add all your members as an admin, since there will be situations you need to help administrate other users.

image3

Next, we will help you go through some general settings of JIRA Cloud so your users can add and manage new projects.

Next: 09 Getting Started with JIRA: User Roles & Permissions

Structured Data JSON/LD for “Parent – Child” Locations

Parent Child Local Business Heirarchy JSON Structured Data

With Google and others increasingly serving information in new formats on both mobile and desktop search engines (e.g. product, service or company “cards”), maintaining accurate and up-to-date structured data is a must as an SEO best practice.

Many businesses fit neatly into one of the organization types provided by Schema.org, but we encountered a case of a business that’s dependent on both local and national SEO results (but not large enough to completely separate corporate and retail). For this reason, we wanted to maintain a parent Organization for organic searches while still marking up individual locations data to improve their local SEO. It was important to us to maintain an explicit relationship between locations and the company as a larger entity.

We settled on creating a parentOrganization > LocalBusiness hierarchy, allowing us to define information for the larger organization & homepage while optimizing location pages. Below is an example of the JSON-LD script that we used for both the parent organization and the local listings.

Other situations where this could be useful include:

  • Defining Headquarters / Corporate Offices and service locations
  • Websites that do business both online and in brick and mortar locations

Homepage:

The script below is pared down to basic information and defines the umbrella business information:

<script type="application/ld+json">{
    "@context": "http://schema.org",
    "@type": "Organization",
    "name": "Your Parent Company Name",
    "logo": "https://yourParentCompany.com/LOGO.png",
    "url": "https://yourParentCompany.com",
    "sameAs": [
        "https://www.facebook.com/yourParentCompany/",      “https://www.twitter.com/yourParentCompany/”
    ],
    "contactPoint": {
        "@type": "ContactPoint",
        "telephone": "+1-800-111-1111",
        "contactType": "Sales",
        "email": "info@yourParentCompany.com",
        "contactOption": "TollFree",
        "areaServed": "United States",
        "availableLanguage": "English"
    },
    "address": {
        "@type": "PostalAddress",
        "addressCountry": "United States",
        "addressLocality": "Los Angeles",
        "addressRegion": "CA",
        "postalCode": "90230",
        "streetAddress": "1025 mainOffice Street"
    }
}</script>

Location Pages:

The goal here is to markup location data, without abandoning the “parent” organization, done so by creating each location as a LocalBusiness subtype of the parentOrgnanization.

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "LocalBusiness",
  "@id": "https://yourParentCompany.com/location-1/",
  "name": "Your Company Name - Location Number 1",
  "description": "Your Company Location Number 1, Providing the best goods and or services to the area since mid-March of 1699 BC.",
  "image": [
 "https://yourParentCompany.com/LOGO.png"
  ],
  "areaServed": "serviceArea",
  "url": "https://yourParentCompany.com",
  "telephone": "+1-650-801-3333",
  "address": {
    "@type": "PostalAddress",
    "streetAddress": "123 localBusiness Street",
    "addressLocality": "San Francisco",
    "addressRegion": "CA",
    "postalCode": "94117",
    "addressCountry": "US"
  },
    "parentOrganization": {
    "@type": "Organization",
    "@id": "https://yourParentCompany.com",
    "name": "Your Parent Company Name",
    "description": "Your Parent Company Name: Providing local and international services since Mid January of 1699 BC.",
    "image": [
      "https://yourParentCompany.com/LOGO.png"
    ],
    "url": "https://yourParentCompany.com/",
    "telephone": "+1-800-111-1111"
  }
}
</script>

Needless to say, the above code is just a starting point for creating JSON-LD markup for businesses with similar needs. For example, one of our key goals was to display each locations’ reviews on SERPs, and if you’re adding or updating your structured data this is a great time to add any such data to the localbusiness JSON.

Once you’ve added the data, make sure to confirm that Google’s seeing the right values with their testing tool.

Have other ideas, improvements, questions? Let us know!