Product Requirements Document

Introduction

Sandbox is a hosted platform upon which partners can experience DIGIT without any environment setup costs. In tandem with “Workbench”, Sandbox facilitates configuration of various DIGIT-based products through an intuitive GUI. Sandbox is among the first initiatives to transition from program-led to product-led growth with regards to DIGIT. The overarching goal of Sandbox is to reduce friction experienced by partners as they try out and demo DIGIT-based products.

The Need

Market partners are forced to invest a lot of time and effort to learn how DIGIT works before they can utilize the platform. This necessitates continuous hand holding, meetings and demos from Egov’s end before the platform is used. Hence, market partners experience a long time to value, leading to drop offs even before DIGIT is deployed.

Additionally, market partners need to procure and set up the infrastructure needed to try out DIGIT. They bear the onus of understanding and configuring the Devops setup and the tech stack upon which DIGIT is built. The cost of trying out DIGIT-based products limits use case discovery by partners. As a result, the utilization of DIGIT by market partners is predominantly limited to large organizations who have a financial motive.

DIGIT’s growth vectors, focusing on replication at scale and co-creation, require a widespread trial and adoption of DIGIT by tech partners and governments. New use cases can only be discovered if partners are able to experiment on DIGIT without affecting current systems.

Hence, there is a need to make DIGIT and its products easier to try out and utilize for interested partners, where the developer involvement needed, setup costs and time to value is minimized.

Objectives

Sandbox adds value for both external DIGIT users as well as for Egov:

Sandbox benefits partners in the following ways:

  • Lower infrastructure and setup costs to try out DIGIT: Since Sandbox is hosted on the cloud, partners do not need to utilize their own resources while discovering DIGIT.

  • Ease of use : Partners need not know the intricacies of DIGIT’s architecture in order to configure and build products. An intuitive GUI minimizes the involvement of their development teams.

  • Faster Time to Value : Partners can demo DIGIT products to their clients faster, since the number of touchpoints required with Egov is greatly reduced.

  • Access to learning resources : DIGIT Academy along with extensive documentation of the platform enables partners to understand the basics of the platform with minimum pain points.

  • Enhanced use case discovery: Partners can experiment on Sandbox in isolation from their existing systems. This in turn will enable them to discover new use cases for DIGIT-based products.

Sandbox also has the potential to affect Egov and DIGIT in the following ways:

  • Lower partner drop-off rates : As Sandbox directly addresses many of the pain points faced by partners while exploring DIGIT, we can expect to onboard more partners who utilize the platform.

  • Possible transition to Saas : Sandbox is the first step in the journey to make DIGIT and related products Saas offerings. With Sandbox, the expectation is that DIGIT would be hosted in partner’s datacenters. However, the opportunity arises for Egov to develop the core competencies needed to make DIGIT a fully fledged Saas offering later down the line.

  • Higher DIGIT Adoption : As the friction partners experience in discovering DIGIT is reduced, it is expected that the platform would see higher adoption numbers.

  • Towards Product-Led Growth: Since partners now have a much smoother onboarding process through Sandbox, the involvement of Egov’s program teams will be much lower in partner acquisition.

Target Persona

Version 1 of Sandbox will target only business users.

Business users are defined as those looking to utilize DIGIT for monetization.

Categories of business users include:

  • Tech implementation Partners, System Integrators - Business Development Managers, Program Managers and technical personnel from companies like Deloitte and PWC, who are mainly concerned with speed to implement solutions on DIGIT, cost of utilizing DIGIT and support offered. These companies customize DIGIT products for government requirements.

  • Government Development Partners - Organizations who are contracted by governments to solve problems. They are concerned with brand equity and reputation as well as time taken to achieve targets and milestones. Eg: Selco.

Use Cases

  • Demo to clients - Business users can show products’ features and sources of value to prospective clients

  • Use case discovery - By experimenting on DIGIT without affecting existing systems, business users can discover use cases quickly

  • Customization - DIGIT products can be customized to client requirements without developer involvement

  • Exploration - Business users can tryout DIGIT without needing to setup their own infra and having to understand the internals of the platform

  • Learning - Users can learn about the capabilities of DIGIT through DIGIT Academy and extensive documentation

RoadMap

Experience V1 (Explore)
Experience V2 (Build)
Experience V3 (Make Live)

