From 833b3f147c26e1cae46c8236448e1cb2950c58f6 Mon Sep 17 00:00:00 2001 From: Paulo Meirelles Date: Fri, 19 Aug 2016 20:33:57 -0300 Subject: [PATCH] Adicionando relatório da Releases 5 para revisão coletiva --- Makefile | 2 +- relatorioR5.md | 532 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 533 insertions(+), 1 deletion(-) create mode 100644 relatorioR5.md diff --git a/Makefile b/Makefile index f5a01dd..819276a 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -BASENAME = relatorioR4 +BASENAME = relatorioR5 all: $(BASENAME).pdf evince $< & diff --git a/relatorioR5.md b/relatorioR5.md new file mode 100644 index 0000000..b5ba8b5 --- /dev/null +++ b/relatorioR5.md @@ -0,0 +1,532 @@ +# RELATÓRIO DA RELEASE 5 + +Ações programadas para a Release 5, de acordo com o novo plano de trabalho (de +outubro de 2016): + +* Estudos de evolução de plataforma integrada de colaboração + * Evolução de ambiente de Rede Social e plugins + * Estudos sobre mecanismos de relato dos usuários + * Estudos para uso de instituições governamentais +* Estudos de evolução de plataforma de Integração + * Estudos sobre o Proxy de integração + * Estudos sobre o Sistema de Indexação de Buscas + * Estudos sobre a evolução do Sistema de Lista de Mail's + * Estudos sobre a evolução de camada de back-end + * Estudos sobre a Evolução do Sistema de Controle de Versão +* Estudos Avançados sobre Migração +* Estudos Avançados sobre API +* Estudos Avançados para mecanismos de busca global +* Estudos Avançados sobre a evolução do Sistema de Identidade Visual +* Estudos Avançados sobre a evolução da estrutura de IHC +* Estudos Avançados sobre a evolução da Arquitetura da Informação +* Estudos sobre para evolução da superfície da interface gráfica do portal +* Estudos Avançados sobre plataforma de monitoramento de código-fonte +* Estudos Avançados para a definição e automação da infraestrutura +* Estudos Avançados para a sustentação da plataforma +* Estudos sobre Licenças de Software Livre + +## Alinhamento Estratégico + +Em reunião,em 18 de setembro de 2015, com o comitê estratégico do projeto, liderado +pelo diretor e o coordenador da DeGSI, Wagner Ribeiro e Orlando Neto, foram +definidas as seguintes **metas estratégicas** para a release: + +* Sustentação do novo SPB pelo MP +* Melhorias na usabilidade e da visão do usuário na integração das ferramentas +* Interação do novo SPB com outras plataformas +* Acompanhar o processo de entrada e evolução da qualidade do projetos SPB + +Nesta reunião foi explanado pelo coordenador Orlando Neto que uma das principais +metas para o ano de 2016, em relação ao projeto, é sustentação da + plataforma do portal do software público (SPB) por parte do Ministério. + +Com tais metas definidas em nível estratégico, as analistas da DEGSI/SLTI, +Marisa Santos e Nayanne Bonifácio, juntamente com todo o time da UnB, estiveram +reunidos para o planejamento desta release. +Nesse sentido, a partir das metas estratégicas foram definidas as seguintes +"épicas" para organizarmos as histórias de usuários e tarefas, conforme a +metodologia apresentada no plano de trabalho do projeto: + +* Épicas Não Técnicas + * Integração dos perfis de usuários + * Evolução da busca global integrado com o núcleo do Portal + * API (integração com outras plataformas) + * Sustentação da plataforma + * Evolução de ferramentas desenvolvidas e melhorias de usabilidade + * Evolução para preparação da entrada de Ativos de Software + * Melhorias gerais da plataforma + * Refatoração do front-end do Noosfero + * Monitoramento de métricas de código-fonte + * Implantação da Release 5 + +* Épicas Não-Técnicas + * Oficinas + * Relatório final dos estudos de licença + * Revisão da minuta da IN do SPB + +Posteriormente, o projeto foi interrompido por volta de repasse de recursos, +entre 18 de dezembro de 2015 até 04 de abril. Quando o recurso faltante, +previsto para 2015, foi repassado para a UnB, o projeto foi retomado. +Entretanto, de forma que também foram planejadas uma série de atividades de +encerramento, uma vez que a UnB foi comunicada que não haveria mais recursos +para o projeto, referente ao planejado para 2016. Para os alinhamentos de +conclusão da Release 5 e para o encerramento do projeto, uma reunião foi +realizada em 08 de abril de 2016, com o coordenador Orlando Neto e os analista +Marisa Santos e Luiz Fernando Matos. + +## Fase de Execução + + +### Estudos de evolução de plataforma integrada de colaboração + +TODO: Revisão Tallys + +Esta macro atividade, em relação a release 5, esteve associada a quatro épicas: + +* **Evolução de ferramentas desenvolvidas e melhorias de usabilidade**: foram +realizadas evoluções nas seguintes funcionalidades e recursos da plataforma: + +* Relato de uso +* Homepage do software +* Páginas de software +* Páginas de comunidade +* Páginas de busca (providas pelo Noosfero) +* Catálogo de software +* Páginas de conteúdo +* Páginas administrativas do Noosfero +* Páginas de lista de categorias e busca específica +* Navegabilidade do portal +* Catálogo de instituições adicionando filtro por empresas/instituições + + +* **Evolução para preparação da entrada de Ativos de Software**: não estava +previsto para esta fase do projeto, mas foi atendido para uma avaliação interna +por parte do Ministério do Planejamento, de forma que foi desenvolvidas os +seguintes itens: + +* Prototipação inicial do catálogo de ativos de software e página dos software +* Implementação do layout das páginas do Portal do SISP +* Homepage do SISP +* Cabeçalho e rodapé do SISP +* Página do software do SISP +* Importação do Catálogo de Software do SISP +* Busca no catálogo do SISP +* Página de software de um ativo/software do SISP + + +* **Melhorias gerais na plataforma**: foram realizadas as seguintes melhorias e +correções. + +* Correções no layout e blocos +* Correção naHomepage do Portal +* Atualização do Cabeçalho e Rodapé +* Correções nas Páginas de comunidade +* Correções Página de Software +* Organização da Página de cadastro +* Comunidade secreta +* Catálogo de Software deve filtrar softwares que coincidem com 1 ou mais categorias selecionadas +* Membros autorizados pela configuração do fórum não conseguem criar tópicos de discussão +* Correção de traduções +* Refatoração de busca de software e instituições +* Correção dos problemas de links no plugin de notificação +* Importar notícias da wiki do portal +* Adicionar bloco de eventos na pagina de software +* Formatação nos campos numéricos ao avaliar um software +* Imagens excluidas ainda aparecem no bloco lateral de comunidade +* Enviar email ao usuário ao ser aceito/recusado em uma comunidade moderada +* Correção de mensagem de erro ao ultrapassar o limite de upload +* Relatos rejeitados aparece para usuarios comuns +* Pagina do esic-livre quebrada +* Problemas ao editar instituição +* Refatoracao das Categorias - Permitir categorias filhas e netas +* Ordenação dos comentários de um artigo "faz" a paginação desaparecer +* Melhorias no RSS +* Escolha do tema pode inutilizar o profile no social +* Aceitar valores no relato somente se for informada a Instituição +* Divergência do catálogo de instituições e instituições disponíveis no portal +* Colocar título dos catalogos de comunidades e usuarios, como por exemplo no de instituições. +* Página de algumas comunidades quebrando +* Correção dos Valores do bloco de estatísticas do software +* Página de membros sem paginação +* Evoluir as páginas do Relato de Uso + + +* **Refatoração do front-end do Noosfero**: foram realizados um estudo e uma atividade de desenvolvimento. + +* Definir estratégias e tecnologias para refatoração - que levou a refatorações +usando um framework Java Script, denominado Angular. +* Adaptações no backend +do Noosfero - adaptação do front-end conforme a evolução do Noosfero para o +framework Ruby on Rails 4, ou seja, um consequência das atividades de +sustentação da plataforma. + + +### Estudos de Evolução de plataforma de Integração + +TODO: Revisão Gabriel + +Esta macro atividade, em relação a release 5, esteve associada as seguintes +épicas: + +* **Integração dos perfis de usuários** - neste ponto do projeto, foi +desenvolvida a estrutura de back-end do Colab para permitir a integração de +perfis, de forma que na Release 5 temos: + +* Definição do sistema de widgets (componentes) do Colab +* Integração inicial de perfil com o GitLab +* Integração funcional de perfil com o Noosfero + +* **Melhorias gerais na plataforma** - uma série de melhorias foram realizadas +durante a Release 5 para a evolução do Colab e das integrações entre as +ferramentas: + +* Aumentar cobertura de teste automatizado do Colab +* Remover namespace do arquivo de configuração dos plugins do Colab +* Adicionar campos novos indexados do Noosfero +* Colab suportar múltiplos sites +* GitLab com Push com HTTPS +* Criar repositório e lista quando uma comunidade for criada +* Fazer a interface da busca e dos filtros +* Adicionar timestamp na importação dos dados do colab +* Refatorar filtros da busca do Colab +* Refatorar template da página de busca +* Generalizar os filtros da busca do Colab +* Integração do Colab com o Mezuro +* Desenvolver task para geração da estrutura de plugins (criação de novos plugins) +* Reduzir código duplicado entre os plugins usando helpers do django +* Disparar sinal de atualização dos dados do usuário para o Noosfero e Gitlab. +* Refatoração do plugin do Noosfero +* Utilizar sinais para comunicação entre plugins do Colab +* Consertar problema de memory leak no mailman-api +* Reimplementar o carregamento de templates e arquivos estáticos +* Permitir modificar informações de perfil do Noosfero via perfil do Colab +* Permitir modificar informações de perfil do Gitlab via perfil do Colab +* Criação de widgets para customizar perfil do Colab +* Diferenciar listas privadas de listas públicas na exibição das listas +* Login integrado +* Logar usuário no Noosfero ao logar no Colab +* Logar usuário no Gitlab ao logar no Colab +* Implementar blacklist para o Colab +* Remover usuários não ativos do Colab +* Redirecionar para página atual após fazer login +* Integração de dados comuns entre as ferramentas abaixo do Colab (Nome e Email) +* Reenviar link de ativação de senha e editar mensagem pedindo para o usuário verificar na caixa de spam +* Revisar traduções do Colab, plugins e mailman +* Remover usuário do Gitlab, Noosfero e listas de email quando usuário deletar a conta no Colab +* Redirecionar links da edição de perfil para o Colab +* Adicionar pacotes do Colab e dos plugins ao PyPI + + +### Estudos Avançados sobre Migração + +Durante a release 3, realizamos um estudo de avaliação, com interações para +alinhamentos com as analistas da DEGSI/SLTI, que resultou em um parecer técnico +enviado a DESGI/SLTI com as recomendações para migração de conteúdos, bem como +os motivos para a sugestão de recadastramento por parte dos usuários do antigo +portal que desejam usar a nova plataforma do SPB. + +Assim, a partir da Release 4 seriam migrados os conteúdos de Blogs e Fóruns do +antigo portal. Portanto, as seguintes atividades relacionadas à migração dos +conteúdos das comunidades existentes no antigo portal do SPB foram realizadas: + +* Migrar Comunidades +* Verificação de Migração e Templates +* Migração de Conteúdos (Fóruns e Blogs) + +Para a Realese 5, foram realizados ajustes, conforme a revisão dos +analistas do Ministério do planejamento, sendo os últimos ajustes colocados em +produção no dia 07 de junho de 2016, tendo todo esse processo de migração bem +sucedido, inclusive nos detalhes solicitados pelo Ministério. + +### Estudos Avançados sobre API + +TODO: Revisão Marcos Ronaldo e Melissa + +A épica **API (integração com outras plataformas)** foi planejada +exclusivamente para evoluir este item do projeto, de forma que as atividades +realizadas foram: + +* Evolução da API do Noosfero +* Disponibilização de dados do Portal para uso em Aplicativo do SPB (não desenvolvido pela UnB) +* Estudos para preparação do Noosfero para suporte à federação (relatório anexo) +* Estudos para preparação para o novo front-end do Noosfero + + +### Estudos Avançados para mecanismos de busca global + +TODO: Revisão Gabriel + +A épica **Evolução da busca global integrado com o núcleo do Portal** foi +planejada exclusivamente para evoluir este item do projeto, de forma queas +atividades realizadas foram: + +* Estudo e definição das informações em ordem de prioridade/relevância +* Organização dos conteúdos listados na busca +* Melhorias da apresentação da Busca Global +* Pegar os conteúdos das Listas de Discussão +* Pegar os conteúdos do Noosfero (Rede Social) +* Flexibilizar os blocos de busca para os plugins +* Generalizar os filtros no núcle do Colab (plaforma de integração) +* Desenvolver nova interface da página de busca +* Aplicação do design visual: formatação dos resultados da busca global (e caixa de filtros) + + +### Estudos Avançados sobre a Evolução do Sistema de Identidade Visual + +TODO: Revisão Peter + +Houve uma continuação das atividades de evolução da identidade visual do +Portal, de forma que, novos elementos gráficos e estilos foram criados, +implementados e validados. Destacam-se os seguintes itens: + +* Design e estruturação do Relato de uso +* Evolução visual e estruturação do Bloco de Métricas nas páginas de softwares +* Reestruturação dos arquivos e regras de CSS do tema +* Aplicação de estilos nas páginas principal e internas das Comunidades +* Evolução visual dos Cadastros de Software e Comunidade +* Design e estruturação de janelas “Tooltip” e “Popover” para o Portal +* Revisão de classes e HTML para blocos do plugin SPB +* Refatoração do CSS para plugins SPB +* Elaboração e formatação para o Mapa do Site +* Revisão e validação visual das áreas implementadas para versão de lançamento + +A evolução do Sistema de Identidade Visual foi apresentada aos gestores do +Ministério do Planejamento em reuniões periódicas. + + +### Estudos Avançados sobre a Evolução da estrutura de IHC + +TODO: Revisão Peter + +Houve uma continuação das atividades de evolução da estrutura da IHC, de forma +que houve a evolução dos seguintes recursos já em funcionamento ou prototipados +anteriormente: + +* Filtros na página interna Catálogo de Softwares +* Página de Software +* Página Software de Governo +* Páginas associadas ao Relato de uso +* Bloco “Notificações” na página inicial +* Bloco “Veja também” na página inicial +* Funcionalidades atuais do portal +* Funcionalidades do Mezuro +* Unificação do Painel de Controle + + +### Estudos Avançados sobre a Evolução da Arquitetura da Informação + +TODO: Revisão Peter + +Assim, como na Release 4, durante a Release 5, consolidaram-se as decisões de +arquitetura da informação tomadas na release anterior, sem modificações de +estrutura. + +### Estudos sobre a Evolução da superfície da interface gráfica do portal + +TODO: Revisão Peter + +Esta macro atividade, em relação a Release 5, esteve associada as mesmas +atividades relacionadas à macro atividade **Estudos Avançados sobre a Evolução +do Sistema de Identidade Visual**, apresentadas acima. + +### Estudos Avançados sobre plataforma de monitoramento de código-fonte + +TODO: revisão Manzo + +Durante as Release 5, além da correção de defeitos encontrados, foram +adicionados à plataforma Mezuro novos coletores para que sejam extraídas +métricas de Python e Ruby. Além disso, os principais passos já foram dados para +integrar a plataforma ao Portal do SPB, através da plataforma de integração +Colab. + +Portanto, a plataforma Mezuro foi evoluída para suportar a tecnologia de +autenticação única utilizada pelo Portal do SPB, possibilitando o +desenvolvimento do plugin de integração do Mezuro com o Colab. Para +complementar a integração básica da plataforma, foi desenvolvido a integração +visual inicial necessária para unificação da experiência do usuário, bem como a +importação de dados inicial do Mezuro para a plataforma integradora Colab. + +Os últimos passos remanescentes para a integração do Mezuro no SPB eram +relacionados ao processo de instalação da plataforma, como o empacotamento da +ferramenta e de suas dependências. Com esses passos de instalação foram +concluídos, e o foco do desenvolvimento foi no suporte à linguagem PHP que é +utilizada por muitos projetos que compõe o Portal do SPB. Dessa forma, foi +desenvolvido/realizado: + +* Suporte à métricas de hotspot + * Adição de métricas de PHP +* Biblioteca de integração de coletores +* Empacotamento dos serviços +* Pacote de dependências nativo para serviço de configurações +* Pacote nativo para serviço de configurações +* Pacote de dependências nativo para serviço de processamento +* Pacote de dependências nativo para interface web +* Pacote nativo para interface web +* Receber notificações do GitLab +* Manutenção de estabilidade + * Interface web + * Backports do serviço de configurações para Ruby 2.0.0 + * Validações de integridade para o serviço de Processamento +* Evolução inicial integração visual com o Colab + +A integração do Mezuro no portal do SPB tinha o objetivo de coletar, +monitoramentar e ajudar na interpretação da qualidade interna dos produtos de +softwares disponíveis na plataforma. Essas informações seriam subsídios para +ranqueamento e classificação dos softwares disponibilizados no portal. +Entretanto, como o projeto foi cancelado, mesmo o Mezuro estando pronto para +ser integrado à plataforma, decidiu-se não colocá-lo em produção, uma vez que +não haveria tempo para os testes e o acompanhamento adequado de seu uso, o que +iria pautar as evoluções durante as Release 6 e 7, que foram canceladas. + + +### Estudos Avançados para a definição e automação da infraestrutura + +TODO: revisão Tada + +A evolução das rotinas e procedimento de implantação da plataforma nos +ambientes do Ministério do Planejamento foi um dos principais benefícios +obtidos como resultado da release 4. Dada a complexidade dos serviços e +softwares envolvidos no Portal do SPB, uma nova sub-equipe foi composta para +evoluir e amadurecer os procedimentos de implantação do projeto através da +aplicação de técnicas de DevOps. + +Essa evolução consistiu do empacotamento dos softwares e suas dependências para +a plataforma utilizada nos servidores do Ministério (CENTOS 7), evolução da +ferramenta para gerenciamento das diferentes máquinas e ambientes existentes +(*chake*) e das receitas *chef* para a configuração dos serviços em cada +máquina. Adicionalmente, os manuais de instalação e manutenção do portal foram +melhorados e detalhados com o objetivo de tornar os procedimentos de manutenção +do portal reprodutíveis por outras equipes, como a DTI/MP. + +#### Empacotamento + +O empacotamento é uma atividade que tem como base um pacote contendo o +código-fonte original de um projeto de software e tem como objetivo preparar +pacotes binários (instaladores) para que o software possa ser instalado +facilmente por diversos usuários finais de um sistemas. O empacotamento inclui, +mas não está limitado, às seguinte atividades: + +* integração com serviços (e.g. servidores de aplicação) do sistema para que + possam ser gerenciados utilizando as ferramenta padrão do sistema + operacional; +* gerenciamento de dependências, de forma que todos os pacotes necessários para + o funcionamento de plataforma sejam instalados automaticamente em conjunto + com os componentes principais; +* integração de forma sustentável de customizações específicas do Portal do + Software Público Brasileiro; +* gerenciamento de atualizações, de forma que a instalação de uma nova versão + seja feita corretamente na presença de uma versão anterior, e que o processo + seja executado corretamente sem intervenção manual. + +Esta atividade traz grandes benefícios aos usuários finais, uma vez que ao ser +finalizada torna-se muito simples a instalação. Contudo, tal descomplicação +envolve um certo custo na etapa de desenvolvimento. + + +### Estudos Avançados para a sustentação da plataforma + +TODO: Revisão Luan + +Na Release 5 foram priorizadas as seguintes ações para a sustentação da +plataforma: + +* Refatoração dos scripts +* Confirudação dos ambientes local de teste e de desenvolvimento +* Evolução do monitoramento do ambiente +* Migração do Noosfero para Rails 4 (última versão framework) + +Os ambientes na infraestrutura pela Diretoria de Tecnologia da +Informação - DTI foi repensado para 2, cada um com 7 máquinas virtuais: + +* Ambiente de desenvolvimento e homologação: para que a equipe de +desenvolvimento realize testes de novas funcionalidades ou de correções, +replicando de fato o ambiente que existe em produção. Ambiente também em que os +analistas do Ministério do Planejamento possam aprovar e homologar as +funcionalidades. +* Ambiente de produção: onde o Portal do Software Público é entregue para os +usuários finais. + +Todos os ambientes acima são gerenciados pelo SERPRO e se encontram em uma +mesma nuvem, de modo que os ambientes de desenvolvimento e homologação possuem, +inicialmente, as mesmas configurações de software que o ambiente de produção. +Isto é importante para prevenção de imprevistos relacionados a configurações +diversas, como por exemplo, regras de firewall. + +Para garantir que as configurações de software permaneçam as mesmas, todas as +alterações realizadas em qualquer um dos servidores são feitas com o uso de +técnicas de entrega contínua, através do uso de receitas Chef (técnica avançada +que permite sempre replicar uma série de passos), de modo que as mesmas +receitas são executadas em cada um dos ambientes. + +Os ambientes de Desenvolvimento, Homologação e Produção configurados e mantidos +no MP são de responsabilidade da Diretoria de Tecnologia da Informação-DTI. +Entretanto, até a última atualização em 27 de julho de 2016, os procedimentos +foram realizados pela equipe da UnB. + +Todos os procedimentos realizados foram automatizados e documentados, de forma +que o manual de instalação/operação da plataforma foi atualizado. Em que pese +a equipe da UnB tenha mantido atualizado o manual de instalação/operação, além +de realizar a transferência de tecnologia para realização de tais +procedimentos, ainda há uma forte dependência da equipe da equipe da UnB, por +parte do MP, para execução desse tipo de atividade. Além disso, uma oficina foi +ministrada no dia 27 de julho de 2016 para sanar todas as eventuais dúvidas +ainda existentes por parte da DTI. Ainda, um vídeo está disponibilizado no +Youtube com a completa demonstração de todo o processo de instalação do +ambiente: https://youtu.be/ipy2Z__c-NE + + +### Estudos sobre licenças de software livre + +Ao final da Release 4, a coordenação do projeto por parte da UnB estava ciente +da possibilidade da falta de repasse dos recursos previstos para 2015. Assim, +junto ao relatório da Release 4, entregamos o relatório final com as +alternativas de licenciamento de Software Público Brasileiro e a minuta da nova +Instrução Normativa, visando a flexibilização do esquema de licenciamento e +para o tratamento adequado do “software de governo”. + +Durante a Release 5 não foi realizada nenhuma atividade específica, mas sim +colaborações na revisão da minuta até sua consulta pública, via o Portal +Participa.Br. Posteriormente, os pesquisadores da UnB envolvidos neste tópico +participaram de uma audiência pública para discutir a nova IN proposta com os +interessados no tema, presencialmente, no auditório do Ministério do +Planejamento, em 07 de março de 2016. + + +## Encerramento do Projeto + +TODO: Paulormm + +## Benefícios alcançados + +TODO: Paulormm + +### Oficinas + +TODO: Paulormm + +### Treinamento + +TODO: Tada + +### Entrega da plataforma estável + +TODO: Paulormm + + + +## Dificuldades encontradas + +TODO: Paulormm + +### Falta de repasses e Encerramento do projeto + +TODO: Paulormm + +## Custos Incididos na Release + +TODO: Paulormm + +## Anexos + +TODO: Paulormm + -- libgit2 0.21.2