Pular para conteúdo

Metodologia

Introdução

Durante o desenvolvimento deste projeto, a equipe adotou práticas baseadas nas metodologias ágeis, como SCRUM e XP, com adaptações específicas que consideram o contexto do projeto e a flexibilidade da equipe. Este documento descreve como essas metodologias foram aplicadas e adaptadas às necessidades do projeto, explicando as práticas utilizadas para o gerenciamento e organização do trabalho.

Objetivo

O objetivo deste documento é detalhar as metodologias ágeis utilizadas pela equipe, especificando como o SCRUM e o XP foram adaptados para melhor atender às características e aos desafios do projeto. Busca-se oferecer uma estrutura de trabalho equilibrada entre flexibilidade e rigor, promovendo entregas contínuas e de alta qualidade.

Metodologias de Desenvolvimento

SCRUM

O SCRUM foi escolhido para organizar o desenvolvimento em ciclos regulares. As principais cerimônias foram adaptadas da seguinte maneira:

  • Daily's diárias assíncronas: Realizadas em formato assíncrono, com o envio de atualizações individuais sobre o andamento das tarefas, possibilitando uma comunicação mais eficiente e adaptada aos horários dos integrantes.
  • Reunião de Review e Planning: Acontecem semanalmente para avaliar o progresso da sprint, revisar o que foi concluído e planejar a próximo ciclo de trabalho.
  • Sprints flexíveis: Cada sprint possui duração variável, de acordo com a complexidade das tarefas e a disponibilidade da equipe.

XP

Para garantir uma maior qualidade no desenvolvimento, algumas práticas de XP foram aplicadas:

  • Trabalho em dupla (pair programming): Implementado em tarefas críticas, priorizando momentos que exijam decisões importantes.
  • Feedback contínuo e melhoria: Utilizamos feedback constante em cada iteração para ajustar e melhorar o código, maximizando a satisfação da equipe e a estabilidade do software.

Comunicação

A equipe adota uma abordagem híbrida de comunicação para garantir o alinhamento e a rápida resolução de dúvidas:

  • Comunicação Informal e Direta: Realizada pelo WhatsApp entre os membros do grupo para troca rápida de informações e atualizações sobre o projeto.
  • Comunicação Formal com o Monitor: Via Telegram, onde as dúvidas e alinhamentos são comunicados ao monitor, mantendo registro das discussões e revisões.
  • Alinhamentos presenciais em aula: Conversas diretas de alinhamento entre os membros ocorrem durante as aulas, proporcionando uma comunicação mais clara e produtiva.

Padrões de Commits

Conforme as diretrizes do Conventional Commits, utilizaremos commits semânticos para garantir a compreensão clara das mudanças no histórico do projeto. Essa convenção facilita a rastreabilidade e a padronização.

Tipo e Descrição

Os tipos de commit utilizados no projeto são:

  • feat: Adição de um novo recurso (MINOR).
  • fix: Correção de um bug (PATCH).
  • docs: Alterações na documentação.
  • test: Modificações em testes.
  • build: Alterações em arquivos de build e dependências.
  • perf: Ajustes de performance.
  • style: Alterações de formatação, sem impacto no código.
  • refactor: Refatorações que não mudam a funcionalidade.
  • chore: Tarefas de configuração e manutenção.
  • ci: Mudanças relacionadas à integração contínua.
  • raw: Arquivos de configuração e parâmetros.
  • cleanup: Remoção de código desnecessário e ajustes de legibilidade.
  • remove: Exclusão de arquivos ou funcionalidades obsoletas.

Recomendação de commit:

  • Comece o commit colocando o seu tipo, seguido de ":" e uma breve descrição do que foi feito.
  • Escreva na terceira pessoa.
  • Inicie a descrição com letra maiúscula e finalize com um ponto final.
  • (Opcional) Detalhe mais a fundo o que foi feito na descrição do commit.

Exemplo: git commit -m "docs: Revisão da metodologia."

Referências Bibliográficas

CONVENTIONAL COMMITS 1.0.0. Disponível em: https://www.conventionalcommits.org/en/v1.0.0/. Acesso em: 12 nov. 2024.

Bibliografia

BOURQUE, Pierre; FAIRLEY, Richard E. (ed.). SWEBOK: Guide to the Software Engineering Body of Knowledge. IEEE, 2014. Disponível em: https://www.computer.org/education/bodies-of-knowledge/software-engineering.

Autor(es): Jéssica Eveline, 2024.

Histórico de Versões

Tabela 1 - Histórico de versões.

Versão Descrição Autor(es) Data Revisor(es) Data de Revisão
1.0 Criação do documento de metodologia e padrões de commit Jéssica Eveline 12/11/2024 Marcelo Adrian 12/11/2024
1.1 Padronização de Referências Bibliográficas, Bibliografia e Autor(es) Felipe Rodrigues 23/11/2024 Marcelo Adrian 24/11/2024