Ir para o conteúdo principal

Integração com Painel Gerencial da CODE

OBJETIVO

Descrever o processo de análise e indicar a melhor alternativa para implantação da USER STORY “Eu, como gestor, preciso dos dados do Pipefy persistidos em um banco de dados”.

JUSTIFICATIVA

Após realização de diversas reuniões com gestão, os mesmos solicitaram que os dados gerados pelo fluxo de trabalho da SETIC-CODE dentro da ferramenta Pipefy fossem persistidos em  um banco de dados próprio, permitindo aos mesmos a criação de relatórios para a avaliação e tomada de decisões.

RESULTADOS ESPERADOS

  1. Relatório contendo a análise da melhor maneira de realizar a implantação da demanda
  2. Lista dos Pipes que serão utilizados para atender a demanda;
  3. Lista de equivalência dos campos personalizáveis dos Cards que serão persistidos no banco;
  4. Atender ao SPIKE "Planejamento da estrutura do banco de dados do Pipefy".

ENVOLVIDOS

  • Rodrigo Kreuzberg (Scrum Master)
  • Tiago Silveira (Product Owner)
  • Baymax (BI Team)

GLOSSÁRIO

  • API - Interface de Programação de Aplicações é o conjunto de rotinas e padrões estabelecidos por um software para a utilização de suas funcionalidades.
  • PIPEFY - ferramenta de controle de demandas e fluxo de trabalho atualmente utilizada pela SETIC.
  • GraphQL - sintaxe que descreve uma maneira de solicitar dados.

PREMISSAS

  1. Consultas no Pipefy deverão utilizar GraphQL;
  2. Relatórios podem conter dados de mais de um time;
  3. Relatórios serão gerados pela gerência, sendo necessária a coleta do máximo de subsídios o possível.

MAPEAMENTO

Após avaliação prévia, foi identificada a necessidade de mapear quais Pipes e Campos serão utilizados para atender a demanda. As informações estão descritas a seguir.

Pipes Mapeados

Pipes de Desenvolvimento

PIPE ID PIPE NAME PIPE URL
725642 Caveiras https://app.pipefy.com/pipes/725642
786310 Defensores https://app.pipefy.com/pipes/786310
451637 Guardiões https://app.pipefy.com/pipes/451637
451635 Vingadores https://app.pipefy.com/pipes/451635
877708 Esquadrão Suicída https://app.pipefy.com/pipes/877708
979418 Tambaqui https://app.pipefy.com/pipes/979418
961531 Baymax https://app.pipefy.com/pipes/961531
786390 Black Ops https://app.pipefy.com/pipes/786390
301411216 AC/DC https://app.pipefy.com/pipes/301411216

Pipes de Demandas

PIPE ID PIPE NAME PIPE URL
1158684 Demandas https://app.pipefy.com/pipes/1158684
1158790 Projetos https://app.pipefy.com/pipes/1158790
451374 Produtos https://app.pipefy.com/pipes/451374
735403 Dark Souls https://app.pipefy.com/pipes/735403
1083563 Amazonas https://app.pipefy.com/pipes/1083563
1263167 300 https://app.pipefy.com/pipes/1263167
Campos Mapeados

Pipes de Desenvolvimento

PROPRIEDADE TIME DE PARA
Sprint Caveiras field_20_connector  sprint
Defensores field_17_connector
Guardiões field_41_connector
Vingadores field_39_connector
Esquadrão Suicida field_10_connector
Tambaqui field_13_connector
Baymax field_11_connector
Black Ops field_13_connector
AC/DC field_15_connector
Produto Caveiras field_11_connector produto
Defensores field_3_connector
Guardiões field_31_connector
Vingadores field_28_connector
Esquadrão Suicida field_1_connector
Tambaqui field_5_connector
Baymax field_1_connector
Black Ops field_5_connector
AC/DC field_8_connector
Pontos de História de Usuário Caveiras field_6_number pontos
Defensores field_6_number
Guardiões field_8_number
Vingadores field_4_number
Esquadrão Suicida field_2_number
Tambaqui field_2_number
Baymax field_3_number
Black Ops field_4_number
AC/DC field_2_number
Tipo de Demanda Caveiras field_16_connector tipo
Defensores field_12_connector
Guardiões field_48_connector
Vingadores field_35_connector
Esquadrão Suicida field_6_connector
Tambaqui field_9_connector
Baymax field_7_connector
Black Ops field_11_connector
AC/DC field_13_connector
Release Caveiras field_17_connector release
Defensores field_13_connector
Guardiões field_46_connector
Vingadores field_36_connector
Esquadrão Suicida field_7_connector
Tambaqui field_10_connector
Baymax field_8_connector
Black Ops field_12_connector
AC/DC field_14_connector
Planejado na Sprint Caveiras field_10_string planejado
Defensores field_10_string
Guardiões field_36_string
Vingadores field_34_string
Esquadrão Suicida field_12_string
Tambaqui field_14_string
Baymax field_11_string
Black Ops field_8_string
AC/DC field_11_string
O quê? Caveiras field_2_string oque
Defensores field_2_string
Guardiões field_12_string
Vingadores field_5_string
Esquadrão Suicida field_2_string
Tambaqui field_2_string
Baymax field_1_string
Black Ops field_1_string
AC/DC field_2_string

 

