Gestão
Links úteis
Conteúdo |
Estrutura gerencial do PJe
O PJe, dentro do CNJ, funciona como uma estrutura virtual. O objetivo dessa estrutura é aprimorar a gestão do Processo Judicial Eletrônico no âmbito do CNJ, obter um sistema de autoridade flexível (unidade de gestão do Projeto responder a diferentes autoridades) e de compartilhar recursos (sistemas, pessoas, tecnologia). Com esse objetivo, foram criadas as seguintes estruturas: (As atribuições do gerente e dos assistentes podem ser encontradas no manual de organização do CNJ. )
Gerente de projetos do PJE
Assistência em desenvolvimento de sistemas do PJE
Assistência em requisitos do PJE e capacitação
Análise de requisitos
A análise de requisitos é, usualmente, acionada pela gerência técnica para detalhamento de requisitos de pendências autorizadas e priorizadas.
Na análise de requisitos são produzidos os artefatos para detalhamento dos requisitos, sendo o nosso principal artefato o conjunto de casos de testes no testlink. O testlink deverá fazer referência a conteúdos inseridos na wiki, especialmente às regras (de negócio, de interface e de domínio) e à descrição da funcionalidade. As funcionalidades (que abrangem o manual de referência) são o conjunto de opções de uso do sistema. Procuramos evitar o termo caso de uso, já que não estamos utilizando desenvolvimento orientado a caso de uso, mas seria o conceito do caso de uso, sem o template padrão com todas aquelas seções comuns ao processo unificado. Geralmente as referências citadas aos documentos da wiki são feitas nos passos dos casos de teste, mas uma importante seção do caso de teste são as premissas de teste, que podem tanto referenciar as regras e funcionalidades, como outras seções da wiki, como roteiros de configuração, orientações para desenvolvimento de fluxos, configuração inicial e instalação. Essas últimas seções contém orientações de configuração do PJe. Muitas vezes, para se testar uma aplicação, o testador deve se certificar que o sistema está pronto para realizar o teste, de forma a evitar que mal funcionamento decorrente de configuração equivocada seja confundido com defeito. Além do conjunto de casos de teste, outros artefatos, como diagramas, matrizes e o que mais o analista julgar necessário para o entendimento da demanda. Eles devem ser produzidos, de preferência, em ferramentas de livre utilização, e sua disponibilização vinculada à demanda no Jira deve ser feita em formatos que todos os usuários possam ter acesso.
Ao finalizar a documentação, a pendência deve ser enviada para a assistência em desenvolvimento para que fique pronta e seja posteriormente testada.
Ao iniciarmos a discussão sobre uma demanda, principalmente quando se trata de alguma funcionalidade maior, temos optado por evoluir um pouco mais os requisitos antes de abertura da pendência no Jira fazendo registro em uma área de "rascunho" da wiki denominada Melhorias. Ainda estamos trabalhando na melhor forma de apresentar essa seção, mas seu uso é opcional, apesar de ser recomendado, por facilitar a comunicação entre o "cliente" (solicitante da demanda) e o analista de requisitos.
Assistência em atendimento e qualidade do PJE
Liberação de versão
A assistência em atendimento, ao ser notificada da finalização de uma versão, realiza os procedimentos de geração da versão para implantação com base nos rótulos criados no GIT. A partir das versões posteriores à 1.4.6.4, pacotes intermediários estarão disponíveis para os tribunais com correções integradas ao código principal do PJe através da utilização do Nightly, que gera automaticamente versões ao final do dia com tudo que foi integrado pela equipe do PJe. É válido ressaltar que as versões "nightly" possivelmente não são estáveis, já que não foram realizados testes para garantir seu funcionamento.
Testes
O teste do PJe hoje abrange teste manual e testes automatizados, mas são sempre funcionais. Não temos procedimentos de teste de stress ou de performance.
O testlink é a ferramenta utilizada para registro da execução dos testes. A assistência em requisitos é responsável por alimentar a ferramenta com as definições dos casos de teste para posterior execução dos testes.
Assistência em implantação e manutenção do PJE
Os comportamentos dissonantes do PJe são tratados como defeitos e bugs em produção. Os defeitos são problemas encontrados, via de regra, na fase de homologação de uma versão, ou seja, em ambiente de testes. Os bugs em produção são problemas encontrados no ambiente de produção. A correção dos bugs em produção, em alguns casos, pode ocorrer através da geração de scripts de banco de dados, de forma a evitar que o tribunal precise evoluir sua versão para obter o funcionamento correto. Para essas situações, deve ser aberto um outro defeito, se for o caso, para mapear a correção da versão que ocasionou o mal comportamento que teve que ser corrigido via script. Algumas vezes o mal comportamento não é detectado ou se diagnostica um problema de configuração no PJe que ocasionou o bug, não sendo, dessa forma, necessária a correção através de liberação de versão.
As liberações de versão de correção de defeitos/bugs em produção são realizadas, preferenciamente, de duas em duas semanas. As correções são replicadas nas versões em desenvolvimento que, dentro do CNJ, são de responsabilidade da assistência em desenvolvimento.
A assistência em implantação, por vezes, precisa solicitar o auxílio da assistência em requisitos na resolução das pendências, visto que a documentação existente do PJe não abrange todas as funcionalidades disponíveis e o desenvolvedor precisa da definição negocial para saber qual o comportamento esperado do sistema.
Além dessa comunicação, a assistência em implantação, ao finalizar uma versão, repassa a notificação para a assistência em atendimento, que é responsável pelos procedimentos de liberação da versão, tornando-a disponível para os usuários externos.
Estratégia de evolução do PJe
O PJe é um sistema, assim como tantos, em constante evolução. As correções e melhorias do PJe são propostas partindo das seguintes situações:
- usuários do sistema que detectam seu mal funcionamento ou necessidade de melhoria
- testadores do PJe que detectam seu mal funcionamento em testes para liberação de versão e propõem melhorias de acordo com suas experiências de uso
- gestores ou equipe interna do PJe que, tendo vivência com suas ocorrências e com o sistema em si, vislumbram pontos de melhoria e correção
A partir dessa identificação, seguindo o modelo definido nas instruções de abertura de pendências no Jira, que é a ferramenta de controle de demandas do PJe, uma pendência deve ser aberta contendo a descrição da solicitação e suas principais definições. A partir daí, a demanda flui através dos seguintes passos:
- Triagem das pendências, abrangendo uma análise prévia validando as informações de preenchimento, especialmente quanto ao cumprimento das instruções para abertura de pendências
- Para o caso de pendências do tipo "Melhoria" ou "Nova funcionalidade", encaminhamento para análise da gerência técnica do PJe
- Após avaliação, pendência seguirá para análise de requisitos, e posteriormente para o desenvolvimento
- Para o caso de defeitos ou bugs em produção:
- Sendo a pendência aberta por um solicitante da equipe da justiça do trabalho, justiça eleitoral ou TJDFT, encaminhamento para equipe pertinente
- Sendo a pendência aberta por um solicitante de outro grupo que não os citados acima, encaminhamento para desenvolvimento na equipe interna do CNJ
- Para o caso de pendências do tipo "Melhoria" ou "Nova funcionalidade", encaminhamento para análise da gerência técnica do PJe
- Desenvolvimento da pendência
- Homologação técnica da pendência
- Homologação negocial da pendência
- Aceite da pendência pelo solicitante
A homologação técnica consiste na avaliação da codificação por parte de uma equipe centralizada, de forma que a integração do código desenvolvido à versão do PJe seja controlada. Mais detalhes sobre a ferramenta que permite o controle e a integração automatizada aqui. O fluxo de trabalho especifica mais detalhadamente essa dinâmica.
A homologação negocial consiste no teste da demanda, mas via de regra é realizado também pelo solicitante.
Geração de versões
Nas reuniões do Comitê Gestor Nacional que ocorrem mensalmente, são discutidas, entre outras questões, as prioridades para lançamentos de novas versões no PJe. Dado esse direcionamento a partir dessa reunião, uma reunião de planejamento de release ocorre envolvendo a fábrica do CNJ e as fábricas que participam do desenvolvimento do sistema, atualmente as da Justiça do Trabalho e da Justiça Eleitoral. Nessa segunda reunião são definidas as funcionalidades que entrarão como conteúdo da próxima release, devidamente alinhado com a definição do Comitê Gestor Nacional. A partir dessa reunião, agrupam-se as issues eleitas para serem desenvolvidas em funcionalidades a serem disponibilizadas na versão planejada. É criada, então, uma versão do PJe considerada uma versão estabilizada, onde não haverá requisições de subida de código, salvo correções de defeitos. Ao mesmo tempo, as novas funcionalidades são desenvolvidas na versão principal (original da estabilizada), onde são duplicadas as requisições de subida de código das correções. Nesse meio tempo, podem ser lançadas versões de correção de defeitos de duas em duas semanas (as versões minor). Ao final do ciclo, é gerada internamente uma subversão da principal para homologação com um rótulo numerado iniciado pela letra "h" (exemplo:"1.4.7.h0"). São realizados testes durante duas semanas, e outras versões "h" são lançadas internamente com correções dos erros reportados. Se considerada estável, ou seja, se não tem defeitos bloqueadores, é lançada uma possível release para os tribunais denominada "rc". Os tribunais terão duas semanas para homologarem a possível release, votando pela homologação ou não através do Jira. Uma vez aceita, a release é liberada.
Gerência técnica do PJe
A gerência técnica do PJe é composta pelos gestores da área técnica do PJe e atualmente contém os seguintes membros: Antonio Augusto(CNJ), Thiago Vieira(CNJ), Dr. Paulo (CNJ), Dr. Carl (CNJ), Gustavo Mendes (TST) e Beni (TSE). Todas as pendências abertas no Jira que sejam dos tipos Melhoria ou Nova Funcionalidade que estiverem na situação 'Aberta' devem ser encaminhadas para essa gerência para validação, priorização e planejamento de novas versões do PJe.