Ir para o conteúdo

Metodologias

Este documento busca descrever as abordagens utilizadas durante o processo de desenvolvimento do projeto Visualeasy. As metodologias adotadas para o projeto se baseiam no desenvolvimento ágil de software; são elas: Scrum e XP, detalhadas a seguir.

Scrum

O Scrum é um framework de gerenciamento de projetos, onde o conceito principal é a ideia de finalizar um projeto mais rápido, com melhor qualidade, otimizando os recursos humanos e materiais. Além disso, potencializa o trabalho em equipe com foco no cumprimento dos prazos estipulados por meio do acompanhamento da evolução do projeto. Essa metodologia define várias atividades que devem ocorrer durante o processo de desenvolvimento.

No contexto do projeto Visualeasy, as seguintes atividades foram adotadas: Product Backlog, Sprints, Sprint Planning, Sprint Review. Cada atividade é descrita nos próximos tópicos.

Product Backlog

O Product Backlog é uma lista contendo todas as funcionalidades desejadas para um produto. Trata-se de uma lista dinâmica de requisitos do projeto, ou seja, as atividades e limitações que o projeto deve realizar ou está sujeito para que seja bem sucedido.

O Product Backlog do projeto Visualeasy pode ser visualizado aqui. As issues do projeto são definidas a partir das histórias de usuário descritas no Product Backlog.

Sprint

Sprint, no framework Scrum, é um período de tempo limitado a um mês ou menos, no qual uma versão incremental e usável do produto é desenvolvida. No nosso contexto, as Sprints foram definidas de acordo com os épicos do projeto. As Sprints podem ser visualizadas aqui.

Sprint Planning

Sprint Planning é um evento de planejamento onde será definido quais tarefas do Product Backlog serão feitas na próxima Sprint.

No contexto do projeto Visualeasy, as Sprints serão compostas de entregas semanais, intituladas Releases. Durante as reuniões semanais com os Product Owners (POs), os avanços realizados durante a execução das Sprints serão apresentadas aos POs.

Daily Meeting

O Daily Meeting é uma reunião diária, normalmente com duração de 15 minutos, para discutir o que foi feito por cada membro da equipe, qual o plano para as próximas 24 horas e o que tanto está impedindo o time de avançar. O objetivo é deixar todos os integrantes cientes do trabalho um dos outros.

No contexto da equipe Visualeasy, o Daily Meeting será realizado de segunda à sexta-feira, durante reunião às 20h na plataforma Discord, e cada integrante deverá falar sobre o que fez no dia em relação ao projeto, o que pretende fazer no dia seguinte e seus impedimentos para trabalhar. O relato de cada integrante será documentado no drive da equipe. Aos sábados não haverá reunião do grupo, e cada integrante apenas preencherá o documento de Daily Meeting. Aos domingos não será realizado Daily Meeting.

Sprint Review

Sprint Review é um momento de validação e verificação que ocorre antes do Sprint planning. Durante essa revisão, são analisadas as entregas da Sprint anterior e sua qualidade. Após essa análise, a atividade pode ser concluída ou pode voltar para o Product Backlog, associada com um pedido de correção. Durante esse evento também é discutido dificuldades enfrentadas e pontos de melhoria para a próxima sprint.


XP

Programação extrema, ou XP, é uma estrutura de desenvolvimento de software ágil que visa produzir software de maior qualidade, adotando a estratégia de constante acompanhamento e realização de vários pequenos ajustes durante o desenvolvimento de software. XP é a mais específica das estruturas ágeis no que diz respeito a práticas de engenharia apropriadas para o desenvolvimento de software.

Para o desenvolvimento mais ágil do projeto Visualeasy, duas atividades do XP estão sendo utilizadas, e são detalhadas a seguir.

Programação em Pares

A produção do software é feita em pares, isso significa que duas pessoas focam em resolver um determinado problema. A ideia por trás dessa prática é a possibilidade de uma revisão contínua do código, identificação de eventuais erros no momento da digitação, e uma solução mais rápida aos problemas.

Integração Contínua

A Integração Contínua é uma prática utilizada para construir ou integrar as etapas do desenvolvimento de um software, de modo que o código principal permaneça sem bugs ao final de cada uma das etapas. No nosso contexto, utilizamos o GitHub para fazer o versionamento do sistema e, a cada nova construção ou integração de diferentes funcionalidades, é realizada a revisão dos seus critérios de aceitação.


Referências


Versionamento

Data Versão Descrição Autor(es)
31/07/2022 1.0 Adiciona metodologias do projeto Bruna Santos
22/08/2022 1.1 Refatora tópico de Scrum Bruna Santos