Skip to content

Commit

Permalink
Merge pull request #27 from ResidenciaTICBrisa/developer
Browse files Browse the repository at this point in the history
Adicionando a documentação na main
  • Loading branch information
WillxBernardo authored Mar 23, 2024
2 parents 096ed28 + 66c2ea4 commit 0edd416
Show file tree
Hide file tree
Showing 14 changed files with 229 additions and 214 deletions.
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
database/
database/
wordpress/
.cache/
4 changes: 4 additions & 0 deletions docs/Atas/ata-modelo.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@

- [Ata da reunião 1](ata-reuniao1.md)
- [Ata da reunião 2](ata-reuniao2.md)
- [Ata da reunião 3](ata-reuniao3.md)

### ATA DE REUNIÃO - SPRINT 0
DD/MM/YYYY

Expand Down
4 changes: 2 additions & 2 deletions docs/Atas/ata-reuniao1.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@

- [Ata da reunião 2](ata-reuniao2.md)
### ATA DE REUNIÃO - SPRINT 0
08/03/2024

**Redator:** William Bernardo.

#### 1.Membros presentes e ausentes

**Presentes:** William Bernardo, Max Rohrer, Igor Brandão
**Presentes:** William Bernardo, Max Rohrer, Igor Brandão, Valessio Brito

**Ausentes:**

Expand Down
3 changes: 2 additions & 1 deletion docs/Atas/ata-reuniao2.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
- [Ata da reunião 1](ata-reuniao1.md)

### ATA DE REUNIÃO - SPRINT 0
15/03/2024
Expand All @@ -6,7 +7,7 @@

#### 1.Membros presentes e ausentes

**Presentes:** William Bernardo, Max Rohrer, Igor Brandão
**Presentes:** William Bernardo, Max Rohrer, Igor Brandão, Valessio Brito

**Ausentes:**

Expand Down
31 changes: 31 additions & 0 deletions docs/Atas/ata-reuniao3.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
- [Ata da reunião 1](ata-reuniao1.md)
- [Ata da reunião 2](ata-reuniao2.md)

### ATA DE REUNIÃO - SPRINT X
23/03/2024

**Redator:** Gustavo Linhares Lima

### 1. Membros presentes e ausentes
**Presentes:** William Bernardo, Max Rohrer, Igor Brandão, Gustavo Linhares, Valessio Brito

**Ausentes:**

### 2. Considerações iniciais da reunião

A reunião iniciou às 16:08

### 3. Pautas da reunião

**1ª Pauta - Acesso do cliente ao GitHub**

O cliente propôs que o mesmo tivesse acesso ao GitHub para que pudesse comentar as issues, permitindo, assim, que ele esteja atualizado, em tempo real, das evoluções no projeto. Foi concedido o acesso do cliente ao repositório.

**2ª Pauta - Revisão das entregas: wireframe, roadmap e documentação**

O cliente recebeu as entregas trabalhadas ao longo da sprint, e propôs revisá-las e entregar um feedback por escrito.


### 4. Considerações finais

A reunião se encerrou às 16:34.
46 changes: 46 additions & 0 deletions docs/arquitetura.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Decisão Arquitetônica - Divisão da Arquitetura em Frontend e Backend

## Problema
A necessidade de organizar a arquitetura do plugin de forma a separar claramente as responsabilidades entre a camada de apresentação (frontend) e a camada de lógica e dados (backend).

## Decisão
Dividir a arquitetura do plugin em frontend e backend, utilizando PHP como lógica de negócios no backend devido à necessidade do WordPress e HTML, CSS e JavaScript para o frontend.

## Status
Decidida

## Grupo
Arquitetura

## Suposições
- A equipe possui conhecimento e habilidades para implementar e manter a arquitetura proposta.

## Restrições
- O frontend e o backend devem se comunicar de forma eficiente e segura.
- O uso de PHP e SQL para backend está em conformidade com os padrões tecnológicos aceitos pela organização.

## Posições Consideradas
- Dividir a arquitetura em frontend e backend para separar claramente as responsabilidades e facilitar a manutenção e evolução do plugin.

