Versão Autor O que fez Quando Onde
1.0 Pedro Igor Criou o documento. 30/09/2019 Remoto
1.1 Pedro Igor Adicionou mais detalhes aos cenários 30/09/2019 Remoto
1.2 Pedro Igor Adicionou mais cenários para a tela "Meu Saldo." 08/10/2019 Remoto
1.3 Pedro Igor Adicionou mais cenários de login/cadastro e menu lateral esquerdo. 01/11/2019 Remoto
1.4 Pedro Igor Refatorou cenários de acordo com os resultados da inspeção realizada pelo Dâmaso. 01/11/2019 Remoto
1.5 Dâmaso Júnio Formatou tabela de versão. 19/11/2019 Remoto
1.6 Pedro Igor Adicionando rastreabilidade e formatando o artefato. 23/11/2019 Remoto

Cenários

Rastreabilidade

Como o intuito dos cenários é criar cenas da utilização da aplicação, por consequência, grande parte (se não todos) dos requisitos elicitados participam da rastreabilidade deste artefato.

Pré-rastreabilidade:

Rich Picture

Elicitação:

5W2H
Análise de Discuso
Bainstrorming
Entrevista
Introspecção
Observação
Questionário
Story Telling
Requisitos Elicitados


1. Sumário

  1. Sumário
  2. Introdução
  3. Metodologia
  4. Questionário
  5. Resultados
  6. Conclusão
  7. Referências

2. Introdução

Cenários são utilizados para o desenvolvimento de possibilidades de utilização de determinado produto. Sendo assim, são definidas características de cenários reais para a imaginação de algo atualmente imaginável porém de possível execução. É definido um objetivo que comumente é a realização de uma tarefa disponível, logo em seguida são descritos características como contexto, atores participantes, recursos necessários, cenas deste cenário, restrições aos participantes das cenas assim como exceções que possam interromper o cumprimento do objetivo inicial. Cenários podem ser úteis para descrição em geral de requisitos visto que são mais fáceis de serem visualizados pelas pessoas.

3. Metodologia

A metologia se baseou no livro Engenharia de Software - Ian Sommerville 9ª Edição que define o que são cenários e como utilizá-los. A técnica é útil por ser de simples interpretação por praticamente qualquer pessoa. Foram definidos então cenários baseados em possíveis utilizações de cada funcionalidade da aplicação.

4. Questionário

De acordo com o livro, cenários devem conter as seguinte características:

  1. Uma descrição do que o sistema e os usuários esperam quando o cenário se iniciar.
  2. Uma descrição do fluxo normal de eventos no cenário.
  3. Uma descrição do que pode dar errado e como isso é tratado.
  4. Informações sobre outras atividades que podem acontecer ao mesmo tempo.
  5. Uma descrição do estado do sistema quando o cenário acaba. A elicitação baseada em cenários envolve o trabalho com os stakeholders para identificar cenários e capturar detalhes que serão incluídos nesses cenários. Os cenários podem ser escritos como texto, suplementados por diagramas, telas etc. Outra possibilidade é uma abordagem mais estruturada, em que cenários de eventos ou casos de uso podem ser usados.

5. Resultados

Saldo


Histórico de transações

Objetivo: Visualizar o histórico de transações.

Contexto:

- Local: Tela "Meu Saldo".
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo e clica em "Meu saldo" ou em "Minha carteira" no menu lateral esquerdo.
- O usuário navega até as últimas opções.
- O usuário seleciona "Histórico de transações".
- O usuário visualiza transações caso haja.

Restrições: O usuário está restrito a visualizar suas transações se houver.

Excessões: Erro na conexão com a internet.


Solicitação de reembolso

Objetivo: Solicitar um reembolso.

Contexto:
- Local: Tela "Meu Saldo".
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário, Suporte da Yellow.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo e clica em "Meu saldo" ou em "Minha carteira" no menu lateral esquerdo.
- O usuário navega até as últimas opções.
- O usuário seleciona "Solicitar reembolso".
- O usuário seleciona o motivo pelo qual está solicitando um reembolso.
- O usuário clica em "Retornar a minha carteira".
- O suporte da Yellow pode analisar o motivo da solicitação.
- O suporte da Yellow disponibiliza o reembolso.

Restrições: Usuário está restrito a solicitar reembolso de saldo disponível.

Excessões: Erro na conexão com a internet. Atendimento Yellow pode não liberar o reembolso.


Centro de Ajuda

Objetivo: Encontrar ajuda na utilização.