User

Business User

Developer

Devops

Capability

Parner ability to explore DIGIT products including data setup and configurations. (With guided onboarding workflows, enabling self service)

Developer ability to modify existing services and/or build new services on DIGIT

Ability to configure and setup DIGIT Cloud.

Value Proposition

Partner to setup and showcase DIGIT to their (Govt) Client quickly

Partner to built new services on DIGIT quickly

Partner to build and take DIGIT live quickly

Sandbox V1

Signup

Email Verification

Profile Management

User Management

Enhancements

Home V1

Home V2

Guide Panel

Demo Environment

Account with Default Demo data

WorkBench

UX Revamp

Localisation Correction

Product - MDMS mapping

Default Tenant - Master Data configurations

Configurations

Workflow (Table)

Workflow (builder UI)

Localisation (WorkBench)

Localisation (overlay UI)

Default Product Configurations

SMS (templates)

Boundary Configurations

Product Specific Configurations

Applications

Complaints

Property Tax

FSM

Employee Management

Licenses

Revenue and Expense Management

Campaigns (Admin Console, Microplanning, HCM App, Dashboard)

Challan

Works Management

BPA

Academy

Link to Academy

Devops

Guided devops workflow

DIGIT Developer Console

Access for Development

Access to Deploy

Developer Studio

Plugin for developers (Like Visual Studio)

Dashboard for operations and Maintenance

DIGIT Cloud

DIGIT Infra-Suite

Billing and Subscription

Data Security

Policy

Data Management

Import data from other Applications

Features V1

*Please note that User Management has been deprioritized for Sandbox V1

Sandbox Account Creation

Need: Sandbox Account Creation for a partner, government organization or Individual.

Context: Users exploring DIGIT from marketing channels etc will land on the DIGIT Sandbox Web Page. Clicking on “Access Sandbox” will bring the user to the Signup page of Sandbox. The below stories explain the various use cases of Signup of sandbox users.

Acceptance Criteria

  1. First-time user should be able to successfully create a new sandbox account for his/her organization/entity.

  2. The first-time user should be able to verify email

  3. The first-time user should be able to login

  4. Returning user should be able to login

User Sign Up

Context: Sign-up flow for first-time Sandbox users

Sign-up flow where OTP based login is involved

  1. The user will land on a Page with the URL: https://sandbox.digit.org

  2. The user will give the following details. On hovering over the information icon "This will be used as your account name" appears.

Attribute
Madatory (Yes/No)
Validations
Examples/Comments

Email

Yes

Should be valid email.

@gmail.com/ @company.com

Organization/Account Name

Yes

Minimum of 5 characters. Non Empty

Terms and Conditions Check Box

Yes

-

-

  1. After clicking the signup button, the user is directed to the below screen and prompted to enter OTP.

The email the user will receive is as below:

Validation: When pressing the confirm button, the match between the sent OTP and the entered OTP is checked. If the OTP is entered incorrectly, present the error message “The entered OTP is incorrect. Please Retry”

  1. Upon entering the OTP, the user’s sign-up flow is complete and is directed to the signup success screen. The user is prompted to copy their unique Sandbox URL for future access.

  1. On pressing continue, the signup is completed and the user is directed to the home page

  2. <5 minutes after signup is complete, the user will receive an email with the URL to be used for future sign-ins to Sandbox:

User Sign In

Context: Previously signed-up user, signing in for Sandbox

