A componentização no âmbito de arquitetura e engenharia de software, pode ser descrita como, uma unidade de software, que pode ser plugada ou agrupada à outras unidades de software, assim, podendo ser reutilizado de inúmeras formas, dessa maneira, várias etapas na construção do software em questão podem ser dispensadas, tornando o processo de desenvolvimento mais produtivo.
As principais vantagens da sua utilização de componentes são:
- Reutilização - O componente em questão pode ser criado uma vez e reutilizado “N” vezes em vários softwares ou outros componentes
- Fácil evolução - O componente dever ter, um ciclo de vida, build/pipeline e versionamento independente do software principal, assim pode ser evoluído em paralelo de maneira mais simples, visto que unidades de softwares menores são mais fáceis de manter
- Qualidade - O componente em si, por ser uma unidade bem isolada e pequena e tende a possuir uma boa qualidade, tendo bom código e possuindo uma grande facilida