Partilhar: WhatsApp
aulify
UC UC02284 · T. Multimédia

Ficha 01 · UX, wireframes e análise de problemas

Conceitos UX, analisar wireframe com problemas, criar user flow
Versão · Aluno
Tempo · 90 minutos
Cotação · 100 pontos
Aluno(a)
Turma
Data
Objectivos da ficha

Grupo I · Verdadeiro ou Falso (20 pontos)

  1. UX Design é sinónimo de UI Design — ambos se referem à aparência visual de um produto. ___

  2. Um wireframe low-fi deve usar tipografia real e cores da marca para ajudar o cliente a visualizar o produto final. ___

  3. Auto Layout no Figma funciona de forma semelhante ao CSS Flexbox — distribui elementos numa direcção com padding e gap controlados. ___

  4. O "happy path" num user flow representa o percurso ideal sem erros ou excepções. ___

  5. Componentes no Figma são elementos reutilizáveis — alterar o componente principal actualiza todas as instâncias. ___

  6. O Figma Inspect permite que os developers copiem directamente CSS production-ready para implementar na aplicação. ___

  7. Edge cases incluem cenários como: estado vazio, erro de rede, utilizador não autenticado e input inválido. ___

  8. Um sitemap mostra o design visual de cada ecrã de um produto. ___

  9. A transição de wireframe low-fi para high-fi deve acontecer antes de qualquer validação da estrutura com stakeholders. ___

  10. Wireframes high-fi devem incluir tipografia definida, componentes reais e espaçamento preciso. ___

  1. F — UX foca na experiência e funcionamento; UI foca na aparência visual. São disciplinas relacionadas mas distintas.

  2. F — wireframe low-fi é deliberadamente esquemático, sem tipografia real nem cores da marca. A "feiura" é intencional para focar na estrutura.

  3. V — Auto Layout usa os mesmos conceitos: direcção, alignment, padding, gap, grow/fill.

  4. V — happy path = fluxo ideal sem erros.

  5. V — é a principal vantagem dos componentes: single source of truth.

  6. F — o CSS gerado pelo Figma Inspect é uma referência, não código production-ready. Precisa de adaptação.

  7. V — são todos edge cases obrigatórios a documentar.

  8. F — um sitemap mostra a hierarquia de páginas/ecrãs, não o design visual.

  9. F — a transição deve acontecer após a validação da estrutura em low-fi.

  10. V — tipografia, componentes e espaçamento preciso são características do high-fi.


Grupo II · Analisar wireframe e identificar 5 problemas de UX (45 pontos)

Descrição do wireframe

O seguinte wireframe descreve um ecrã de página de produto de uma loja online de calçado para mobile (375px).

Estrutura (de cima para baixo):

┌─────────────────────────────────────┐
│ [×] Fechar                            20px height, canto superior esquerdo
├─────────────────────────────────────┤
│                                     │
│           [Foto do produto]           imagem única, sem gallery              1800×1200px            │
│                                     │
├─────────────────────────────────────┤
│ Nome: "Sapatilha Running Pro X200"    12px, cinza claro Preço: 89.99                         10px
├─────────────────────────────────────┤
│ Descrição (300 palavras de texto    │
│ contínuo, sem formatação,           │
│ parágrafo único)                    │
├─────────────────────────────────────┤
│ Seleccionar tamanho:                │
│ [36][37][38][39][40][41][42][43]      botões 24×24px                                     │
│         [ADICIONAR AO CARRINHO]       botão 30px height, alinhado à direita
├─────────────────────────────────────┤
│ Avaliações de clientes:             │
│ [texto muito longo com 15 reviews   │
│ todas expandidas]                   │
└─────────────────────────────────────┘

2.1 Identifica cinco problemas de UX neste wireframe. Para cada problema, indica: o elemento problemático, por que é um problema, e a solução proposta. (35 pts — 7 pts cada)

