O projeto utiliza a metodologia ágil Scrum, que fornece uma estrutura baseada em iterações curtas, feedback constante e adaptação às mudanças, visando a melhoria contínua do projeto e a comunicação constante por meio de reuniões diárias, com entregas no final de cada sprint.
O versionamento é realizado pelo GitHub Desktop, que está sendo utilizado para gerenciar o repositório hospedado no GitHub.
O projeto segue a seguinte convenção para o nome de branches:
main
: versão estável já testada do softwareunstable
: versão já testada do software, porém instáveltesting
: versão em testes do softwaredev
: versão de desenvolvimento do software
Quanto à gerência de issues, o projeto adota a seguinte convenção para etiquetas:
bug
: Indica problemas identificados no código que precisam ser corrigidosdesign
: Para atividades relacionadas ao design de interfaces de usuário ou arquitetura de softwaredevelopment
: Para tarefas relacionadas ao desenvolvimento de novos recursos ou funcionalidadesdiscontinued
: Indica que uma tarefa foi descontinuada ou não será mais prosseguidadocumentation
: Tarefas envolvendo a criação ou atualização de documentos, manuais ou outras informaçõesenhancement
: Para tarefas relacionadas a melhoria de funcionalidades existentes ou otimização de códigoinfrastructure
: Tarefas relacionadas à configuração, manutenção ou atualização da infraestrutura de softwareproject management
: Para atividades relacionadas ao planejamento, coordenação e gerenciamento do projetotests
: Para atividades relacionadas a elaboração e execução de testes de software
Na configuração do projeto, optamos por utilizar a branch principal para simplificar o fluxo de trabalho. Cada integrante da equipe é responsável por suas respectivas páginas, o que facilita a divisão de tarefas e evita conflitos.
A gerência de commits e merges é feita de forma cuidadosa: os desenvolvedores realizam commits frequentes com mensagens claras que descrevem as alterações. Antes de realizar um merge na branch principal, é feita uma revisão dos códigos, garantindo que todas as mudanças sejam consistentes e estejam em conformidade com os padrões do projeto.
A divisão dos papéis foi determinada seguindo a metodologia Scrum:
- Scrum Master: Nicolas Gabriel
- Product Owner: Daianne Paula
- Equipe de Desenvolvimento: Daianne Paula, Felipe Kutschera, Junio Flausino, Larissa Tribst, Letícia Moreira, Nicolas Gabriel
- Equipe de Design: Larissa Tribst
A equipe está organizando e distribuindo as tarefas por meio do quadro Kanban disponível no GitHub. Essa abordagem otimiza a visualização do progresso e a gestão das atividades, permitindo que todos os membros acompanhem o fluxo de trabalho e colaborem de maneira mais integrada:
O quadro segue a seguinte distribuição:
-
Product Backlog: Esta coluna marca o início de todas as tarefas das etapas que o grupo irá trabalhar, servindo como um repositório de ideias e requisitos.
-
A Fazer: Representa as tarefas que serão abordadas na sprint atual, oferecendo uma visão clara das prioridades a serem executadas.
-
Em Progresso: Aqui estão as tarefas que a equipe já iniciou, acompanhando o desenvolvimento em tempo real.
-
Feito: Esta seção contém as tarefas que passaram com sucesso pelos testes e estão prontas para serem entregues ao usuário final.
As ferramentas empregadas no projeto são:
-
Visual Studio Code ✔️
-
Teams ✔️
-
Figma e Lucidchart ✔️
-
O Visual Studio Code oferece integração nativa com o GitHub, permitindo gerenciar repositórios, realizar commits e resolver conflitos diretamente do editor, facilitando o fluxo de trabalho de desenvolvimento.
-
O Microsoft Teams centraliza comunicação, colaboração e compartilhamento de arquivos em uma plataforma segura e acessível, otimizando o trabalho em equipe.
-
Figma e Lucidchart permitem colaboração em tempo real, tornando o trabalho em equipe mais eficiente; Figma se foca na criação de wireframes interativos e designs responsivos, enquanto Lucidchart se especializa em diagramas com uma interface intuitiva e recursos pré-definidos, facilitando a visualização de ideias.
A seção de Projetos do GitHub está sendo utilizada para aprimorar a gestão e o planejamento, facilitando a colaboração e o acompanhamento de tarefas por meio de quadros Kanban e automações eficientes. Essa abordagem otimiza o fluxo de trabalho e proporciona maior transparência nas atividades da equipe.