Pipes de Desenvolvimento (Antigo)

Pontos de História (antigo) Caveiras field_5_number pontos_old
Defensores field_5_number
Guardiões field_6_number
Vingadores field_3_number
Esquadrão Suicida field_1_number
Tambaqui field_1_number
Baymax field_2_number
Black Ops field_3_number
AC/DC field_1_number
Necessidade (Antigo) Caveiras field_15_connector necessidade_old
Defensores field_7_connector
Guardiões field_34_connector
Vingadores field_34_connector
Esquadrão Suicida  
Tambaqui field_8_connector
Baymax field_5_connector
Black Ops field_4_connector
AC/DC field_9_connector
Projeto (Antigo) Caveiras field_14_connector projeto_old
Defensores field_5_connector
Guardiões field_33_connector
Vingadores field_33_connector
Esquadrão Suicida field_5_connector
Tambaqui field_7_connector
Baymax field_4_connector
Black Ops field_6_connector
AC/DC field_7_connector
Planejado na Sprint? (Antigo) Caveiras field_9_string planejado_old
Defensores field_10_string
Guardiões field_31_string
Vingadores field_30_string
Esquadrão Suicida field_9_string
Tambaqui field_10_string
Baymax field_9_string
Black Ops field_5_string
AC/DC field_7_string
Tipo de Demanda (label) (Antigo) Caveiras field_1_label_select atividade_old
Defensores field_1_label_select
Guardiões field_25_label_select
Vingadores field_20_label_select
Esquadrão Suicida field_1_label_select
Tambaqui field_1_label_select
Baymax field_1_label_select
Black Ops field_1_label_select
AC/DC field_1_label_select

MODELO DE CONSULTA

Para a obtenção dos dados necessários, é possível utilizar a seguinte consulta GraphQL:

query {
  cards(pipe_id: #PIPE_ID, first: 50) { //EX: ACCD: "301411216"
    pageInfo {
      endCursor
      startCursor
      hasNextPage
      hasPreviousPage
    }
    edges {
      node {
        id
        title
        createdAt
        done
        current_phase {
          id
          name
        }
        labels {
          id
          name
        }
        fields {
          indexName
          name
          updated_at
          value
          report_value
          label_values {
            id
            name
          }
        }
      }
    }
  }
}

As consultas podem ser testadas no link https://app.pipefy.com/graphiql, logando com a conta dashboardsetic.

RESULTADOS

Após análise dos Pipes, assim como seus campos, foi identificada a necessidade de implantação do projeto em algumas etapas, sendo elas: 

# ETAPA PREVISÃO CONCLUSÃO
1 Estudo de viabilização da implantação dos Pipes de Desenvolvimento 25/11/2020 17/11/2020
2 Implantação dos Pipes de Desenvolvimento; 11/12/2020  
3 Estudo de viabilização da implantação dos Pipes de Demandas;    
4 Implantação dos Pipes de Demandas;    

CONCLUSÃO

Conforme demonstrado, o projeto será implantado em etapas, descritas no parágrafo anterior. A utilização do GRAPHQL foi definida anteriormente, sendo documentada no link a seguir https://documentos.sistemas.ro.gov.br/books/pipefy/page/ferramentas-de-integra%C3%A7%C3%A3o-do-pipefy .

RECOMENDA-SE a adoção dos campos Sprint e Time, atualmente utilizado pelos Guardiões e Defensores, nos Pipes de TODOS os times de Desenvolvimento.

REFERÊNCIAS

Documentação - Ferramentas de Integração Pipefy - https://documentos.sistemas.ro.gov.br/books/pipefy/page/ferramentas-de-integra%C3%A7%C3%A3o-do-pipefy