sexta-feira, novembro 17, 2006

FreeBSD um exemplo de organização em Projetos OpenSource.

Quando se fala em Projetos, normalmente
se pensa em uma estrutura privada.

Mas enganasse quem pensa que a
organizaçãoesta diretamente ligada ao fluxo
de dinheiro envolvido, existem modelos de
projetos OpenSource que mesmo movidos
diverças vezes por esforços voluntários são
extremamente competêntes.

Hoje irei comentar sobre o Projeto FreeBSD...

O Projeto FreeBSD possuir a seguinte extrutura:

1. Core Team
2. Commiters
3. Contributors

O Core Team é um grupo formado por 9
desenvolvedoresseniors, que são eleitos a cada
2 anos e ditam o rumo do sistema.

Os Commiters, são em media 250
programadores espalhados pelo mundo que
recebem esse nome porque o Projeto FreeBSD foi
estruturado usando o sistema de controle de versão
chamado CVS e levando em conta que o comando
que submete à arvore do sistema as modificações
chama-se commit.

Já os Contributors são algumas centenas de
programadores ou não, que separam parte do seu
tempo ajudando o Projeto.

Um ponto muito importante em um projeto é a
organizacão e a fidelidade a metas e prazos.

As metas são traçadas a cada nova release maior, como
as recentes features de MAC importadas do projeto
TrustedBSD nativamente testadas no ramo 7.x CURRENT
e agora disponiveis na futura RELEASE 6.2

Em sua maioria os projetos são dividas em pedaços
menores dispersos a cada release menor o que faz
o sistema estar em crescente evolução, e não em uma
mera revolução

Mesmo em constante evolução o sistema é regino
por uma norma interna chamada POLA, "Principle of Less
Alteration" que garante a compatibilidade entre todas as
versões tanto em nivel de API quanto em compatibilidade
binária e de sintax.

Um quesito importante e muito descuidado em
projetos é a documentação de procedimentos e dos
resultados alcançados, e novamente o projeto FreeBSD
demostra como é possivel uma boa gestão de organização
em um Ambiente OpenSource.

O FreeBSD Handbook é um livro escrito por varios
desenvolvedorese terceiros que visa treinar não
somente o usuário sobre asfeatures do sistema, mas
transmitir diversos conhecimento sobre
Unix de uma forma mais uniforme.

Metas e prazo normalmente caminham em lados opostos, observando
a agenda em www.freebsd.org/releases/6.2R/schedule.html podemos
verificar que os projetos OpenSouce podem vir a sofrer dos mesmos
problemas que muitos projetos privados enfrentam.

Os atrasos no lançamento de novas releases, estão em sua
totalidade descritos em um todo.html, como esse
sobre a release 6.2 http://www.freebsd.org/releases/6.2R/todo.html.

Uma outra particularidade muito importante do projeto FreeBSD é
a lista de commmits permitidos, quando um nova release esta
em vias de ser lançada.

http://www.freebsd.org/releases/6.2R/approvals.html.

Existem outras milhares de features do projeto FreeBSD que seriam
interessantes pra serem comentadas, mas o recado foi dado.

Existe projetos Open Source muito sérios e um dele chama FreeBSD.