Modelo de Desenvolvimento de Software Livre: A Catedral e o Bazar

Modelo de Desenvolvimento de Software Livre

Modelo de Desenvolvimento de Software Livre

A Catedral e o Bazar é um documento tipo manifesto desenvolvido por Eric S. Raymond no ano de 1.998 para tentar explicar a partir de sua própria perspectiva e experiência (Desenvolvimento Fetchmail) o que ele entendeu sobre a criação e evolução bem-sucedidas do Linux e seus programas relacionados, especialmente da perspectiva da diferença entre os Modelos de Desenvolvimento de Software, que ele chamou pessoalmente de: Modelo Catedral e Modelo Bazar.

E nesta publicação, iremos fornecer uma análise e um resumo do referido manifesto tão popular entre os desenvolvedores do Movimento Software Livre. Que está disponível gratuitamente e acessível em muitas partes da web, mas que pode ser baixado do seguinte link da web para acessá-lo mais rapidamente: A Catedral e o Bazar.

Introdução à Catedral e ao Bazar

INTRODUÇÃO

O referido material «A Catedral e o Bazar» apresenta-nos a visão de que no mundo da Engenharia de Software existem “dois estilos de desenvolvimento completamente diferentes, o modelo catedral, aplicável à maior parte dos desenvolvimentos feitos no mundo do software comercial, em comparação com o modelo bazar, mais típico do mundo Linux ”.

Enfatizando que esses 2 modelos são derivados de pontos de partida opostos na natureza do processo de depuração de software, e de sua teoria particular sobre o que chamou de Lei de Linus, que afirmava o seguinte: "Dado um número suficiente de olhos, todos os erros são irrelevantes" ou em outras palavras: "Com um número suficiente de olhos, todos os erros são ninharias".

E enfatiza a palavra Hacker, que na minha opinião o autor expressou como uma espécie de usuário de alto nível capaz de compreender e explorar de forma eficiente um programa, e para detectar, sugerir ou implementar correções ou modificações de forma e substância eficientes para toda a comunidade de usuários.

Em outras literaturas, esta palavra ou conceito chamado Hacker refere-se a:

«um especialista, apaixonado por uma determinada área temática, principalmente a área tecnológica, e que tem por objetivo aproveitar esse conhecimento para fins benignos. É aquela pessoa, geralmente um profissional de uma área do conhecimento, que é apaixonada pelo conhecimento, descobrindo e aprendendo coisas novas e entendendo como funcionam, chegando a aprimorá-lo com sugestões e propostas eficazes, e sempre com a intenção de compartilhar conhecimento ou evitar a falha ou mau funcionamento do objeto de estudo.

Que é um conceito mais universal e real, já que existem "Hackers" em todas as áreas do conhecimento humano.

Premissas no Desenvolvimento de Software Livre

DESARROLLO

Dos muitos que leram esse material, certamente haverá um grande número que concordará que a ideia de que "o Linux é subversivo" está claramente expressa ali. Mas porque?

Porque até aquele momento havia um multiplicidade de métodos ou modelos de desenvolvimento de software padronizados com base em uma "abordagem mais centralizada e planejada desde o início" Porque o ato de criar Software foi tomado como algo associado a algo que leva a “uma certa complexidade crítica”.

E que apesar do mundo Unix já existir, consistindo de pequenas ferramentas, prototipagem rápida e programação evolutiva, O surgimento da filosofia de desenvolvimento de Software Livre no Linux levou o assunto a outro nível de sofisticação.

Enquanto No mundo do Desenvolvimento de Software Privado, isso era feito de "forma silenciosa e reverente", assim como uma Catedral é construída, no Mundo do Desenvolvimento de Software Livre (Linux) era feito de "forma turbulenta e com múltiplas agendas (caminhos) e abordagens (propostas)", assim como você estava em um grande bazar.

Este grande manifesto nos dá várias premissas para condensar as idéias ali expressas, a respeito do Modelo de Desenvolvimento de Software Livre, quais sejam:

Premissa 1: A Catedral e o Bazar

PREMISSA # 1

TODOS OS BONS TRABALHOS NO SOFTWARE COMEÇAM A TENTAR ATENDER O PROBLEMA PESSOAL DE UM DESENVOLVEDOR.

O que é uma realidade inegável porque Muitos dos que trabalham com Desenvolvimento de Software Livre costumam começar pela necessidade de resolver um problema pessoal ou de um coletivo ou grupo, ou para otimizar um processo já executado de forma mais lenta e / ou repetitiva, que muitas vezes tende a se tornar exaustivo e / ou enfadonho para quem dele participa, procurando maximizar o tempo e o esforço dos envolvidos.

Premissa 2: A Catedral e o Bazar