Contexto:
- Local: Tela "Meu Saldo".
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo e clica em "Meu saldo" ou em "Minha carteira" no menu lateral esquerdo.
- O usuário navega até as últimas opções.
- O usuário seleciona "Acessar o centro de ajuda".
- O usuário seleciona no que deseja ser ajudado.

Restrições: O usuário está restrito a visualizar conteúdo sobre ajuda.

Excessões: Erro na conexão com a internet. Bug no app que não mostra o conteúdo a ser mostrado.


Pagar conta e serviços

Objetivo: Pagar uma conta ou serviço por meio do app.

Contexto:
- Local: Tela "Meu Saldo".
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo e clica em "Meu saldo" ou em "Minha carteira" no menu lateral esquerdo.
- O usuário navega até a opção "Serviços e contas".
- O usuário seleciona a conta a qual deseja pagar.
- O usuário preenche informações sobre a conta a ser paga. (No momento é mostrado apenas um formulário em branco.)

Restrições: Usuário está restrito a pagar algum tipo de conta ou serviço.

Excessões: Erro na conexão com a internet. Bug no app que não mostra o conteúdo a ser mostrado.


Pagar conta e serviços

Objetivo: Pagar uma conta ou serviço por meio do app.

Contexto:
- Local: Tela "Meu Saldo"
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo e clica em "Meu saldo" ou em "Minha carteira" no menu lateral esquerdo.
- O usuário navega até a opção "Serviços e contas".
- O usuário seleciona a conta a qual deseja pagar.
- O usuário preenche informações sobre a conta a ser paga. (No momento é mostrado apenas um formulário em branco.)

Restrições: Usuário está restrito a pagar algum tipo de conta ou serviço.

Excessões: Erro na conexão com a internet. Bug no app que não mostra o conteúdo a ser mostrado.


Recarga de celular

Objetivo: Recarregar número de celular.

Contexto:
- Local: Tela "Meu Saldo".
- Tempo: Qualquer momento.
- Pré-condição: Estar logado. Ter crédito suficiente para uma recarga de celular.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo e clica em "Meu saldo" ou em "Minha carteira" no menu lateral esquerdo.
- O usuário navega até "Recargas de celular e planos" e seleciona uma operadora.
- O usuário informa um número de celular para que seja realizado o serviço.
- O usuário seleciona o valor da recarga e clica em "Próximo".
- O usuário confirma o pagamento com o saldo na Yellow.

Restrições: Usuário está restrito a fazer recargas nas operadoras disponíveis, restrito ao valor máximo de crédito disponível na conta.

Excessões: Erro na conexão com a internet.


Transferir crédito

Objetivo: Transferir créditos entre contas.

Contexto:
- Local: Tela "Meu Saldo".
- Tempo: Qualquer momento.
- Pré-condição: Ambos os usuários estarem logados. Ter crédito em uma das contas.

Atores: Dois usuários.

Recursos: Smartphone.

Episódios:
- O usuário 1 e 2 abre o aplicativo e clica em "Meu saldo" ou em "Minha carteira" no menu lateral esquerdo.
- O usuário 1 e 2 navega até "Transferir dinheiro" e clica em "Enviar ou receber com QR".
- O usuário 2 informa o valor a ser enviado.
- O usuário 2 gera um QR Code para enviar o crédito, o usuário 1 recebe o crédito por meio do QR Code do usuário 1.

Restrições: Usuário 2 está restrito a enviar o crédito disponível na conta.

Excessões: Erro na conexão com a internet.


Adicionar crédito

Objetivo: Adicionar crédito a conta.

Contexto:
- Local: Tela "Meu Saldo".
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone, dinheiro para ser inserido na conta.

Episódios:
- O usuário abre o aplicativo e clica em "Meu saldo" ou clica em "Adicionar crédito" na tela inicial.
- O usuário seleciona "Adicionar crédito".
- O usuário seleciona o valor ser inserido e a forma de pagamento.
- O usuário confirma a compra de crédito.

Restrições: O usuário está restrito inserir as quantidades disponíveis.

Excessões: Erro na conexão com a internet. Boleto vencer.

Cadastro e Login


No Android e IOS

Objetivo: Criar uma conta ou entrar em uma conta existente.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Não estar logado.

Atores: Novo usuário ou usuário que reinstalou a aplicação.

Recursos: Smartphone

Episódios:
- O usuário quer utilizar o aplicativo.
- O usuário baixa a aplicação e abre.
- O usuário dá as permissões para acesso a conta do google ou facebook.
- O usuário pode utilizar o aplicativo se o login for feito com sucesso.

