Diretrizes de design para captura de dados

Introdução

Um agente de saúde comunitário olhando para um dispositivo móvel.

Preencher questionários é uma tarefa essencial para a maioria dos profissionais de saúde que usam apps de saúde móvel.

A entrada de dados pode ser difícil e erros acontecem. Nosso objetivo com a biblioteca de captura de dados estruturados (SDC, na sigla em inglês) e as diretrizes de design é ajudar você a melhorar a experiência do usuário na entrada de dados e a qualidade dos dados capturados.

Os quatro temas abordados nesta seção são:

  1. Layout e navegação
  2. Perguntas e instruções
  3. Captura de dados
  4. Validação de dados e mensagens de erro

Layout e navegação

Uma visualização estilizada de layouts de rolagem longa e paginados.

Rolagem longa e layout paginado

Comparação entre layouts de rolagem longa e paginados. A rolagem longa tem três perguntas em uma página, enquanto a paginada tem uma pergunta.
Layout de rolagem longa (à esquerda) e layout paginado (à direita).

O SDK FHIR do Android tem duas opções de layout para você escolher:

  1. Rolagem longa (padrão)
  2. Paginado

Um questionário de rolagem longa mostra todas as perguntas em uma página, e os usuários navegam até cada uma delas rolando a tela.

Um questionário paginado mostra o conteúdo em páginas separadas. Perguntas ou campos de entrada relacionados podem ser agrupados em uma página. Os botões "Voltar" e "Próxima" ficam ancorados na parte de baixo da página para navegar entre elas.

Saiba como paginar um questionário no GitHub

Qual layout você deve selecionar?

Cada opção de layout tem vantagens e desvantagens. Confira abaixo alguns atributos de cada tipo de layout para considerar ao escolher qual usar.

Rolagem longa Paginado
Velocidade de navegação Navegação mais rápida Mais lento para navegar
Precisão da navegação Navegação menos precisa Navegação mais precisa
Retomar a pergunta após a troca de tarefas Dificuldade de se reorientar após uma interrupção Mais fácil de se reorientar após uma interrupção
Preencher o questionário digital após a visita (copiando do papel) Mais fácil ao copiar de um documento Mais difícil ao copiar de um papel
Telas pequenas Pior para telas pequenas Melhor para telas pequenas
Acessibilidade Pior para acessibilidade. É difícil navegar. Melhor para acessibilidade. Telas discretas que podem ser processadas por leitores de tela, conversão de texto em voz e outras tecnologias.
Espaço para instruções e explicações Pior para orientação e instruções Melhor para orientação e instruções

Rolagem longa

Questionário com números mostrados na frente do título da pergunta.
Faça — perguntas com números
Numere as perguntas para facilitar a navegação em um layout de página única.
Comparação do tamanho da fonte do título da pergunta. A rolagem longa é de 16 px. Paginado é 28 px.
Fazer — Ajustar o tamanho da fonte
Diminua o tamanho da fonte dos títulos das perguntas ao usar a rolagem longa para mais conteúdo ficar visível na tela. Exemplo: rolagem longa é de 16 px. Paginado é 28 px.

Paginação

Pergunta paginada "Em que estado eles moram?" com
            seleções do menu suspenso.
Faça: uma pergunta por página
Teclados, menus suspensos e outros componentes ocupam espaço na página. Por isso, faça uma pergunta por página.
Campos de endereço paginados em que o campo inferior não está visível na tela.
Não — Ocultar conteúdo abaixo da dobra
O conteúdo precisa estar visível acima da dobra.
Vários campos de texto agrupados como uma pergunta. O título da pergunta é
            pessoa para contato alternativa, com nome, relação e número de telefone
            como campos de entrada.
Faça: agrupe o conteúdo relacionado em uma pergunta
Exemplo: estes três campos de texto estão relacionados a informações de uma pessoa para contato alternativo. Por isso, eles são agrupados em uma página.
Perguntas não relacionadas na mesma página. A primeira pergunta é sobre cobertura de seguro, e a segunda é sobre condições de saúde anteriores.
Não — Agrupe conteúdo não relacionado
Evite agrupar conteúdo não relacionado em uma página para não causar confusão.

