egovernments / Digit-Core

DIGIT is an open source modular Micro-services multi-tenant platform for public service delivery.
https://core.digit.org
MIT License
16 stars 51 forks source link

Employee Performance Management #75

Open sathishp-eGov opened 1 year ago

sathishp-eGov commented 1 year ago

Overview

DIGIT is a service delivery platform that enables government employees to deliver services to citizens. DIGIT powers 1000+ urban local bodies and is being rolled out to 4300+ urban local bodies as part of National Urban Digital Mission. The objective of this project is to enhance DIGIT to enable data driven performance of government employees. The existing DIGIT platform already has the ability to manage employees, their roles ( system roles - Birth Certificate Creator, Birth Certificate Approver etc.) and their jurisdiction (e.g. Jalandhar, Punjab etc.). This project involves developing a Performance Management service which can be used to set goals (create/search/update/delete) for each employee and generate performance report for a given period from the system.

For each performance cycle, the system should generate the rating based on the service data, allow the employee to give rating and comment, and submit the performance appraisal to the manager. The workflow for performance appraisal should be configurable. Performance management dashboard should be provided to track the performance appraisal process. Appraiser should also be able to suggest training for the appraisee. List of training courses can be maintained in the system.

Features to be implemented -

  1. Performance management service: _create API.
  2. Performance management service: _search API.
  3. Performance management service: _update API.
  4. Performance management service: _delete API (soft delete).
  5. Integration of performance management service with DIGIT workflow service.
  6. Integration of performance management service with DIGIT persister and indexer services to persist performance related data in relational and analytical databases respectively.
  7. Configuring a dashboard on top of the data present in analytical database and creating queries to track the following performance metrics - a. Number of Services Processed by the Employee. b. Number of Services Processed Successful by the Employee. c. Number of Services Processed Successful within SLA and outside SLA by the Employee. d. Total Revenue Achieved by the Employee (if the service has revenue generation element). e. Average Feedback by Citizen for the Process in which the Employee was part of.

Learning path, project setup and development details -

  1. DIGIT Platform - Principles, Architecture, Technology, Specifications etc.
  2. DIGIT Developer's Guide - Local Setup, Project Setup, Integration with Core Services etc.
  3. API Do's and Don'ts

Acceptance Criteria -

  1. All APIs of Performance management service should be functional.
  2. The code should be modular with proper separation of concerns and compliant with the code quality we maintain in DIGIT.
  3. All queries to extract performance metrics should return correct data for the selected timeframe.
KeenWarrior commented 1 year ago

Hello @sathishp-eGov , Please ensure that the following fields are filled out

You can find here description of what needs to be added in corresponding fields.

Here are sample tickets for reference.

ankitvimal commented 1 year ago

Hello @sathishp-eGov , I would like to work on this issue. My skills are Java Core, DSA and Postgresql.