Reusabilidade De Software
Todo e qualquer processo, módulo, objeto, ou seja, partes de software podem ser reusáveis várias vezes e em vários locais do software. A reusabilidade tem como objetivos principais a qualidade, a produtividade e a efetividade no desenvolvimento e manutenção de software. Na medida em que os engenheiros de software utilizam partes de software já avaliados, bem como de partes de softwares já prontos, não será necessário sua digitação, codificação e verificação de erros. Desta forma o tempo de trabalho será reduzido e consequentemente a qualidade já garantida. Nesse sentido, podem ser reutilizados, além do código-fonte, artefatos como código compilado, 30 casos de teste, modelos, interfaces para usuário, e até mesmo planos e estratégias, entre outros.
Algumas motivações para se reutilizar software são a redução de tempo e esforço no desenvolvimento. Pode-se também aumentar a qualidade do software, reutilizando-se artefatos com qualidade assegurada, o que também acaba por reduzir tempo e esforços na manutenção
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 reaplicação de informações e artefatos de um sistema já definido, em outros sistemas semelhantes. O termo reuso pode ser considerado uma denominação genérica para uma série de técnicas utilizadas, que vão desde a etapa de modelagem de um projeto até a implementação.
A principal motivação para a reutilização está relacionada ao aumento dos níveis de qualidade e produtividade no desenvolvimento de software.
O aumento de qualidade é uma consequência da reutilização de componentes que foram previamente documentados, testados e aprovados.
A reutilização pode ser