Indicador de progresso

O indicador de progresso reflete o progresso feito em um questionário.

Inclua um indicador de progresso em questionários longos para ajudar os usuários a navegar e acompanhar o progresso. Os indicadores de progresso mostram a localização em um questionário e quanto falta para concluir.

Indicador de progresso localizado na parte de cima, abaixo do título do questionário.
Faça: layout de rolagem longa
Posicione na parte de cima, acima da pergunta, e fixe para que fique sempre visível, mesmo ao rolar a tela.
Indicador de progresso localizado na parte de baixo, acima dos botões de navegação.
Fazer — Somente layout paginado
Pode ser posicionado na parte de baixo, acima dos botões "Voltar" e "Próxima". Com esse layout, você também pode mostrar em qual página o usuário está.

Os botões de navegação (voltar, próxima) ficam ancorados na parte de baixo do questionário. Em uma rolagem infinita ou na última página de um questionário paginado, o botão "Próxima" é chamado de "Enviar".

Mantenha os botões em um local consistente e sempre use botões ativos rotulados com a ação deles, como "Voltar" e "Próxima".

Os botões de navegação estão ativos. Botão "Próxima" com preenchimento azul.
Fazer: botões ativos
Sempre mostre botões ativos, mesmo que os formulários estejam incompletos. Ao tocar em "Próxima", mostre uma caixa de diálogo pop-up com instruções para preencher os campos ausentes ou erros de validação.
O botão "Próxima" está inativo. Botão "Próximo" com preenchimento cinza.
Não — botões inativos
Botões inativos dificultam que os usuários saibam como corrigir o problema.
O botão "Próxima" tem apenas um ícone de seta e nenhuma descrição de texto.
Não — botões somente com ícones
Evite botões somente com ícones. Sempre rotule os botões com uma ação descritiva.

Perguntas e instruções

Questionário paginado com anotações mostrando componentes de perguntas e instruções.
Visão geral dos nove componentes abordados nesta seção e como eles são combinados em um questionário paginado.
  1. Título do questionário.
  2. Indicador de progresso.
  3. Cabeçalho do grupo.
  4. Título da pergunta.
  5. Instruções.
  6. Campo de entrada.
  7. Formato da entrada.
  8. Campos obrigatórios.
  9. Ajuda.

Cabeçalho do grupo

O cabeçalho do grupo é um cabeçalho de texto exibido acima dos títulos das perguntas.

Use o cabeçalho do grupo para agrupar perguntas semelhantes. Use apenas o cabeçalho do grupo quando ele adicionar informações úteis.

O cabeçalho do grupo é "Histórico do paciente".
Faça — Títulos curtos
Use um título curto para agrupar perguntas semelhantes. Exemplo: todas as perguntas relacionadas ao histórico do paciente são agrupadas.
O cabeçalho do grupo é informações pessoais e de estilo de vida.
Não — Títulos longos
Evite títulos complexos ou longos que ultrapassem uma linha.

Título da pergunta

O título da pergunta descreve de forma concisa quais informações são solicitadas. Os títulos das perguntas têm o maior tamanho de fonte da página para atrair a atenção do usuário para a pergunta.

Cada página ou pergunta precisa ter um título. Mantenha os títulos das perguntas curtos ou formule-os como uma pergunta.

O título da pergunta é "Data de nascimento".
Faça — Título curto da pergunta
Títulos curtos facilitam a leitura para os usuários.
O título da pergunta é "Qual é sua data de nascimento?" Em que cidade você nasceu?
Não — Título de pergunta longo
Evite perguntas muito longas ou que contenham duas perguntas.
Sem título da pergunta.
Não — Sem título da pergunta
Sempre inclua um título para facilitar a compreensão dos usuários sobre as informações que precisam inserir.

Instruções

Instruções é um campo de texto opcional mostrado abaixo do título da pergunta.

