Giter VIP home page Giter VIP logo

forms-prototypes's Introduction

forms-prototypes's People

Contributors

c-harry avatar cadmiumcat avatar christophercameron-ixd avatar danielburnley avatar davidbiddle avatar deberny avatar dependabot[bot] avatar hannahkc avatar james-sheppard-gov-uk avatar lfdebrux avatar thomasiles avatar timpaul avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

forms-prototypes's Issues

Align Confirmation page with the other journey pages

This page needs updating to align with the rest of the journey.

Page title (that appears in the browser tab):

  • Update to the correct page name, "Edit confirmation - GOV.UK Forms" (This should reflect the Page title given by user if changed)

Screenshot 2022-05-11 at 13 43 06

Main changes to editing area of the page:

  • Back button added
  • Green "Create a new page" button updated to "Save changes"
  • Link to "page list" needs moved to under green button
  • Link to "page list" content needs to be updated to "Go to form overview" (as per other pages)

Changes to in page preview area:

  • Add h2 "Page preview" (might need input from @hannahkc )
  • Remove "Open in a new tab" from preview frame
  • Add "Preview page in anew tab" as a link above the preview frame
  • Remove the "Update preview" link(?) from under the preview frame

As is screenshot

Screenshot 2022-05-11 at 13 36 53

Open hint text details component by default if it has content

Currently the Hint Text details component on the Edit Question page is closed by default even if it contains text:
Screenshot 2022-05-16 at 09 04 37

This will make it harder for users if they:

  • want to review the content of their questions quickly
  • spot a mistake in the hint text after saving the page.

Instead, we could change the default state of this component to be open if there is content in the hint text field and closed if the field is empty.

You can't write content in markdown

At the moment all content must be written in HTML, which creates an unnecessary overhead for any content designer wanting to collaborate on this prototype.

Problems with page titles

There are problems with the page titles on several pages in the prototype:

  • Form builder home screen:
    • Current title: 'Form home'
    • Problem: this doesn't really sum up what this page is.
    • Suggested replacement: 'Your forms'
  • Form naming screen
    • Current title: 'Create a form'
    • Problem: this might be OK, but there may be an argument for changing it to 'Name your form' or similar to better reflect what this page does.
    • Suggested replacement: keep current name or 'Name your form'
  • Create/Edit question page
    • Current title: Uses the question title, e.g. 'What is your name?'
    • Problem: this doesn't indicate that this is an editing page - it would be hard to distinguish this from the corresponding preview page.
    • Suggested replacement: 'Edit question: What is your name?'
  • New tab preview page:
    • Current title: 'Edit question'
    • Problem: this is completely incorrect - this isn't an editing page, and it gives no indication what page is being previewed.
    • Suggested replacement: 'Preview: What is your name?'

Arguably we should also add a '- GOV.UK Forms' suffix to all of the titles on the site - this is a common pattern.

There are no page templates yet

The 'page templates' option on the 'Choose a page type' screen doesn't actually work yet.

Each template will probably need a custom edit view.

For example, the 'Address' template will contain multiple fields, for each line of the address - not something that the 'from scratch' edit view could do.

Change text on button for last question in journey

The last question when previewing the journey says "Check your answers" - this seems unnecessary and has been seen to cause some issues.

To align with pattern, this should just be "Continue" as per other pages

Add feature flag for adding numeric answer type

To support demonstrations of the prototype, a number answer type should be added to the list of options on the edit page.

It function the same as the short text option, but show audience members our future intentions to add it.

Add journey: Set the email address completed forms will be sent to

This issue is to implement the journey for "I need to set the email address a completed form is sent to (trello)".
Mural link to screen flow

Set the email address for completed forms

Set the email address for completed forms page. Includes content "This should be a shared government email inbox." "What email address should completed forms be sent" to question with a text input box. Screenshot

If we already hold an end point email address we should show the "Are you sure you want to change this email address?" screen, displaying the email they have previously added. Otherwise, we can go to the "Confirmation code sent" screen to finish this part of the journey.

Are you sure you want to change this email address?

Are you sure you want to change this email address question giving a "Yes" or "No" radio option. Screenshot

This screen should include both the previously added email in full and the one they have entered and would replace it.
If users are presented this screen we want to confirm if they are happy to change the email or not. If they select "Yes" we should continue them through the journey to the "Confirmation code sent" screen. Otherwise, we should take them back out to the Form overview screen.

Confirmation code sent

Confirmation code sent page. Screenshot

This page includes text that says "We've sent a confirmation code and your email address to [[email protected]]. The recipient will be asked to give you the code. You need to enter the code to confirm the email address. The code is valid for 7 days." There are two links underneath that say, "Enter confirmation code to verify the email address" and "Go to form overview"

This is the end of this part of the users journey. They have a link that will allow them to return to the form overview screen OR a link to allow them to enter the confirmation code to verify the email address (separate issue) - this will cover scenarios where the form creator is within the team/has been given access to the processing inbox, or is wanting to test the end to end form submission journey including what the email will look like.

