Articulo de referencia

Ingeniería de software basada en componentes

La ingeniería de software basada en componentes ( CBSE ), también llamada desarrollo basado en componentes ( CBD ), es un estilo de ingeniería de software que busca construir un...

La ingeniería de software basada en componentes ( CBSE ), también llamada desarrollo basado en componentes ( CBD ), es un estilo de ingeniería de software que busca construir un sistema de software a partir de componentes débilmente acoplados y reutilizables . Esto enfatiza la separación de responsabilidades entre los componentes. [ 1 ] [ 2 ]

Para encontrar el nivel adecuado de granularidad de los componentes, los arquitectos de software deben iterar continuamente sus diseños de componentes con los desarrolladores . Los arquitectos deben tener en cuenta los requisitos del usuario , las responsabilidades y las características arquitectónicas . [ 3 ]

Descripción general

CBSE surgió de paradigmas anteriores como la programación estructurada y la programación orientada a objetos , pero pone mayor énfasis en la construcción de software mediante el ensamblaje e integración de componentes preexistentes. A diferencia de los objetos , que normalmente encapsulan tanto datos como comportamiento, los componentes son construcciones de nivel superior que proporcionan interfaces bien definidas y pueden implementarse de forma independiente. [ 4 ]

La orientación a componentes es la base de muchos marcos de software y estilos arquitectónicos modernos , incluyendo la arquitectura orientada a servicios (SOA), los microservicios y los marcos de frontend ampliamente utilizados como React , Angular y Vue .

Consideraciones

Un ejemplo de dos componentes en UML : Checkout procesa el pedido de un cliente, lo que requiere que el otro componente cargue el importe a la tarjeta de crédito.

Para sistemas a gran escala desarrollados por grandes equipos, se requiere una cultura y un proceso disciplinados para lograr los beneficios de CBSE. [ 5 ] A menudo se utilizan componentes de terceros en sistemas grandes, lo que plantea problemas de integración , licencias y calidad del software .

El sistema se puede diseñar visualmente con el Lenguaje Unificado de Modelado (UML). Cada componente se representa como un rectángulo, y una interfaz se muestra como una piruleta para indicar que se proporciona una interfaz y como un conector para indicar que se consume una interfaz. Esta representación gráfica ayuda a clarificar las relaciones y dependencias entre los componentes.

Las pruebas de usabilidad basadas en componentes se aplican cuando los componentes interactúan directamente con el usuario final , garantizando que tanto la funcionalidad como la experiencia del usuario se conserven cuando los componentes se reutilizan o se reemplazan.

Aplicaciones

Los principios de CBSE se utilizan en múltiples ámbitos:

Desafíos

Si bien el desarrollo basado en componentes mejora la mantenibilidad y la reutilización, introduce desafíos como los siguientes:

Véase también

Referencias

  1. George T. Heineman, William T. Councill (2001). Ingeniería de software basada en componentes: Uniendo las piezas . Addison-Wesley Professional, Reading 2001 ISBN 0-201-70485-4
  2. Clemens Szyperski, Dominik Gruntz, Stephan Murer (2002). Software de componentes: Más allá de la programación orientada a objetos . 2.ª ed. ACM Press - Pearson Educational, Londres 2002 ISBN 0-201-74572-0
  3. Fundamentos de la arquitectura de software: Un enfoque de ingeniería . O'Reilly Media. 2020. ISBN 978-1492043454.
  4. Crnkovic, Ivica (2001). "Ingeniería de software basada en componentes: un nuevo paradigma del desarrollo de software". Software Focus . 2 (3): 127– 133. doi : 10.1002/swf.45 .
  5. Douglas C. Schmidt . "Por qué la reutilización de software ha fracasado y cómo hacer que funcione para usted" . Consultado el 14 de mayo de 2024 .
Obtenido de " https://en.wikipedia.org/w/index.php?title=Component-based_software_engineering&oldid=1341653062 "