Use o campo instruções para explicar instruções relevantes, como se a pergunta é obrigatória, quantas seleções podem ser feitas (uma ou várias) e o que os usuários devem fazer se não conseguirem preencher todas as informações ou responder à pergunta.

Instruções: selecione uma opção. Pergunta obrigatória.
Faça — Explique o que é necessário
Use o campo de instruções para informar se uma pergunta é obrigatória e quantas seleções podem ser feitas.
Instruções: se a data de nascimento exata for desconhecida, selecione a caixa de seleção "Data de nascimento desconhecida".
Faça: explique o que fazer em casos extremos
Use instruções para informar aos usuários o que fazer se eles encontrarem um cenário como não conseguir preencher todos os campos.
Instruções: o contato alternativo seria usado em caso de emergência e pode ser um parente próximo (por exemplo, parceiro, mãe, irmão).
Faça — Explique o contexto ou as definições
Use instruções para fornecer mais contexto ou definições de termos usados no título da pergunta.

Texto do marcador

O texto do rótulo informa aos usuários quais informações são solicitadas em um campo de texto ou um menu suspenso. Quando o campo é selecionado, o texto do rótulo se move do meio para a parte de cima do campo de texto.

Todo campo de texto e caixa de menu suspenso precisa ter um rótulo. O texto do rótulo precisa ser curto, claro e totalmente visível.

Texto do rótulo: nome.
O que fazer: seja conciso
O texto do rótulo precisa ser curto, claro e totalmente visível.
Texto do rótulo: insira o nome do cliente.
Não — Seja prolixo
O texto do rótulo não pode ser muito longo, truncado ou ocupar várias linhas.
Nenhum texto de marcador.
Não — Sem rótulo
Sempre rotule o campo de texto para que os usuários saibam quais informações inserir.

Formato da entrada

O EntryFormat é mostrado abaixo do campo de texto para informar aos usuários o formato específico em que os dados precisam ser inseridos. As mensagens de erro vão aparecer no campo EntryFormat e substituir as instruções atuais.

Use EntryFormat para datas, números de telefone, unidades e números inteiros.

Formato da data: dd/mm/aaaa.
Fazer — Usar EntryFormat
Mostrar o formato da data abaixo do campo e incluir uma frase descritiva.
Nenhum formato de data.
Não — No EntryFormat
Não mostrar formatos de dados pode levar à entrada incorreta de dados.
Abaixo do campo de texto "Frequência cardíaca", o formato de entrada mostra: Intervalo normal: 60 a 100 bpm. Abaixo do campo de texto "Saturação de oxigênio no sangue", o
            Formato de entrada mostra: Intervalo normal: 95 a 100%.
Faça — Mostre o intervalo normal
Ao inserir intervalos médicos, dê exemplos do intervalo normal. Isso pode ajudar os usuários a identificar erros ou números fora do intervalo.

Campos obrigatórios

Os campos obrigatórios indicam que um usuário precisa preencher o campo e não pode avançar até que ele seja concluído.

Para indicar que um campo é obrigatório, mostre um asterisco (*) no final do título da pergunta. Inclua "pergunta obrigatória" no campo de instruções, já que nem todo mundo sabe o que um asterisco (*) indica. Se não houver um título da pergunta, mostre o asterisco (*) no texto do rótulo.

Asterisco após o título da pergunta e a pergunta obrigatória nas instruções abaixo.
Faça — Explicação por escrito
Mostre que o campo é obrigatório com um asterisco (*) e inclua instruções por escrito que indiquem "pergunta obrigatória". Muitas pessoas não sabem o que o asterisco(*) significa e se beneficiariam com a explicação.
Asterisco após o título da pergunta, mas sem uma descrição escrita explicando o que ele significa.
Não — Sem explicação
Evite mostrar apenas o asterisco (*) sem uma descrição escrita do que ele significa.
O asterisco após o título da pergunta e a pergunta obrigatória são mostrados nas instruções abaixo.
Faça — Localize a terminologia
Use os termos mais familiares aos seus usuários. Por exemplo, "Obrigatório" pode ser o termo mais conhecido e usado em alguns países em vez de "Necessário".
Sem asterisco. A pergunta opcional é mostrada nas instruções.
Faça — Indique as perguntas opcionais
Se a maioria das perguntas for obrigatória, indique quais são opcionais.
Asterisco após o texto do rótulo. Pergunta obrigatória mostrada no campo "Formato de entrada".
Fazer: mostrar asterisco no texto do rótulo
Se não houver um título da pergunta, mostre o asterisco no texto do rótulo.

