Introdução
Com apps que funcionam off-line, os profissionais de saúde têm acesso às ferramentas necessárias para prestar atendimento de qualidade, mesmo quando não estão conectados à Internet. Os apps off-line são úteis para profissionais de saúde que trabalham em ambientes comunitários com conectividade não confiável ou em instalações de saúde sem acesso à Internet. Os apps off-line também podem ajudar a reduzir os custos de dados.
Se os profissionais de saúde não puderem usar o app off-line, eles talvez não consigam concluir tarefas importantes. Isso pode fazer com que os profissionais de saúde não usem o app e percam os dados. Com a biblioteca FHIR Engine e essas diretrizes de design, nosso objetivo é melhorar a experiência do usuário em apps de saúde off-line para que sejam confiáveis e fáceis de usar.
Princípios importantes do modo off-line
Considere estes princípios ao criar apps de saúde off-line:
- Os apps comunitários para profissionais de saúde precisam ser projetados para uma experiência que prioriza o modo off-line.
- Garanta que os usuários possam concluir o fluxo de trabalho principal off-line.
- Informe aos usuários com que frequência eles precisam ficar on-line para sincronizar o dispositivo.
Sincronização inicial
O app pode exigir uma sincronização inicial para fazer o download de tarefas ou de uma lista de pacientes, antes que um profissional da saúde comece a usá-lo. Nesse caso, faça da sincronização inicial uma etapa distinta como parte dos profissionais de saúde que estão começando a usar o app. Forneça orientações sobre onde e quando fazer isso e uma estimativa de quanto tempo será necessário. Explique se o app precisa estar aberto ou se os profissionais de saúde podem realizar outras tarefas no dispositivo durante a sincronização.

Apresente expectativas claras de quanto tempo vai levar.

Não inicie a sincronização inicial sem informar o que esperar.
Barra de status
A barra de status indica se o dispositivo está off-line ou sincronizando. A barra de status aparece quando:
- O dispositivo está off-line porque não há conexão de Internet
- Os dados estão sendo sincronizados
- Falha na sincronização
- A sincronização foi concluída
Mostre a barra de status somente quando for relevante, em páginas ou ao redor de componentes que serão alterados quando a sincronização dos dados for concluída. Por exemplo, o status é importante ao procurar uma lista de tarefas, pesquisar uma lista de pacientes ou carregar um cartão de paciente para que o profissional de saúde possa reconhecer se as informações mais recentes foram sincronizadas ou não.

Mostre o status off-line quando for relevante, por exemplo, ao carregar a lista de pacientes.

Evite fazer com que a barra de status de conectividade pareça um estado de erro.

Quando a conectividade estiver estabelecida, mostre que o app está sendo sincronizado na barra de status.

Mostre a confirmação de conclusão da sincronização mudando o ícone para uma marca de seleção e a cor e o texto na barra de status. Isso ajuda os usuários a saberem que as informações foram preenchidas.

Se a sincronização não foi concluída, mostre que ela não foi concluída. Se a causa da falha na sincronização for o app estar off-line, mude o status para off-line. É importante que as pessoas saibam o que está acontecendo.
Sincronizar padrões
A sincronização funciona em segundo plano para fazer upload e download de dados de e para o servidor. O comportamento de sincronização não deve distrair o usuário.
Os intervalos de sincronização precisam ser definidos com base em limites relevantes para o ambiente de saúde em que o app é usado. Exemplo: sincronização a cada 12 horas no ambiente comunitário ou a cada 15 minutos em uma unidade de saúde. Ter os intervalos de sincronização automática corretos minimizam a necessidade de sincronização manual.

Assegure aos usuários que, mesmo com o app off-line, eles ainda podem concluir as tarefas e que as mudanças serão enviadas quando a conexão for retomada.

Evite entrar em detalhes sobre quando a sincronização vai tentar se conectar à Internet novamente.

Priorizar os dados que são sincronizados para que os profissionais de saúde possam concluir o fluxo de trabalho. Por exemplo: em uma instalação em que os pacientes são encaminhados para outro profissional de saúde, priorize a sincronização do cartão que acabou de ser finalizado.