## Argumento
A divisão da arquitetura em frontend e backend permite uma melhor organização do código, facilitando a manutenção e a evolução do plugin. O uso de PHP e SQL é uma escolha sólida para garantir a eficiência e a segurança das operações do plugin.

## Implicações
- A equipe precisará gerenciar dois conjuntos de código (frontend e backend), o que pode aumentar a complexidade do projeto.

## Decisões Relacionadas
- Decisões relacionadas à escolha de tecnologias específicas para o frontend e backend.
- Decisões relacionadas à arquitetura de comunicação entre o frontend e backend.

## Requisitos Relacionados
- Requisitos de desempenho para garantir que a comunicação entre o frontend e backend seja rápida e eficiente.
- Requisitos de segurança para proteger os dados transmitidos entre o frontend e backend.

## Artefatos Relacionados
- Documentos de design de interface do usuário para o frontend.
- Documentos de modelagem de dados para o backend.

## Princípios Relacionados
- Princípios de separação de responsabilidades para garantir que cada camada da arquitetura tenha uma função clara e específica.

![Arquitetura](./assets/images/Arquitetura.png)
Binary file added docs/assets/images/Arquitetura.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/images/Roadmap.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
35 changes: 26 additions & 9 deletions docs/backlog.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
Este documento oferece uma visão abrangente do backlog de nosso produto, destacando as funcionalidades, melhorias e tarefas prioritárias que nossa equipe de desenvolvimento planeja abordar. Ele atua como um guia essencial para alinhar nossos esforços com as demandas dos clientes e os objetivos empresariais, facilitando uma gestão eficiente do ciclo de desenvolvimento e garantindo a entrega constante de valor aos usuários finais.

## Histórico de Versões

| Data | Versão | Descrição | Autor |
|:----------:|:------:|:--------------------:|:-------------------------:|
| 10/03/2024 | 0.1 | Criação do Documento Backlog com épicos, funcionalidades | @WillxBernardo |
| 13/03/2024 | 0.2 | Criação do plugin protótipo que adiciona o formulário na página | @WillxBernardo |

| 10/03/2024 | 0.1.1 | Criação do Documento Backlog com épicos, funcionalidades | @WillxBernardo |
| 13/03/2024 | 0.1.2 | Criação do plugin protótipo que adiciona o formulário na página | @WillxBernardo |
| 20/03/2024 | 0.1.3 | Implementação do uso da localização do usário dentro do plugin | @Max-Rohrer20 |

## Épicos
| ID | DESCRIÇÃO | ID RELACIONADO (TEMA) |
Expand All @@ -22,9 +24,24 @@

## User Story