Ajuda

Um ícone de ajuda aparece ao lado do título da pergunta. Ao tocar no ícone, uma caixa de informações de ajuda aparece com mais detalhes. Tocar no ícone novamente fecha a caixa de informações de ajuda.

Este é um componente opcional. Use apenas quando for útil mostrar mais informações que não precisam estar sempre visíveis.

Ajuda: a vacina contra a gripe sazonal também é chamada de imunização contra a gripe.
Faça: mostre informações opcionais na caixa de ajuda
Use a ajuda para informações que os usuários talvez precisem ver apenas uma vez ou que forneçam informações adicionais.
Ajuda: selecione uma opção.
Não — Oculte as instruções na caixa de ajuda
Evite ocultar instruções na caixa de ajuda que devem estar visíveis para todos.

Captura de dados

Oito componentes de captura de dados: campos de texto, seletor de data, menu suspenso, controle deslizante, escolha única, escolha booleana, múltipla escolha e escolha aberta.
Oito dos principais componentes de captura de dados no SDK FHIR para Android.

Quando usar cada componente?

Tipo de entrada de dados Escolha booleana Uma única escolha Múltipla escolha Opção aberta Menu suspenso Seletor de data Campo de texto Controle deslizante Preenchimento automático
Selecione "Sim" ou "Não"
Selecionar uma opção
cuidado
Selecionar várias opções
cuidado
Texto
Datas
Números
cuidado

Campos de texto

Os campos de texto indicam que os usuários podem inserir informações.

Use campos de texto quando alguém precisar inserir texto no questionário, como um nome, número de telefone ou endereço. Limite a entrada de dados que exige texto (teclado) quando uma seleção pré-preenchida (múltipla escolha ou escolha única) pode ser usada.

Saiba mais sobre campos de texto em material.io

Título da pergunta: registrar uma nova pessoa. Campo de texto 1: nome. Campo
            de texto 2: número de telefone.
Faça: use campos de texto para entrada de dados exclusiva
Use campos de texto para entrada de dados que exija digitação de palavras ou números exclusivos.
Título da pergunta: motivo da consulta? Campo de texto: descreva o motivo
Não — Limite o uso de respostas de texto livre
Evite usar respostas de texto livre quando for possível usar uma seleção múltipla, um menu suspenso ou uma seleção única.

Escolha única e booleana

Escolha única e escolha booleana são controles de seleção que aparecem como botões de opção quando os usuários precisam escolher uma opção.

Use escolha booleana quando houver uma opção binária de "Sim" ou "Não". Caso contrário, use o componente de escolha única. Se houver mais de 10 opções na lista, use um menu suspenso em vez de escolha única. Um menu suspenso é mais denso e fácil de navegar quando há muitas opções.

Título da pergunta: é a primeira visita? As opções de seleção booleana são "sim" e "não".
Fazer — escolha booleana
Use a escolha booleana quando as opções forem "sim" e "não".
Título da pergunta: Qual é o nível de escolaridade mais elevado?
            As opções de escolha única são: 1. Não sabe 2. Sem educação

            3.  ensino fundamental 4. ensino médio.
Fazer — Escolha única
Use a escolha única quando os usuários puderem selecionar uma opção na lista.
Lista de escolha única mostrando uma lista muito longa de estados. Os estados 23 a 27
            estão visíveis.
Não — Listas muito longas
Evite a escolha única para listas muito longas (mais de 10 itens). Use um menu suspenso.

Seletor de data

O seletor de datas permite que os usuários insiram datas usando o seletor de datas do calendário e o teclado. O seletor de datas do calendário é ativado quando o ícone do calendário é tocado.

