o estado do projeto i-educar
TRANSCRIPT
O estado do projeto i-EducarI Encontro Nacional do Software Público
Lançado em setembro/2008
5 mil membros cadastrados
Desenvolvido pela Prefeitura Municipal de Itajaí (SC)
Principal colaborada: Cobra Tecnologia S.A.
Itajaí/SC, Arapiraca/AL, Porto Velho/RO
Projeto
http://tinyurl.com/ieducarspb
@ieducar
http://www.ohloh.net/p/i-Educar
Versão atual: 1.0.2
Versão beta: 1.1.0-beta2
Requisitos: Apache 2, PostgreSQL 8.2, PHP 5.2 e PDFLib
Multiplataforma (Linux, Unix e Windows)
Comunidade: http://tinyurl.com/ieducarcom
Documentação: http://tinyurl.com/ieducardocs
Arquitetura
3/99
Irei falar sobre...Apresentação disponível em: http://tinyurl/ecpspb22009
PROBLEMAS, IDEIAS EPERSPECTIVAS.
O que somos/temos hoje?
5 mil membros.Foram 2.300 membros de março para cá.
01/03/0905/05/09
12/05/0919/05/09
26/05/0902/06/09
09/06/0916/06/09
23/06/0930/06/09
07/07/0914/07/09
21/07/0928/07/09
04/08/0911/08/09
18/08/0925/08/09
01/09/0908/09/09
15/09/0922/09/09
29/09/0906/10/09
13/10/0920/10/09
25/10/09
0
1000
2000
3000
4000
5000
6000
Membros
Crescimento estável.Progressão quase aritmética.
Demanda!5.554 municípios.
10
Negócio.Empresas e profissionais usam o i-Educar
como um negócio ($$$).
Municípios.Se beneficiam da redução de custos.
Software funcional.E que custa dinheiro.
Dinheiro?!Mas não é livre?
337.520 linhas de código (LOC)
80.049 linhas de comentário (CLOC)
1.549 classes
2.048 métodos não-estáticos
10 métodos estáticos
3.811 funções
Código-fonte
Fonte: http://www.ohloh.net/p/i-Educar
$ 4 milhões/ 5 = $ 800.000
Eu iria morar nas Bahamas.
Na tese.Prestadores de serviço e municípios
se beneficiam.
E o que precisamosfazer para ser fato?
http://www.fickr.com/photos/jamescridland/613445810/sizes/l/20/99
Software open source - comunidade open source =
Software legado convencional
Dries BuytaertCriador do Drupal
Fonte: http://programm.froscon.org/2009/events/428.en.html
(prints Trac)
Mas, sozinho ninguém faz festa.
PROBLEMAS?
Bugs Comunidade
Código Usabilidade
Documentação
BUGS.O i-Educar foi liberado com um bom número deles :(
http://www.flickr.com/photos/chitrasudar/2630042767/
Nunca são bons.Queremos eliminá-los.
Test driven development.(Desenvolvimento orientado a testes)
“Test Driven Development (TDD) is a design technique that drives the development process through testing. In essence you follow three simple steps repeatedly:
Write a test for the next bit of functionality you want to add.
Write the functional code until the test passes. Refactor both new and old code to make it well
structured.”
Martin FowlerAutor, arquiteto de software
Fonte: http://www.martinfowler.com/bliki/TestDrivenDevelopment.html
30/99
A boa? Já adotamos.(você não notou?)
PHPUnitSuíte de testes de unidade
phpunit.de
Selenium RCServidor de testes funcionais
seleniumhq.org
CÓDIGO.(um pouco à italiana)
http://www.fickr.com/photos/gluemoon/90804324/sizes/l/
Mas, funciona.E estamos trabalhando para melhorá-lo!
De várias formas...
Padrões de codificação.http://svn.softwarepublico.gov.br/trac/ieducar/wiki/Dev/1.X/PadroesDeCodificacao
Diff limpo.http://svn.softwarepublico.gov.br/trac/ieducar/wiki/Dev/1.X/PadroesDeCodificacao
Design patterns.(Padrões de projeto)
40/99
intranet/include/clsControlador.inc.php
intranet/include/clsControlador.inc.php
Aonde foi parar esse código todo?
Componentes reutilisáveis.(e o porque ainda não usamos o Zend Framework)
Modularização.(Quero uma API aí, meu!)
USABILIDADE.O pobre do usuário merece carinho.
Ele é nosso cliente final.
http://www.fickr.com/photos/zachklein/54389823/
DOCUMENTAÇÃO.
50/99
http://www.fickr.com/photos/zachklein/54389823/
Exige muito esforço.Desatualiza rapidamente.
Instalação (Linux/Windows), usuário, desenvolvedor...
Ainda é pouco.
Manuais de usuário edocumentação de API.
IDEIAS.Fica estranho sem o acento, né?
Missão.Vamos criar uma e moldar nossa identidade?
Boas práticas.Vamos continuar adotando as melhores.
dbdeploy
Ação.Não espere que façam por você.
60/99
“Open Source development and communities are always a bit broken.”
“Dysfunction is natural, not abnormal.”
Dries BuytaertCriador do Drupal
Fonte: http://programm.froscon.org/2009/events/428.en.html
Do-ocracy.Merecimento de quem faz.
http://www.fickr.com/photos/ericskif/1606763849/sizes/l/
Seu CV público.Isso serve para empresas...
Mercado público.http://www.mercadopublico.gov.br/
O meu i-Educar faz XYZ...
Você vai ficar para trás!
http://www.fickr.com/photos/57587069@N00/161053228
Podemos fazermelhor juntos!
Drupal.
70/99
Lançado em meados de 2001
Centenas de milhares de sites
Mais de 1.000 empresas (mundo)
Mais de 4.400 módulos
Projeto Drupal
Todos contribuem.E se beneficiam disso!
E diminuem custos.Para eles e os clientes!
Contribua.http://svn.softwarepublico.gov.br/trac/ieducar/wiki/Projeto/Contribuindo
Crie um patch
Aprenda TDD (PHPUnit)
Ajude nos fóruns
Ajude na documentação
Dê feedback
Retorne as suas melhorias (com testes)
Contribua
PERSPECTIVAS.
Maior concorrência.
Nosso projeto temfoco único. Vamos fazer
disso uma vantagem.
Commodities einsights.
80/99
Melhor usabilidade.Pensar no usuário desde o início.
API e módulos.
TDD.
90%+ de code coverage.
TDD.
Mais TDD.
O projeto final é o código.
Manuais e API.
CTRL+C
90/99
Não do Windo...
ANO QUE VEM.
Versão 2.0
Um framework.
?http://www.fickr.com/photos/governo_de_minas_gerais/4016359549/sizes/o/
PHP Conference Brasil
Obrigado!Eriksen Costa Paixão
[email protected] em: http://tinyurl.com/ecpspb22009
www.cobra.com.br
mui
to
99?