Problema 1 — Botão "Fechar" com 20px height e posição no canto superior esquerdo (7 pts) - Elemento: botão [×] Fechar, 20px. - Problema: touch target abaixo do mínimo de 44px. Zona de polegar mais difícil (canto superior). Acção comum mas inacessível. - Solução: aumentar para 44×44px mínimo. Considerar mover para bottom sheet close handle ou usar botão voltar na navigation bar em vez de modal com fechar.

Problema 2 — Botões de tamanho 24×24px (7 pts) - Elemento: botões de selecção de tamanho [36][37]...[43]. - Problema: touch target de 24px é muito abaixo do mínimo de 44px. Acção crítica (seleccionar o tamanho antes de comprar) com o pior touch target do ecrã. - Solução: aumentar para mínimo 44×44px por botão. Em mobile, um scroll horizontal de pills seria melhor que tentar colocar 8 tamanhos em linha.

Problema 3 — Nome e preço com texto demasiado pequeno (12px e 10px) (7 pts) - Elemento: nome do produto a 12px, preço a 10px. - Problema: tamanho mínimo recomendado para texto de leitura é 16px. 10-12px é ilegível para muitos utilizadores (especialmente com problemas de visão). O preço é informação crítica para a decisão de compra. - Solução: nome do produto: 20-24px bold. Preço: 22-26px, destaque visual (negrito ou cor).

Problema 4 — Descrição de 300 palavras em parágrafo único sem formatação (7 pts) - Elemento: bloco de texto de 300 palavras. - Problema: bloco de texto denso é inlegível em mobile. Utilizadores em mobile não lêem textos longos linearmente — fazem scan. Sem hierarquia, não conseguem encontrar a informação que procuram. - Solução: reduzir o texto para os pontos essenciais (bullets de características em 5-8 itens). Restante texto acessível via "Ver mais" (expand). Usar bullets, emojis ou ícones para tornar scannable.

Problema 5 — Botão "Adicionar ao carrinho" de 30px, alinhado à direita (7 pts) - Elemento: botão de compra, 30px height, alinhado à direita. - Problema: o CTA principal (comprar) tem apenas 30px de altura (abaixo do mínimo de 44px) e está alinhado à direita, onde o acesso com o polegar pode ser difícil dependendo da posição do ecrã. Deve ser o elemento mais proeminente do ecrã. - Solução: botão full-width (100%) de 52-60px height, posicionado fixo no fundo do ecrã (sticky bottom), sempre visível sem scroll.

2.2 Redessena (em texto descritivo) o wireframe corrigido, aplicando as cinco soluções. (10 pts)

Wireframe corrigido — Produto Mobile:

[HEADER — 60px fixo] ← Botão Voltar (44×44px) | Título truncado | Partilhar (44×44px) | Carrinho (44×44px)

[GALERIA — 280px] Carrossel swipe horizontal de imagens. Indicadores de paginação (dots). Botão favorito (40×40px) sobreposto no canto.

[INFO PRINCIPAL — padding 16px] Nome produto: "Sapatilha Running Pro X200" — 20px, bold Preço: 89,99€ — 26px, bold, cor destaque (verde) Rating: ★★★★☆ (4.2) · 127 avaliações → tap abre reviews

[TAMANHOS — padding 16px] Label: "Escolhe o teu número" Scroll horizontal de pills (44×44px mínimo cada): [36] [37] [38] [39] [40] [41] [42] [43] "Guia de tamanhos →" (link)

[DESCRIÇÃO — padding 16px] H3: "Características" • Sola de amortecimento reactivo • Cabedal em mesh respirável • Drop: 8mm • Peso: 285g [Ver mais...] → expande o texto completo de 300 palavras

[AVALIAÇÕES — padding 16px] "Avaliações (127)" — 3 reviews mostradas [Ver todas as avaliações →]

[CTA FIXO NO FUNDO — 80px, position sticky bottom] Fundo branco, shadow superior. Preço (18px) | [Botão "Adicionar ao carrinho" — 52px height, full remaining width, cor primária]


