Layout and Flow: Creating User-Friendly Forms in Jira

There are two things we know for sure about forms – One: everyone fills out forms, and two: no one likes filling out forms.  With that in mind, your goal in designing the layout of your forms should be to help the user get through the form quickly and easily while providing accurate information.

With multiple options for label placement, help text placement, validation, action buttons and page layout – webforms provide multiple ways to pose questions to users. For the purpose of this article however, we’ll be focusing on Jira forms. We won’t get into the weeds about whether or not your labels should be above or to the left of your input fields, because Jira doesn’t offer options on all of those details.

Instead, we’ll focus on three big principles – minimalism, logical structure, and a clear path to completion – that will ensure your forms (Jira screens or ProForma forms) are as user-friendly as possible. Rather than thinking in terms of what information we need, we will look at the problem from the user’s point of view. Who are your users? What are they trying to achieve by filling out the form?

Let’s get started.

Principle 1: Minimalism

Less is more when it comes to forms. Our brains are subject to cognitive overload. If too much comes at us at once, we’re unable to process it. We don’t have the RAM. So keeping forms decluttered makes it easier for users to complete them.

Reduce the number of questions you ask

The first thing you can do to make sure your forms are as minimal as possible is to prune back the number of questions you ask. To ensure you’re only asking what you really need to know, either start from a blank slate, or – if you’re working from a template – put every question on trial by considering:

  • How is this information used?
  • Is it necessary in order to provide the user with what they want?
  • Do we already have this information somewhere else?
  • Can we use conditional logic to ensure that the questions is only shown to the right users?

If you don’t need the information, don’t ask for it.

Simplify the language of your question

You’ll also want to be minimal in how you ask your questions. We’ll be delving into the details of question types and wording in the next article. For now, suffice it to say that your question labels should be concise. Use just as many words as needed to avoid ambiguity. You’ll also want to be sure that the language you use fits your audience. If the form is for customers, use plain language. If it’s for technical users, you can use more technical language.

Keep the extras to a minimum

Finally, keep visual extras (color, images, etc.) to a minimum.  Color can be a good option for making important things standout, but only if there’s not too much of it. The same is true for icons.  Other than branding, only include images if they help clarify things for the users. Reserve red text for error and validation messages.

Atlassian has been working to reduce cognitive overload when viewing Jira issues…

Jira then…

Jira Server circa 2007

Jira now…

Jira Cloud circa 2019

Make optional questions, optional!

You can still pose optional questions. But if it’s not information you need to have to provide the service, then wait and ask it later. In Web Form Design: Filling in the Blanks, Luke Wroblewski cites research indicating that users are more willing to answer optional questions if they’re posed after the initial form has been completed. With ProForma, you can automatically add a supplementary form when the initial form is completed. Alternatively, you can create a customer satisfaction survey in Jira to collect more information (See page 19 of Rachel Wright’s Jira Strategy Admin Workbook for instructions on deploying a minimal customer satisfaction survey in your Jira support project.).

Principle 2: Logical Structure

Now that you’ve decided what needs to be included on your form, you have to decide how to arrange it. 

Your forms will be a lot more user-friendly if you think of them as one side of a conversation, rather than as a way to get info into your database.

Group questions into sections

A conversation usually starts with easy, non-intrusive questions. Questions in a conversation are grouped around larger topics, and they follow each other in a natural sequence. There are also natural breaks when a conversation shifts to a new topic. You can recreate that in your forms by grouping questions into sections, and by putting those sections – and their respective questions – in a logical order. This will provide context, making it easier for the user to understand what you’re asking for.

Keep introductory text to a minimum

Keep initial instructional text at the beginning of your form to a minimum. If it’s a big block of text users won’t read it anyway. Instead, provide general instructions in their corresponding sections, or better yet, use field-level help tips. Keeping the instructions close to the questions they refer to will eliminate confusion for the user.

There’s one important exception to this rule. It’s good to let people know up front what they will need, and if there are any eligibility criteria. Webforms also frequently include a “gateway” page or instruction section at the beginning for this purpose.  Here’s an example:

“What You’ll Need” pages and eligibility pages save users time. 
Image courtesy of Rosenfeld Media

Use Pages, Tabs or Sections

Online forms often use multiple pages to organize the form into manageable parts. While we don’t have this capacity in Jira, you can organize questions onto different tabs. Similarly, ProForma lets you include multiple forms on an issue, making it easy to break up data collection into logical parts.

As above, if your form is embedded in a webpage, you can include a “thank you” page at the end that let’s the user know the form has been successfully submitted, and advises them about the next step in the process.

Principle 3: Clear Path to Completion

Since we know that no one likes to fill out forms, one thing we can do to lessen resistance and procrastination is to make it clear to the user how to get to the end. There are a few strategies you can use to illustrate a clear path to completion:

Consistency 

If your team publishes a lot of different forms, use a consistent style when it comes to format, grouping questions, and the overall structure of your forms. This will make the forms feel familiar, and therefore less intimidating to your users.

Be upfront 

If the user is going to need information that they’re not likely to have in their head, let them know upfront. Having to leave a task in progress to dig up needed info is frustrating for your users. It also provides a great opportunity for the user to abandon the process all together.