| ID | Tipo | Eu como | Desejo | De modo que | Prioridade | Status | ID RELACIONADO (FEATURES) |
|:-------:|:-------------:|:--------------:|:-----------------:|:-----------:|:----------:|:---------:|:-------------------------------:|
| US00 | Estudo | Dev | Enteder o funcionamento do wordpress e plugins | eu consiga implementar uma arquitetura de um plugin | --- | Em desenvolvimento | FT00 |
| US01 | Estudo | Dev | Enteder sobre as licenças de plugins | eu consiga diferenciar as licenças disponíveis | --- | Em desenvolvimento | FT00 |
| US02 | Funcional | Administrador | Quero validar um formulário | eu consigo aceitar/recusar os formulários | Alta | Não está em desenvolvimento | FT02 |
| US03 | Estudo | Dev | Enteder sobre como utilizar o openstreetmap em JS | eu consiga utilizar as ferramentas da API para criar mapas | --- | Não está em desenvolvimento | FT00 |
| ID | Eu como | Desejo | De modo que | FEATURES |
|:-------:|:--------------:|:-----------------:|:-----------:|:----------:|
| TS00 | Dev | Entender o funcionamento do wordpress e plugins | Eu consiga implementar uma arquitetura de um plugin | FT00 |
| TS01 | Dev | Entender sobre como utilizar o openstreetmap em JS | Eu consiga utilizar as ferramentas da API para criar mapas | FT00 |
| TS02 | Dev | Que o plugin possa ser utilizado por qualquer site que utilize o WordPress | O plugin possa ser utilizado por outras pessoas e/ou sites que se interessem por essa funcionalidade | FT00 |
| TS03 | Dev | Entender sobre a comunicação e manipulação do banco de dados do admin | O armazenamento dos formulários funcione corretamente | FT00 |
| TS04 | Dev | Entender sobre as funcionalidades que o WordPress oferece | Eu consiga estruturar de forma correta o código do plugin | FT00 |
| US00 | Administrador | Adicionar um formulário em qualquer página do meu site | Os usuários possam enviar os estabelecimentos/serviços | FT01 |
| US01 | Usuário | Enviar um formulário | Seja enviado informações relevantes sobre os locais amigáveis a comunidade LGBTQ+ | FT01 |
| US02 | Usuário | Ter um mapa juntamente com o formulário | Eu consiga marcar no mapa a localização do estabelecimento | FT01 |
| US03 | Usuário | Iniciar o mapa do formulário com minha localização | Seja mais fácil me situar dentro do mapa | FT01 |
| US04 | Usuário | Buscar a minha localização por meio de texto | Facilite o manuseio do mapa | FT01 |
| US05 | Usuário | Poder alterar a marcação dentro do mapa | Eu não precise estar fisicamente no estabelecimento que eu desejo apresentar no formulário | FT01 |
| US06 | Administrador | Enviar um e-mail ao usuário ao ele enviar suas respostas do formulário | O usuário tenha ciência de que suas respostas foram recebidas | FT01 |
| US07 | Administrador | Filtrar formulários enviados com conteúdo indesejado |O banco de dados seja o mais preservado | FT01 |
| US08 | Administrador | Validar os formulários enviados | Consiga aceitar/rejeitar os formulários | FT02 |
| US09 | Administrador | Eu acesse as respostas do formulário diretamente no painel do WordPress | Não seja necessário acessar toda vez o meu banco de dados | FT02 |
| US10 | Administrador | Enviar um e-mail ao usuário quando sua solicitação for respondida | O usuário tenha ciência do resultado do processamento | FT02 |
| US11 | Administrador | editar as informações de uma zona segura existente, como o nome, endereço e descrição | para manter as informações atualizadas | FT02 |
| US12 | Administrador | Poder adicionar um mapa na página | Seja exibido no mapa quais estabelecimentos já estão cadastrados | FT03 |
| US13 | Usuário | poder visualizar detalhes de uma zona segura, como o nome, endereço, descrição e classificação | decidir se é um local adequado para mim | FT03 |
17 changes: 16 additions & 1 deletion docs/preparandoambiente.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,19 @@ docker compose up -d