Restrições: O usuário está restrito a logar por meio de uma conta do Google.

Excessões: Falha na conexão na internet, erro ao digitar senha caso necessário.

Utilização


Centro de Ajuda (Tela principal)

Objetivo: Encontrar ajuda com carteira, bicicleta ou patinete.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário precisa de ajuda.
- O usuário clica no "?" na tela inicial.
- O usuário visualiza as opções de temas de ajuda disponíveis.
- O usuário seleciona um tema.
- O usuário especifica a ajuda que precisa selecionando as opções posteriormente disponibilizadas..

Restrições: O usuário está restrito a encontrar ajuda com carteira, patinete e bicicleta.

Excessões: Erro de conexão com a internet, erro ao mostrar contéudo.


Reportar problema

Objetivo: Reportar problema encontrado na utilização da aplicação.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
-O usuário quer informar problema.
-O usuário clica no "?" na tela inicial.
-O usuário seleciona "Report Issue".
-O usuário especifica o tipo de problema a ser reportado.
-O usuário segue o passo a passo solicitado pelo app.

Restrições:O usuário está restrito a reportar problema mecânicos, de veículos não encontrados, veículos atrapalhando a circulação e fazer uma queixa.

Excessões: Erro de conexão com a internet, erro ao mostrar contéudo.


Contatar suporte

Objetivo: Entrar em contato com o suporte.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário quer entrar em contato com a equipe de suporte.
- O usuário clica no "?" na tela inicial.
- O usuário seleciona "Contact Us".
- O usuário especifica o tipo de contato assim como o tema.
- O usuário escreve uma mensagem entre 15 e 200 caracteres e clica em "Send".

Restrições: O usuário está restrito a contatar suporte sobre os motivos listados na aplicação.

Excessões: Erro de conexão com a internet, erro ao mostrar contéudo.


Encontrar patinete

Objetivo: Encontrar um patinete disponível para utilização.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário quer encontrar um patinete.
- O usuário clica em "patinete" na tela inicial.
- O usuário visualiza num mapa patinetes disponíveis e sua localização.
- O usuário se dirige ao local do patinete.

Restrições: O usuário está restrito a encontrar um patinete no mapa.

Excessões: Falha na aplicação ao mostrar localização, patinete foi alugado enquanto o usuário chegava ao local.


Encontrar bicicleta

Objetivo: Encontrar uma bicicleta disponível para utilização.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário procurando por uma bicicleta.

Recursos: Smartphone.

Episódios:
- O usuário quer encontrar uma bicicleta.
- O usuário clica em "bike" na tela inicial.
- O usuário visualiza num mapa bicicletas disponíveis e sua localização.
- O usuário se dirige ao local da bicicleta.

Restrições: O usuário está restrito a encontrar uma bicicleta no mapa.

Excessões: Falha na aplicação ao mostrar localização, bicicleta foi alugada enquanto o usuário chegava ao local.


Liberar veículo

Objetivo: Liberar um veículo para utilização.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone e veículo (bicicleta, patinete)

Episódios:
- O usuário encontra um veículo.
- O usuário clica em "Scan" na tela inicial.
- O usuário liga o flash casso necessário e tenta capturar o QR Code no veículo.
- O usuário pode digitar o código caso o episódio anterior falhe ou o usuário prefira.
- O usuário pode utilizar o veículo caso haja créditos suficientes para um aluguel.

Restrições: O usuário está restrito a desbloquear um veículo e alugar.

Excessões: Rasura no QR Code do veículo.


Utilização da Yellow - Lazer

Objetivo: Utilizar uma bicicleta para lazer.

Contexto:
- Local Físico: Parque.
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado e ter créditos na conta.

Atores: Usuário em momento de lazer.

Recursos: Smartphone

Episódios:
- O usuário precisa de uma bicicleta para lazer.
- O usuário utiliza o smartphone para procurar uma bicicleta.
- O usuário desbloqueia e aluga ao encontrar uma bicicleta.
- O usuário utiliza a bicicleta para se divertir.
- O usuário bloqueia novamente a bicicleta.

Restrições: O usuário está restrito a escolher uma bicicleta dentre as disponibilizadas.

Excessões: Não encontrar bicicleta disponível, bicicleta disponível com defeito.


Utilização da Yellow - Trabalho

Objetivo: Utilizar uma bicicleta para o transporte para o trabalho.

Contexto:
- Local Físico: Residência do usuário, parada de ônibus, estação de metrô.
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado e ter créditos na conta.

Atores: Usuário indo trabalhar.

Recursos: Smartphone

