Reutilização de Software - Revista Engenharia de Software Magazine 39

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (2)  (0)

A reutilização de software é uma das áreas da engenharia de software que propõe um conjunto sistemático de processos, de técnicas e de ferramentas para obter produtos com alta qualidade e que sejam economicamente viáveis.

Atenção: esse artigo tem um vídeo complementar. Clique e assista!

De que se trata o artigo

A reutilização de software é uma das áreas da engenharia de software que propõe um conjunto sistemático de processos, de técnicas e de ferramentas para obter produtos com alta qualidade e que sejam economicamente viáveis. A idéia do reuso é evitar retrabalho no desenvolvimento de um novo projeto, sempre levando em consideração trabalhos anteriores, fazendo com que soluções previamente desenvolvidas sejam aproveitadas e implementadas em novos contextos.

Neste artigo, apresentaremos o conceito de reutilização de software, principais benefícios e desafios encontrados na prática do reuso, alguns tipos de reutilização e seu impacto no contexto da Engenharia de Software.


Em que situação o tema é útil

O desenvolvimento de sistemas de informação é tipicamente conhecido como um processo caro e lento. A pressão que acompanha esse processo, bem como a busca constante por redução significativa de custos e alcance de ganhos incomparáveis em qualidade do produto, associados à redução do tempo de desenvolvimento fazem com que o resultado final e a excelência fiquem aquém do desejado. Uma possível solução, que pode não resolver todos os problemas, mas pode ajudar a lidar com esse processo é a reutilização.

Resumo DevMan

A reutilização de software se baseia no uso de conceitos, produtos ou soluções previamente elaboradas ou adquiridas para criação de um novo software, visando melhorar significativamente a qualidade e a produtividade. Reusar um produto significa poder reusar partes de um sistema desenvolvido anteriormente como: especificações, módulos de um projeto, arquitetura e código fonte. A principal motivação para a reutilização está relacionada ao aumento dos níveis de qualidade e produtividade no desenvolvimento de software. Neste sentido, este artigo apresentará o conceito de reutilização de software, principais benefícios e desafios encontrados na prática do reuso, alguns tipos de reutilização e seu impacto no contexto da Engenharia de Software.

Autores: Simone Vilarinho de Souto, Danilo Sampaio Andrade e Rodrigo Spínola

No contexto social, a imitação ou reutilização de idéias são vistas como falta de originalidade, porém em desenvolvimento de software isso pode resultar em um aumento significativo na produtividade e uma redução considerável no tempo de execução das tarefas.

As primeiras idéias sobre reutilização de software são do ano de 1968, quando Doug McIlroy mostrou a sua motivação por software que funcionasse como "Circuitos Integrados" (CI) e que estes pudessem ser fabricados em massa. Além disso, ele examinou os tipos de variabilidade necessárias aos CIs e os possíveis tipos de CIs que poderiam ser padronizados desta forma. A visão de McIlroy era baseada na indústria de componentes eletrônicos que podiam ser selecionados em catálogos de diferentes fabricantes, apresentando propriedades configuráveis e diferentes níveis de confiabilidade.

Apesar de os primeiros conceitos sobre reutilização de software terem sido idealizados no final da década de 1960, eles não receberam muita atenção da indústria e das universidades até os anos 80, quando a complexidade dos sistemas começou a aumentar e as empresas foram forçadas a procurar por métodos mais eficientes de construção de sistemas para refletir as necessidades do mercado.

Em 1980 foi estabelecido o primeiro projeto de pesquisa universitário no tema de reutilização, na Universidade da Califórnia, coordenado por Peter Freeman. Atualmente, existem duas principais conferências sobre reutilização, a ICSR – International Conference on Software Reuse e o SSR – Symposium on Software Reusability.

É notório que a reutilização, quando feita de forma intencional, planejada e controlada, os benefícios alcançados são relevantes. Redução de custos e esforço, melhoria de qualidade, potencial para abranger o leque de produtos, atingir novos mercados, ganhar espaço da concorrência são alguns dos principais chamarizes da reutilização. Tudo isso só é possível, pois a técnica simplifica a tarefa de aquisição de conhecimento. Diversos estudos mostram que muito do software que estamos começando a construir já foi feito e que apenas algo em torno de 15% dele é realmente a contribuição do nosso negócio. Todavia, embora todos acreditem nos benefícios dessa técnica, a reutilização ainda não é uma prática freqüente.

"

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?