Skip to content

Repositório destinado ao desenvolvimento do A.P.I da equipe The Achievers - DSM/1º SEM.

Notifications You must be signed in to change notification settings

TheAchieversDSM/API-2021.2

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


A.P.I - The Achievers

EquipeSobreStatusTecnologiasExecuçãoOrganizaçãoUser StoriesProtótipoRequisitosBacklog do ProdutoBacklog das SprintsBurndownEntregas

👥 Equipe:

Função Nome GitHub & LinkedIn
Scrum Master Evora de Castro
Product Owner Fernando Satoru Eto
Dev Team Gizeli Martins Fonseca
Dev Team Maria Clara Alves de Faria
Dev Team Mariana Ayumi Tamay
Dev Team Matheus Henrique Lemes Sakuragui
Dev Team Rikio Anzai

Instituição: Fatec São José dos Campos - Prof. Jessen Vidal

Curso: Desenvolvimento de Software Multiplataforma/1º Semestre

🔎 Sobre o projeto:

Esse projeto está sendo desenvolvido de acordo com os requisitos acordados com o cliente, o qual pediu um portal de informações, tanto para docentes, quanto para discentes, a fim de exibir avisos que seguem um determinado filtro. Os comunicados são visualizados de maneira hierárquica e, devido ao recurso de filtro, a busca por esses será mais sucinta, resolvendo o problema raíz: o grande volume de mensagens recebidas e, consequentemente, perdidas devido à grande procura durante a pandemia do novo Covid-19.

📑 Status do projeto: concluído ✔️

💻 Tecnologias utilizadas até o momento:

Voltar ao início

🔨 Executando a aplicação:

Você pode acessar por esse link: aqui!

Ou então,

Primeiramente, certifique-se se tem o Python, caso não tenha, acesse aqui

 # Clone este repositório;
 
 # Redirecione-se à pasta referente ao repositório clonado;
 
 # Abra o prompt de comando e confirme se este está com o endereço da pasta correto;
   
 cd API-2021-2
 
 # Instale os requisitos para rodar a aplicação;
   
 pip install -r requirements.txt
 
 # Você terá que alterar as informações do Banco de Dados MySQL;
 
 ## Caso não possua o MySQL clique nesse link! https://dev.mysql.com/downloads/windows/installer/8.0.html%22%3E
 
 # Abra o app.py, insira essas informações e substitua com as suas credenciais:
 
 app.config['MYSQL_HOST'] = 'localhost'
 app.config['MYSQL_USER'] = 'root'
 app.config['MYSQL_PASSWORD'] = '*sua senha*'
 app.config['MYSQL_DB'] = 'fatec_api'

 # E insira as suas credenciais.

 # Abra o MySQL Workbench e se conecte com seu BD;
 
 # Após isso abra o script localizado em  "src/static/db" e o execute os seguintes arquivos:
 
 ## Primeiramente, o 'fatec_api.sql'
 
 ## Após isso, execute o 'script_api.sql'
 
 # Execute a aplicação;
   
 app.py
 
 # Acesse o link no qual a aplicação está hospedada;
   
 http://127.0.0.1:5000/
 
# Para acessar como administrador use:
 
> E-mail: adm@fatec.sp.gov.br
> Senha: fatec
 
# RM para funcionários:

 > Diretor: 11111
 > Coordenador: 22222
 > Secretaria: 33333
 > Professor: 44444

📋 Organização do repositório:

📁 doc - pasta que contém o wireframe, tanto para desktop, quanto para mobile;

| - 📂 prototipo - pasta que contém demonstração do protótipo em arquivos .gif;

| - 📂 burndown - pasta que contém arquivos de demonstração do esforço distribuído pela equipe.

📁 scr - pasta que contém duas outras, templates e static;

| - 📂 templates - pasta que contém os códigos de estruturação (.html);

| - 📂 static - pasta que contém outras duas, css e img;

| - - 📂 js - pasta que contém os códigos referentes à javascript (.js);

| - - 📂 db - pasta que contém tudo referente à parte de banco de dados;

| - - 📂 css - pasta que contém os códigos de estilização (.css);

| - - 📂 img - pasta que contém a logo da FATEC e o favicon, além de outra pasta, footer;

| - - - 📂 footer - pasta que contém todas as imagens utilizadas no rodapé das páginas.

Voltar ao início

📌 User Stories:

Quem Quer A fim de
Cliente Priorizar a divulgação de informações da FATEC-SJC Não ocorrer a perda de informações importantes
Administrador Privilégios de acesso Administrar e controlar as permissões de acesso de todos os usuários do sistema
Diretor Reunir informações por evento Repassá-las a todos os servidores da unidade
Secretário administrativo Selecionar informações por curso Publicar o edital interno das disciplinas do respectivo curso
Secretário acadêmico Classificar as informações por assunto Enviá-las para professores e alunos
Coordenador Organizar as informações por disciplinas Divulgá-las aos respectivos professores
Professor Notificar os alunos sobre datas importantes Informar sobre entregas de atividades e realização de exames
Aluno Receber informações sobre estágios e palestras Participar dos processos seletivos e eventos

Voltar ao início

📝 Protótipo:

Página de login;

Página de cadastro;

Página de feed para usuários sem privilégios;

