User management - Profile

User management - Profile

Target release

3.4

Epic

https://openlmis.atlassian.net/browse/OLMIS-4734

Document status

drafted

Priority

HIGH

eLMIS Status

Implemented

OpenLMIS Status

Partially Implemented

PATH 

@Amanda BenDor (Unlicensed)

OpenLMIS 

@Sam Im (Deactivated)

JSI 

@Ashraf Islam (Unlicensed)

Goals/Scope

Ability to allow the users to view/update their own profile

Status in eLMIS: Implemented.

Status in OpenLMIS: Partially Implemented

Priority: High priority for Tanzania, Zanzibar, Zambia

Background

User's email, address may change. The user may want to set some preferences 

Assumptions

User is registered with the database and have roles assigned 

User Stories

#

Title

User Story

Label

Importance

Notes

JIRA Tickets

#

Title

User Story

Label

Importance

Notes

JIRA Tickets

1

Users

As a user I would like to be able to view and edit my own profile

Users

Must have

See screenshot below

















Diagrams



View from eLMIS:

Here are screenshots from the current version of OpenLMIS (3.3 on UAT taken 5 Apr 2018)

Current Profile Screen (Clicking Logged in as administrator link in top right corner)

Administration>Users>Edit User Screen

Administraton>Users>Edit Role for User

Feature Scope:

  • User interface

    • Display more information on the page:

      • First Name

      • Last Name

      • Email Address

      • Home Health Facility

      • Read only table of current roles

        • Link to action in the event that current roles aren't appropriate

    • Add a Reset Password Button

      • Administrators should be able to toggle whether to display this button

  • Role Based Access Controls

  • Data model/microservice changes

    • ReferenceData

    • Auth

  • Audit Log implications (as we are working on the feature, each ticket should have audit logs for any edits)

  • Automated Messaging

    • Email verification (including business logic)





Requirement

User Story

Jira ticket

Requirement

User Story

Jira ticket



User profile page & editability, with audit logging

  • First Name

  • Last Name

  • Email Address (validate email address format is correct)

  • Home Health Facility

  • Job Title

  • Phone Number (validate phone number format?)



https://openlmis.atlassian.net/browse/OLMIS-4730



Password Reset by user

https://openlmis.atlassian.net/browse/OLMIS-4731



View user Roles tables (or Roles tabs)

Read-only





https://openlmis.atlassian.net/browse/OLMIS-4732

  • Suggestion: Show a table of all roles (Table includes Program, Facility, and Rights for each), then allow a user to filter based on Program and/or Facility

    • Should user be able to filter by facility name, district, region, etc?

    • Tabs (same as in 3.3) plus a filter?



Filter Roles by Program or Facility (filter by Program or Facility, Program and Facility) 

https://openlmis.atlassian.net/browse/OLMIS-4828

https://openlmis.atlassian.net/browse/OLMIS-4830

Removed OLMIS-4733 filter roles because it is not required for this feature. 



Email verification (including business logic)

https://openlmis.atlassian.net/browse/OLMIS-4833



Admin configures Password Reset button on user profile page





Allow a user to edit their own time zone (affects UI and reports)





Default preferences: Program, Supervised Facility

  • Option 1: Instead of navigation on each page within each component, there would be a navigation at the top of the page (by user name). Once a program and facility is selected, it is applied to all pages and components. User can still change the program or facility once they get to the page.

  • Option 2: There is a default navigation in the user profile. Once they select the default navigation it is used for all pages and components. User can still change the program or facility once they get to the page.

  • Option 3: There is a default navigation for each component that a user sets on their profile page: Requisitions, CCE, Stock Mgmt. Performance cannot be degraded. User can still change the program or facility once they get to the page. Explanation of which pages are impacted by default navigation. 





Whether the user receives notifications (this can be complex)



Dependencies

Description

Link

Description

Link

None at this time



Open Questions

Below is a list of questions to be addressed as a result of this requirements document:

Question

Outcome

Status

Question

Outcome

Status

1

@Ashraf, how much of the screen shot is in scope for this features? Currently we have the viewing of ones profile and could make fields editable. Do you know which fields have been the most useful to users? Or which get changed the most? Have there been issues with users typing in incorrect emails?





2

What are the implications on the database's Role Based Access Controls? Currently an administrator has access to edit this user information and I expect we would need to change who has edit permissions with row-level-detail.





3

Do we need the additional fields of job title and phone numbers?





4

What does the automated messaging feature mean? Email verification? @Ashraf





5

Should the admin be able to configure the Reset Password button for each user? Or is the configuration system wide? @Ashraf





6

Should a user be able to opt out of email notifications? What emails? Notifications to approve, or convert to order emails? @Ashraf





7







Notes from Gap Estimation Meeting 4/11/2018



  • We think we can group some of these profile & opting out

    • Profile:

      • User profile to show the roles the user has (same as on admin screen).

        • Immutable

      • User info

        • We'd allow the user to modify certain "rows" of the User info:  e.g. name, email, etc

    • Opt out

      • eLMIS allows admin to opt a user out of

      • 3 ways:

        • Individual user: no emails

        • In role

      • in v3 we recommend the user doing it on their profile with a checkbox to opt out of supervisory emails

      • Some future ideas:

        • Push more data to tools like rapid pro

        • Tag within roles

Out of Scope

  • Dashboard preferences are out of scope because we do not have dashboards in 3.3













OpenLMIS: the global initiative for powerful LMIS software