Easy to scan 

You can also help users know what to expect by putting section titles in title case. (Section titles are also an item where you may want to use color.) Drawing the eye to section titles makes it easy for users to scan, letting them know what kind of questions to expect.

Vertical alignment 

Finally, unless you’re asking for information that demands to be in a grid (e.g. budgets), keep your input fields in a straight vertical line. This makes it easy for the eye to see how to get to the end of the form. The path to completion is like a literal path – if it’s straight you can see where you’re going. If it’s full a switch backs it’s hard to know where you’re going or when you’ll get there.


“Switch backs” image courtesy of Rosenfeld Media

“Literal path” image courtesy of Rosenfeld Media

Creating a clear path to completion, using a logical structure and being as minimal as possible will make your forms more user-friendly and reduce the time needed to complete them. This will improve the quality of the data you receive. Of course, the real nitty-gritty detail of getting good data depends on asking good questions. We’ll dive into the details of form questions in the next article.

Other articles in this series:

  • Why Form Design in Jira Matters  –  How you design your forms will impact the quality of data you receive, and much more!
  • Layout and Flow: Creating User-Friendly Forms in Jira – Form layout affects completion rates and user frustration. We’ll discuss the right way to do it.
  • Writing Good Form Questions in Jira: Part 1 – How do you choose the right words, field types and validation levels? This article will dig into the nitty gritty of creating good form questions. 
  • Writing Good Form Questions in Jira: Part 2 – Choice questions are great for collecting structured data. We’ll look at the options for choice questions and discuss ways to influence, or mitigated influence on the user.
  • Things to think about when converting forms in Jira – Bringing a process into Jira for the first time? Don’t just copy forms straight across. This is a chance to make improvements.
  • Efficient Jira Screens and Jira Service Desk Request Forms – Jira screens and JSD request forms aren’t the same. Here’s how you can make each one work for its audience.
  • Tips for Creating good forms/screens in Jira – Learn how you can leverage Jira features like tabs, workflow transitions and icons to create better forms and screens.
  • Form Design Best Practices: What you can and can’t do in Jira – Now that we know what good form design means, we’ll hone in on which practices can be applied to Jira and Jira Service Desk
  • Use cases – We’ll also include a series of use cases illustrating how using forms expands what you can do in Jira.
  • Form audit – Finally, we’ll take a bad form and transform it to an awesome, user-friendly, data collecting machine.

Form Design in Jira Matters

Let’s just admit it. Forms aren’t sexy. They aren’t exciting or innovative. Few people would call them fun. They are, however, important and few business tools have proven to be as enduring. 

The move from paper to electronic forms, and then to online forms solved a lot of problems. We no longer have to contend with illegible hand-writing and necessary fields that were left blank. But the advent of online forms also presents a challenge. How can we best use the tools we have – validation, conditional logic, auto-formatting – to truly optimize our forms so that teams get the information they need and users have a painless, possibly even pleasant, experience?

Forms and screens that serve as electronic forms (I’ll be using the terms forms and screens interchangeably) are more than just vehicles for data collection. They are the first step that gets the ball rolling on most business processes. They are also one of the primary ways we interact with our internal and external customers. And they are a mechanism for influencing (whether we want to or not) human behavior. Combining forms with a powerful workflow engine like Jira is a great way to get work done. Ensure that your Jira forms are well-designed and you’ll do more than get work done. You’ll save resources, improve relationships and influence user actions in the right direction.

Your Jira Forms Drive Data Quality

We create forms for collecting data, and the quality of the form will go along way towards determining the quality of the data. With the creation of every issue type and every request type, you are making decisions – which fields to include on which screens, what order to list the fields in, what justifies the creation of a new custom field – that will impact the quality of data you receive. In turn, getting better data will allow you to:

  • Provide better, faster service – Imagine if all of your Jira Service Desk agents could provide one-touch service, receiving all of the information they need on the initial request and responding to the customer to let them know that issue has been resolved. There’s no going back and forth to collect the missing pieces. No digging through comment chains, no trying to parse out multiple data points that have been lumped together in a description field – all of the needed data is there, where agents can find it. Requests move through the queue faster, pleasing customers and allowing agents to focus on higher value work.
  • Refine your processes – We often create our processes to accommodate the limitations of what we know or what our software can do. Jira is super flexible, but configuration can become complex.  Using well-designed forms that embed in Jira issues allows you to reduce the number of issue types (the work of capturing specific pieces of data is shifted from the issue to the form), simplify workflows (use checklists instead of additional statuses or subtasks) and prune back that jungle of Jira custom fields. Your Jira instance becomes less complex,  and your Jira administrator less burdened. Shifting from custom fields to form fields will also improve Jira performance. 
  • In JSD, being able to easily create portal forms tailored to capture the information needed for each request type allows you to better organize your queues, channeling work to the agent best equipped to handle the request.
  • Enhance Compliance – Forms can serve as a record, capturing and preserving data from different sources, at different points in time, enhancing compliance and accountability. A well-designed form will make it easy to provide management with useful reports, and auditors with the information they need. Adding multiple copies of a well-designed form to a Jira issue allows you to see not only the current state of an issue, but also the discoveries that have been made along the way.
  • Improve the Bottom Line – What is the cost of bad data? How much time do service agents, Jira users and customers loose searching for information that’s hard to find, invalid or missing? Include a field to capture a document version number on a form and the agent can glean the data at a glance. Obtaining the same information through a comment can cost hours, as the request sits, waiting for the customer to come back with needed data. Later, when the agent goes to retrieve the information combing through a comment chain can be like going down a rabbit hole. Better forms lead to better productivity.

