Expresso 3 - um caso de sucesso do PHP no governo
Upcoming SlideShare
Loading in...5
×
 

Expresso 3 - um caso de sucesso do PHP no governo

on

  • 1,249 views

O Expresso 3 é uma suíte de comunicação baseada em Zend Framework e ExtJS, que opera em um ambiente com mais de dez mil usuários simultâneos. A palestra irá apresentar a arquitetura da ...

O Expresso 3 é uma suíte de comunicação baseada em Zend Framework e ExtJS, que opera em um ambiente com mais de dez mil usuários simultâneos. A palestra irá apresentar a arquitetura da aplicação, infraestrutura de produção e o modelo de desenvolvimento colaborativo internacional que inovou a forma de trabalhar com software livre dentro do SERPRO.

Statistics

Views

Total Views
1,249
Views on SlideShare
1,248
Embed Views
1

Actions

Likes
6
Downloads
13
Comments
0

1 Embed 1

https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Expresso 3 - um caso de sucesso do PHP no governo Expresso 3 - um caso de sucesso do PHP no governo Presentation Transcript

  • Expresso 3 - um caso de sucesso do PHP no governo Flávio Gomes da Silva Lisboa
  • A EMPRESA Empresa pública vinculada ao Ministério da Fazenda. O negócio do Serpro é a prestação de serviços em Tecnologia da Informação para o setor público. A empresa desenvolve soluções que, além de contribuírem para a modernização e eficácia da administração pública, buscam estreitar a relação entre cidadãos e Governo.
  • A EMPRESA Presença Nacional 11 Regionais Brasília, Belém, Fortaleza, Recife, Salvador, Belo Horizonte, Rio de Janeiro, São Paulo, Curitiba, Florianópolis e Porto Alegre 17 Escritórios
  • CENTROS DE DADOS ● ● ● ● ● ● Utilização de tecnologias para contingência de recursos alocados aos serviços de missão crítica Balanceamento de carga como instrumento de gestão de alta disponibilidade e desempenho Redundância e contingência de ambientes de gerenciamento (hardware e software) Espelhamento de dados, automação de processos de produção, monitoração e gerenciamento, além de salas cofres 3 Data Centers: SPO, BSB e RJO 2 Serviços - Mainframe (19.719 MIPS) ● ● ● ● ● Outros serviços ● Housing ● Hosting ● Colocation ● Mais de 1.400 servidores de plataforma baixa (Risc, Cisc e Epic) entre máquinas físicas e virtuais 6 Fitotecas automatizadas com capacidade de 2 petabytes de armazenamento 1.353 petabytes de armazenamento (discos) sendo 945TB em SPO, 51TB no RJO e 357TB em BSB 12 bilhões de transações on-line processadas por ano Múltiplos Bancos de Dados (Adabas, DB2, Oracle, SQL Server, My SQL, PostgreSQL, Lotus Notes, BRSearch, MS Accessm Sybase, INFORMIX, ZopePlone) 64.407 Microcomputadores
  • REDE DE COMUNICAÇÃO ● ● ● Infraestrutura de última geração, com abrangência nacional Transmissão e disponibilização de informações: dados, voz ou imagem, com segurança e confiabilidade Atendimento às necessidades do governo no relacionamento com o cidadão para o uso de seus sistemas de informação
  • SOLUÇÕES SERPRO Rapidez, economia e transparência para a realização de compras e contratação de serviços via pregão eletrônico. Aumento da competitividade e melhora na gestão dos recursos públicos. Conjunto de sistemas que apoiam o processo de importação e exportação brasileiro. Reforço à segurança, à agilidade no pagamento e recolhimento de tributos e redução no risco de fraudes cambiais e desvios de mercadorias.
  • SOLUÇÕES SERPRO Informatização dos portos brasileiros, o que proporcionou maior rapidez, economia e segurança na estada dos navios e ordenou as atividades econômicas dos setores exportador e importador do país. As mercadorias que demoravam mais de 15 dias para serem liberadas, passaram a levar em média 5 dias. Renach - Registro Nacional da Carteira de Habilitação Controla a emissão da CNH e todas as informações sobre o condutor, desde sua inscrição como candidato até a suspensão do direito de dirigir. O Registro Nacional de Veículos Automotores (Renavam), sistema que registra toda a trajetória do veículo, também foi desenvolvido pelo Serpro.
  • ADMINISTRAÇÃO DE CORREIO ELETRÔNICO Solução de comunicação baseada em software livre que reúne e-mail, agenda, catálogo de endereços e mensagens instantâneas de texto e voz. Alta escalabilidade, protocolos abertos, integração com outros sistemas web, mobilidade, baixo custo, independência de fornecedores, plataformas e servidores. A aplicação garante uma comunicação segura, contando com criptografia e ambientes para tráfego e armazenamento próprios do Serpro.
  • Histórico 2000 → Criação do phpGroupware ● 2003 → Criação do EGroupware ● 2004 → Criação do Expresso pela CELEPAR ● 2007 → Criação do Tine20 ● 2009 → Expresso V2 ● 2011 → Inicio do projeto Expresso V3 ● 2012 → Piloto Expresso V3 ● 2013 → Expresso V3 em produção SERPRO ●
  • Histórico 2013 2012 Expresso 3 2011 2010 Expresso 2 2009 2008 Tine 2.0 2007 2006 Zend Framework 2005 Expresso 2004 2003 EGroupware 2002 2001 2000 phpGroupware
  • Comunidade ExpressoV2 Atualmente o Expresso V2 é utilizado por 525.387 usuários em 167 empresas/instituições.
  • Comunidade ExpressoV3 http://comunidadeexpresso.serpro.gov.br
  • Expresso 3 – Funcionalidades Catálogo de endereços
  • Expresso 3 – Funcionalidades Email
  • Expresso 3 – Funcionalidades Calendário
  • Expresso 3 – Funcionalidades Mensageria Instantânea
  • Expresso 3 – Funcionalidades Webconferência
  • Expresso 3 – Funcionalidades Tarefas
  • Expresso 3 – Funcionalidades Serviço CalDAV/CardDAV Acesso e manutenção de: ✗ Contatos no catálogo ✗ Eventos na agenda ✗ Tarefas Calendário Contatos Cliente Thunderbird
  • Expresso 3 – Funcionalidades Serviço de Mobilidade Tablets Tarefas Smartphones e-mails ActiveSync Contatos Calendário Celulares Outros dispositivos compatíveis
  • Arquitetura do Software
  • Arquitetura do Software
  • Arquitetura do Software
  • Infraestrutura Expresso V2 ● 3 ambientes de produção ● 58 servidores reais ● 150 servidores virtuais ● 35 mil contas de usuários DNIT Ministério dos Transportes Valec PGFN Ministério do Planejamento Ministério da Fazenda ICMBio Ministério do Meio Ambiente CARF
  • Infraestrutura V2
  • Infraestrutura V3 ~2GB
  • Infraestrutura V3 Atende mais de 11 mil funcionários
  • Projeção de adoção http://www.planalto.gov.br/ccivil_03/_Ato2011-2014/2013/Decreto/D8135.htm Art. 1º As comunicações de dados da administração pública federal direta, autárquica e fundacional deverão ser realizadas por redes de telecomunicações e serviços de tecnologia da informação fornecidos por órgãos ou entidades da administração pública federal, incluindo empresas públicas e sociedades de economia mista da União e suas subsidiárias. § 3º Os programas e equipamentos destinados às atividades de que trata o caput deverão ter características que permitam auditoria para fins de garantia da disponibilidade, integridade, confidencialidade e autenticidade das informações, na forma da regulamentação de que trata o § 5º.
  • Projeção de adoção
  • Projeção de adoção
  • Conhecendo o Projeto Tine20 ● ● ● Tine: Tine Is Not E-GroupWare! Motivação sobre o eGroupWare 1.4:  A interface do usuário era criada no servidor (pior desempenho);  Classes muito “amarradas”, desenvolvimento não modular;  Sem testes unitários, bugs eram frequentemente reintroduzidos. Baseado em duas API:  Zend Framework (PHP);  ExtJS (Javascript). [https://www.tine20.org/wiki/index.php/What_was_wrong_with_eGroupWare_1.x%3F] [https://www.tine20.org/wiki/index.php/Technical_background_of_eGroupWare_2.0]
  • Comunidade Tine20 [http://www.tine20.org/home.html]
  • Conhecendo o Projeto Tine20 Live demo: [https://demo.tine20.net/]
  • Conhecendo o Projeto Tine20 Forum
  • Conhecendo o Projeto Tine20 Mantis Bug Tracker [https://forge.tine20.org/mantisbt/view_all_bug_page.php]
  • Ciclo de Desenvolvimento - Comunidade
  • GIT git clone -o review https://gerrit.tine20.org/tine20/p/tine20.git git checkout master git pull git checkout -b task5353 Implementação a funcionalidade ou correção git add newfile git add changedfile git commit Mantis#0008280 Expresso#5353 Change to use session instead of zend cache git push review HEAD:refs/for/master
  • Gerrit/Jenkins
  • Gerrit/Jenkins
  • Gerrit/Jenkins
  • Gerrit/Jenkins
  • Gerrit/Jenkins
  • Gerrit/Jenkins
  • Gerrit/Jenkins
  • Processo de Desenvolvimento do ExpressoV3
  • Redmine: Estados de uma Tarefa Principais estados de uma tarefa no redmine:
  • Nova Tarefa ● O título deve ser significativo. No caso de bug, inserir um passo a passo na descrição para que o desenvolvedor possa reproduzir. ● No caso de funcionalidade, linkar na descrição o tópico de dicussão no fórum, a apresentação da proposta da funcionalidade, ou qualquer outro artefato que auxilie no desenvolvimento. ●
  • De: Nova Para: Execução ● O desenvolvedor entendeu a tarefa! Caso não a tenha entendido, deve esclarecer a dúvida através de telefone, e-mail ou mensageria instantânea. ● Para fins de exemplificação, vamos chamar a tarefa de TASK#999: ●
  • De: Execução Para: Revisão ● O desenvolvedor terminou a tarefa!
  • Tarefa em Revisão Um segundo desenvolvedor faz uma revisão do código e um pré-teste do que foi requisitado na tarefa. ● A cópia (pull) deve ser feita sobre o branch atualizado do expressov3. ●
  • De: Revisão Para: Integrar Após as devidas aprovações, a tarefa (código) pode ser integrada com o branch expressov3. ●
  • De: Integrar Para: Teste Depois de integrada, a tarefa passa por mais uma validação com uma equipe especializada em teste. ● Selenium – Testes funcionais automatizados Testes funcionais manuais
  • De: Teste Para: Fechada Depois de integrada e testada, a tarefa pode ser fechada. ● Para fins de histório e consulta, o branch da tarefa não precisa ser removido do repositório intermediário. ●
  • Tarefa Rejeitada ● O bug não pode ser reproduzido. ● Inviabilidade técnica. ● Sugestão de funcionalidade rejeitada. ● O branch apresentou conflitos. ● O teste falhou. Uma tarefa rejeitada pode ser reaberta para execução ou fechada.
  • Comunidade ExpressoV3 Perguntas? Flávio Gomes da Silva Lisboa flavio.lisboa@serpro.gov.br