Screen flow diagram

The order of screens above and how they link to each, including if statements. Screenshot

The journey will end with an email being sent to the email provided, the content of which will be created and added to another github issue.

Reorganise page list

  • Present a cleaner version of this page when the user first goes to it after naming a form
  • Separate pages into those added by the user and those which are automatically created
  • Move publish link/button to the bottom of the page
  • Use the actual title of the Form submitted page and update it if it's edited by the user.
  • Add additional text by the 'Check your answers' and 'Form submitted' pages to explain what they are.

Update edit page buttons

Swap the "save changes" button and "add next question" button about so that the primary action on the edit pages is to "Save and add next question"

Change content on buttons to:
Button 1 (green)
"Save and add next question" (when adding)
"Save and edit next question" (when editing)

Button 2 (grey)
"Save and preview question"

Button 3 (red)
"Delete question" (when editing)

You have to manually refresh the page preview in edit mode

It might be nice if the page preview updated automatically as you filled out or changed the edit form.

Perhaps updated each time you moved focus from a field?

We'll need to decide if 'edit' pages only save updates when you hit a 'Save' button, or if they 'save as you go'.

Add number and long text answer

Related to

I need to require a number as an answer to a question
Design: require a longer text answer to a question

User needs

As a form creator, I need to require a longer text answer to a question, so that I can collect the data we need in the right format.

The Why

This will allow departments to collect a free text answer to questions that need a longer answer, like multiple paragraphs. We need this to do the “Redundancy claim for holiday taken, but not paid“ form, as well as two other redundancy claim forms. And it is a common question/answer type.

Hypothesis

If we include a free text option as an answer type
then a form creator will be able to collect free text information from their users

How to test the solution and what success looks like

We implement a <textarea> element into the list of answer types.

We should consider how our users will describe a textarea and explore what language we use to name the answer type

We should consider adding a description to explain what the textarea answer type is

We could consider testing the answer type as part of splitting the question and answer flow (putting the answer type selection first)

User Needs

As a form creator, I need to require a number as an answer to a question, so that I can collect the data we need in the right format.

The why

  • this is a common type of answer needed in forms
  • end users using speech to text software might struggle to enter numbers without this, as the validation might reject the text "one hundred and eighty"
  • end users can more easily enter numbers when a number keyboard appears on mobile or tablet devices

How to test the solution

We implement a number input type into the list of answer types.

We should consider how our users will describe a this input type and explore what language we use to name it

We should consider adding a description to explain what the number input answer type is

Align Check your answers page with the other journey pages

This page needs updating to align with the rest of the journey.

Page title (that appears in the browser tab):

  • Update to the correct page name, "Edit check your answers - GOV.UK Forms" (This should reflect the Page title given by user if changed)

Screenshot 2022-05-11 at 13 43 06

Main changes to editing area of the page:

  • Back button added
  • Green "Create a new page" button updated to "Save changes"
  • Link to "page list" needs moved to under green button
  • Link to "page list" content needs to be updated to "Go to form overview" (as per other pages)

Changes to in page preview area:

  • Add h2 "Page preview" (might need input from @hannahkc )
  • Remove "Open in a new tab" from preview frame
  • Add "Preview page in anew tab" as a link above the preview frame
  • Remove the "Update preview" link(?) from under the preview frame

As is screenshot

Screenshot 2022-05-11 at 12 12 50