Use o seletor de data do calendário apenas para datas próximas à de hoje, como o último período menstrual ou a próxima consulta. Caso contrário, priorize a entrada pelo teclado para datas como a de nascimento.

Data de nascimento. A entrada de data pelo teclado está ativa. Ícone da Agenda no lado direito da caixa de campo de texto. A caixa de seleção está marcada, indicando que a data é aproximada.
Fazer — ambas as opções de entrada
Para inserir datas, ative a entrada pelo teclado (toque na caixa de texto) e o seletor de data do calendário (toque no ícone).
Visualização de calendário do seletor de datas.
Não — evite usar somente o calendário
Evite ativar o seletor de datas do calendário como o único método de entrada para datas de nascimento. É difícil navegar até o mês e o ano.

Os menus suspensos permitem que os usuários escolham entre várias opções. À medida que o usuário começa a digitar, as opções são filtradas com base no que foi inserido. Isso pode ajudar os usuários a encontrar rapidamente a opção certa em uma lista grande.

Os menus suspensos são uma ótima alternativa à escolha única quando a lista de opções é muito longa (mais de 10 opções), já que ocupam menos espaço.

Menu suspenso para listar estados de A a F.
Faça — Use para listas longas
Use um menu suspenso ao selecionar uma opção em uma lista muito longa, como um estado ou uma cidade.
Menu suspenso para idade, listando os números de um a seis.
Não — Quando digitar é fácil
Evite usar um menu suspenso quando for mais fácil digitar o conteúdo em vez de rolar por todas as opções, como idade.

Múltipla escolha

Múltipla escolha é um controle de seleção que aparece como caixas de seleção quando os usuários podem fazer várias seleções em uma lista de opções.

Use a múltipla escolha quando os usuários só puderem selecionar em uma lista predeterminada de opções. Se os usuários também puderem adicionar uma resposta livre, use o componente escolha aberta. No campo instruções, escreva "Selecione todas as opções aplicáveis" para que os usuários saibam que podem selecionar várias opções.

Título da pergunta: Qual é o motivo da sua visita hoje? Quatro caixas de seleção
            e opções mostradas, uma em cada linha.
Faça: uma seleção por linha
A aparência padrão é um contêiner ao redor das caixas de seleção para deixar a área tocável óbvia.
Título da pergunta: qual é o motivo da visita de hoje? Seis caixas de seleção
            e opções mostradas, duas em cada linha. Parte do texto é cortada em duas das opções.
Não — várias opções por linha
Evite mostrar várias opções por linha. Devido à variação no tamanho da tela do smartphone e no tamanho do texto, o texto pode ser cortado.

Opção aberta

A escolha aberta é semelhante à múltipla escolha, mas permite que o usuário selecione Outro e digite um texto livre.

Use a escolha aberta quando houver uma lista predefinida de opções, mas os usuários também puderem adicionar outras opções. Use a escolha aberta quando a maioria das opções for conhecida, mas você prevê que alguns usuários vão selecionar Outro porque nenhuma das opções fornecidas se aplica.

A opção "Outro" está selecionada. O campo de texto para adicionar texto livre está ativo.
            O teclado está visível.
Faça: use para uma coleta de dados mais precisa
Use quando for importante coletar dados precisos e nenhuma das opções predefinidas se aplicar. Exemplo: ocupação.
Título da pergunta: Gostaria de informar algo mais? Três opções: Sim, Não e Outro. A opção "Outro" está selecionada. O campo de texto para adicionar texto livre está ativo.
Não — Se todas as respostas forem "Outro"
Evite usar se a maioria das respostas exigir a seleção de Outro. Nesse caso, use um campo de texto ou parágrafo.

Controle deslizante

Com os controles deslizantes, os usuários podem escolher um valor em um intervalo. O controle deslizante no SDK FHIR do Android é discreto. Um controle deslizante discreto permite que os usuários selecionem um valor específico em um intervalo predeterminado. As marcas de tique podem ser usadas para indicar valores disponíveis. Evite usar o controle deslizante para entrada de dados numéricos. Em vez disso, use um campo de texto ou um menu suspenso.

