Gnus, Pinguins e Cavaleiros Espaciais

322 visualizações

Publicada em

O objetivo dessa palestra é mostrar a experiência da cooperação entre dois projetos de software livre (Expresso e Tine 2.0), baseados em países diferentes, e como ambos aprenderam a usar a comunicação e a arquitetura de software para se manterem conectados, e como isso pode ajudar empresas a encararem a contribuição a comunidades de software livre como um investimento e fazer isso parte de seu negócio.

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

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

Nenhuma nota no slide

Gnus, Pinguins e Cavaleiros Espaciais

  1. 1. Gnus, Pinguins e Cavaleiros Espaciais A experiência da comunidade ExpressoV3
  2. 2. Gnus
  3. 3. Gnus
  4. 4. Gnus http://pt.slideshare.net/arulalan/foss-history-1479471
  5. 5. Pinguins
  6. 6. Pinguins Torvalds wrote the computer operating system at the age of 22 and had released the first versions of Linux on the internet in 1991. He led an international team of computer professionals who took control of the operating instructions from companies that made billions of dollars by selling the software preinstalled on new computers. Torvalds cannot take money for his invention at Silicon Valley because he decided to make his work product available to anyone who wanted it for free. https://opensourcesoftware-linux.wikispaces.com/Linus+Torvald
  7. 7. Cavaleiros Espaciais 1979
  8. 8. Cavaleiros Espaciais
  9. 9. http://romocavaleirodoespaco.blogspot.com.br/
  10. 10. O Expressov3 O Expressov3 é um software de colaboração de grupos, com correio eletrônico, webconferência e mensageria instantânea. O projeto Expresso foi criado pela CELEPAR (Companha de Tecnologia da Informação do Paraná). A versão 2 está presente em mais de 100 instituições no país e é usada por mais de 500 mil pessoas. A versão 3 foi lançada em 2012, com evolução da plataforma tecnológica para melhorar a manutenção e extensão do software. O Expressov3 é uma opção competitiva em termos de custo com a possibilidade de baixar o software gratuitamente e montar uma nuvem privada.
  11. 11. Temos consciência de que... “Um Cliente é o mais importante visitante das nossas instalações. Ele não depende de nós, nós é que dependemos dele. Não é uma interrupção no nosso trabalho, é a finalidade deste. Não é um estranho no nosso negócio, faz parte dele. Ao servi-lo, não estamos a fazer-lhe um favor, é ele que nos faz um favor ao dar-nos uma oportunidade para o servirmos.” Mahatma Gandhi
  12. 12. Queremos oferecer um bom produto ao nosso cliente. Um produto que seja seguro. Um produto que seja estável. Um produto que seja flexível. Um produto com custo de manutenção aceitável. Um produto que contribua com uma imagem positiva da empresa.
  13. 13. Por isso queremos investir (mais) na integração Expresso X Tine 2.0 } Focar negócio do Serpro ● Segurança ● Estabilidade ● Flexibilidade ● Funcionalidades genéricas / Demandas da comunidade Expresso
  14. 14. Fatos Pegamos um projeto inteiro de graça e só usamos 40% dele. ActiveSync Addressbook Admin Calendar Courses Crm Felamimail Filemanager HumanResources Inventory Phone Projects RequestTracker Sales Setup SimpleFAQ Sipgate Tasks Timetracker Tinebase Tool Voipmanager
  15. 15. Fatos Existe um potencial de reuso para demandas internas, de clientes e da comunidade, no Brasil e América Latina. ActiveSync Addressbook Admin Calendar Courses Crm Felamimail Filemanager HumanResources Inventory Phone Projects RequestTracker Sales Setup SimpleFAQ Sipgate Tasks Timetracker Tinebase Tool Voipmanager
  16. 16. Fatos Mesmo os módulos do Expresso criados pelo SERPRO usam ou reusam módulos do Tine 2.0 Expressomail Webconference Messenger Expressodriver Felamimail Filemanager Tinebase Tool AppLauncher
  17. 17. Fatos Dois módulos criados pelo Expresso foram submetidos como contribuição para o Tine 2.0 e estarão disponíveis nas próximas releases. Expressomail Expressodriver
  18. 18. Fatos E se podemos ter clientes diferentes (ExpressoLite) é porque reusamos a arquitetura da aplicação, que é orientada a serviços. ExpressoLite ActiveSync WebDAV
  19. 19. Fatos Trazer atualizações da comunidade economiza em custo de desenvolvimento. Uma funcionalidade do Tine 2.0 como a melhoria da conexão CalDAV custou 2.720 € (~R$ 8160) para os patrocinadores do projeto (divididos em 7). Nós pegamos essa funcionalidade de graça.
  20. 20. Fatos Para se ter ideia, sem a integração das comunidades Tine 2.0 e Expresso, se o SERPRO tivesse de criar o Tine 2.0 do zero e deixá-lo com as funcionalidades atuais, teria gasto cerca de R$ 225.696.000,00 apenas com desenvolvimento (considerando o valor médio de R$ 8000,00 para cada commit no repositório)
  21. 21. Fatos Nossas contribuições não são somente aceitas... Tine 2.0 implementando para Expresso!
  22. 22. Fatos Nossas contribuições são melhoradas! Tarefa do Expresso
  23. 23. Fatos Tarefa #11613 do Expresso, melhorada pelo Tine 2.0, com adição de priorização de tipo de serviço (HTTP, Json, WebDAV, ActiveSync) e criação de testes automatizados Testes Isso aumenta a qualidade do produto!
  24. 24. Fatos Nós consumimos frequentemente melhorias e correções do Tine 2.0
  25. 25. Fatos O ambiente de integração contínua e testes automatizados do Tine 2.0 está muito à nossa frente. Quando submetemos para eles uma alteração nossa, descobrimos bugs que não são percebidos aqui dentro, e conseguimos corrigi-los antes que se manifestem.
  26. 26. Fatos Fica difícil integrar mudanças, se o código do Expresso e do Tine 2.0 estiverem muito diferentes. Por isso é preciso manter o código comum atualizado. O ideal é integrar todo release estável do Tine 2.0.
  27. 27. Fatos Para atualizar constantemente o Expresso com código do Tine 2.0, é necessário separar o que é implementação de regra de negócio específica do Serpro do que é genérico. Tinebase Expressobase Específico do Serpro Genérico
  28. 28. Fatos Isso não somente permite a atualização, como também evita que o Serpro distribua funcionalidades dependentes do seu ambiente de produção e que só atendem aos seus clientes ou só servem no Brasil. SÓ FUNCIONA NO SERPRO
  29. 29. Fatos Cada empresa tem suas demandas e ambiente produtivo com características próprias. Por isso o produto tem de ser flexível.
  30. 30. Fatos Expresso tem um mercado potencial na América Latina, mas precisa funcionar com a realidade de cada país. Tem que ser flexível.
  31. 31. Fatos Separar o código específico do Serpro e não desenvolver código que o Tine 2.0 já cria tem a vantagem de permitir o foco no atendimento das demandas do cliente do Serpro e na melhoria da qualidade do que é específico para o Serpro.
  32. 32. Fatos É bom que um projeto seja sustentado por mais de um membro, em comunidade. “Melhor é serem dois do que um, porque têm melhor paga do seu trabalho. Porque, se um cair, o outro levanta o seu companheiro; mas ai do que estiver só; pois, caindo, não haverá outro que o levante.” Eclesiastes 4:9-10
  33. 33. Fatos Melhor ainda se a comunidade for internacional.
  34. 34. Fatos Não é bom querer fazer tudo sozinho. Isso é sintoma da Síndrome do Ursulão. Ursulão é um personagem de desenho animado que sempre decidia fazer as tarefas de casa, ao invés de dar dinheiro para a mulher contratar um especialista (eletricista, encanador, pintor). Resultado: a casa pegava fogo; o cano estourava; o motor do carro fundia. E no final, ele tinha que gastar mais dinheiro pra consertar o que estragou.
  35. 35. Fatos Ao desenvolver de forma colaborativa, evitamos fazer uma implementação que resolve um problema de forma imediata mas cria vários outros problemas que temos de passar meses para resolver.
  36. 36. Fatos ● Não devemos fazer somente o que o cliente pede. ● Não devemos esperar o cliente pedir.
  37. 37. Fatos ● Temos de ser ousados, criativos e inovar ● Temos de melhorar continuamente a qualidade dos produtos e serviços para o cliente
  38. 38. Fatos A atualização constante do código do Tine 2.0 permite que captemos funcionalidades não solicitadas pelos clientes, mas que podemos apresentar. Exemplo: importação de eventos (existe no Tine 2.0, não existe no Expresso)
  39. 39. Fatos Na visão de futuro do Tine 2.0 está a ampliação da integrabilidade: a facilidade de integrar o produto com aplicações de terceiros, ou “pendurá-las” nos módulos do Tine 2.0. Além disso, a ampliação do desacoplamento: a facilidade de desacoplar as bibliotecas (dependências) de terceiros e acompanhar a evolução de cada uma de forma independente.
  40. 40. Fatos Na visão de futuro do Tine 2.0 está a ampliação do uso de dependências de terceiros (delegação de negócios específicos a especialistas em seus respectivos negócios). Isso abre a possibilidade de usar funcionalidades disponíveis em outros frameworks especialistas.
  41. 41. Qual é a nossa estratégia de integração ● Nós isolamento de código com regras de negócio específicas do Serpro; ● Restringirmos alterações na API do sistema, e expandimos o uso de plugins; ● Contribuímos com a comunidade como parte do processo do desenvolvimento.
  42. 42. Importante O SERPRO não tem contrato de suporte com o fornecedor da API do Expresso, por isso a integração de código do SERPRO é feita no tempo de comunidade: a priorização é feita de acordo com a importância da demanda para os patrocinadores do Tine 2.0.
  43. 43. Importante Neste caso, é ainda mais importante isolar o código de negócio específico do SERPRO e enrijecer o critério de aceitação de mudanças para a API (se não for plugável ou configurável, não entra).
  44. 44. Obrigado http://comunidadeexpresso.serpro.gov.br

×