Documento de Visão
Histórico de revisão
Data | Versão | Descrição | Autor(es) |
---|---|---|---|
15/07/2022 | 0.1 | Abertura do documento de Visão | Matheus Henrick |
16/07/2022 | 0.2 | Adição dos tópicos 1, 2 e 3 | Matheus Henrick |
17/07/2022 | 0.3 | Adição dos tópicos 4, 5 e 6 | Matheus Henrick |
24/07/2022 | 1.0 | Adição do tópico 7 | Matheus Henrick |
25/07/2022 | 1.0 | Atualizacao do tópico 7 | Abdul Hannan |
Introdução
Objetivo
O objetivo deste documento é detalhar as etapes do desenvolvimento do projeto Cebraspe Tracker, definir o escopo do produto, os requisitos funcionais e não funcionais e os problemas enfrentados na execução.
Escopo
Cebaspre tracker é a solução perfeita para estudantes que estao em processo seletivo tanto pra ajudar as pessoas que perdem sua vaga por falta de entendiento sobre o processo seletivo tanto quanto as pessoas que sofrem de uma ansiedade pesada, para poder tranquiliza-las e tirar das costas dessas pessoas o peso de ficar atualizando todos os dias a pagina do concurso público PAS.
Definições, acrônimos e abreviações
Abreviação | Significado |
---|---|
UnB | Universidade de Brasília |
FGA | Faculdade UnB Gama |
MDS | Métodos de Desenvolvimento de Software |
Posicionamento
Oportunidade de Negócios
O projeto Cebraspe Tracker surge como uma forma de atacar um problema muito comum em pessoas que buscam entrar na faculdade, que é a perda de chamadas no processo seletivo, o que acaba por gerar um longo processo de preenchimento de vagas e interrompe o sonho de muita gente.
Descrição do Problema
O problema é | Que afeta | Cujo impacto é | Uma boa solução seria |
---|---|---|---|
A perda de chamadas nos processos seletivos | Estudantes em busca de uma vaga na universidade | Estudantes terem o seu sonho de entrar em uma universidade adiado ou encerrado | Notificar os estudantes que foram chamados para o processo seletivo |
Posição do Produto
Destinado a pessoas que estão à espera do resultado do processo seletivo, a fim de evitar que estes percam uma chamada e poupá-los do trabalho de ter que atualizar a página do Cebraspe a todo instante.
Descrição dos Envolvidos e dos Usuários
Resumo dos envolvidos
Nome | Descrição | Responsabilidades |
---|---|---|
Orientadores | Professora da disciplina de MDS | Orientar e guiar a equipe |
Equipe de desenvolvimento de Software | Estudantes da disciplina de MDS da UnB FGA | Desenvolver e gerenciar o projeto |
Descrição dos Usuários
Nome | Responsabilidades |
---|---|
Estudantes em processo seletivo | Cadastrar-se na plataforma |
Equipe de desenvolvimento de Software | Documentar, desenvolver, testar e implementar o software |
Professora da disciplina de MDS | Orientar e avaliar o trabalho realizado pela equipe |
Principais Necessidades dos Usuários e dos Envolvidos
Usuário | Necessidade | Solução Atual | Solução Proposta |
---|---|---|---|
Estudantes | Meio de notificar sobre chamadas em andamento | Verificar constantemente a página do Cebraspe | Enviar notifiação por e-mail |
Ambiente dos Usuários
Os usuários poderão utilizar a aplicação por meio de navegadores web.
Perfis dos Envolvidos
Equipe de Desenvolvimento de Software
Representantes | Tipo | Responsabilidade | Critério de sucesso | Envolvimento |
---|---|---|---|---|
Abdul Hannan, Asafe Salumiel Souza, Gabriel De Souza Fonseca Ribeiro, João Lucas Pinto Vas, Matheus Henrick Dutra | Estudantes de MDS na UnB FGA | Criar e manter documentos; Desenvolver e testar o software | Completar o projeto proposto dentro do período estipulado e atendendo à todos os requisitos | Alto |
Avaliadores
Representantes | Tipo | Responsabilidade | Critério de sucesso | Envolvimento |
---|---|---|---|---|
Carla Rocha | Professora de MDS na UnB FGA | Avaliar qualidade do projeto criado | Transmitir conhecimento sobre projetos de software em grupo | Baixo |
Perfis dos Usuários
Representantes | Tipo | Responsabilidade | Critério de sucesso | Envolvimento |
---|---|---|---|---|
Interessados em ingressar na universidade | Estudantes em processo seletivo | Cadastrar-se na plataforma | Ser notificado de que seu nome consta na lista de chamada | Baixo |
Visão Geral do Produto
Perspectiva do Produto
O Projeto visa ser um facilitador do uso da plataforma do Cebraspe, dando segurança e praticidade aos alunos que estão à espera de uma chamada em processos seletivos. Para isso será utilizado a lista que será disponibilizada pelo próprio site, para que se possa realizar uma busca pelo nome de forma automatizada e notificar o usuário via e-mail.
Resumo das capacidades
Benefício para o Usuário | Recursos de suporte |
---|---|
Facilidade em se cadastrar | A aplicação disponibiliza uma interface com um campo para preenchimento do nome, e-mail e telefone, o usuário não terá a necessidade de criar uma conta |
Segurança na busca pelo nome | A aplicação notificará o estudante em caso deste ser chamado em um processo seletivo |
Funções do Produto
O projeto está encarregado de notificar o usuário caso o nome conste na lista de chamada, dando segurança e acabando com a necessidade de uma busca manual.
Suposições e dependências
- O usuário deverá ter um meio de se conectar à internet para acessar a aplicação.
- O usuário deverá ter um e-mail cadastrado na plataforma.
Recursos do Produto
Os usuários interessados no projeto terão acesso ao seguinte recurso: - Ser notificado via e-mail, caso seja chamado.
Restrições
Listagem de restrições externas e outras dependências:
- Ter um computador.
- Ter conexão à internet.
- Ter um e-mail cadastrado.
Restrições de Implementação
O sistema será implementado utilizando 2 principais tecnologias, sendo elas Django para o backend, webcrawler para leitura do html e React.js para o frontend.
Restrições externas
Dentre as restrições externas as que mais irão influenciar são a falta de experiência com as tecnologias, além de possíveis transtornos entre a equipe de desenvolvimento.
Restrições de Design
Toda a interação com o software deve ocorrer de forma a não causar dúvida no usuário. Para isso será necessário apenas que o usuário informe o nome, e-mail e telefone.
Restrições de Confiabilidade
Visando uma maior manutenibilidade do projeto pela comunidade, os desenvolvedores têm o comprometimento de manter uma cobertura de testes mínima de 90%.
Requisitos do Produto
Requisitos funcionais
Identificador | Requisito | Prioridade |
---|---|---|
RF1 | Deve ser possível realizar o CRUD de Usuário | Alta |
RF2 | O Aplicativo deve ter um Sistema para Login | Alta |
RF3 | Deve ter uma opção, Caso o usuário queira receber apenas notificações sobre a Chamadas ou todas as atualizações no site da SubPrograma/PAS. | media |
RF4 | Deve ter um recurso para enviar mensagem ao usuário se o nome dele for encontrado na chamada do cebraspe/pas. | Alta |
RF5 | O nome deve ser retirado da pool de inscritos caso ele tenha sido chamado | Media |
RF6 | Se houver nova chamada de convocados o sistema devera notificar o usuários por e-mail ou sms/whatsapp | Media |
RF7 | O primeiro web crawler deverá ler o html, identificar e salvar o link das consultas online no banco de dados | Alta |
RF8 | O segundo web crawler deverá ser capaz de pesquisar todos os nomes cadastrado e utilizá-lo como parâmetro para busca nos chamadas do subprograma do PAS | Alta |
RF9 | O segundo crawler deve pesquisar o nome do usuário registrados na barra de pesquisa da chamada/PAS e verificar na html e se encontrar o nome da pessoa atualize na sistema | Alta |
RF10 | Para subprogramas do Pas que estão tendo chamada de convocados ou terão em futuro deveria ter crawlers implementado que deve funcionar de forma autónoma | Media |
RF11 | Deve ter um crawler que rodar todos os dias para verificar se tem uma nova atualização no site | Media |
RF12 | Se tera atualizacao no edital do PAS crawler1 deve rodar para encontrar novo link para novo Chamada | Alta |
Requisitos não-funcionais
Identificador | Requisito | Prioridade |
---|---|---|
RNF1 | A interação com o usuário deve ser feita por meio de interface gráfica | Alta |
RNF2 | O software será desenvolvido para ambiente web | Alta |
RNF3 | O software deverá ser desenvolvido utilizando React.js,HTML,CSS3 e TypeScript para o Frontend | Alta |
RNF4 | O software deverá ser desenvolvido utilizando React express | Alta |
RNF5 | O software deverá ser desenvolvido utilizando o Mongodb como banco de dados | Alta |
RNF6 | O software deverá ser desenvolvido utilizando Scrapy e MIDDLEWARE com SELENIUM E SPLASH para o web crawler | Alta |
RNF7 | O software deverá ser desenvolvido utilizando a arquitetura MVT | Alta |
RNF8 | O desenvolvimento da aplicação será containerizado com o Docker | Alta |