Página de feed para administrador;

Página para envio de informações.

Voltar ao início

📃 Requisitos:

Código Requisitos funcionais
RF. #1 Envio de informações para divulgação via sistema (Administrador)
RF. #2 Possibilidade de anexar documentos (e.g.: PDFs, Docs etc.)
RF. #3 Visualização de informações de divulgação via sistema de modo seletivo (filtro por data, interessados, curso etc.)
RF. #4 Acesso às informações do sistema através de perfis de usuário/papéis (adm, usuário comum, coordenador de curso etc.)
Código Requisitos Não-Funcionais
RNF. #1 Desenvolver o back-end com a linguagem Python 3+ e o microframework Flask
RNF. #2 Utilizar o sistema gerenciador de banco de dados MariaDB/MySQL/PostGresSQL
RNF. #3 Utilizar HTML-5 para arquitetura da informação da aplicação
RNF. #4 Utilizar CSS-3 para especificação do layout e demais características de renderização da interface com o usuário
RNF. #5 Utilizar o GitHub para controle de versão dos artefatos de projeto
RNF. #6 Interface com navegação intuitiva (e.g.: acesso à informação com poucos "cliques")
RNF. #7 Sistema responsivo
RNF. #8 Utilizar JavaScript no front-end (obs: pode fazer uso de framework)

Voltar ao início

📊 Backlog do Produto:

Nome da tarefa Prioridade Status
Wireframe da interface de login do status Alta Completa
Wireframe da interface de cadastro de usuário Alta Completa
Wireframe da interface de divulgação de informações prioritárias Alta Completa
Repositório do projeto Alta Completa
Documentação do sistema Alta Completa
Interface de login do sistema Alta Completa
Interface de cadastro de usuário Alta Completa
Interface de divulgação de informações prioritárias Alta Completa
Outras interfaces conforme solicitação do cliente Alta Completa
Ajustes na responsividade do sistema Alta Completa
Tornar o protótipo navegável Alta Completa
Ajustes na interface Alta Completa
Ajustes com JavaScript Média Completa
Modelos conceitual e lógico do banco de dados Alta Completa
Modelo físico do banco de dados Alta Completa
Conexão do banco de dados Alta Completa
Tornar o protótipo funcional Alta Completa
Aplicação do sistema em um servidor de aplicação Alta Completa
Introdução das hierarquias Alta Completa
Introdução da autenticação do usuário Alta Completa
Ajustes dos filtros Alta Completa
Controle de hierarquia (CRUD) Alta Completa
Estilizar páginas Média Completa
Ajustes no banco de dados Alta Completa
Introdução da funcionalidade total dos filtros Alta Completa
Introdução da função "arquivar" Média Completa
Introdução da função "anexar" Alta Completa
Testes unitários do sistema Alta Completa
Testes de integração Alta Completa
Testes de aceitação Alta Completa
Melhorias contínuas Alta Completa

Voltar ao início

📈 Backlog das sprints:

Sprint Nome da tarefa Prioridade Status
#1 Wireframe da interface de login do status Alta Completa
#1 Wireframe da interface de cadastro de usuário Alta Completa
#1 Wireframe da interface de divulgação de informações prioritárias Alta Completa
#1 Repositório do projeto Alta Completa
#1 Documentação do sistema Alta Completa
#1 Interface de login do sistema Alta Completa
#1 Interface de cadastro de usuário Alta Completa
#1 Interface de divulgação de informações prioritárias Alta Completa
Sprint Nome da tarefa Prioridade Status
#2 Ajustes na responsividade do sistema Alta Completa
#2 Tornar o protótipo navegável Alta Completa
#2 Ajustes na interface Alta Completa
#2 Ajustes com JavaScript Média Completa
#2 Modelo conceitual e lógico do banco de dados Alta Completa
#2 Modelo físico do banco de dados Alta Completa
#2 Conexão do banco de dados Alta Completa
#2 Tornar o protótipo funcional Alta Completa
#2 Aplicação do sistema em um servidor de aplicação Alta Completa
Sprint Nome da tarefa Prioridade Status
#3 Introdução das hierarquias Alta Completa
#3 Introdução da autenticação do usuário Alta Completa
#3 Ajustes dos filtros Alta Completa
#3 Controle de hierarquia (CRUD) Alta Completa
#3 Estilizar páginas Médio Completa
#3 Ajustes no banco de dados Alta Completa
Sprint Nome da tarefa Prioridade Status
#4 Introdução da funcionalidade total dos filtros Alta Completa
#4 Introdução da função "arquivar" Média Completa
#4 Introdução da função "anexar" Alta Completa
#4 Testes unitários do sistema Alta Completa
#4 Testes de integração Alta Completa
#4 Testes de aceitação Alta Completa
#4 Melhorias contínuas Alta Completa

Voltar ao início

📉 Burndown:

Sprint #1;

Sprint #2;

Sprint #3;

Sprint #4;

Voltar ao início

🚩 Entregas

Sprint Data Início Data Entrega Links
#1 30.08.2021 19.09.2021 🏁
#2 20.09.2021 10.10.2021 🏁
#3 18.10.2021 07.11.2021 🏁
#4 08.11.2021 28.11.2021 🏁

Voltar ao início