Colab - Servidor de Integração de Softwares HTTP

252 visualizações

Publicada em

Uma visão evolutiva do Colab.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
252
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
4
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Colab - Servidor de Integração de Softwares HTTP

  1. 1. Colab Servidor de Integração de Softwares HTTP
  2. 2. about.me @seocam (aka Sergio) #pai #empreendedor #programador #pesquisador #mestrando #python #softwarelivre #geek
  3. 3. O que?
  4. 4. O que? Colab
  5. 5. Colab?
  6. 6. Colab? Colab!
  7. 7. Conteúdo ● Interlegis ● Evolução do Colab ● Portal do Software Público Brasileiro ● Colab 2015
  8. 8. Programa Interlegis
  9. 9. ● Projeto criado em 1997 ● Piloto nascido dentro do PRODASEN ● Baseado na Tese de Doutorado ○ Prof. Armando Roberto Cerchi Nascimento Origem do Interlegis
  10. 10. ● Programa Interlegis iniciado em 1999 ● Orçamento do BID ● Execução pelo Senado Federal Origem do Interlegis
  11. 11. Objetivos Apoiar o processo de modernização do Poder Legislativo Brasileiro, em suas instâncias federal, estadual e municipal: ● Aumentar a eficiência e competência das Casas Legislativas (e-parlamento) ● Melhorar a comunicação e o fluxo de informação entre os legisladores (e-governo) ● Promover a participação cidadã nos processos legislativos (e-democracia)
  12. 12. Perspectiva Temporal
  13. 13. Pilares ● Comunicação ● Educação ● Informação ● Tecnologia
  14. 14. Mas… O Interlegis não "escala" sozinho O governo não "escala" sozinho
  15. 15. Comunidade de Prática "Grupo de pessoas que compartilha um assunto, uma série de problemas ou a paixão sobre um tópico, e aprofundam seus entendimentos e conhecimento nesta área para interação em uma mesma base." Hubert Saint-Orange e Debra Wallace – Leveraging Communities of Practice for Strategic Advantage
  16. 16. Colab - Propósito Um ambiente que mantém viva uma comunidade agrega três valores: 1. Acesso ao conhecimento existente 2. Troca de conhecimento 3. Criação de novos conhecimentos
  17. 17. Em 2004 Uma lista de discussão (mailman)
  18. 18. Em 2005 Uma instância do Trac Múltiplas listas de discussão
  19. 19. Em 2010 Quatro instâncias do Trac Múltiplas listas de discussão Servidor de Chat (XMPP) Integrados!
  20. 20. Integrados? Really?!
  21. 21. Em 2012 Criada uma camada integradora que passa a ser conhecida como Colab. ● URL única ● Mesmo usuário ● Busca Integrada ● Linha do tempo integrada
  22. 22. Wayback Machine Demo (se a conexão permitir…) http://web.archive. org/web/20120204111641/http://colab. interlegis.leg.br/
  23. 23. Em 2012 Integrados... mas pode ser melhor!
  24. 24. Em 2013 Camada de integração evoluída: ● Single Sign-On ○ Controle de acessos pela interface Web ● Interface Integrada ● Busca Integrada ● Chat Integrado ● Gameficação (precária =)
  25. 25. Colab 2013 - Tecnologias ● Trac - Ambiente de colaboração (Python) ● Mailman - Listas de E-Mail (Python) ● OpenFire - Servidor de Chat (Java) ● Apache Solr - Motor de buscas (Java) ● Colab (Python) ○ Camada Integradora ○ Histórico de e-mails ○ Agregador de Blogs ○ Cliente de buscas ● Converse.js - Cliente de Chat (Javascript) ● Mozilla Persona - Login Federado (Javascript) ● e mais...
  26. 26. Colab 2013 Muito legal! Mas…
  27. 27. Colab 2013 Muito legal! Mas… O que é o Colab?!
  28. 28. Colab 2013 Muito legal! Mas… O que é o Colab?! Crise de identidade!
  29. 29. Colab 2013 Muito legal! Mas… O que é o Colab?! Crise de identidade!
  30. 30. Portal do Software Público Brasileiro (PSPB) Plataforma de colaboração para produção de Softwares Livres* utilizados por orgãos governamentais. ● Criado em 2007 ● Projeto do Ministério do Planejamento Organização e Gestão (MPOG) ● Em 2015 hospeda aproximadamente 60 comunidades de Software Público
  31. 31. Evolução do PSPB Novo Portal do Software Público ● Parceria entre UnB e MPOG ● Composto por ferramentas livre integradas: ○ Mailman ○ Noosfero ○ Gitlab
  32. 32. Como Integrar?
  33. 33. Como Integrar? Colab!
  34. 34. Como Integrar? Mas o que é o Colab? a) Histórico do Mailman b) Agregador de blogs c) Chat d) Servidor de Integração e) Todas as anteriores
  35. 35. Colab em 2015 Servidor de Integração. Objetivo Prover ao usuário final uma experiência unificada com o mínimo de alterações possíveis em cada ferramenta integrada.
  36. 36. Integrações ● Visual ● Dados ● Autenticação
  37. 37. Base de Arquitetura O Colab atua como Proxy Reverso
  38. 38. django-revproxy Uma aplicação Django (Python) de proxy reverso utilizada pelo colab. Desenvolvida para o Colab mas atualmente utilizada por diversos outros projetos. 1656 downloads em abril de 2015. http://django-revproxy.readthedocs.org/
  39. 39. django-revproxy
  40. 40. Autenticação Funcionalidade de Single Sign-On implementada no django-revproxy Funcionalidade consiste em basicamente adicionar um cabeçalho HTTP na requisição. REMOTE_USER definido na RFC 3875.
  41. 41. Visual Utiliza uma funcionalidade de transformação de documentos XSLT implementada no django- revproxy. Utiliza uma biblioteca externa na implementação: Diazo http://diazo.org/
  42. 42. Visual
  43. 43. Dados Banco de dados com modelo de dados de cada ferramenta integrada. Importação de dados realizada periódicamente (atualmente minuto a minuto) Quando um dado novo é importado um sinal é emitido permitindo que outras aplicações reajam á mudanças (padrão observer)
  44. 44. Dados Atualmente em fase de implementação. Desafios: ○ Manutenabilidade alta ○ Facilidade de integrar novas ferramentas ○ Reação rápida de cada ferramenta integrada ○ O que fazer com protocolos não HTTP ● Tema do meu mestrado =)
  45. 45. Oportunidade! Todas as ferramentas integradas, integradoras e bibliotecas utilizadas são software livre. Se tiver interesse em se envolver no desenvolvimento de qualquer um dos projetos me procurem!
  46. 46. Referências / Links ● Jean Ferri ○ http://pt.slideshare.net/jeanferri/interlegis-comunidades ○ http://pt.slideshare.net/jeanferri/interlegis-legislativo-moderno-e- integrado ● Interlegis na wikipedia: http://pt.wikipedia.org/wiki/Interlegis ● Portal Interlegis: http://www.interlegis.leg.br ● The Internet Archive: http://web.archive.org/
  47. 47. Referências / Links ● Colab Interlegis: http://colab.interlegis.leg.br/ ● Novo Portal do Software Público Brasileiro: ○ https://beta.softwarepublico.gov.br/ ● Código fonte do Colab: ○ http://beta.softwarepublico.gov.br/gitlab/softwarepublico/colab ○ https://github.com/colab/colab
  48. 48. Obrigado! Contato: seocam@seocam.com Slides no slideshare. Github, Gitlab, Twitter: @seocam Esta obra está licenciada com uma Licença Creative Commons Atribuição 4.0 Internacional.

×