```
docker compose ps
```
```

- Em um navegador acesse as respectivas portas:

* Wordpress: localhost:8082
* PhpMyAdmin: localhost:8083

-> No wordpress faça a configuração incial para acessar o wordpress
-> No PhpMyAdmin faça login com Usuário: Admin e Senha: Admin


- Em teoria, o plugin LGBTQ+ Connect já é adicionado ao seu wordpress automaticamente, caso não esteja listado na aba plugins realize os seguintes passos, em caso contrário pode pular essa etapa.

* Na tela de plugins do wordpress clique em adicionar plugin, navegue para o repositório do projeto e selecione o arquivo zipado do plugin

- Em qualquer página do seu site escreva o seguinte shortcode: [meu_formulario]
183 changes: 1 addition & 182 deletions docs/roadmap.md
Original file line number Diff line number Diff line change
@@ -1,182 +1 @@
# **Roadmap para lançamento do Plugin para wordpress LGBTQ+ Connect**
## 1ª Release - 8/4:

- **Definição de Objetivos e Escopo:** Estabelecer os objetivos principais do plugin e o escopo do projeto.
- **Pesquisa e Análise:** Realizar pesquisa sobre as necessidades da comunidade LGBT e análise de plugins similares.
- **Criação do Wireframe:** Desenvolver o wireframe da interface do usuário do plugin.
- **Início do Desenvolvimento do Front-end:** Implementar o design da interface do usuário com HTML, CSS e JavaScript.


## Fase 1: Planejamento e Preparação

### Objetivos:
- Preparar o ambiente de desenvolvimento docker.
- Criar documentação no repositório do projeto.
- Definir o versionamento do projeto.

## Fase 2: Definição de Objetivos e Escopo

### Objetivos:
- Definir claramente os objetivos principais do plugin.
- Estabelecer o escopo do projeto, incluindo funcionalidades principais e secundárias.

### Atividades:
- Realizar reuniões com stakeholders para entender suas expectativas e necessidades.
- Criar um documento de escopo do projeto que descreva os objetivos, funcionalidades e limitações do plugin.

## Fase 3: Pesquisa e Análise

### Objetivos:
- Identificar as necessidades específicas da comunidade LGBT que o plugin deve atender.
- Analisar plugins similares para identificar pontos fortes e fracos.

### Atividades:
- Realizar entrevistas ou pesquisas com membros da comunidade LGBT para entender suas necessidades.
- Analisar plugins existentes no mercado para identificar funcionalidades relevantes e lacunas a serem preenchidas.

## Fase 4: Criação do Wireframe

### Objetivos:
- Visualizar a estrutura e o layout da interface do usuário do plugin.
- Validar a usabilidade e a navegabilidade do design proposto.

### Atividades:
- Criar esboços iniciais do wireframe com base nos requisitos e nas informações coletadas.
- Realizar testes de usabilidade com usuários para validar o design e fazer ajustes necessários.

## Fase 5: Início do Desenvolvimento do Front-end

### Objetivos:
- Transformar o design da interface do usuário em código funcional.
- Implementar a estrutura básica da interface do usuário com HTML, CSS e JavaScript.

### Atividades:
- Criar os arquivos HTML, CSS e JavaScript necessários para a interface do usuário.
- Desenvolver as funcionalidades básicas da interface, como formulários e botões.

## Fase 6: Início do plugin (Formulário)

### Objetivos:
- Criar o plugin que adiciona o formulário na página + funcionalidades + BD.

### Atividades:
- Criação do arquivo principal do plugin.
- Funcionalidade de adicionar um formulário na página.
- Adicionar configurações de plotagem do mapa + funcionalidades (Biblioteca: Leaflet).
- O envio dos formulários serem armazenados no BD do admin da página.
- Estilização do formulário.


## 2ª Release - 20/5:

- **Conclusão do Desenvolvimento do Front-end:** Finalizar a implementação do design da interface do usuário.
- **Início do Desenvolvimento do Back-end:** Criar a lógica do plugin com PHP ou outra linguagem de servidor.
- **Testes Iniciais:** Realizar testes básicos de funcionalidade e usabilidade.

## Fase 7: Conclusão do Desenvolvimento do Front-end

### Objetivos:
- Finalizar a implementação do design da interface do usuário.
- Garantir que a interface seja responsiva e acessível.

### Atividades:
- Revisar o código do front-end para garantir que esteja conforme o design.
- Realizar testes de compatibilidade com diferentes navegadores e dispositivos.
- Implementar melhorias de usabilidade e feedback visual.

## Fase 8: Início do Desenvolvimento do Back-end

### Objetivos:
- Criar a lógica do plugin para processar os dados enviados pelo formulário.
- Implementar a integração com o banco de dados para armazenamento dos dados.

### Atividades:
- Criar os arquivos PHP necessários para o back-end.
- Desenvolver a lógica para validar e processar os dados do formulário.
- Implementar a comunicação com o banco de dados para armazenar os dados enviados.

## Fase 9: Testes Iniciais

### Objetivos:
- Verificar se o front-end e o back-end estão integrados corretamente.
- Identificar e corrigir possíveis erros e bugs.

### Atividades:
- Realizar testes de integração entre o front-end e o back-end.
- Realizar testes de funcionalidade para garantir que todas as partes do plugin estejam operando corretamente.
- Corrigir erros e bugs identificados durante os testes.

## 3ª Release - 1/7:

- **Conclusão do Desenvolvimento do Back-end:** Finalizar a implementação da lógica do plugin.
- **Integração com a Plataforma de Rastreamento:** Integrar o plugin com a plataforma de rastreamento de áreas seguras.
- **Testes e Correções:** Realizar testes completos e corrigir quaisquer problemas identificados.
## Fase 10: Conclusão do Desenvolvimento do Back-end

### Objetivos:
- Finalizar a implementação da lógica do plugin no back-end.
- Garantir que o back-end esteja integrado corretamente com o front-end.

### Atividades:
- Revisar e refatorar o código do back-end para garantir sua qualidade.
- Implementar funcionalidades adicionais, se necessário.
- Realizar testes de integração entre o front-end e o back-end.

## Fase 11: Integração com a Plataforma de Rastreamento

### Objetivos:
- Integrar o plugin com a plataforma de rastreamento de áreas seguras.
- Garantir que o plugin seja compatível com a plataforma.

### Atividades:
- Estudar a documentação da plataforma de rastreamento.
- Implementar a integração do plugin com a plataforma.
- Realizar testes de integração para garantir que a integração esteja funcionando corretamente.

## Fase 12: Testes e Correções

### Objetivos:
- Realizar testes completos do plugin para identificar e corrigir problemas.
- Preparar o plugin para a fase final de lançamento.

### Atividades:
- Realizar testes de funcionalidade em todas as partes do plugin.
- Realizar testes de desempenho para garantir que o plugin seja eficiente.
- Corrigir quaisquer problemas identificados durante os testes.
## 4ª Release - 5/8:

- **Testes Finais e Revisão:** Realizar testes finais em ambiente de produção e revisar o plugin.
- **Lançamento e Promoção:** Lançar oficialmente o plugin e promovê-lo para a comunidade LGBT.
- **Monitoramento e Manutenção Inicial:** Monitorar o desempenho do plugin após o lançamento e realizar manutenções conforme necessário.
## Fase 13: Testes Finais e Revisão

### Objetivos:
- Realizar testes finais em ambiente de produção para garantir a estabilidade e segurança do plugin.
- Revisar o plugin para identificar possíveis melhorias e correções finais.

### Atividades:
- Realizar testes de integridade do plugin em um ambiente de produção simulado.
- Verificar a compatibilidade do plugin com diferentes ambientes de hospedagem.
- Revisar o código e a documentação do plugin para identificar possíveis melhorias e correções.

## Fase 14: Lançamento e Promoção

### Objetivos:
- Lançar oficialmente o plugin para a comunidade LGBT e promovê-lo para aumentar sua adoção.
- Garantir que o plugin seja divulgado de forma eficaz para alcançar o público-alvo.

### Atividades:
- Preparar materiais de marketing, como postagens em redes sociais, e-mails e comunicados à imprensa.
- Realizar campanhas de promoção do plugin em comunidades LGBT e em plataformas online.
- Monitorar a resposta da comunidade e ajustar a estratégia de promoção conforme necessário.

## Fase 15: Monitoramento e Manutenção Inicial

### Objetivos:
- Monitorar o desempenho e a utilização do plugin após o lançamento.
- Realizar manutenções iniciais para corrigir possíveis problemas e garantir a continuidade do funcionamento do plugin.

### Atividades:
- Configurar ferramentas de monitoramento para acompanhar o uso e o desempenho do plugin.
- Corrigir eventuais bugs ou problemas relatados pela comunidade.
- Avaliar a necessidade de atualizações futuras com base no feedback dos usuários e nas tendências do mercado.
![Roadmap](./assets/images/Roadmap.jpg)
3 changes: 3 additions & 0 deletions docs/wireframe.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Wireframe

<iframe style="border: 1px solid rgba(0, 0, 0, 0.1);" width="720" height="1198" src="https://www.figma.com/embed?embed_host=share&url=https%3A%2F%2Fwww.figma.com%2Fproto%2F81177TkOOjDw813LQQHjJH%2FWireframe---formul%25C3%25A1rio%3Fnode-id%3D66-43%26starting-point-node-id%3D66%253A43%26mode%3Ddesign%26t%3DBJbHgGQKFgn2dXtv-1" allowfullscreen></iframe>
Loading

0 comments on commit 0edd416

Please sign in to comment.