Forms are the Basis of Relationships

A form can be the start of a beautiful friendship. Or not. When you consider how many business processes start with a user filling a form, it’s amazing that more attention isn’t given to form design as part of managing customer relations.

Most business processes start with a form. That means that the form is often your one and only chance to make a first impression.  In some cases, government bureaucracies come to mind, a form or forms may be the only way customers interact with an organization. If the forms are bad, the relationship won’t be good. Bad forms can result in users postponing, abandoning and sometimes bypassing key processes.

On the other hand, well-designed, intuitive, user-friendly forms can reduce friction, build rapport and help set appropriate expectations. The improved service that results from good data collection will inspire confidence. Your forms build your reputation and promote your brand.

Form Design Influences Behavior

How we design our forms – the words we choose, the presence or absence of default values, the order of choice options – influence users decisions. If that sounds far fetched consider the image below illustrating organ donation enrollment in Europe.


Source: Why BI?

The stark difference between the rates for the countries listed on the left and those listed on the right isn’t due to culture or religion. It’s the difference between opting in and opting out. Want to increase employee participation your retirement contribution program? Change the form? Want to see more customers opt for a higher value product? Change the form.

We’ll be discussing how you can use wording, question framing, defaults and choice architecture to influence user choices in a future article. And if you’re thinking, “Wait, that’s manipulative. I don’t want to do that,” we’ll also discuss how you can mitigate the influence of your questions on users choices (though it’s not possible to be 100% neutral).

Where Do We Go From Here?

Once you’re convinced that form design matters, what’s the next step? Start by reframing how you think about the form process.

The Behavioral Economics Team of the Australian Government recently introduced the WISER framework for form design. It lays out specific steps to go through in identifying the form’s audience, providing appropriate instructions, using a clear layout, etc.

Source: FORM-A-PALOOZA 2019

There are two big things you should notice about the WISER framework.  First, the framework focuses on the user’s point of view. Who are the users? Why should they complete the form? What information will they need? What language will they understand?

Second, the framework tells us to test and repeat. You wouldn’t adopt a “set it and forget it” attitude towards developing software, so don’t do that with your forms either. Form design needs to be iterative.

Keep those things in mind as we move forward. Over the next few weeks, we’ll be taking a deep dive into form design, discussing the details of form layout, good questions, and things to think about form-wise when you bring an existing process into Jira for the first time. Then we’ll bring in our friend and Jira super-user, Rachel Wright, to discuss how you can apply these concepts in Jira.

Keep an eye out for the upcoming articles in the series:

  • Why Form Design in Jira Matters  –  How you design your forms will impact the quality of data you receive, and much more!
  • Layout and Flow: Creating User-Friendly Forms in Jira – Form layout affects completion rates and user frustration. We’ll discuss the right way to do it.
  • Writing Good Form Questions in Jira: Part 1 – How do you choose the right words, field types and validation levels? This article will dig into the nitty gritty of creating good form questions. 
  • Writing Good Form Questions in Jira: Part 2 – Choice questions are great for collecting structured data. We’ll look at the options for choice questions and discuss ways to influence, or mitigated influence on the user.
  • Things to think about when converting forms in Jira – Bringing a process into Jira for the first time? Don’t just copy forms straight across. This is a chance to make improvements.
  • Efficient Jira Screens and Jira Service Desk Request Forms – Jira screens and JSD request forms aren’t the same. Here’s how you can make each one work for its audience.
  • Tips for Creating good forms/screens in Jira – Learn how you can leverage Jira features like tabs, workflow transitions and icons to create better forms and screens.
  • Form Design Best Practices: What you can and can’t do in Jira – Now that we know what good form design means, we’ll hone in on which practices can be applied to Jira and Jira Service Desk
  • Use cases – We’ll also include a series of use cases illustrating how using forms expands what you can do in Jira.
  • Form audit – Finally, we’ll take a bad form and transform it to an awesome, user-friendly, data collecting machine.

Better Form Design in Jira (Series)

In 2017, ThinkTilt and Rachel Wright teamed up with the goal of helping business teams get more out of Jira and conquer their “to do” lists. In 2018, we helped administrators effectively manage Jira and battle custom field bloat. Now, we’re collaborating again to help you create better screens and forms in Jira and Jira Service Desk.

In our upcoming series, we’ll help you understand how form design can help or hinder data collection. We’ll help you write good questions, choose the right custom fields, and create forms that users actually want to complete. We’ll explore the screen and form capabilities of Jira, Jira Service Desk, and ProForma. Finally, we’ll provide use cases for various teams and turn bad forms into good ones.

Our first article tackles the differences between screens in Jira and forms in Service Desk. It’s important to understand how screens, screen schemes, and issue type screen schemes work together. Then, you can map screens to issue types and leverage JSD and ProForma forms.