Description:

  1. The user arrives at the sign-in page through the URL received prior.(https://sandbox.digit.org/<account_code>/login)

  1. The user is prompted for an email address. Validation: The email address belongs to the Sandbox account

  2. When the user requests OTP, they are directed to the below OTP input page:

The user receives an email as below:

Validation: The match between the sent and entered OTP is checked. If OTP is wrong, the error message is displayed as below:

  1. Once the correct OTP is entered, the user is directed to the home page.

Home & Onboarding

Sandbox Home Screen

Context: After signing up for the sandbox, the user will land on the home screen. For a returning user, this will be the default landing page after signing in.

Users: First time user and returning user

Description:

  1. Sandbox Home will have the following components.

Component Label
Description

Tenant Management

Tenant Management helps to manage data and access controls across multiple hierarchies

Account Management

Add, delete and manage users/employees of your organization and assign various roles and permissions.

Applications

Access and explore DIGIT default applications. Setup and configure as per needs.

Data Management

Manage common data masters across multiple Tenants and applications

Client Interface

Access links, login credentials and download APKs for client interface

  1. Sandbox will have the following navigation menu:

Menu Item
Action

Search

Searches within the menu and Sub Menu

Home

Default Home screen of Sandbox

Tenant Management

Opens List of Tenants Page

Account management

Opens List of Users Page

Data Management

Opens Default landing page of MDMS

Applications

Opens all applications landing Page

Client Interface

Opens landing Page of client interface

Onboarding Stepper

Need: New users who have signed up for Sandbox require guidance on how to explore its features. The Onboarding Stepper provides users with a possible journey they can take to experience Sandbox’s key use cases.

Context: The Onboarding Stepper is designed at an account level. The stepper would be presented when the home screen is accessed for the first time by the user. On subsequent visits to the home screen, the Onboarding Stepper can be expanded using the arrow button. The Stepper ceases to be visible when all the steps are completed.

Description:

  1. The user lands on the home screen.

    • If this is the first time the user lands on the screen, the expanded stepper is displayed

    • If the user is returning to the home screen, the stepper is minimized but can be expanded by clicking “<”.

  2. The user clicks on the CTA button and is redirected to the corresponding page as described in the table below.

  3. Once the task(s) mentioned in the table below in a particular step is completed, the corresponding CTA button is disabled, and a success message is shown as in the below table.

  1. The user can return to the home screen and expand the stepper for next steps (if any)

  2. Once all steps are completed, the stepper is no longer shown to the user.

Step
Prompt/Description
CTA message & redirection
Actions to complete step
Success message

Explore your Applications

Explore default DIGIT applications, envision use cases and make your applications live after configuration.

Tracker : x/y applications set up

“Setup Application” —>

The user is directed to ‘Applications” landing page

All applications have been explored, configured and made live.

Setup Complete

Configure Master Data

Use our default configurations for fast tryouts or precisely customize applications yourself based on requirements.

Tracker : x/y masters configured

“Configure Masters” —> The user is directed to “Data Management Landing Page”

The master data for all available applications has been configured.

Configuration Complete

Create your Client Interface

You and your clients can now experience DIGIT products first-hand through both browser and mobile

Tracker : None

“Setup Interface” —> The user is redirected to ‘Client Interface” page

A client interface is setup

Setup Complete

Context:

A Sandbox user by default is given a root-tenant on the creation of an account. Tenant Management helps in creating and managing sub tenants (if-any) under this root tenant.

Since most services and data are linked to tenants in the DIGIT platform, it is essential to create the tenants (sub tenants) and specify which applications are using what Masters under which tenant.

In case any Master is not defined at the sub tenant level, as a fall back mechanism it should take default master configurations from the root tenant.

Tenant Management Intro Page (First-Time User)

Context: Users coming for the first time need to know what a tenant is and everything about it. Hence a textual/Visual description + a video. This same will also show up again in a full-screen slider popup when the user clicks on the help section.

Description:

  1. First-time users will see the screen below.

  2. The same content will be displayed for the second time onwards on click of the help button as long as the user is in the tenant management and related flows.

  3. Once the user clicks on setup now, the user will get into the default screen of tenant management where she/he lands a second time onwards (Tenant and Sub tenant list)

  4. Video can play inline. Default options such as volume change, full screen, and change resolution should be present.

Next Screen:

Create Tenant (Sub-Tenants)

Context: Users can create sub-tenants using this flow. For simple analogy and example in pb.amritsar, pb is a root tenant and Amritsar is a subtenant.

Description:

Description
Screen
  1. The user will not see his tenant - hence there will be an empty table by default.

  1. The table has the following columns

    • Tenant Name

    • Code

    • Description

    • Actions

  1. An empty screen will show a link to set up sub-tenants

  1. A search bar to search tenants by name is also present.

  1. If any sub-tenants are present they will show up in the tenants table in alphabetical order.

  1. Clicking on create a new tenant will open a popup asking for following details

    • Tenant Name (Alphanumeric upto <100> Characters)

    • Description (Alphanumeric + Special char allowed. Upto <200> Characters)

  2. Users can create new tenant or cancel.

  3. User can also view sample tenants list by clicking on link specified.

  1. <10> Sample tenants will be shown to user by default.

  2. User can choose to use them as tenants or go back and add own tenants.

  1. The default tenants will be created and added to the root tenant.

  2. User can modify if needed by clicking on the modify icon against the sub tenant.

Note:

  1. Each Valid and Active tenant will appear as a dropdown in the client interface for this organization/user.

Modify Tenant (Sub-Tenants)

Need: Users can change name, code, status or subtenants.

Description.

  1. Clicking on the Modify icon against a tenant will open a popup to modify the tenant

  2. Users can modify the following

  3. Name

  4. Description

  5. Status (Active/Inactive)

    • Active - Allow Data Management, Show in the client interface login dropdown.

    • Inactive tenants - Don't show up anywhere.

  6. A subtenant can also be deleted (archived) all data stored within that subtenant won't be retrievable by the user from the UI.

  7. Root tenant following can be modified

    • Name- Yes

    • Code - No (system generated)

    • Description - Yes

    • Status - No (Since making this inactive will make all sub-tenants inactive and the user won't be able to do anything in the sandbox and client interface)

  8. All modifications made will be applied instantly.

Account Management

Context: Module used to manage sandbox account. Includes

  1. Personal Profile Management

  2. User Management for Sandbox

  3. Organisation Details

Note: This only supports adding/modifying the details/users of the organization who signed up for sandbox and not every employee/ individual/ citizen of the system.

Personal Profile

Context: Logged-in user to view/modify their personal and account details.

Description:

Description
Screenshot
  1. User clicking on account management on the home screen or on the left menu will land into the personal details page

  2. The personal details page will already contain the name and mobile number of the user collected during the sign up

  3. Clicking on modify fields will make the page editable

  4. User can modify the following fields

    1. Name

    2. Email

    3. mobile number

    4. Role/ Designation

    5. Photo

  5. User can modify any of these and click save to make changes.

Save changes screen

  1. Clicking on change password will open the popup asking user for

    1. Current password

    2. New password

    3. And confirm new password

  2. Once confirming new password the password change success toast message will show on the user screen and the popup is closed

Password Change Screen

Organization Profile

Context:

Users can view/modify his/her organisation/sandbox account details.

Description:

  1. Users clicking on Organisation on the left menu will land on the Organisation details page

  2. The Organisation details page will already contain the name and Code collected during the signup

  3. Clicking on modify fields will make the page editable

  4. Users can modify the following fields mentioned in the table

  5. Users can modify any of these and click save to make changes.

Field
Data Type
Required (Y/N)
Comments

Organisation Name

Alphanumeric

Y

Max Char count 100

Organisation Code

Alphanumeric

Y

Max Char count 50.

Should not be same as any other tenant in the system

Contact Person

Alphanumeric

N

Email

Alphanumeric with special chars

N

Basic email Validation

Mobile Number

Numeric

N

Add country dropdown.

Phone number validation

Logo

Image Upload

Y

Default to DIGIT Logo if user doesnt provide his/her logo

Validations of Image as per DIGIT Login screen UI should be present. Size, Dimensions.

Logo Validations screen

Save Changes Screen

Manage Sandbox Users

Need: Helps the main user add/remove his team members to the sandbox account so they can help set up and manage applications.

Description:

Default Screen

  1. When the user clicks on “Users” in the menu section this screen appears.

  2. By default there will be a single user (self) who is the owner of this account.

  3. Edit and Delete actions will be disabled when there is a single user.

Create new user

  1. Clicking on add new users will open a popup to add new users

  2. To invite new users following details are required

    • Name (60 char alphanumeric)

    • Email (basic email validation)

    • Role assigned. (Manager, Viewer)

  3. Clicking on submit will send an invitation email

List of users

  1. Show the list of users in the table with the following columns -

    • User Name

    • Email ID

    • Role

    • Actions

  2. Edit

  3. Show max 10 users on this page and give pagination.

  4. There is also a search field that can fuzzy search users by name.

Modify user

  1. Same as user invite popup but user will also be able to mark someone as Active/Inactive

  2. Fields that are editable are

    1. Name

    2. Email

    3. Role

    4. Status - Active/Inactive

Invitation Email

Content

Dear <username>,

<Invitee> has invited you to DIGIT Sandbox Application. Please use the following link to join

<Link>

Best

Team DIGIT

Onboarding after invitation

  1. Clicking on the link in the invite user will be routed to a password setup screen where he/she can set up password for the account

  2. Once done user will land into the Home screen with the default experience of the first time user.

Sandbox User Roles

Role
Role Code
Description

Owner

Sandbox_Admin

The user who created this sandbox account.

He/she can make someone else the owner for this sandbox account and assume Manager role by default.

Owner has all view, edit, delete actions within sandbox and client portal.

Manager

Sandbox_Manager

Manager can

  1. Manage data.

  2. Manage Tenants

  3. Manage new applications

  4. Manage other users as well (Managers and viewers)

(There is not much difference between owner and manager in V1. Billing will be the difference in next version between these roles.)

Viewer

Sandbox_Viewer

Viewer only can search and view all options. Wont be able to add/modify any data.

Can visit client portal

Applications Management

Context:

Users will select applications that he/she wants to explore/try with.

Each DIGIT application has to be rolled out into the sandbox after proper onboarding, master data cleanup, and sample data addition is done.

Applications Landing Page and Workflow

Need: Users with access to Manage Applications can access application management card on home screen as well as on left menu.

Description:

  1. Applications on DIGIT Sandbox will have to be rolled out sequentially after proper onboarding screens, QA, Master Data Management is set up.

  2. For V1, we shall have Complaints Management and Campaigns Management as 2 applications on DIGIT Sandbox.

  3. All applications will have a similar flow in the application management section.

  4. Application cards will have a CTA - Either “Setup Now” or “View” depending on whether the masters have been configured or not.

State
Message on Application Card
CTA on Application Card

Masters not fully configured for the application

“App not setup”

“Finish Setup”

Masters fully configured

“Setup Complete”

“View”

  1. For a first-time user, clicking on the CTA will open an Application Information page containing an introduction to the application.

    • The user will be directed to the Application Setup page for subsequent visits.

    • The information page content can be viewed through the help button for return users.

  1. Clicking on Setup Now (CTA) will take the user to the Applications Setup Page where specific details required to set up the application are shown.

The Application setup page will contain a table of masters with the below fields:

  • Name - Name of the master

  • Type - Specific Master, Common Master or Configuration

  • Status - Not Done, Completed, Failed, In Progress

  • Actions - Only edit possible

The Application Setup page will have 2 CTAs as described below:

Scenario
Primary CTA (Text color white and background orange)
Secondary CTA (Text color orange and background white)

All masters for the application not setup

Setup Masters

Activate (Greyed out and not clickable)

All masters have been successfully configured but application has not been made live by the user

View Client Interface

Activate (clickable)

The application is currently live

View Client Interface

Disable

Information Icon: On hovering/clicking it, the message “Click Here to activate/disable applications once all masters are configured successfully. Once an application is activated, it can be accessed through the client interface”.

  1. Clicking on Setup Masters (CTA) will allow users either to manually configure each master one by one through the Workbench UI or to configure all masters with default data automatically. The user story for automatic configuration is in SN-58.

  2. If all the required masters/configurations are successfully setup, the user will see the “Activate” and “View Client Interface” CTAs on the Applications Setup Page.

    • On clicking the “Activate” CTA, the application is live and can be accessed through the client portal

    • On clicking the “View Client Interface” CTA, the user is directed to the Client Interface Details page as in SN-20.

  3. Any Active application can be made inactive by visiting the specific applications landing page and choosing “Disable”.

Master Data Management

Context:

  1. Users after selecting the applications he/she want to explore will land in the master data management section.

  2. Users who come directly for Master Data Management will be asked to choose applications first, and then come to set up Master Data.

  3. Each Application has a bunch of Master data and configurations to be set up. Only after all masters are set up, the application can be made live.

Needs:

  1. Master Data to Application Mapping

  2. Master Data cleanup - Localisations

  3. Master Data UI Configurations - Which masters to show on UI and which to hide.

  4. Default Data for all masters

  5. Master Data Hierarchies - Priority of showing in Sandbox

  6. Sample Data for all masters.

Data Management

Context: For each application that is enabled on the sandbox, there need to be specific Data masters that need to be enabled, filled and set up before the application can be made active. Below are list of activities. The attached Excel has details.

  1. Listing all Modules, Masters and Data attributes

  2. Master Data to Application Mapping

  3. Master Data cleanup - Localisations

  4. Master Data UI Configurations - Which masters to show on UI and which to hide.

  5. Default Data for all masters

  6. Master Data Hierarchies - Priority of showing in Sandbox

  7. Sample data for all masters.

https://docs.google.com/spreadsheets/d/1DV8U6XLYkagjCNEFARNxQe1gFalL1PAiKwWR-j0PxZs/edit#gid=0

Below is the sample Workbench UI screen for configuring masters: Sample Workbench UI in Sandbox

Sample Data

The list of sample master data for PGR, HCM and common masters can be found here: https://docs.google.com/spreadsheets/d/19oTspmhyWXoE2Io6ykR0CWwv0WImPsNZXdh2SgesJrs/edit?usp=sharingin the “CombinedMasters” sheet.

Note that when masters are successfully configured using default data, we can show a toast message showing “Sample Data Successfully Added”.

Default Masters - Auto Configuration

Context: In Sandbox, we propose users configure masters for the chosen application with a single click. The masters would be configured with default data.

Need: Configuration of masters one by one involves at least 20-30 clicks from the user for each application, even if default data is configured. This increases the time-to-trial of DIGIT products for the user, potentially resulting in drop-offs.

Description:

  1. The user lands on the “Application Setup” page of the selected product as shown below:

  1. On clicking “setup masters”, the user is prompted whether to auto-configure masters with default data as shown below. An alert is displayed “Please use default Data and Configurations for set up. You can come back and change anytime later”. Please note that previous configurations of masters used by this application will be overridden”.

  1. If the user selects “Use Default Masters”,

    • All masters for the application (including those already configured and common masters) will be overridden with default data.

    • The masters' status in the table will be updated dynamically as each master is configured.

Configuration Status in Master
Status in table

Configured successfully

Completed

Unsuccessful attempt made to configure

Failed

Configuration attempt not made yet

Not Done

Configuration currently ongoing

in Progress

Refer to the below image for an example of the master configuration status

  1. Once all the masters are successfully configured, the user can access the client interface by clicking the CTA as shown below.

Client Interface

Need: Using this section the user will be able to access the client’s interface.

Clients’s Interface

Need: Users after setting up the products, should be able to access the interface where set up is done to make real transactions.

Description:

Description
Screenshot
  1. A default landing page will be shown to the first time user. This will explain how to access the client interface and key features of it.

  2. User can click on ‘Set up now’ to create a client interface.

  3. A client interface can be created without having any applications or roles created. But such interface with the super user login will be empty.

  1. Once the client interface is set up, the following will be created for the user.

    • Default login URL

    • List of Login Tenants

  1. Along with the Web login, the user will also be shown the APKs of respective applications that the user has set up in the applications management flow.

  1. The APKs will be displayed in alphabetical order of the corresponding application name.

Assumptions

  • Users have a preliminary understanding of what DIGIT is and how it is used for improving public service delivery

  • Sandbox will mainly be used as a web-based application

  • The early adopters of Sandbox would be business users looking for a faster time to value DIGIT-based products

  • Sandbox will initially be designed for an English-speaking audience

Open Questions

  1. Do we need to show the Date/timestamp of tenant creation and who created it?

  2. How many tenants are to show for the default case?

  3. For how many days should the tenant/subtenants be kept active for the user/organization before automatically getting inactive?

Measurement Metrics

Over the next 2 quarters, we aim to track the following metrics to determine Sandbox’s impact:

#
Stages
Metrics
Strategy

1

TOFU

  1. Visitors on Landing Page

  2. Successful Signups

  1. Increase outreach

  2. Email Cadences to partners

  3. Outreach webinars

  4. One-one onboarding with DIGIT advocates for feedback

2

MOFU

  1. Services Setup

  2. Tenants/ Users Created

  3. Session Duration

  1. Retargeting emails

  2. Personalized Demos / Onboarding

3

BOFU

  1. Successful Demos Given

  1. Upsell to other DIGIT Products / Services

We would like to initially see the figures which are associated with the above metrics before determining their success values.

Go-to-Market Strategy

  1. One-one onboarding with Partner Webinars

  2. One-one onboarding and feedback meetings with selected partners

  3. Content & framework for Social Engagement

Last updated