Saiba mais sobre controles deslizantes em material.io

Título da pergunta: quantas crianças o cliente tem? Um controle deslizante com o número quatro selecionado.
Não — Use o controle deslizante para números específicos
Evite usar o controle deslizante para valores específicos quando houver um intervalo grande. Use campos de texto com entrada de teclado.

Validação de dados e erros

Validação de dados

As validações de dados restringem o tipo de dados ou os valores que podem ser inseridos em um campo de texto. A validação de dados pode melhorar a qualidade das informações coletadas.

Use o campo EntryFormat para mostrar restrições de formato ou valor. Mostre mensagens de erro de validação de dados significativas em linha e imediatamente para que os usuários possam corrigir o erro.

Texto do rótulo: número de telefone. Formato de entrada: 8 dígitos.
Faça — Mostre as restrições de validação
Mostre as restrições de validação de dados antecipadamente para que os usuários saibam como inserir os dados.
Texto do rótulo: número de telefone. Formato da entrada: nenhum.
Não — Ocultar restrições de validação
Sem mostrar quantos dígitos o número de telefone precisa ter, é provável que os usuários encontrem um erro e levem mais tempo para concluir.
A data inserida é 22/33/4444. Mensagem de erro: formato de data incorreto. O formato precisa ser: dd/mm/aaaa.
Faça — Mostre erros de validação imediatamente
Mostre erros de validação de dados significativos imediatamente após concluir o campo. As mensagens de erro substituem o texto do formato de entrada atual.
Caixa de diálogo. Corrija os erros a seguir. 1. número de telefone. 2. data de nascimento;
            Botão 1: enviar mesmo assim. Botão 2: corrigir erros.
Não espere até depois do envio
Não espere até que o usuário pressione "Enviar" para mostrar os erros de validação pela primeira vez.

Erros

As mensagens de erro alertam os usuários quando algo dá errado e comunicam como corrigir o problema.

Use cores, ícones e texto para comunicar erros.

Saiba mais sobre mensagens de erro em material.io

A mensagem de erro é "Pergunta obrigatória. Selecione uma opção."
Faça — Descreva claramente como corrigir o erro
Explique por que há um erro (pergunta obrigatória) e o que pode ser feito para corrigir (selecione uma opção).
A mensagem de erro é "Erro".
Não — escreva apenas "erro"
Uma mensagem de erro que diz apenas "erro" não ajuda os usuários a saber como corrigir o problema.
Data de nascimento. A data inserida é 22/33/4444. A mensagem de erro é "Formato de data incorreto". O formato precisa ser: dd/mm/aaaa.
Faça — Explique como corrigir o erro sem culpar ninguém
Exemplo: "Formato de data incorreto. O formato precisa ser dd/mm/aaaa".
Data de nascimento. A data inserida é 22/33/4444. A mensagem de erro é "Você inseriu o formato de data errado".
Não culpe o usuário
Evite culpar o usuário com mensagens de erro que incluem "você". Exemplo: "Você inseriu o formato de data errado".
Mensagem de erro com um ícone na frente do texto vermelho que mostra "Pergunta
            obrigatória. Selecione uma ou mais opções." Os contêineres de caixa de seleção têm um
            contorno vermelho.
O que fazer: vários indicadores
Use cores, iconografia e texto para informar aos usuários que há um erro.
Nenhuma mensagem ou ícone de erro. Os contêineres de caixa de seleção têm um contorno vermelho, que é o único indicador de que há um erro.
Não: confie apenas na cor
Para oferecer suporte a deficiências visuais comuns, como daltonismo vermelho-verde, evite confiar apenas na cor para comunicar um erro.
Os contêineres de caixa de seleção têm um contorno vermelho e um ícone de erro exibido
            atrás de cada contêiner. Três ícones estão visíveis.
Não — Use ícones em excesso
Um ícone geralmente é suficiente. Não exagere no uso de ícones para comunicar o erro.