Evite sincronizar primeiro as informações irrelevantes, como toda a lista de pacientes ou o histórico de visitas antigo não relacionado às tarefas de hoje.
Indicador de progresso da sincronização
Um indicador de progresso da sincronização aparece quando o conteúdo está sendo sincronizado do servidor. O indicador de progresso deve mostrar visualmente que a sincronização está funcionando.
Adicione um indicador de progresso apenas nas telas principais, como a lista de pacientes ou o cartão de pacientes. Forneça uma estimativa de quanto tempo a sincronização levará, mostrando a porcentagem de download concluído.

Barra de carregamento que mostra claramente o progresso em andamento.

Evite uma roda de carregamento girando. Não ficou claro se ele está parado ou progredindo.
Sincronizar carimbos de data/hora
Os carimbos de data/hora de sincronização informam aos profissionais de saúde quando as informações foram atualizadas pela última vez. As marcações de tempo ajudam os profissionais de saúde a:
- Saiba se eles estão analisando as informações mais atualizadas.
- Verifique se o app está sendo sincronizado e atualizado conforme o esperado.
- Para garantir a continuidade do atendimento, continue de onde o profissional de saúde anterior parou.
Use os carimbos de data/hora com moderação e só os exiba quando importante, como na lista de tarefas ou no cartão de um paciente.

Mostre quando as informações foram atualizadas pela última vez e no contexto para ajudar as pessoas a saber se faz muito tempo desde a sincronização.

Não mostre carimbos de data/hora para todos os dados, por exemplo, quando o número de telefone foi atualizado. Evite uma lista longa de quais dados foram sincronizados. Mostrando muita precisão de hora e data se tiver passado mais de 24 horas.
Sincronizar lembretes
Os lembretes de sincronização são exibidos quando o dispositivo fica off-line por muito tempo ou quando o usuário precisa executar uma ação para sincronizar o dispositivo.
Use lembretes para comunicar aos usuários a necessidade de sincronizar o aplicativo e como fazer isso.

Lembre as pessoas a um determinado intervalo de sincronização, quando apropriado. Use um tom amigável ao comunicar a necessidade de sincronizar.

Evite comunicações alarmantes ou fazer as pessoas se sentirem mal por não terem feito a sincronização.

Lembre as pessoas de sincronizar os dispositivos quando ele ultrapassar o limite definido para o tipo de assistência médica (instalação ou comunidade).

Muitos lembretes podem ser irritantes e frustrar os usuários. Só envie mensagens de erro quando a ação for urgente.
Sincronização manual
A sincronização manual substitui as configurações padrão e permite que os usuários façam a sincronização agora. Isso pode ser feito na página de sincronização manual ou diretamente no cartão do paciente. A página de sincronização mostra quando a última sincronização aconteceu e para quando a próxima está programada. O ideal é que os intervalos de sincronização automática minimizem a necessidade de sincronização manual.
A sincronização manual pode ser útil para profissionais de saúde que estão fora na comunidade o dia todo e querem sincronizar quando estiverem em casa à noite com uma conectividade melhor.

Na página de sincronização manual, veja quando foi a última sincronização e para quando a próxima está programada. Inclua um botão para "Sincronizar agora".

Quando não há histórico de sincronização, os profissionais de saúde têm dificuldade para resolver problemas e saber o que esperar.

Quando os profissionais de saúde estiverem distribuindo pacientes entre si, ofereça uma maneira de sincronizar imediatamente o histórico, exibindo um botão "Sincronizar agora" no cartão do paciente. Como alternativa, isso também pode ser feito com uma sincronização baseada em eventos.

Evite permitir que os usuários selecionem dados específicos para sincronizar. É muito complexo e granular.
Mensagens de erro e solução de problemas
As mensagens de erro aparecem quando uma função não é concluída, por exemplo, não há pacientes na lista.
Mostre a mensagem de erro na tela relevante. Ajude as pessoas a resolver problemas com uma descrição clara do que não está funcionando e por quê. Em seguida, dê instruções sobre como resolver o problema. Se a primeira solução não funcionar, apresente um segundo conjunto de instruções do que tentar. Sempre ofereça outras maneiras para as pessoas receberem ajuda por mensagem ou ligação.

Use uma mensagem de erro que descreva o que está errado e as etapas de correção. Inclua instruções para acessar as configurações do sistema.

Evite mensagens de erro genéricas que não expliquem o que há de errado ou forneçam sugestões de correção.