Views
Surveys
Last updated: 08 Jun 2007 -- emilytucker
Current Status
See test server for what is implemented so far.
UI screens have been completed for the surveys module. They can be found here. Download the most recently dated folder: https://mifos.dev.java.net/source/browse/mifos/documents/ui-workspace/
To view the screens, download and extract the zip folder, click on login.htm, and if your browser gives you a warning select "Accept blocked content". Click "Login" button, click on "admin" tab, and see the surveys links on the page. This will walk you through the "create a survey" process.
An older functional spec is also available in the issue tracker: Issue #5. Download the word document attached in the issue.
1. Surveys
1.1. Description
Surveys are instruments for collecting information about a user or group. These are used for things like, Loan Application, Poverty Assessment, Impact Measurement, Exit Survey, Collateral Survey, etc. Mifos system will allow users to define questions and surveys. A common "Question Bank" will be created. Questions can be chosen from this bank and a survey can be defined. Surveys can be attached to clients, groups, centers, loan accounts, and savings accounts. The same survey can be attached multiple times to the same entity to track historical changes over time.
1.2. Defining Questions
All questions are stored in a "Question Bank" and they can be included in one or more surveys. Once defined, Questions cannot be deleted, as they can be part of one or more surveys, but the status of the question can be changed to active or inactive. This question bank will be stored at the HO. AO's and BO's will not be able to define new questions.
| S No. | Attribute Name | Data Type | Range | Description |
|---|---|---|---|---|
| Short Name | Text (50) | 50 characters | Short name of the question ie 'Annual Family Income' instead of 'what is your annual family income'. Duplicates will be checked using this field. This field will also preface the full question whenever Questions are displayed | |
| Question | Text (4000) | 4000 characters | Question (as it will appear in the surveys) will be added here. Number of characters for the question '/' can be max 4000 but only 500 characters will be displayed in the question list. | |
| Answer Type and Answers | See 3a - 3e | |||
| 3a. | Single Select | Number of options; Text fields = number of options | Number of options can be maximum 20. These answers will have radio buttons. | |
| 3b. | Number | Minimum Value allowed; Maximum Value allowed | Specifies the range of allowable answers that a question can have. | |
| 3c. | Date | None | None | Definition of date will be inherited from MFI. If marked mandatory; at least option must be selected. |
| 3d. | Multi Select | Number of options; Text fields = number of options | Number of options can be maximum 20. These answers will have check boxes. | |
| 3e. | Free Text | Number of characters (1-4000 characters) | User can define what size text field s/he wants to allow so some response fields can be a single line, others a large box. | |
| State | Active;Inactive | Questions can be marked as inactive if they are not part of any survey. Inactive questions will not be visible in the Questions list displayed when creating a survey; however they will still be displayed in the Question Bank. |
Check for Duplicate questions Before a question is saved it will be validated for duplication and previewed. Duplicate will be matched against the "Short Name" field.
1.2.1 User flow - Defining questions
- User navigates to Admin page and clicks on "Defines questions" under the Manage Surveys section.
- System displays page with following fields:
- Question
- Answer Type
- Answer - User types an answer into this field and clicks on the Add>> button. The answer gets added for this question and is shown below. User follows the same process for adding more answer choices. Note: The Answer text box will be present only if either Single Select or Multi Select has been select in the Answer type drop down field.
- User then clicks on the "Add Question" button on which the entered question gets displayed as a preview below.
- User clicks "Submit" and the question is added to the Question bank and the user is returned back to the Admin page.
- OOS:
- Validation of answers entered.
- Questions
- Need for an Edit and Delete question hyperlink for each of the questions in the preview table below the Add Questions button?
There is no need of Edit and Delete link against each question. The pipeline followed is- Click on view question link on the admin page to view the list of questions, click on each individual question to view its details. On the details page an edit link present, from where the questions can be edited. Questions are not being deleted, questions status can be changed to active or inactive.
- Confirmation page?
On adding a question, the preview of that question is displayed below on the same page. So there is no need of an extra preview page.
1.2.2 User flow - View Question bank
- User navigates to Admin page and clicks on "View Question Bank" under the Manage Surveys section.
- System displays a page with all the questions in the Question Bank.
- Questions
Why is there no link on the View Questions page for Defining new questions? This breaks the usual UI rule of having define links in all other View product pages.
Link is present on view questions page
Also link for hiding and editing questions need to be present against each question?
This link is present on the question details page
1.3 Editing Questions
- Once questions have been saved in the Question Bank, the user must be able to edit the same.
- When a question is being edited, the edited question is saved.
The functionality to edit questions must be present both while Defining questions and also while viewing the question bank.
1.4 Hiding/Inactivating Questions
- Once questions have been saved in the Question Bank, the user must be able hide/inactivate the same.
- A question can be made inactivated by changing its status to inactive in while editing it.
- Once a question becomes Inactive, it will not be shown up in the question select box while defining a survey.
1.5. Defining Surveys
| S No. | Attribute Name | Data Type | Range | Description |
|---|---|---|---|---|
| Survey Name | Duplicate survey names will be allowed | |||
| Survey Type | Client; Group; Center; Loan; Savings; All | Specifies who the survey applies to... Client/Group/Center together are grouped as customers when browsing surveys; Loan/Savings are grouped as Accounts | ||
| Creation Date | ||||
| Add Questions to Survey | Search Results or All Questions | Questions will be added to the survey in the order of selection. Reordering of questions in survey will not be allowed | ||
| Mandatory | Specify which questions have to be marked as Mandatory in the survey. | |||
| State | Active;Inactive | Surveys can be made inactive if they are not attached to any record |
- Survey will be "Previewed" before it is saved. If required, the survey can be edited after previewing and before saving.
- Reordering of questions in survey will not be supported
1.5.1 User flow - Defining Surveys
- User navigates to Admin page and clicks on "Define new survey" under the Manage Surveys section.
- System displays page with following fields:
- Survey name
- Survey applies to
- Select questions and a list box containing all the questions in the question bank are listed inside it.
- User can select question(s) from the list and click on the Add>> button next to the list box.
- All the selected question(s) are displayed below along with a "Delete" button next to each question.
- Clicking on the "Delete" button will remove the question from the user-selected questions. Note: This is does not delete the question from the question bank.
- User then clicks on the "Preview" button, which displays a page with all the user-entered data.
- The user is also given the option of editing the entered information by the "Edit Survey Information:" button.
- User clicks on the "Submit" button and the survey becomes active.
- A confirmation page is displayed with "View survey details now" link and "Define a new survey" link.
- Questions
- While defining a new survey, in the "Survey applies to" field probably we should just have Customers, Accounts and All instead of the specifying everything in the drop down list.
1.6 Viewing Surveys
1.6.1 User Flow - Viewing surveys
- User navigates to Admin page and clicks on "View surveys" under Manage Surveys.
- System displays a page with all the created surveys on the system, along with their status.
- Clicking on a survey takes the user to the Survey details page.
- The Survey details page displays the details of the survey. It also contains a link called "Printer Version", clicking on which brings up a printer friendly version of the survey.
- Questions
- How is the status of a survey changed?
On the Edit surveys page, a user can change the status of survey (active/inactive).
- Don't we need to have a "Edit survey information" link in the survey details page using which the user can change the status of the survey?
When a user clicks on a particular survey, user can view that particular survey details page.The link to edit the survey is present on the survey details page.
1.7. Managing surveys
- Surveys cannot be edited once created. If a survey is modified and saved, it will be saved as v2 with the same name i.e. if a survey name is "Poverty Assessment Survey", after modification in addition to the original survey, another survey called "Poverty Assessment Survey v2" will be saved. [NOTE: This functionality was not implement. See Issue #1602 .
- Surveys can be deleted only if they have not been attached to any record. But they can be "hidden" so that they are not attached to any new surveys.
- Multiple instances of the same survey at the same state are allowed.
1.8. Filling responses and attaching surveys to records
Active surveys can be attached to client/group/center records or loan/insurance/savings accounts in any state. Process flow for attaching surveys:
- Client/Group/Center will be selected or Loan/Savings/Insurance account will be selected.
- Depending on the above selection, available surveys will be displayed.
- One or more surveys can be attached to the selected record.
- After attaching, responses can be filled in the attached surveys.
1.8.1 Filling Responses
Following information is required when a survey is filled:
- Date when survey was conducted
- Officer ID - Officer who conducted the survey
- Date when survey was filled - system can detect and store the date when the survey responses were saved.
- Responses to survey questions.
1.8.2 Saving a survey with responses
- Error checking on answers.
- Validation that all required questions are answered.
- Error response highlights what questions have errors on survey, but text is non-customizable.
- A survey can be detached/deleted from a record.
- A survey has to be "Previewed" before it can be saved.
1.8.3 Reporting requirements from surveys
- Reporting on Surveys: Requirement - to generate reports across similar surveys. For details see Reports
1.9. Open issues
- TBD: Is pagination of surveys required?
1.10. Out Of Scope for v1
- Matrix questions.
- No conditional questions.
- Multilingual surveys.
- Multilingual surveys. Only the MFI language will be supported and all the reports will be generated assuming that the language is the same as MFI language.
- Branching questions.
- HTML tags will not be supported.
- The different versions of the surveys will not be linked.
- NTH: formatting of surveys.
- NTH- reordering of the questions in the question bank.
- "Modified by" and "Modified on" details will not be tracked by the Mifos system.
- If a survey is partially filled, the user can click the "Save for Later" button.