Scheme Configuration

Name Jira Scheme Configuration
Version v1.0
Product Versions Tested with 3.12
Author(s) Sharvin Ragavan,
Centre for Software Innovation, The University of Auckland
Price Free
License CODEGEIST:BSD
IssueTracking  
Download JAR scheme-administration-1.0-SNAPSHOT.jar
Download Source scheme-administration-src.zip

Description/Features

The Jira Scheme Configuration plugin, also known as Scheme Administration, was an implementation from a formal summer project undertaken at the Centre for Software Innovation, The University of Auckland, New Zealand. The university maintains a JIRA server, which is actively evolving currently, to accommodate issue tracking for various projects within the university. Therefore, our administrators are regularly involved in configuring new projects and maintaining existing projects.

What appears to be a problem to administrators is that Jira provides an administration section where every administration scheme is only available to be configured separately. Hence, the scheme dependencies between different schemes were not obviously exposed to administrators. An example of a scheme dependency is such that a user would receive email notifications of an issue not only when he/she has an event notification enabled, but also  needs access to the security level that the issue belongs to, and the browse projects permission in the project. Administrators tend to have high possibility of setting up inconsistent configurations which leads to the failure of performing certain scheme functions. In addition, reviewing and maintaining the configuration of the schemes for the purpose of diagnosing any problems seem to be troublesome for administrators due to the complexity of the process. Configuring even a simplest change in an administration scheme would take through multiple pages.

Which in all lead to this project that focuses on making project setup within JIRA more usable and and making existing project configurations easier to review and maintain. The requirements were driven by the CSI team, Nick Jones(project industry mentor) and Jun Huh who were administering a number of real projects in JIRA, while the visual solution was designed by Prof John Hosking (project academic mentor).

The plugin handles the following admin schemes, which were identified as being the most frequently and necessary that needs tuning whenever a new project or group of users are being created:

  1. Issue Security Schemes
  2. Permisssion Schemes
  3. Notification Schemes

This plugin was developed with efficiency and effectiveness in mind, that it is aimed to greatly reduce the effort and errors by admin.  With this plugin, those schemes would be able to be configured in a single page, rather than navigating through multiple pages for each scheme.

The plugin is in the final testing phase before being deployed in the university JIRA. Meanwhile, discussions are also being held to have it open sourced and up on the Atlassian JIRA library, to share the plugin with the JIRA community.

Usage

The Jira Scheme Configuration plugin is located within the Scheme Administration section of the Jira Administration, and supports setting up and co-relation of schemes, that would be really handy to support the following use cases:

  1. Setup a new project
  2. Review an existing project
  3. Maintain an existing project

Setting up a project and maintaining would usually involves a lot of permission configurations. This plugin allows all 3 Issue Security, Permission and Notification Schemes editing in one single screen where each edit may simply be performed by checking/unchecking the appropriate checkboxes.
When investigating a user specific problem, search for the user using the auto-complete box. Then, the groups that the user belongs to would be highlighted as yellow columns. Any components which causes inconsistency in the scheme dependencies would be indicated in a red cell. Every time a change is made consistency validation would be performed live.

As a useful feature, the list of members of a group can be viewed by clicking on the magnifier icon adjacent to each group names.

 Installation

  1. Download the plugin jar and place it in /WEB-INF/lib directory. Restart the JIRA server.
  2. Log in as JIRA Administrator and go to Administration >> Schemes >> Scheme Administration to start using the feature.

Case Example

The problem was that one of the members of a project was not receiving email notifications, and for a long time the admin could not find out what and where the problem was, due to the scattered nature of JIRA scheme management screens.  During the evaluation phase, when the admin was in demo with the prototype, the exact cause of the problem was rectified immediately, that groups not being assigned properly between notification & permission schemes.

Version History

  1. v1.0 - known problems/room for improvements :
    1. security issue - non-admin users have access to the feature the by typing in the URL of the page.
    2. performance time - to enhance the performance time of the form processing on page load and the auto complete feature for the user search function to handle a huge database.

Screenshots

Labels

codegeist_2008_jira codegeist_2008_jira Delete
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. May 09, 2008

    Nick Jones says:

    Hi, A late entry, we're pulling together screen shots, documentation, code etc ...

    Hi,

    A late entry, we're pulling together screen shots, documentation, code etc from a project we run over our summer with Sharvin. Probably a little late to hear input from anyone, but we will be continuing to develop the plugin as we shift it into our enterprise deployment of Jira at The University of Auckland. More to come, soon.

    Nick 

  2. Jun 18

    Jack Baty says:

    This is terrific. I found and solved an issue with permissions almost immediatel...

    This is terrific. I found and solved an issue with permissions almost immediately after installation.

  3. Jul 08

    Sabine Rommel says:

    Hi Sharvin, this plugin is grandiose but wouldn't it a good idea to enlarg...

    Hi Sharvin,

    this plugin is grandiose but wouldn't it a good idea to enlarge the functionaltity to the group and user management.

    e.g.: The list of members of a group cannot only be viewed but modified.