Simplify inline previews

  • Remove back button from the preview pane
  • Remove hover styling/disable the green button in the preview pane (because it doesn't do anything)
    these changes should apply to page-preview.html, confirmation-page-preview.html, and check-answers-page-preview.html

Add DRAFT / PREVIEW watermark to preview screens

We want to try making it more obvious to users that they are viewing a DRAFT version of the form they are creating.

We hope this will help users understand where they are and hopefully prompt them to be able to mentally switch between editing/creating and previewing/testing.

We need to consider adding visually hidden text to the end of the page heading for example, "What is your name? preview"

Example of DRAFT background from publishing journey:
https://draft-origin.publishing.service.gov.uk/apply-national-insurance-number?token=eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiI1MTgxZTQyNi1iNzU3LTQ5ZjItYWM4My0yYTYwMjg2OTQxYzciLCJjb250ZW50X2lkIjoiYjcwNTMxZDQtZTkwNC00YTk1LWE0ODAtMmRhZDVjMzIyY2E0IiwiaWF0IjoxNjU1NzU4ODgwLCJleHAiOjE2NTgzNTA4ODB9.HtXmH92DN7qY0pBmLNBrMWJuJml87lAE_6BEh2gvPTc

Pressing 'enter' in the preview doesn't take you to the next page

Expected behaviour

Given I am on a question page in the new tab preview
When I press the enter key on a form field
Then I expect to be taken to the next page in the form

Actual behaviour

Instead I am taken to https://forms-prototypes.london.cloudapps.digital/form-designer/page-preview-new-tab/edit-question-save, a page which contains only a 'continue' button and no content.
image

This only happens when using the enter key, not when clicking the continue button.

Set returning journey data for testing

https://trello.com/c/7NU2xSRL/437-add-insolvency-service-form-to-the-prototype-for-testing

Need to add example data for Insolvency Service form that has been agreed - Amendment form: redundancy claim for holiday pay

1. Full name

2. Claim reference number (begins LN) or National Insurance number (QQ123456C)

3. Name of company

4. What date did your holiday (leave) year start? 
(for example, 1st January 2020)

5. How many holiday days were you entitled to for the whole leave year? 
Please include bank holidays

6. How many holiday days did you take between the date your leave year started and the date you were made redundant? 
Please include any bank holidays that happened during this time.

7. Did you carry over any holiday days from your last leave year? 
If ‘yes’, how many days?

Make sure there is an option for non Insolvency Service testing - Take your pet abroad

There's no 'Check your answers page' yet

Need to create 'edit' and 'preview' views for the 'Check your Answers' page.

Probably the only editable parts of the page would be the page title (which would default to 'Check your answers before sending your application') and a page declaration (which would default to 'By submitting this application you are confirming that, to the best of your knowledge, the details you are providing are correct.').

Add dummy information to check answers screen when no input provided

On the check your answers screen when users test their forms they are presented with empty answers (and if date used they see "01/") when no answer has been provided.

This seems to have caused some confusion, so we would like to test using some content to show that it would contain the answer etc.

Could we add "Not completed" to each row where no answer has been given when running through the service in test/preview.
This should appear for every input type on check your answers, even where input type is date/number/telephone etc.

Page count is incorrect

The page count is off by one - for example the form below has 2 pages, but is showing as a '3 page draft form'.

This is possibly related to removing start pages from the prototype.

image

You can't delete a page

You can't currently delete a page.

I think implementing this will probably require a rewrite of the way pages are created.

If you delete page 4, then I guess you'll need to renumber all the pages higher than it?

This would probably be much easier to implement if page data was stored like this p1.name rather than this p1-name.

The delete function could be made available from each row in the page list, and also from the bottom of the edit page view. Not sure of the best design yet, but we can explore that once the functionality is in.

Design: explore task list for next steps in publishing form

Work from trello card Spike: explore task list for next steps in publishing form

The what

  • create new page for task list
  • list items agreed on Publishing a form Mural (listed below)
  • make task list page first page after entering a form name (on form creation journey)
  • make task list page first page after clicking to edit a form (on form return journey)

New sections and links:

Create your form

  • Edit the name of your form
  • Add and edit your questions
  • Preview your form in a new tab link to sit on "Add and edit your questions" page
  • Review summary page and add declaration
  • Add information about what happens next

Set form responses

  • Set the email address completed forms will be sent to
  • Enter the email address confirmation code

Get your form ready to go live

  • Provide a link to your privacy information
  • Provide a link to your accessibility statement

Publish your form

  • Make your form live
  • How to publish the form on GOV.UK

Example of overall task list pattern and layout

Create a form page with task list breaking down tasks into sections. Screenshot

You can't preview pages from the page list

It would be useful if users could click on a row in the page list and the preview pane would update to show that page. I think this could be treated as a JavaScript enhancement.

Add radio and checkboxes back

Radio buttons and checkboxes were previously part of the prototype and are required for the Civil Service Live event.

Add the features back to the question creation screen and ensure they work in the preview/check your answers screen.

Remove CSL prototype version from PAAS

We no longer need the Civil Service Live prototype.

  • Shutdown the PAAS instance containing the CSL version
  • Remove the feature flags used to add CSL specific features

Remove "question short name" from edit pages

We would like to remove the short name input from edit pages - we think it adds confusion and would like to test the impact of removing it.

We should use the long version across the service including, summaries (CYA, emails and form overview.
The preview URL could use the long version replacing caps with lowercase, spaces with dashes ('-') and removing any other punctuation

Edit page reorganisation

  • Move 'hint text' up to appear under the question fields. Improve the label and hint text to be more meaningful and explanatory
  • Add a save button which will save the question without changing page (this is functionally identical to the 'update preview' button, which we're removing, so really it's just a rename).
  • Change the button options to 'Save', 'add new question', and 'delete question' - and have a link to go back to the page list (form overview).
  • Add a back button

You can't move a page

You can't currently move a page higher or lower in the page list.

I think implementing this will probably require a rewrite of the way pages are created.

If you move page 4, then I guess you'll need to renumber one of the pages next to it?

This would probably be much easier to implement if page data was stored like this p1.name rather than this p1-name.

The move function could be made available from each row in the page list, and also from the bottom of the edit page view. Not sure of the best design yet, but we can explore that once the functionality is in.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.