Social Performance Management Framework
Target release | 15.06 |
|---|---|
Epic |
|
Document status | DRAFT |
Document owner | Markus Geiss (Deactivated) |
Designer | Markus Geiss (Deactivated) |
Developers | Markus Geiss (Deactivated) |
QA |
Overview
To allow the administration and usage of surveys to measure the social performance and impact we need to provide a framework to cover various Social Performance Management tools, e.g. PPI, MPAT or USAID-PATs.
Background and strategic fit
Resources used for research:
Progress Out of Poverty Index (PPI)
Multidimensional Poverty Assessment Tool (MPAT)
USAID Poverty Assessment Tool (USAID-PAT)
Social Performance Task Force (SPTF)
Requirements/User Stories
# | Title | User Story | Importance | Notes |
|---|---|---|---|---|
| Create new survey | As an administrator I want to create a new survey to collect SPM data. | Must Have |
|
| Add general information | As an administrator I want to add additional fields to a survey to collect general information. | Must Have |
|
| Add questions to a survey | As an administrator I want to add questions with their related answers and options to a survey | Must Have |
|
| Add look-up tables | As an administrator I want to add look-up tables to a survey to map scores to well known KPIs. | Must Have |
|
| Assign default look-up table | As an administrator I want to assign a look-up table as default to allow KPI viewing an client info. | Must Have |
|
| Enable survey | As an administrator I want to enable a survey per tenant to allow collecting of SPM data. | Must Have |
|
| Enforce survey | As an administrator I want to enforce the collection of SPM data to report data. | Must Have |
|
Fill survey | As a staff I want to collect SPM data provided by a survey to track my clients. | Must Have |
| |
View survey | As a staff I want to view collected SPM data to benchmark my clients. | Must Have |
| |
Report targets | As a manager I want to compare SPM data with targets to track my impact | Must Have |
|
Business Rules
Attributes
Attribute | Description | Notes |
|---|---|---|
Survey | A Survey is a collection of general information, and specific questions. |
|
Question | A Question has answers and options assigned and is used as the basis of all |
|
Scorecard | Holds the results of a questionnaire |
|
Look-up Tables | Define KPIs for certain ranges retrieved through the scorecard |
|
Domain Model for Survey
Domain Model for Questions
Domain Model for Scorcards
Domain Model for Look-up Tables
Security and Permissions
Administration
read, write and delete permissions for surveys and their related entities
Configuration
read, write and delete permissions to enable surveys per tenant
Survey
read and write permissions for surveys to collect data
Mifos Functionality Enhancements
New Screens
New area Surveys
List all available surveys
allow enabling survey for tenant
View details of survey
Action to create new surveys
Wizard to create new surveys
Steps:
General information, e.g. key and name
Add headers
Add components
Allow component nesting
Add questions
Add Answers
Add Options
Add look-up tables
New area reports
List all available reports
View/ execute a report
Action to create new reports based on a superset of selections
Wizard to fill survey
Steps:
Collect general information
Collect questions per component or in a single step
Changes to Existing Screens
Admin > System
Add new entry 'Manage Surveys'
Client view
Add selected KPI to client info
Reports
Add new entry 'Surveys'
Changes/Enhancements to Batch Jobs
none
Changes/Enhancements to Accounting Entries
none
User interaction and design
Exception Handling
Reporting
History of SPM data per client
Benchmark client vs clients
Benchmark office vs offices
APIs
HTTP Method | Resource | Query Parameter | Request Body | Response Body | Error codes |
|---|---|---|---|---|---|
POST | /surveys | n/a | Survey | surveyId | 400, 404, 500 |
GET | /surveys | key, name, countryCode | n/a | List<Survey> | 400, 500 |
GET | /surveys/{id} | n/a | n/a | Survey | 400, 404, 500 |
POST | /surveys/{id}/lookUpTables | n/a | LookUpTable | surveyId, lookUpTableId | 400, 404, 500 |
GET | /surveys/{id}/lookUpTables | key | n/a | List<LookUpTable> | 400, 500 |
GET | /surveys/{id}/lookUpTables/{id} | n/a | n/a | LookUpTable | 400, 404, 500 |
POST | /surveys/{id}/scorecards | n/a | Scorecard | surveyId, scorecardId | 400, 404, 500 |
GET | /surveys/{id}/scorecards | clientId, createdBy, createdOn | n/a | List<Scorecard> | 400, 500 |
GET | /surveys/{id}/scorecards/{id} | n/a | n/a | Scorecard | 400, 500 |
Notes
none
Questions
Below is a list of questions to be addressed as a result of this requirements document:
Question | Outcome |
|---|---|
Out of Scope
Upload of Excel or ODF spreadsheets