Sprint 1 - FGA-GCES/BotFlow GitHub Wiki
O grupo iniciou seus trabalhos em um processo para entender o software com o qual deseja contribuir e auxiliar na evolução. De tal forma, uma leitura e observação atentas do repositório oficial do Botflow foram realizadas. Após o primeiro contato e entendimento com o escopo do projeto, seguimos então para a montagem do ambiente de desenvolvimento em cada uma das máquinas. Todos obtivemos êxito em conseguir reproduzir o ambiente descrito no repositório.
Pudemos observar que tal processo foi facilitado pela implementação do Docker realizada pela equipe original. Assim, prosseguimos para o próximo passo que consistiu em uma apresentação do projeto e conversa realizados com o PO(Rodrigo Maia) do mesmo. Fomos expostos à visão do Product Owner, sobre o estado do projeto, a ideia inicial, proposta e prioridades de melhoria.
Novas issues foram adicionadas ao Backlog do projeto por Maia, indicando que seria um bom caminho para iniciarmos. A partir daqui, nossa equipe dividiu as issues entre si e decidimos que era o momento de entrarmos mais no código e iniciar nossas contribuições ao projeto.
Porém, neste momento, começamos a nos deparar com situações adversas e que, outrora, não eram de conhecimento geral. Conforme a equipe ia trabalhando, inconscistências iam acontecendo ao longo do percurso. Outra reunião foi marcada com o PO e foi obtida a constatação de que algumas issues não estavam atualizadas conforme o real estado do Software.
Diante disso, o grupo se reuniu e expôs todos os problemas, dificuldades, incoscistências e adversidades encontradas. Nesta reunião, foi verificado que:
-
O projeto está com o Backlog desatualizado. Não há garantia de que as issues abertas reflitam problemas reais presentes na aplicação. Várias delas relatavam bugs e erros que não podiam ser reproduzidos ou já haviam sido corrigidos.
-
Existem issues com PRs abertos ou que aguardam revisão há algum tempo. Existem issues cadastradas que não possuem transparência quanto à sua atual situação. Não é possível determinar se foram resolvidas, se os critérios de aceitação foram alcançados ou se já foram incorporadas ao código (Nenhum PR relacionado).
-
Branches Master e Devel em desacordo. Tanto o repositório do Front-end quando do Back-end possuem suas branches master e devel em desacordo. Aliado a falta de documentação, essa diferença ocorre de maneira tal que não é possível saber em que uma difere da outra. Também foi constatado que o Docker da devel do Front-end não está funcionando. Dessa forma, será necessário adotar 1 branch como padrão e trabalhar em cima da mesma, deixando a outra para trás (A branch adotada será a Master, decisão tomada pelos responsáveis pelo projeto após a comunicação desta situação).
Dessa forma, a equipe percebeu que o planejamento e abordagens anteriores não poderiam ser mantidos e seria necessário replanejar uma nova solução para contribuir de maneira efetiva e robusta ao projeto. Pudemos constatar que seria melhor auxiliar o projeto com uma atualização e revisão de seu backlog do que necessariamente entregar trechos de código que solucionam questões talvez já resolvidas ou abandonadas.
Então, a equipe resolveu priorizar um trabalho de organização, do que desenvolvimento propriamente dito. Foi estabelecido que todas as issues cadastradas no Backlog precisam ser revistas e atualizadas, antes mesmo de poderem ser resolvidas. Este trabalho não só dá segurança para pessoas interessadas em contribuir, mas também traz uma nova vida ao projeto, visto que sua documentação e planejamento poderão estar novamente de acordo com seu desenvolvimento.
Assim, mesmo à beira do final da Sprint 1, um novo planejamento foi montado e uma nova issue orientadora foi aberta: Backlog rework and Project Update #153. As noções aqui descritas, até a presente data (25/02/2021) e adotadas irão guiar o trabalho da equipe, que infelizmente constará como dívida técnica para a próxima Sprint.
O planejamento realizado no início da sprint resultou na escolha das seguintes issues para elaboração de código;
Número da Issue | Issue | Responsável | Status |
---|---|---|---|
#145 | Ignore empty questions when inserting/editing intents | Miguel Alves | Aberta |
#148 | Review README info | Lude | Aberta |
#139 | Reduzir o tamanho dos gifs que documentam o uso do BotFlow | Lude | Aberta |
#144 | Remove empty balloons when inserting/editing utters | Francisco | Aberta |
#143 | Save button is disabled on valid cases | Amanda Muniz e Letícia Karla Araújo | Fechada* |
#128 | Dialog list is not updated after certain operations | Amanda Muniz e Letícia Karla Araújo | Fechada* |
#146 | Write tests | Weiller | Aberta |
#95 | Configurar CI/CD | Gabriel | Aberta |
#149 | Remove all LAPPIS and TAIS info from code | Gabriel | Aberta |
Obs.: As issues #143 e #128 foram fechadas depois de reunião com o Product Owner, uma vez que os bugs descritos já tinham sido consertados.
Esse planejamento foi realizado depois de verificado a necessidade de refatorar todo o backlog, uma vez que havia discrepância entre backlog e software.
Número das issues analisadas | Responsável | Status |
---|---|---|
#95 #149 #76 #48 | Gabriel | #95 analise realizada, 149# necessita-se de um melhor esclarecimeto. 76# e #48 ainda em análise. |
#145 #151 #150 #122 | Miguel Alves | #145 analisada e corrigida, porém não foi aberto PR, o restante está em análise. |
#113 #28 #114 #119 #24 | Amanda Muniz | Analisadas |
#148 #67 #121 #115 | Lude | Em análise |
#142 #100 | Kalebe | Em análise |
#144 | Francisco | Em análise |
#146 #33 #29 #35 | Letícia | #146 analisada, o restante está em análise |
Obs.: O detalhamento de cada uma dessas issues pode ser visto nas tabelas de refatoração do backlog.
Número da Issue | Issue | Justificativa | Responsável |
---|---|---|---|
#145 | Ignore empty questions when inserting/editing intents | O erro descrito realmente é válido e está presente no projeto mesmo em sua versão atual. A correção se faz necessária. A Issue foi analisada e uma solução elaborada, mas o código para sua solução ainda não está presente na Master | Miguel Alves |
#151 | Disable delete button when intent has a single text field | Necessita análise. | Miguel Alves |
#150 | Disable delete button when utter has a single balloon | Necessita análise. | Miguel Alves |
#122 | Bug campo de filtro no Chrome | Necessita análise. | Miguel Alves |
#148 | Review README info | Mudança de planejamento da sprint | Lude |
#139 | Reduzir o tamanho dos gifs que documentam o uso do BotFlow | Mudança de planejamento a sprint | Lude |
#148 | Review README info | Necessita análise | Lude |
#67 | Prevent intents from having the same training questions | Necessita análise | Lude |
#121 | Document the new architecture | Necessita análise | Lude |
#115 | Document API endpoit usage | Necessita análise | Lude |
#144 | Remove empty balloons when inserting/editing utters | Mudança de planejamento de sprint | Francisco |
#144 | Remove empty balloons when inserting/editing utters | Necessita análise | Francisco |
#33 | Advanced deleting | Necessita análise | Letícia |
#29 | Clone story | Necessita análise | Letícia |
#35 | Basic story filtering | Necessita análise | Letícia |
#146 | Write tests | Mudança de planejamento da sprint | Weiller |
#95 | Configurar CI/CD | Houve a tentativa de se inicializar o CI/CD usando o Travis, porém, somente o stage de build foi finalizado e, apenas repositório do front-end. | Gabriel |
#149 | Remove all LAPPIS and TAIS info from code | É necessário que haja uma melhor descrição sobre a issue | Gabriel |
#76 | Document the new architecture | Necessita análise | Gabriel |
#48 | Document API endpoit usage | Necessita análise | Gabriel |
#142 | Exported files are invalid | Necessita análise | Kalebe |
#100 | Create database-to-file parsers | Necessita análise | Kalebe |
Apesar dos problemas e questões descritas acima, algumas issues puderam ser fechadas nesta Sprint mesmo com pouco tempo de revisão. Algumas delas, issues novas percebidas pelos integrantes da equipe enquanto percorriam o projeto e verificavam seu estado atual.
Número da Issue | Issue | Justificativa | Responsável |
---|---|---|---|
#113 | Confirmar ao apagar intents, utters e stories | Foi possível encontrar um pull request que já tinha resolvido essa issue. O código se encontra na master e tudo está funcionando corretamente. | Amanda Muniz |
#28 | Create "add story" flow | Não foi possível encontrar um pull resquest que resolve essa issue. Porém existem commits na branch master que a resolvem e que aparecem em um pull request da branch devel para a master. O fluxo de criar novos diálogos funciona corretamente e está sendo salvo no banco de dados como esperado. | Amanda Muniz |
#114 | Melhorar navegação via teclado | Apesar de não existir um pull request específico para essa issue, os commits que a resolvem fazem parte de um mais geral. Eles se encontram na master e tudo funciona corretamente. | Amanda Muniz |
#119 | Edit name utter | O código que resolve a issue já está na master e o software funciona como esperado. | Amanda Muniz |
#24 | List stories | Foi possível encontrar um pull request aceito que resolvia a issue. O código se encontra na master. | Amanda Muniz |
#157 | Configuration problem breaks dev environment | Correção da configuração de conexão entre frontend e api | Amanda Muniz e Miguel Alves |
#33 | Advanced deleting | Correção ao deletar utters e intents. Já está corrigido. | Letícia Karla Araújo |
#146 | Write tests | A issue não tem descrição nenhuma. Assim como, não tem a especificação se os testes são de Frontend ou Backend, e quais frameworks usados. Foram criadas issues substitutivas. | Letícia Karla Araújo |
Número da Issue | Issue | Justificativa | Responsável |
---|---|---|---|
#155 | Create Unit tests for the frontend | Detalhamento da issue #155. | Letícia Karla Araújo |
#156 | Create Unit tests for the backend | Detalhamento da issue #156. | Letícia Karla Araújo |
#157 | Configuration problem breaks dev environment #157. | Detalhamento da Issue #157 | Amanda Muniz e Miguel Alves |
#76 | Document the new architecture | Detalhamento da issue #76 | Gabriel |
#48 | Document API endpoit usage | Detalhamento da issue #48 | Gabriel |
Número da Issue | Issue | Justificativa | Responsável |
---|---|---|---|
#145 | Ignore empty questions when inserting/editing intents | O erro descrito realmente é válido e está presente no projeto mesmo em sua versão atual. A correção se faz necessária. | Miguel Alves |
#35 | Basic story filtering | A melhoria descrita realmente é válida. | Letícia Karla Araújo |
#95 | Configurar CI/CD | Issue inicialmente iniciada, porém não finalizada. Precisará ser refeita. | Gabriel |
Número da Issue | Issue | Justificativa | Responsável |
---|---|---|---|
#122 | Bug campo de filtro no Chrome | Necessita de uma descrição acerca do bug relatado. Esta issue está marcada como "Awaiting Review", porém não pode ser checada devido a falta de descrição. | Miguel Alves |
#149 | Remove all LAPPIS and TAIS info from code | É necessário que haja uma melhor descrição sobre a issue | Gabriel |