Código Aberto: modelo para software de qualidade
O
utro dia, conversando com um CIO, ele se mostrou apreensivo quanto à qualidade do código
dos softwares de Código Aberto. Sua dúvida era
se esses softwares teriam qualidade adequada às necessidades de um exigente ambiente corporativo. Parodiando
a campanha de contrapropaganda de uma conhecida
empresa de software, vamos aos fatos.
Existem dois métodos básicos de desenvolvimento de
software: os princípios catedral e bazar. Esses nomes foram
cunhados a partir do célebre trabalho “The Cathedral and
the Bazaar” (A Catedral e o Bazar) [1], de Eric Raymond.
O método batizado de catedral é baseado no planejamento
centralizado, com evolução top-down e rígido relacionamento entre a gerência e os desenvolvedores, quanto a
prazos, metodologias adotadas e tarefas, dentro de uma
hierarquia organizacional. O desenvolvimento é interno
à empresa e apenas nos ciclos de teste alfa e beta que o
produto é exposto ao mercado, através de uma restrita e
controlada comunidade de usuários (individuais ou empresas clientes) que se prontificam a cooperar nos testes
e depurações. Mas todo o código-fonte é proprietário e
fechado ao mundo externo, e restrito apenas aos olhos dos
desenvolvedores da empresa que produz o software. É o
método tradicionalmente adotado pela indústria de software em seus produtos comerciais. Seu nome deriva do
processo de construção das catedrais na Idade Média.
O princípio bazar, como o nome indica, é baseado em
uma forma de desenvolvimento mais livre, sem centralização do seu planejamento e execução. É o modelo típico
do Código Aberto. O desenvolvimento é efetuado em rede,
por uma comunidade de desenvolvedores voluntários, na
maioria das vezes sem vínculos entre si, em uma organização informal. A comunicação é efetuada pela Internet,
virtualmente e sem fronteiras geográficas, e apenas existem
alguns princípios que regulam o trabalho. A liderança do
projeto não é definida de maneira prévia e formal, mas
emerge naturalmente pelos méritos de um determinado
membro da comunidade de voluntários.
Essa é uma característica diferenciadora do movimento
de Código Aberto: a sua exploração de forma inteligente
do poder da produção colaborativa. O que torna esse poder
extraordinário é a capacidade de melhorar com o tempo,
curando-se organicamente, como se o enorme exército
de colaboradores de um projeto como o Linux fosse um
sistema imunológico, sempre vigilante e ágil na reação a
qualquer ameaça ao organismo.
E apesar dos receios naturais causados por um modelo de desenvolvimento inovador para os padrões tradicionais, os projetos de Código Aberto não descambam
para a anarquia; pelo contrário, mantêm uma coesão
impressionante.
Linux Magazine #27 | Fevereiro de 2007
CORPORATE
Cezar Taurion
Os códigos são revisados pelos próprios pares e geralmente o melhor código é selecionado (meritocracia). Como
não existe um departamento de marketing influenciando
prazos, o ritmo de desenvolvimento é direcionado pela disponibilidade de tempo e dedicação dos desenvolvedores
voluntários. O método bazar gera uma forte tendência à
produção de código de alta qualidade. O código é lido e
analisado por diversos desenvolvedores, às vezes na escala das centenas, o que acelera o processo de depuração e
correção de erros. Além disso, não existe pressão de prazo, o que permite mais ciclos de depuração. A decisão de
Essa é uma característica
diferenciadora do
movimento de Código
Aberto: a sua exploração
de forma inteligente
do poder da produção
colaborativa.
liberar o código é fruto de consenso do grupo, e não uma
imposição de marketing, como muitas vezes ocorre em
um projeto comercial.
O resultado é um software de alta qualidade, como
inúmeros estudos independentes têm demonstrado. Portanto, a preocupação do CIO, basicamente, decorre principalmente do desconhecimento sobre o que é realmente
o Código Aberto, e não de fatos reais. ■
Mais Informações
[1] The Cathedral and the Bazaar (em inglês): http://catb.
org/~esr/writings/cathedral-bazaar/cathedral-bazaar/
[2] (em português): http://www.geocities.com/CollegePark/Union/3590/pt-cathedral-bazaar.html
O autor
Cezar Taurion é Gerente de Novas
Tecnologias Aplicadas da IBM.
27
Download

Cezar Taurion - Linux New Media