Atlassian app || User synchronization || Feasibility Analysis
1. Business Requirement
User should be able to add the users from the selected group to the selected organization in Jira servicedesk.
2. Scope of the Business
The business aims to enhance user management within Jira servicedesk by implementing a feature that enables users to add individuals from selected groups to designated organizations seamlessly.
The scope encompasses the following key aspects:
User-Friendly Interface: The implementation will focus on providing an intuitive and user-friendly interface for users to navigate effortlessly through the process of adding individuals from selected groups to specified organizations.
Group and Organization Management: The system will allow users to efficiently manage user groups and organizations within Jira servicedesk. This includes the ability to view, modify, and organize groups as well as designate target organizations for user synchronization.
Scheduled Run Feature: The introduction of a scheduled run feature will enable users to automate the process. Users can set up schedules to run the synchronization, ensuring that the addition of users from selected groups to organizations occurs at specified intervals without manual intervention.
Error Handling: The system will incorporate robust error-handling mechanisms to address any issues that may arise during the synchronization process. Clear error messages and notifications will be provided to users for effective issue resolution.
3. Feasibility
The proposed feature aligns with the existing infrastructure of Jira servicedesk. The integration of user-friendly interfaces and scheduled run functionalities is technically feasible, leveraging the platform's capabilities.
We have created a plugin user synchronization for one of our client.
Features we have in client plugin
The features of the user synchronization include:
Group select: Upon clicking the Jira Groups dropdown, a prompt will appear requesting a 3-character keyword. Subsequently, the system will retrieve groups containing the specified keyword and enable the selection of the desired group.
Organization select: When you click on the organization drop-down, it will retrieve and display a list of organizations. Choose the relevant organization from the list.
Clicking the "Add" button will append the group and organization names to the table, accompanied by options for deletion and synchronization operations.
Clicking "delete" removes the row containing both group and organization, while clicking the "sync" button adds users from the group to the organization.
Schedule: Execute the selected groups and organizations from the table through scheduling. The default frequency is set to daily, and users have the option to choose weekly or monthly intervals. In the case of a weekly schedule, users will be prompted to select the specific day for execution, while for a monthly schedule, they will be asked to specify the desired date for the operation.
After selecting the interval, inputting the hours and minutes, clicking the save button will store the chosen interval as a cron pattern in database, accompanied by a flag message confirming the successful save with 'Cron pattern saved.'
After saving, if we click on Run Schedule, it will run the job at the scheduled interval.
4. Process Steps
Step 1: Authorization
Our user-friendly Authorization page simplifies the authentication process. Users are prompted to input their Email and API token for secure access.
Validation Feature |
|
---|---|
Placeholders | Enter your Email, and API token in the designated placeholders. |
Validation Button | Click the "Validate" button to authenticate the entered credentials. |
Step 2: User Sync Tab
The User Sync page contains two dropdowns for selecting groups, organizations and a button to add them to the table.
User Sync Features: |
|
---|---|
Dropdowns(Single Select) | Displaying group names, and organization for selection |
Add Button | Clicking the "Add" button will append the group and organization names to the table, accompanied by options for deletion and synchronization operations. |
Table | Table will show the list of groups and organizations added with delete and Sync operational buttons |
The "Delete" button removes a specific mapping, while clicking the "Sync" button synchronizes that specific mapping between one group and one organization.
Step 3: Scheduling Tab
User Synchronization Automation Design! This innovative solution allows you to effortlessly schedule and manage user synchronization with precision.
After selecting the interval and inputting the hours and minutes, clicking the save button will store the chosen interval as a cron-pattern in database, accompanied by a flag message confirming the successful save with 'Cron pattern saved.'
After saving, if we click on Run Schedule, it will run the job at the scheduled interval of all the mappings that have been added in the second tab.
In the scheduling tab, a table will show data like scheduled intervals, time stamps, and remarks (it will show the latest 10 records that users will schedule).
5. Flow Diagram
6. Feature Comparisons with existing marketplace apps
The below table shows a feature comparison between our app and the current apps in marketplace
Feature | User Synchronization (Empyra) | SCIM Provisioning, User Sync & Group Sync for Jira | Group & Organization Sync | |
---|---|---|---|---|
1 | Marketplace app link |
| https://marketplace.atlassian.com/apps/1232869/group-organization-sync?tab=overview&hosting=cloud | |
2 | Feature Detail |
| Jira User Sync works manually or at regular intervals |
|