We hope you’ll check in regularly to see the upcoming installments:

  • Why Form Design in Jira Matters  –  How you design your forms will impact the quality of data you receive, and much more!
  • Layout and Flow: Creating User-Friendly Forms in Jira – Form layout affects completion rates and user frustration. We’ll discuss the right way to do it.
  • Writing Good Form Questions in Jira: Part 1 – How do you choose the right words, field types and validation levels? This article will dig into the nitty gritty of creating good form questions. 
  • Writing Good Form Questions in Jira: Part 2 – Choice questions are great for collecting structured data. We’ll look at the options for choice questions and discuss ways to influence, or mitigated influence on the user.
  • Things to think about when converting forms in Jira – Bringing a process into Jira for the first time? Don’t just copy forms straight across. This is a chance to make improvements.
  • Efficient Jira Screens and Jira Service Desk Request Forms – Jira screens and JSD request forms aren’t the same. Here’s how you can make each one work for its audience.
  • Tips for Creating good forms/screens in Jira – Learn how you can leverage Jira features like tabs, workflow transitions and icons to create better forms and screens.
  • Form Design Best Practices: What you can and can’t do in Jira – Now that we know what good form design means, we’ll hone in on which practices can be applied to Jira and Jira Service Desk
  • Use cases – We’ll also include a series of use cases illustrating how using forms expands what you can do in Jira.
  • Form audit – Finally, we’ll take a bad form and transform it to an awesome, user-friendly, data collecting machine.

About ThinkTilt

ProForma is the forms solution for Jira, making it easy for 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!

7 Custom Fields Every Jira Application Needs

As a Jira administrator you should choose your custom fields carefully. Too many fields are a headache to maintain. In our custom field series, we’ve shared our tips for battling custom field bloat, auditing your fields list, and reducing your field count. Now we’d like to share some custom fields we recommend that you do create.

In Keeping It Clean: Containing Jira Custom Field Growth we recommended sharing custom fields with different teams across the organization. These 7 fields are intended to be used by many teams in many Jira projects.

Recommended Custom Fields

1. Requested

Custom Field Types
Custom Field Types

Field type: Date Picker

Create a “Date Picker” type field and name it “Requested.” Place this field on a project’s “Create” screen and use it to answer the question “When would you like this request completed by?

This field is different from the “Due Date” field, which signifies when the team can actually accommodate the request. The “Due Date” field should be populated after a request is reviewed for understanding and prioritized. In most cases, that field should not appear on the initial “Create” screen.

Requested vs Due Date Fields
Requested vs Due Date Fields

Consider this scenario: The Legal team needs an update to the terms and conditions page on the company web site. They create an issue for the Development team with a requested date of March 15. The Development team receives and considers the request. Since it’s of “Medium” priority, they slide the change into their next release, which is March 22. These two fields have easily helped convey urgency and communicate ability.

Recommendation
Always place the “Priority” field before a requested date field on a screen. Collecting the importance before a date is entered may help set realistic expectations.

2. Category

Field type: Select List (multiple choices)

The built-in “Components” field is a great way to categorize (and automatically assign) work. But what if you need a second categorization method? Create a “Select List (multiple choices)” field and name it “Category”. This generic name is important and ensures that the field can be used to cover many scenarios.

Custom Field Context
Custom Field Context

Custom Field Context

Next, use Jira’s “Contexts” feature to display different selection values in different projects. For example, the Legal team categorizes their work with selection values like: Contract, Service Agreement, Litigation, etc. The Security team
categorizes their work with options like: Denial of Service, Information Disclosure, and Injection. Using a custom field context allows you to use one field to support many scenarios.

Recommendation
Always add an “Other” selection to cover all potential non-listed responses.

3. Department

Field type: Select List (single choice)

Which department generates the most requests for your team? That’s useful information for reporting! Unfortunately, Jira doesn’t know information like a user’s department name, team name, manager’s name, or phone number. While it is possible to store these additional details in a user property, there’s no easy way to leverage that data without custom development.

Instead, create a “Select List (single choice)” field and name it “Department.” Create one selection value for each department in the company and ask the reporter to choose the appropriate one on the “Create” screen. Easy!

4. Team

Field type: Select List (single choice)

Same as above. Create a “Select List (single choice)” field and name it “Team.” You could also couple the concept of “Department” and “Team” in one field by using the “Select List (cascading)” type. First the user chooses a department and they choose their team from a sub-set of selections. Now you have an easy way to query who the work is for.

Select List (cascading) Field
Select List (cascading) Field

5. URLs

Field type: Text Field (multi-line)

It’s common that Jira issues are related to data from other websites and applications within and outside the company. For example, the Development team may need links to vendor documentation for their integration project. The Facilities team may need a link to the purchasing policy Google Doc for large equipment orders. The HR team may need to link to an employee’s record in a third-party employee resource application. When external applications are integrated with Jira, linking is easy. But what do you do for all those other applications that aren’t connected?

Create a “Text Field (multi-line)” field and name it “URLs.” Users can enter an unlimited number of links to other online areas without the need for one custom field per URL. Jira will even make the URLs clickable on an issue’s “View” screen, as shown in the screenshot.

