Hero Image.jpeg

Background

With the rise of agile adoption and efficient ITSM process, these days almost all organizations in almost all domains follow a defined workflow for approvals and reviews on different requests across different departments and have to comply with certain standards and rules for recording the signature, history logs, and audit logs.

Some examples of such workflows are Inventory Request Approval Workflows, Leave Approval Workflows, Software Releases Workflows, Employee Performance Review Workflow, HealthCare Processes Workflows, HR Processes Workflows, Finance Processes Workflows. 

The Ideation

A few months back we started working on a Jira app. The goal was to create a web panel that enables the approval and review workflow for a Jira Issue.
We started the process with three key requirements

  • Users can start an approval and/or review process right on your Jira issue using the app.
  • Users can get the approval and/or review on the Jira issue requiring an electronic signature from the invited approvers and if they receive a rejection, the users have a chance to modify the work to change the approver's opinion.
  • Users can complete or resolve the issue only if all approvals are received. Any modifications to the issue will reset the approval process, making the approval process secure, rigid, and authentic. (If you set it that way, there is complete independence if you want to transition issue or not as well ability to perform auto transition on completed approvals)

The general workflow of the Approval process looks something like this:

Screen Shot 2021-06-30 at 12.17.07 AM.png


The Implementation

 Unlike developing a standalone web application, Jira app development has to abide by the rules set by the parent platform i.e Atlassian.  

plugindevelopmentplatform.png

Once we set up our app with the P2 framework, we have access to Jira content and features like pages, panels, reports, JQL functions, gadgets, and certain defined places in the Jira UI via modules. 

We developed a UI using Jira apps' UI modules and added options on Jira for the below features on various screens:

Jira Admin Screen

  • Ability to manage global roles to be used on the app
  • Add workflow validators for transitions

Jira Issue Screen

  • Manage approvers and reviewers
  • Define a role for each approver and reviewer
  • Set a due date for each approver and reviewer
  • Ability to choose the Jira issue state in case you want auto transition on completed approvals
  • Ability to add and remove approvers and reviewers on the go 
  • Ability to reset approvals and reviews
  • Ability to archive approvals and reviews
  • View history logs for previous reset or archived approval and review cycles
  • View audit logs with the details of the previous and current state changelogs
  • Ability to provide signature using Jira credentials
  • Ability to reject with comments
  • Ability to review with comments
  • Current status of the approvals in a well-formatted table with all the details
  • Ability to export the Jira ticket with the approval details. 

Jira Project Settings

  • Add default approvers and reviewers with their default roles
  • Configure minimum required approvers count
  • Ability to configure the email address for default sender of email notifications.

What's Next

e-Signable will soon be released to the Atlassian marketplace. With e-signable, you will be able to create custom workflows of your choice and create a record for e-signature records for your Jira tickets. To learn more about e-Signable, you click on the button below and send us a query


Learn More about E-signable