Buscar

Exercício de Engenharia de Software 23

Prévia do material em texto

29 
 
 
 
 
 
 
 
 
 
possível criar uma versão específica de um sistema. Sem gerenciamento de configuração é fácil 
perder o controle das alterações que cada desenvolvedor faz no código e das alterações feitas 
por um programador substituir as alterações feitas por outro programador. Por exemplo, um 
programador pode alterar um componente para melhorar o seu desempenho, enquanto outro 
pode corrigir um bug na funcionalidade do componente. Sem CM, quem gravar o componente 
por último no armazenamento de componentes compartilhado irá sobrescrevê-lo e, assim, 
perderá as alterações anteriores do componente. 
Além disso, os sistemas são geralmente compostos de múltiplos componentes, cada um 
dos quais existe em múltiplas versões, onde cada versão tem uma finalidade específica. Por 
exemplo, pode haver versões de um sistema para diferentes plataformas, como Windows, Linux 
e MacOS. Essas versões têm alguns componentes específicos e alguns componentes 
compartilhados e são potencialmente propensas a erros se essas versões forem montadas sem 
o suporte da ferramenta CM. É muito fácil incluir o componente errado em uma versão e isso 
provavelmente levará a falhas de software subsequentes. 
 
 
7.10 Uma pequena empresa desenvolveu um produto especializado que configura especialmente 
para cada cliente. Novos clientes geralmente têm requisitos específicos a serem 
incorporados ao seu sistema e pagam para que estes sejam desenvolvidos. A empresa tem a 
oportunidade de concorrer a um novo contrato, o que mais que duplicaria sua base de 
clientes. O novo cliente também deseja ter algum envolvimento na configuração do sistema. 
Explique por que, nessas circunstâncias, pode ser uma boa ideia para a empresa proprietária 
do software torná-lo de código aberto. 
 
 
 
Os principais benefícios do código aberto são que ele abre o desenvolvimento para uma ampla 
gama de desenvolvedores e, assim, acelera o desenvolvimento e a depuração do produto. 
Duplicar a base de clientes coloca imensas tensões em uma pequena empresa, pois ela precisa 
contratar muitos novos funcionários e, portanto, adotar o código aberto significa que os custos 
de expansão são reduzidos. 
Nesse caso, como o produto é especializado para atender às necessidades de diferentes 
usuários, a empresa proprietária do software ainda pode cobrar desses usuários pelas alterações 
no sistema. Conseqüentemente, a perda de receita com a venda do software é compensada 
pelo esforço adicional disponível para atender mais clientes. 
Além disso, as grandes empresas muitas vezes relutam em comprar de pequenas 
empresas que podem fechar as portas. Até certo ponto, o código-fonte aberto garante aos 
clientes que, mesmo que os proprietários originais do software não estejam disponíveis, eles 
podem obter acesso ao código-fonte e, portanto, continuar a manter seu sistema. 
 
Finalmente, o código aberto pode aumentar o conhecimento do produto da empresa e assim atrair mais 
clientes.

Mais conteúdos dessa disciplina