Text Field (multi-line) Field with Links

Text Field (multi-line) Field with Links

6. IDs

Field type: Text Field (single line)

Sometimes you need to associate Jira issues with records in other offline or inaccessible applications. For example, a purchase order number from desktop accounting software, an ID in a vendor’s system, or a serial number on a piece of equipment. Just like the URLs field above, individual custom fields are often overkill. Instead, create a “Text Field (single line)” field and name it “IDs.” Users can enter ID numbers as comma separated values.

Text Field (single line) Field with Identification Numbers
Text Field (single line) Field with Identification Numbers

7. Notes

Field type: Text Field (multi-line)

Finally, sometimes users need to enter more information that doesn’t belong in the standard “Description” field. Create a “Text Field (multi-line)” field and name it “Notes.” This generally named field can be used in different ways in different projects. Use a Field Configuration scheme if you need to provide a project or issue-specific field description.

Now there’s no need for an “Information” custom text field, an “Instructions” field, or a “Business Justification” field. All those lovely details can go in a single field.

Recommendation
If you’re not planning to query for or report on a piece of information, don’t devote a custom field to it.

Conclusion

Carefully planning your custom fields makes Jira administration easier. Creating generic fields for use by multiple teams is an easy way to support the needs of your users and limit the custom field count at the same time.

Which custom fields do you use across multiple projects? What strategies help you reduce the need for custom fields? Share your tips and tricks in the “Comment” section below.

Teaming Up for Spanish Speakers

¿Hablas español? I don’t but I really wish I did! In fact, “Learn Spanish” is issue BUCKET-60 on my Jira bucket list. New languages aren’t easy for me however, so in the mean time, I’ve teamed up with DEISER, to translate some of my content to Spanish! Jira, Jira Service Desk, and Confluence are growing rapidly in Spain. We want to make more Atlassian information available to users there and in other Spanish speaking countries.

We started with my most popular article about studying for Jira admin certification. You can read the first translation: “Administradores de Jira: Las claves para preparar la certificación Atlassian ACP-100” on the Strategy for Jira website or on DEISER‘s website. More translations are on the way; you’ll find them all in the “Spanish” category.

About DEISER

DEISER Logo

As an Atlassian Platinum Solution Partner DEISER provides 360° solutions for high-performance teams. They provide apps for Jira, implementation consultancy with an eye on quick results, and licensing management for all your Atlassian products.

About Rachel Wright

Strategy for Jira Logo

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!

Together, we look forward to helping even more users set up, clean up, and maintain Jira, Jira Service Desk, and Confluence.

Jira Next Gen-Projects: From the User’s Point of View

I’ll admit that I didn’t expect to like next-gen projects, Atlassian’s answer to making Jira more simple, and creating self-contained projects that won’t impact the performance of your entire Jira instance. First off, I felt vaguely resentful of the timing – just as I’m finally figuring out the complexities of Jira, they come out with a “Dummies” version.  Second, I’m not a drag-and-drop type of person. I learn through language, by hearing and reading. I tend to find tools built for visual learners to be imprecise and a bit annoying. But I decided to put my reservations aside and create a next-gen project. Here’s what I found.

The Great Things About Jira Next-Gen Projects

Set up was fast and easy.  I had mapped out my project on paper so it was pretty quick to set up the issue types I wanted.  I added and ordered the fields I needed right there as I was creating the issue types, creating custom fields and adding choices to my dropdowns – all on one easy screen and with no schemes to worry about. 

I set up my screens at the same time that I created my first issues. Again, it was simple and intuitive. I simply clicked on Configure Fields on the Issue Create screen and now all of the fields I wanted are there.

These are two big advantages of next-gen projects. Set-up was simple and it’s really, really nice to know that I can create a project specific to my needs, without worrying that I’ll screw things up for everyone else.

And the Risks…

Time will tell if those two advantages also turn out to be the biggest disadvantages of next-gen projects.  While setting up the next-gen project was certainly easy, I wonder if the simplicity itself may cause users to miss out on something. When you wade through issue type schemes, field configuration schemes, etc. you are getting the benefit of learning from those who have gone before you. Seeing the fields that are used in other projects may trigger you to think about aspects of your project that had slipped your mind, aspects that may not be relevant to you, but are crucial to other users. I’m curious to see if, as my project evolves and I make needed adjustments, it will end up looking a lot like one of the default schemes.

While it’s nice to be able to create a project knowing that you won’t mess up what anyone else is doing, it also implies a higher level of responsibility. If this is my standalone project, with my issue types and my custom fields, then it’s my job to get them right and to clean up the mess when I get them wrong. It will also be my job to deal with maintenance – to keep the project clean, to make needed changes, to clean up the data when garbage gets entered. Simplified maintenance is one of the key advantages of shared schemes. It will be interesting to see, as use of next-gen projects grows, if maintenance becomes an issue. Atlassian has said that they will soon be providing the ability to extract next-gen project settings into their own template, and link two or more projects’ settings together. (However, they also say that if you want to share configurations, it’s best to go with a “classic” project.)