PREMISSA # 2

BONS PROGRAMADORES SABEM O QUE ESCREVER. O MAIOR SABE O QUE REESCRITAR E REUTILIZAR.

Qualquer programador sabe que começar do zero não é nada ruim ou desnecessário, quando se trata de desenvolver um programa ou aplicativo. Porém, para muitos que estão começando e para outros já versados ​​no assunto, é bem sabido que às vezes "Inventar a Roda" de novo não é muito eficiente, mas é melhor apenas otimizá-la e adaptá-la às suas próprias necessidades. Em outras palavras, é melhor reescrever e assimilar tanto código quanto possível de outros especialistas na área que nos preocupa para resolver o nosso próprio desenvolvimento de software.

Premissa 3: A Catedral e o Bazar

PREMISSA # 3

"PENSE EM JOGAR PELO MENOS UM - VOCÊ ACABARÁ DE FAZER DE QUALQUER MANEIRA."

Um bom Desenvolvedor de Software deve saber ouvir em detalhes o que dizem, sugerem ou propõem os usuários de seus desenvolvimentos, visto que um programa que já é funcional, pode ainda se tornar algo muito grande, apesar de ser funcional, algo que perde o norte, um monstro funcional que faz tudo para todos e, por sua vez, algo não muito agradável. Portanto, ouvir para voltar às raízes, reconquistar usuários perdidos, adicionar novos recursos, remover os desnecessários, tornar o programa menor, mais específico e geral, é sempre uma boa prática.

Premissa 4: A Catedral e o Bazar

PREMISSA # 4

SE VOCÊ TEM A ATITUDE CORRETA, PROBLEMAS INTERESSANTES O ENCONTRARÃO.

Uma boa mudança de atitude e pontualidade pode significar uma mudança radical para cada programador ou desenvolvedor de software em seus desenvolvimentos atuais ou novos que, por sua vez, significam novas vantagens de tempo, dinheiro ou conforto para os usuários de seus produtos. Esteja atento a formas inovadoras de resolver problemas que se apresentam como um bom sintoma na direção certa.

Premissa 5: A Catedral e o Bazar

PREMISSA # 5

QUANDO UM PROGRAMA NÃO ESTÁ MAIS INTERESSANDO VOCÊ, SUA ÚLTIMA OBRIGAÇÃO É PASSÁ-LO PARA UM SUCESSOR COMPETENTE.

Para muitos programadores ou desenvolvedores de software, bem como para outros tecnólogos, não é incomum querer dedicar um novo tempo a novos projetos. Mas no mundo do Software Livre a premissa é passar o bastão, existem outros que gostariam de continuar com o desenvolvimento de seus produtos já abandonados, para os quais eles devem permitir que qualquer um hackie (melhore) o programa para si ou para o benefício da comunidade de usuários do programa.

Premissa 6: A Catedral e o Bazar

PREMISSA # 6

TRATAR SEUS USUÁRIOS COMO COLABORADORES É A FORMA MENOS COMPLICADA DE MELHORAR E DEFICIAR UM PROGRAMA DE FORMA RAPIDA.

Como "grátis" é frequentemente interpretado como "grátis" no desenvolvimento de Software Livre, muitos programadores tendem a se agrupar para evitar o desgaste não remunerado, aliando-se a outros desenvolvedores ou usuários avançados de seus desenvolvimentos, para continuá-los ou para que outros continuem eles, em troca de receber "créditos" no desenvolvimento de futuras inovações de código e garantir que os desenvolvimentos futuros incluam formalmente algum licenciamento, para evitar o uso indevido dele.

Premissa 7: A Catedral e o Bazar

PREMISSA # 7

LIBERE EM BREVE. LANÇA COM frequência. E OUÇA SEUS USUÁRIOS.

Ao contrário do mundo do desenvolvimento de software proprietário, no software livre geralmente acontece que muito e rápido é melhor. Visto que a ampla base de usuários e desenvolvedores que costumam utilizar e desenvolver um programa na comunidade e por sua vez interagem entre si, para comunicar suas dúvidas, sugestões, propostas, reclamações e / ou reclamações, pode se tornar uma valiosa fonte de conhecimento para rapidamente evoluir um programa para estágios de desenvolvimento maduros.

Premissa 8: A Catedral e o Bazar

PREMISSA # 8

DADA UMA BASE BASTANTE DE TESTADORES E CONTRIBUIDORES, QUASE TODOS OS PROBLEMAS SERÃO IDENTIFICADOS RAPIDAMENTE E SUA SOLUÇÃO SERÁ ÓBVIO PARA ALGUÉM.

