SP02.Definição dos Requisitos - ricardosilva21A/G07 GitHub Wiki

Sprint 2 — Definição de Requisitos

Esta secção apresenta os requisitos da aplicação de pesquisa e gestão de estacionamentos, incluindo o modelo de casos de uso, as regras de negócio, os requisitos não funcionais e os pressupostos e restrições do projeto.

Nesta Sprint são detalhados os casos de uso das áreas Pesquisa de Estacionamento (incluindo regras, localização e carregadores elétricos), Informação Comunitária e Gestão de Conta e Autenticação. As áreas Gestão e Administração e Integração e Gestão de Fontes de Informação são detalhadas em sprints posteriores. Os processos de negócio correspondentes estão descritos na página Definição do Negócio.

1. Modelo de Casos de Uso

1.1 Atores

  • Utilizador — Pessoa que utiliza a aplicação para pesquisar e consultar informação sobre estacionamento e, quando autenticada, contribuir com observações. É o ator principal dos casos de uso desta Sprint.
  • Sistema de Localização — Serviço externo que fornece a posição do dispositivo do utilizador. É um ator secundário.

1.2 Casos de Uso — Pesquisa de Estacionamento

Diagrama de Casos de Uso — Pesquisa de Estacionamento

Descrição dos Casos de Uso

  • UC1.01 — Pesquisar estacionamento — O utilizador pesquisa alternativas de estacionamento a partir de um local (a sua localização ou outro à escolha) e dos critérios selecionados (preço, distância, disponibilidade, horário e características), obtendo os resultados ordenados.
  • UC1.02 — Consultar detalhes do estacionamento — O utilizador consulta a informação de um local: localização, tarifas, horários e características.
  • UC1.03 — Comparar alternativas — O utilizador compara dois ou mais locais de estacionamento com base na informação disponível (custo, distância, horário e características).
  • UC1.04 — Consultar disponibilidade — O utilizador consulta a disponibilidade estimada de um local, quando existe informação para esse efeito.
  • UC1.05 — Consultar regras de estacionamento — O utilizador consulta as regras e restrições aplicáveis ao local, como limites de permanência e condições de utilização.
  • UC1.06 — Consultar carregadores elétricos — O utilizador consulta a localização, o tipo, a potência e o estado dos carregadores associados a um local, quando disponíveis.
  • UC1.07 — Obter localização do utilizador — A aplicação obtém a posição atual do dispositivo, mediante autorização do utilizador. Ator secundário: Sistema de Localização.

Relações entre casos de uso (para o diagrama)

  • UC1.02 parte de um resultado de UC1.01.
  • UC1.03 parte de dois ou mais resultados de UC1.01.
  • UC1.04, UC1.05 e UC1.06 estendem UC1.02 (<<extend>>): são consultados a partir dos detalhes de um local, apenas quando existem dados.
  • UC1.07 estende UC1.01 (<<extend>>): só ocorre quando o utilizador escolhe pesquisar pela localização atual. Caso contrário, o utilizador indica o local manualmente.

1.3 Casos de Uso — Informação Comunitária

Diagrama de Casos de Uso — Informação Comunitária

Descrição dos Casos de Uso

  • UC2.01 — Submeter observação — O utilizador autenticado comunica informação sobre as condições de estacionamento na via pública, indicando a disponibilidade observada. O sistema regista o autor, o local e a data e hora.
  • UC2.02 — Consultar observações — O utilizador consulta as observações submetidas por outros utilizadores sobre um local.
  • UC2.03 — Consultar pontos de contribuição — O utilizador consulta os pontos associados às suas contribuições.
  • UC2.04 — Confirmar ou refutar observação — O utilizador indica se uma observação de outro utilizador corresponde ou não à situação que encontrou.
  • UC2.05 — Sinalizar observação — O utilizador sinaliza uma observação incorreta ou inadequada para análise posterior pelo administrador.

1.4 Casos de Uso — Gestão de Conta e Autenticação

Diagrama de Casos de Uso — Gestão de Conta e Autenticação