The other limitations of next-gen projects relate to them being new. Atlassian has published their roadmap, letting us know when features we’re used to using in traditional projects will become available for next-gen projects. App developers will also need time to catch up. For instance, ProForma – which allows you to create forms that embed in Jira issues – does not yet work for next-gen projects. I think I’ll create an issue for that.

Are You Ready for the New Jira?

Atlassian’s introduction of “Next-gen” projects in Jira Cloud represents a paradigm shift in the way they build and deliver features.  They are moving from a massive monolith of code to microservices structure.  In their recent webinar “The new Jira begins now” Atlassian shared that they operated from a single code base for almost a decade!  I used to work in an environment of large and aging software, so I know how challenging it can be.  Your team is ready with a new feature, but you can’t release it until all teams are ready to also ship their code.  Or, your team changes one variable and it breaks everything for all the other teams.  No fun!

It sounds like Atlassian is now able to build software the way I wish we could have back then.  They are leveraging “feature flags” to better control rollout and delivery.  For example, they can deploy code in an “off” state and turn it on later.  Additionally, they can turn code “on” for a subset of customers, or launch features in a controlled and measurable way.

Sounds great!  If I didn’t love Jira consulting so much, I might be tempted to get back into software development.

What does it mean?

So what does this shift get Atlassian?  It means the freedom to re-architect, try new things, and build a new project creation and management experience in Jira Cloud.  The Next-gen projects launched without expected features, like Epics, Sub-tasks, and required fields.  But with their new release capabilities, features like these are shipping quickly.

Atlassian has shared their development roadmap, which is a most welcome addition.  I always appreciate any insight I can get!

Do we want this?

Atlassian says we do!  They surveyed customers and learned that teams want flexibility and that centralized administration creates bottlenecks.  Waiting for your Jira admin to create your new project doesn’t scale.  I can understand that and I know users and customers have waited on me to perform an “admin only” task.

Atlassian also says admins have expressed the desire to delegate some of the more mundane tasks so they can focus on more important and impactful work.  I get that too.  There are some things I don’t love to do, like managing group membership, for example.  As long as there are no collisions,  impacts to other projects, or messes for admins to clean up, delegated administration could be very helpful.

Key Differences

Atlassian uses the word traditional to describe the original projects we’re more familiar with.  Traditional projects utilize configuration schemes.  The new Next-gen projects are “schemeless” and totally independent.  Atlassian says that future Next-gen projects will have template abilities.  I’m interested to see how that differs from the traditional project’s concept of “Software”, “Service Desk”, and “Business” project types.

Not only are Next-gen projects created by different users but the creation process differs too.  I have a very specific set up process for traditional projects and even a new project configuration checklist.  I’m careful to complete steps in a specific order to avoid extra clicks.

With Next-gen projects, the configuration order is different.  It is:

  1. Create the project and select permissions
  2. Create board columns
  3. Add users
  4. Create issue types
  5. Create custom fields
  6. Connect to other tools

It’s strange to me to configure a board before the workflow, but if the workflow is based on the board (not the other way around) then it makes sense.  Atlassian’s use of Jira is definitely more board-centric than my own.  I’m not a heavy board user; dashboards are more helpful to me.  But that could be because I used Jira before boards had today’s list of features.

The Next-gen boards continue to evolve and improve with new features like:

  • bulk issue update abilities,
  • column display limits,
  • background color changes for “flagged” issues,
  • rules – like auto assignment based on status change,
  • and visual integrations with dev tools.

Finally, Atlassian shared that the new project model improves performance, stability, and helps prepare them for the next decade of software development.

What will happen to “traditional” projects?

Will development for “traditional” Jira Cloud projects continue?  It’s uncertain.  It sounds like all these new cool features are only for Next-gen projects and won’t be back-ported.  That’s sad but understandable. Essentially they would have to develop the same feature twice, once for each code framework.  That doesn’t make a lot of sense to do – unless customers are clamoring for it.

How do Next-gen projects impact apps and app developers?

To answer this question, I asked ThinkTilt, the maker of ProForma, a forms and custom fields add-on for Jira Server and Jira Cloud.

ThinkTilt said that the Next-gen projects have quite an impact for them and other Marketplace app developers.  Atlassian is still working on supporting apps in the new projects.  Some screens, like the project configuration screens, didn’t appear until recently, meaning many apps didn’t work at all for the new project type.

The next step is for Atlassian to update their APIs so app developers can access the new features of Next-gen projects.  Today, apps can see what has been configured for a project, but there are no abilities yet for doing more, like adding or editing the configuration.  When all the Atlassian pieces are ready, app developers will need to update their apps to make them work well.

Expectations

What are your expectations of Atlassian and their new Jira Cloud experience?  What are the expectations of your Jira admin team or your users?  Share your opinions in the Comments section below.

Learn more about Next-gen projects at:  http://atlassian.com/get-next-gen

Keeping It Clean: Containing Jira Custom Field Growth

You did it!  You auditeddeleted, merged and substituted and now your Jira instance only has the custom fields it should have.  Congratulations – that was hard work!  Pat yourself on the back, eat some chocolate, do whatever you do to celebrate.  Then take a deep breath and get ready to go to work again, because now that you’ve got your Jira instance nice and clean, you need to take a few steps to keep it that way.