Grupo III · Criar user flow (35 pontos)

Contexto

A ReadApp é uma app de gestão de leitura. O utilizador pode: 1. Registar-se ou fazer login. 2. Pesquisar e adicionar livros à lista de leitura. 3. Marcar livros como "A ler", "A ler agora" ou "Lido". 4. Escrever uma review de um livro lido.

3.1 Cria o user flow completo para o processo "Escrever uma review de um livro já marcado como Lido", desde que o utilizador abre a app até submeter a review. Inclui o happy path e pelo menos dois edge cases. (25 pts)

User flow — Escrever review na ReadApp

[INÍCIO] Utilizador abre a app
        
[Decisão] Utilizador está autenticado?
    NÃO  [Ecrã de login]  Login bem sucedido?
              NÃO  [Erro: credenciais inválidas]  retry  [Ecrã de login]
              SIM  
    SIM  

[Ecrã Home / Lista de leitura]
        
[Utilizador navega para aba "Lido"]
        
[Decisão]  livros na lista "Lido"?
    NÃO  [Estado vazio: "Ainda não marcaste livros como Lidos."] 
           [CTA: "Explorar livros"]  [Pesquisa]
    SIM  

[Lista de livros Lidos]
        
[Utilizador toca num livro]
        
[Ecrã de detalhe do livro]
        
[Utilizador toca em "Escrever review"]
        
[Ecrã de review]
  - Avaliação de 1-5 estrelas
  - Campo de texto (máx 1000 chars)
  - Botão "Publicar review"
        
[Utilizador preenche e toca em "Publicar"]
        
[Decisão] Avaliação (estrelas) foi seleccionada?
    NÃO  [Erro inline: "Por favor, selecciona uma avaliação"]  retry
    SIM  

[Decisão] Texto tem pelo menos 10 caracteres?
    NÃO  [Erro inline: "A review precisa de pelo menos 10 caracteres"]  retry
    SIM  

[Submit para servidor]
        
[Decisão] Rede disponível?
    NÃO  [Toast: "Sem ligação à internet. Tenta novamente."]
           [Opção: Guardar rascunho]  retry quando rede voltar
    SIM  

[Sucesso: review publicada]
[Toast: "Review publicada!"]
        
[Redireccionamento para ecrã do livro com review visível]
        
[FIM]

Edge cases documentados: 1. Lista "Lido" vazia — estado vazio com CTA. 2. Validação de campos incompletos (sem estrelas, texto demasiado curto). 3. Erro de rede ao submeter — com opção de guardar rascunho.

3.2 Explica a diferença entre "happy path" e "edge case" e dá dois exemplos de edge cases que a equipa de desenvolvimento frequentemente esquece. (10 pts)

Happy path: o percurso ideal e mais comum — onde o utilizador tem todos os dados correctos, está autenticado, a rede funciona e tudo corre como esperado. É o fluxo que os designers e developers tendem a desenhar primeiro.

Edge case: cenários que ocorrem mas são menos frequentes ou representam estados de erro, excepção ou uso não previsto. São críticos para a qualidade da experiência — uma app que trata bem os edge cases parece mais profissional e confiável.

Dois edge cases frequentemente esquecidos:

  1. Estado vazio (empty state): o utilizador abre uma lista, feed ou histórico que ainda não tem conteúdo. O que mostra? Muitas apps mostram apenas uma lista em branco sem nenhuma orientação. A boa prática é mostrar uma ilustração amigável + texto explicativo + CTA para a próxima acção óbvia. Exemplo: lista de favoritos vazia → "Ainda não tens favoritos. Explora o catálogo ↗".

  2. Perda de dados ao navegar para trás: o utilizador preenche um formulário longo (registo, checkout, review) e toca no botão de voltar do sistema. A maioria das implementações básicas perde todos os dados introduzidos sem aviso. A boa prática: mostrar um dialog de confirmação ("Tens alterações não guardadas. Sair?") ou guardar automaticamente um rascunho local.