akvo / akvo-flow

A data collection and monitoring tool that works anywhere.
http://akvo.org/products/akvoflow/
GNU Affero General Public License v3.0
65 stars 31 forks source link

Implement data approval workflow management (MVP) (estimated: 40) #1659

Closed janagombitova closed 7 years ago

janagombitova commented 8 years ago

For all the background information on this feature and the decisions around the MVP please check: akvo/akvo-product-design#82

Under the new Workflow tab implement the ability to create, edit, save, delete and view a workflow (as proposed in the mockups) reusing the way we create option questions and/or cascade questions.

Details:

The workflow feature will live under the main Data tab in a subtab = Workflow located next to the Cascade resources. This is the place where the user will create, edit, view and delete workflows that can be used throughout surveys. A Manage workflow permission will be attached to this tab.

Situation A: No existing workflows yet

Situation B: Already a few existing workflows:

Creating, Editing and Viewing a workflow:

muloem commented 8 years ago

Notes on things to complete

We won't be adding these in for this iteration

janagombitova commented 8 years ago

Test plan

  1. Go to Data tab in dashboard - check new subtab is shown - Data approval
  2. Click on Data approval subtab - check that you see a list of existing workflows (or an empty list if none are created yet) with 3 columns (Name, Type, two action links - edit and delete) and that you have the button Add approval group available
  3. Click on Add approval group and the editing window should open with Name, Approval type, Steps, + Add step, cancel and save
  4. Add name "cancel test" and hit Cancel > you are brought back to the list of existing approval groups and the Cancel test approval group does NOT exist
  5. Create a new approval group - Name: release version-ordered; type: ordered with 5 steps and save > you are brought back to the list and the new group is shown in the list in alphabetical order
  6. Click on edit of the new group and check all settings are still the same, all 5 steps are shown and in the proper order; click cancel that will bring you back to the list
  7. Create a new group - Name: release version-unordered; type: unordered with 3 steps and save. The 1st step you create should indicate that it is the 'default step'
  8. Repeat step 6 for the unordered group
  9. Create a third new approval group - Name: to delete, type - ordered with 2 steps > save
  10. In the list click on delete for the 'to delete' group > group is deleted and not in the list anymore
  11. refresh Flow dashboard and cross check that the deleted group is still deleted, that the ordered and unordered groups have all settings still properly set
  12. Repeat all steps using different browsers
janagombitova commented 8 years ago

Comments from testing

@muloem before we take any action we need to decide which of these issues need to happen now and which can be tackled in the following sprint. I have created smaller issues for some of the notes already to break down the work into smaller pieces

Order of created steps changes

Steps get duplicated

Missing default step for unordered data approval groups

Based on Kiarii's mock ups and the way the steps eventually translate to statuses on data points, the unordered approval group must have a default step. This step is the 1st step in the list and once a new point is submitted the point receives this status.

Vocabulary change

Minor UX improvements

janagombitova commented 8 years ago

2nd round of testing

Old issues (from 1st round)

To sum up, all are done and what is done can wait for later

New comments

Saving new group

creating new group

Editing an existing group

UX for cannot save info message

janagombitova commented 8 years ago

@muloem two things that are broken and we need to get solved for this 1st release:

Both are not working well anymore - see above comment that explain what I did. Besides that all other parts work fine. Once these two are done we can consider the issue solved for this implementation and can tackle the other details in the later sprint.

janagombitova commented 8 years ago

👍 passes test plan beautifully

janagombitova commented 8 years ago

Test plan

For UAT testing follow test plan above https://github.com/akvo/akvo-flow/issues/1659#issuecomment-249524341

janagombitova commented 7 years ago

Notes from testing

👍 passes test plan