The good news is that custom field clean-up isn’t like laundry, where you never really get it all done.  Once you’ve cleaned up your instance you can put processes in place to keep it that way.

When to Create a New Jira Custom Field

There are times when creating new custom fields is justifiable, but you want to make sure it’s really necessary before you create one.  Here are a few things to consider:

  • Is it needed?  In tech, we’re often tempted to do things just because we can. That’s not a good enough reason to create a custom field.  When users request a new field, ask them for the business case for collecting that piece of data. 
  • Does the data need to be in its own Jira field?  Will this data be queried or reported on later?  If not, could you just as easily capture it as a ProForma form field?  Or prompt users to include it in the Jira description field?

  • Would the field be used by different teams across the organization?  Jira assets should be shared whenever possible.  Making usability across multiple teams one of your criteria will help contain custom field expansion. 
  • Is there a Jira system field that you can use?  Make use of existing options. Teams can set their own protocols for what to include in a summary field versus a description field, or create a project-specific plan for how they will use the label field, etc.  Encourage users to use what’s there before asking for more.

In order to have the above information whenever a new field is requested, you’re going to want to implement a process for requesting new custom fields.  ProForma offers a template that users can use for requesting custom fields and Rachel Wright offers a new custom field request worksheet

In the Jira Strategy Admin Workbook, Rachel also recommends publishing a list of currently available custom fields.  This encourages users to look and see what’s already there before requesting something new.

Custom Fields and Next-Gen Projects

Note that these processes assume that you’re working the old-fashioned way, with traditional, classic, old school Jira projects.  If you’re using Cloud, then you may have empowered your users to create “Next-gen” projects. Next-gen projects are pretty new and it’s fair to say that the jury is still out.  The idea is that users will be empowered to create their own projects, issue types and custom fields.  These projects are self-contained and the inevitable balloon of new custom fields should not impact Jira performance. However, there’s nothing to prevent users from making errors such as misspellings and incorrect field types – errors which they may, or may not know how to clean up.

So what are our recommendations for managing custom fields in Next-gen projects?  First, the new project capabilities are configurable.  The default setting is “anyone,” but you can decide which groups to grant this power to.  Once you do decide, give these newly empowered users some training, which should include when to and when not to create a new custom field. Initially, alternatives may be more limited for Next-gen projects than for classic Jira projects.  Like many Jira apps, ProForma doesn’t yet work with Next-gen projects, but as use of Next-gen projects expands, options will too.

Will be exploring the possibilities and impact of Next-gen projects in upcoming articles.  In the meantime, enjoy hanging out in your nice clean Jira instance!

Reducing Jira Custom Fields through Substitution

One of the principle advantages of using ProForma – the app that lets you create forms that embed in Jira issues – is that it allows teams to collect customized data without needing Jira custom fields.  In the previous article in our series on reducing custom fields, we discussed how to delete, hide and merge custom fields.  In this article, we’ll explore the fourth option – substituting a form field for a Jira custom field. 

When to Use

This is the solution that provides the best of both worlds.  You get to have the data without having the custom field.  That being said, there are some limitations you need to consider before implementing this solution.

Limited Search Capability

Currently, fields on ProForma forms are not searchable in Jira.  There are two ways you can work around this.  For fields that are frequently queried and reported on, you can link a form field to a Jira field.  This allows you to collect the data in one place and still have access via JQL queries and Jira reports.  However, this doesn’t help as far as reducing fields.

The other option is to download a spreadsheet of forms responses and search there.

We are working on creating functionality which will allow you to link multiple form fields to one Jira field (for instance, the description field). This will allow teams to collect and view the information in a structured manner, while still having the data available for searching in Jira.  We anticipate releasing this functionality in early 2019.

Conversion Process

The other thing to keep in mind is that the conversion process (described below) is not for wimps!  We recognize that it’s a bit labor intensive and we are working to develop an automated process.  (For this reason, it’s highly recommended that you triage incoming requests for new custom fields and use form fields in lieu of custom fields as much as possible.)

Preparing the People

Reassure users that they will still have the data.  If users are new to ProForma, you want to show them how ProForma is used on another project in order to reduce their concerns.  You’ll encounter less resistance if users understand that they’re not losing any data.

Second, knowing that the conversion is a bit involved, you should prepare your users to be patient.  You will also want to work closely with Project Admins – letting them do some of the tasks (such as building the forms) – especially if you’re substituting fields across multiple projects.

How to Do It

1. Build a form that includes the target fields.  Each field has the option of being linked to a Jira field.  Be sure to create a field for each custom field that you wish to eliminate.  For each of these fields, use the Link Jira Field option to link the form field to the existing Jira custom field.  Note that you may want to link other fields as well.  For instance, it’s very useful to have a “What’s the problem?” field link to the Jira summary field.

  • The form can include as many fields as needed (not just the fields that are being converted).  Create forms that will be useful for the team after the conversion process is complete.
  • You may be able to get a head start by modifying a form from the ProForma template library.
  • Organize fields into logical sections.  Add instructions.  Use ProForma features such as validation, conditional logic and field-level hints/descriptions to make your forms as user-friendly and useful as possible.