Episódios:
- O usuário precisa de uma bicicleta para ir da parada de ônibus para o local de trabalho.
- O usuário utiliza o smartphone para procurar uma bicicleta.
- O usuário desbloqueia e aluga uma bicicleta após econtrá-la.
- O usuário utiliza a bicicleta para se locomover até o local de trabalho.
- O usuário bloqueia novamente a bicicleta.


Utilização da Yellow - Transporte até Faculdade

Objetivo: Utilizar uma bicicleta para o transporte até a faculdade.

Contexto:
- Local Físico: Residência do usuário, parada de ônibus, estação de metrô.
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado e ter créditos na conta.

Atores: Usuário indo para a faculdade.

Recursos: Smartphone

Episódios:
- O usuário precisa de uma bicicleta para ir da parada de ônibus até a faculdade.
- O usuário utiliza o smartphone para procurar uma bicicleta.
- O usuário desbloqueia e aluga uma bicicleta após encontrá-la.
- O usuário utiliza a bicicleta para se locomover até a faculdade.
- O usuário bloqueia novamente a bicicleta.


Utilização da Yellow - Transporte entre prédios da faculdade

Objetivo: Utilizar uma bicicleta para o transporte entre prédios da faculdade.

Contexto:
- Local Físico: Prédio da faculdade.
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado e ter créditos na conta.

Atores: Usuário se locomovendo pela faculdade.

Recursos: Smartphone

Episódios:
- O usuário precisa de uma bicicleta para se locomover entre os prédios da universidade.
- O usuário utiliza o smartphone para procurar uma bicicleta.
- O usuário desbloqueia e aluga após encontrar uma bicicleta.
- O usuário se locomove para os locais necessários.
- O usuário bloqueia novamente a bicicleta.


Ganhe corridas grátis

Objetivo: Ganhar corridas grátis.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo.
- O usuário clica nos 3 tracinhos na horizontal.
- O usuário seleciona "Get free rides".
- O usuário compartilha seu código com amigos.
- O usuário ganha corridas de acordo com a quantidade de amigos que entraram na aplicação utilizando seu código.

Restrições: O usuário está restrito a ganhar corridas grátis compartilhando a aplicação com amigos.

Excessões: Erro de conexão com a internet, erro ao mostrar contéudo.


Promoções

Objetivo: Aplicar promoções.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário quer aplicar código de promoção.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo.
- O usuário clica nos 3 tracinhos na horizontal.
- O usuário seleciona "Promotions".
- O usuário clica em "Add promotion".
- O usuário insere código de promoção.
- O usuário usufrui de benefícios da promoção.

Restrições: Usuário está limitado a utilizar de promoções disponivéis.

Excessões: Erro de conexão com a internet, erro ao mostrar contéudo, código de promoção antigo ou inválido.


Minhas viagens

Objetivo: Visualizar viagens realizadas.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
-O usuário abre o aplicativo.
-O usuário clica nos 3 tracinhos na horizontal.
-O usuário seleciona "My trips".
-O usuário visualiza as viagens

Restrições:O usuário está restrito a visualizar as próprias viagens realizadas.

Excessões: Erro de conexão com a internet, erro ao mostrar contéudo, demora ao processar viagem recém finalizada.


Termos e condições

Objetivo: Visualizar termos e condições.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo.
- O usuário clica nos 3 tracinhos na horizontal.
- O usuário seleciona "Terms & Conditions".
- O usuário visualiza os termos e condições de utilização.

Restrições: O usuário está restrito a visualizar os termos e condições de utilização.

Excessões: Erro de conexão com a internet, erro ao mostrar contéudo.


Deslogar (sair) da conta

Objetivo: Sair da conta.

Contexto:
- Local: Tela inicial.
- Tempo: Qualquer momento.
- Pré-condição: Estar logado.

Atores: Usuário.

Recursos: Smartphone.

Episódios:
- O usuário abre o aplicativo.
- O usuário clica nos 3 tracinhos na horizontal.
- O usuário seleciona "Logout".
- O usuário tem a conta removida.

Restrições: Usuário está restrito a sair de sua conta.

Excessões: Erro de conexão com a internet, erro ao mostrar contéudo.

6.Conclusão

Os cenários foram úteis para visualizar na prática a utilização da aplicação, o caminho feliz da utilização. O detalhamento dos cenários permitem até mesmo que sirvam como uma espécie de guia de utilização da aplicação assim como visualizar possíveis erros que o usuário possa encontrar.

7. Referências

Sommerville, I. Engenharia de Software. 9a Edição. Addison Wesley. 2007.