O material acaba fazendo o leitor concluir, muitas vezes, que o Método de Desenvolvimento de Software baseado no Modelo Bazar é muito eficaz. Porque quanto mais poder, liberdade ou conhecimento um desenvolvedor de software dá aos usuários sobre seu programa, mais eles podem contribuir com ideias engenhosas ou mudanças úteis, apenas para fins de benefício coletivo.

E isso é expresso de forma agradável no seguinte trecho do material:

"Essa é, eu acho, a diferença fundamental entre os estilos de catedral e bazar. De acordo com a maneira como uma catedral encara a programação, erros e problemas de desenvolvimento são fenômenos traiçoeiros, profundos e distorcidos. Demora meses de análise por um pequeno número de pessoas dedicadas para ter certeza de que foram removidos. Daí os longos períodos necessários para o lançamento de novas versões, e a inevitável decepção vivida quando aquelas que foram esperadas por tanto tempo não são perfeitas.

À luz do modelo do bazar, no entanto, presume-se que os erros são normalmente questões menores ou, pelo menos, que se tornarão tão rapidamente, uma vez que são expostos aos olhos ansiosos de alguns milhares de colaboradores dedicados para corrigir e corrigir ao contrário, a cada nova versão. Portanto, você continua lançando versões com frequência para obter ainda mais correções e, como efeito colateral benéfico, tem menos a perder se bagunçar de vez em quando. "

Conclusões: A Catedral e o Bazar

CONCLUSÃO

Pessoalmente, minha pouca experiência na área de Desenvolvimento de Software Livre sob o Modelo do tipo Bazar me deixa as seguintes conclusões:

  • Os usuários devem ser tratados como um recurso inestimável e, no melhor dos casos, como aliados inestimáveis ​​por sua colaboração no desenvolvimento do produto.
  • Toda ideia é boa ou vale a pena explorar, já que às vezes a menos suspeitada pode ser uma ótima solução ou melhoria para o desenvolvimento.
  • É bom ou provável que a ideia original se divida, expanda ou se afaste do conceito original, mas o importante é o quão focado se deve estar em termos do tipo de mercado de usuários que se deseja atender, servir ou ajudar.
  • Para ser eficiente e evitar perda de esforço por dispersão.
  • O melhor é um código pequeno, direto, simples, mas eficiente, que consegue ser apreciado pela comunidade como correto.
  • Um programa já está maduro para a Comunidade de usuários, quando não há mais nada a eliminar, já que adicionar é sempre uma boa possibilidade a se levar em conta.
  • Qualquer programa pode ser usado (em parte ou no todo) para ser reutilizado em funções que não foram originalmente concebidas.
  • Todo Software deve ter seus respectivos licenciamentos e medidas de segurança para a confidencialidade do uso dos Dados do Usuário.
  • Não é necessário começar do zero, alguém sempre desenvolveu algo semelhante à nossa ideia concebida.
  • É preciso trabalhar no que se gosta, é preciso sentir paixão pelo desenvolvimento ao qual se vai se dedicar no Software Livre para gerar internamente um sentido de união com o que se elabora, sem chegar ao extremo de desenvolver um sentido de propriedade sobre isso.
  • Deve haver excelentes e frequentes meios de comunicação entre Desenvolvedores e Usuários (Colaboradores), para que o trabalho flua com rapidez e mude com eficácia.

Espero que tenham gostado e tenham achado estas informações úteis, pois a Leitura de "A Catedral e o Bazar" é uma referência obrigatória para todos aqueles que programam qualquer Desenvolvimento de Software Livre, não importa o quão grande ou pequeno.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   menino nascii dito

    bom resumo / opinião, eu só tiraria tanta imagem de «monitor com código» que não chega a dar conta de nada

    1.    Linux pós-instalação dito

      Eu os achei apropriados para a edição de Desenvolvimento de Sistemas, e não seria mais correto removê-los, mas obrigado por sua observação!

  2.   BAYRON dito

    Excelente resumo e analogia.

    1.    Linux pós-instalação dito

      Obrigado Bayron por seu comentário agradável e positivo.

  3.   Eduardo de trinidad dito

    Boa tentativa, parabéns por este aviso importante. Acho que "No reino de Deus" TUDO É (SERÁ) Grátis e Grátis ... caso contrário, os desenvolvedores continuarão a ser martirizados ou crucificados pelos subversivos, por aqueles que não entendem ou não querem entender que devemos “dê a César o que é de César… e a Deus o que é de Deus»… A gratuidade (GRATUITA) é divina por natureza como a luz do sol ou o ar que você respira… A liberdade é necessária, mas atualmente está corrompida pelo MERCADO de misérias como software proprietário.

    1.    Linux pós-instalação dito

      Saudações Eduardo de Trinidad. Obrigado por seu comentário e contribuição.