2. Once the form has been built, you will need to add the form to all of the relevant issues.  Depending on your situation, this could be every issue in the project, or only those issues that have data in the custom fields you’re converting.  Currently, add ProForma forms to issues has to be done manually.

3. Next you need to go through and open each form and check that the contents are correct.  The target form fields should contain the data from the custom fields.  Save and Submit the form on each issue.  Note that the data doesn’t get locked into ProForma until the form has been submitted.

The data from the custom field is now present on both the custom field and the form.  Be sure to click Submit to lock the data in the form.

4. Now return to the form builder and open the form.  Go to each of the form fields associated with a custom field you want to eliminate and unlink the Jira field. Remember to Save.

5. The populated form field is now independent of the Jira custom field.  To verify that you have completed the process, run a JQL query for  [custom field] NOT EMPTY.  Then download a form response spreadsheet and compare the results.

6. Once you’ve confirmed that the forms contain the custom field contents, you can delete the custom field following the directions here.

We recognize that this is a labor intensive process and we are working to develop an automated process for converting fields in large projects. Please contact ThinkTilt if you would like to be notified when that functionality is released.

**Note that the process described above is for traditional Jira projects (Business, Service Desk or Software).  ProForma is not yet fully functional with Next-gen projects.

Deleting, Hiding & Merging Jira Custom Fields

Congratulations!  You’ve audited your Jira custom fields and even decided on which methods you’ll use to reduce them.  So now it’s time to get started. In this article, we’ll provide the steps for three of the options:  deleting, hiding, and merging Jira custom fields.  For each option, we’ll not only look at the steps for execution, we’ll also discuss when you should use it and how you should prepare users for the change.

Let the pruning begin!

Deleting Jira Custom Fields

When to Use

Don’t do this lightly.  Deleting fields will also delete the data they hold and this act cannot be undone.  Therefore, this method is best reserved for fields that were created, but never used (a scenario that occurs more often than one might think), or in cases where the data has been moved to another field.

Preparing the People

Users will not react kindly to having something they feel they need removed.  So check first to see if anyone is using the field.  If they are, provided a substitute (we’ll discuss how to do this in the next post) or a work-around before deleting the field.  You’re a hero when you give users functionality, but a devil when you take it away.

How to Do It

  1. Select Jira settings > Issues
  2. Under Fields, select Custom Fields
  3. Find the custom field and click the gear icon
  4. Click Delete to remove the custom field and any information entered in the field from all issues.

Hiding Jira Custom Fields

When to Use

Although this method doesn’t truly reduce the number of custom fields in your instance, it does allow you to declutter your screens.  This is a good method to use for custom fields that were used in the past and contain data that you don’t want to use, but are not (or rarely) used now.

You can also hide fields as an intermediary step before deleting them.  Hide the field, wait a week or two to see if users miss it, and if not, then delete the field.

Preparing the People

Most of the time when you use this method it will be for fields that were important in the past, but are no longer in use.  Check with the Project Admins to confirm that this is the case.

Note that if you’re told, “Oh no, we need that field!” but suspect otherwise, you can query for [custom field] NOT EMPTY and then sort by last updated date to see how frequently and how recently the field has been used.

How to Do It

To hide a Jira custom field go to Project > Project Settings > Fields.  Find the custom field and click Screens.  Click Remove.

Merging Jira Custom Fields

When to Use

In the rush to create what we need, we often forget to check if it’s already there.  Your audit may reveal that multiple custom fields have been created which essentially do the same thing.  In this case, you should select the one best option (correct field type and most generic name) and merge the other fields into it.

Preparing the People

The key in this case is communication.  You simply need to let people know that the field they formerly used (XYZ Project Start Date) has now been renamed (Start Date).  You can use an announcement banner (available on the System admin menu) to communicate with all of your users.

How to Do It

  1. Add the new (correct) field to all relevant issue type(s).
  2. Run a query to return all of the Jira issues you wish to update (all issues in which have data in the old/incorrect field).
  3. Adjust the columns to show the summary, issue key, the old/incorrect custom field, and the new/correct custom field.
  4. Click Export Excel CSV (current fields).
  5. In your CSV file, remove any unnecessary columns, and everything but the header and data rows.  (The export may add extra rows of footer/header content).  This is also a good opportunity to “clean up” your data – fix misspellings, etc.
  6. Now go to the Jira Administration menu and select Jira Settings > System.
  7. Select External System Import (under the Import and Export heading) in the left hand navigation bar.
  8. Select CSV.
  9. Click on the Choose File button and browse to your CSV file.  Click Next.
  10. Select your project.  Note that you can also add an email suffix and adjust the date format on this screen.  Click Next.
  11. Map your fields including the issue key, summary and the relevant custom fields:
    1. Issue Key (CSV field) > Issue Key (Jira field)
    2. Summary (CSV field) > Summary (Jira field)
    3. Old/incorrect custom field (CSV field) > New/correct (Jira field)
  12. Click Next.  Jira will make the update and indicate the result.
  13. You can repeat your original search to see the data from the old/incorrect field is now populating the new/correct field.
  14. Follow the instructions above for deleting the old field.

Stay Tuned

The next article in this series will describe how you can substitute a ProForma form field for a Jira custom field.  It’s the perfect solution for times when teams need the data, but don’t need to query or report on it.