Descrição dos Casos de Uso

  • UC3.01 — Registar conta — O utilizador cria uma conta na aplicação e confirma o seu email.
  • UC3.02 — Iniciar sessão — O utilizador autentica-se na aplicação.
  • UC3.03 — Recuperar palavra-passe — O utilizador recupera o acesso à conta.
  • UC3.04 — Gerir perfil — O utilizador consulta e atualiza os dados do perfil.
  • UC3.05 — Eliminar conta — O utilizador solicita a eliminação da sua conta.
  • UC3.06 — Terminar sessão — O utilizador termina a sessão na aplicação.

2. Regras de Negócio

As regras de negócio definem as condições que a aplicação deve respeitar ao disponibilizar informação e permitir a interação dos utilizadores.

  • RN01 — Origem da Informação: a origem da informação deve ser identificada sempre que seja conhecida.
  • RN02 — Atualidade da Informação: a data da última atualização deve ser apresentada quando estiver disponível.
  • RN03 — Disponibilidade de Estacionamento: a disponibilidade só deve ser apresentada quando existirem dados que a suportem e deve ser identificada como uma estimativa, nunca como uma garantia de lugares livres.
  • RN04 — Informação Comunitária: as observações dos utilizadores devem ser identificadas como informação comunitária, distinguindo-se da informação disponibilizada por fontes oficiais.
  • RN05 — Comparação de Tarifas: a comparação de custos deve considerar as condições tarifárias conhecidas, incluindo os períodos de aplicação, para o período de estacionamento indicado pelo utilizador (hora de chegada e duração prevista).
  • RN06 — Regras de Estacionamento: as regras e restrições apresentadas devem corresponder ao local a que dizem respeito.
  • RN07 — Pontos de Contribuição: os pontos são atribuídos ao utilizador que submete observações, segundo critérios a definir em sprints posteriores.
  • RN08 — Registo de Observações: toda a observação deve ter associados o utilizador que a submeteu, o local, a disponibilidade observada e a data e hora.
  • RN09 — Moderação: as observações sinalizadas como incorretas ou inadequadas podem ser analisadas e removidas pelo administrador.

3. Requisitos Não Funcionais

Os requisitos não funcionais definem características de qualidade e condições de funcionamento da aplicação.

  • RNF01 — Usabilidade: um utilizador sem formação prévia deve conseguir realizar uma pesquisa e consultar os detalhes de um local sem recorrer a instruções.
  • RNF02 — Desempenho: os resultados de uma pesquisa devem ser apresentados em, no máximo, 3 segundos em 95% dos casos, em condições normais de rede.
  • RNF03 — Segurança: as palavras-passe devem ser armazenadas de forma cifrada e a comunicação entre a aplicação e o servidor deve ser protegida.
  • RNF04 — Privacidade: o tratamento dos dados pessoais e da localização deve cumprir o RGPD. A localização só é utilizada com a autorização do utilizador e apenas para apresentar alternativas relevantes.
  • RNF05 — Fiabilidade da Informação: a aplicação deve distinguir a informação oficial da informação comunitária e indicar a atualidade dos dados quando conhecida.
  • RNF06 — Compatibilidade: a aplicação deve funcionar em [sistemas operativos móveis e versões mínimas a definir pela equipa].

4. Pressupostos e Restrições

Esta secção identifica condições consideradas no desenvolvimento da solução e fatores externos que podem limitar o seu funcionamento.

  • PC01 — Disponibilidade de Fontes: a informação disponível depende das fontes que possam ser consultadas ou integradas.
  • PC02 — Atualização dos Dados: nem todas as fontes disponibilizam informação em tempo real.
  • PC03 — Cobertura Geográfica: a cobertura da informação depende dos dados disponíveis para cada localidade.
  • PC04 — Integrações Externas: a integração com serviços externos depende da disponibilidade e das condições de acesso desses serviços.
  • PC05 — Informação Comunitária: as observações dos utilizadores complementam a informação existente, mas não constituem necessariamente informação oficial.
  • PC06 — Localização: a apresentação de informação baseada na posição atual depende da disponibilidade e das permissões de acesso à localização do dispositivo.
  • PC07 — Âmbito: a aplicação agrega e disponibiliza informação, não gere fisicamente os parques e não inclui reservas nem pagamentos no âmbito atual.

Back Home

⚠️ **GitHub.com Fallback** ⚠️