0 Bewertungen0% fanden dieses Dokument nützlich (0 Abstimmungen)
39 Ansichten4 Seiten
El documento describe el desarrollo de software basado en componentes. Este enfoque involucra la identificación y construcción de componentes reutilizables a través de la ingeniería de dominio, así como su calificación, adaptación y combinación. También requiere un análisis y diseño cuidadosos para permitir la reutilización, incluidos datos y protocolos estándar. Una clasificación efectiva es necesaria para recuperar componentes de bibliotecas grandes. El desarrollo basado en componentes puede agilizar el proceso si se implement
El documento describe el desarrollo de software basado en componentes. Este enfoque involucra la identificación y construcción de componentes reutilizables a través de la ingeniería de dominio, así como su calificación, adaptación y combinación. También requiere un análisis y diseño cuidadosos para permitir la reutilización, incluidos datos y protocolos estándar. Una clasificación efectiva es necesaria para recuperar componentes de bibliotecas grandes. El desarrollo basado en componentes puede agilizar el proceso si se implement
El documento describe el desarrollo de software basado en componentes. Este enfoque involucra la identificación y construcción de componentes reutilizables a través de la ingeniería de dominio, así como su calificación, adaptación y combinación. También requiere un análisis y diseño cuidadosos para permitir la reutilización, incluidos datos y protocolos estándar. Una clasificación efectiva es necesaria para recuperar componentes de bibliotecas grandes. El desarrollo basado en componentes puede agilizar el proceso si se implement
Cuando se habla de ingeniería de software, se encuentra una idea en los
programadores llamada ‘Reutilización’; un programador normalmente reutiliza ideas y procesos. Hoy en día los sistemas computacionales son complejos y deben ser de calidad, fuera de eso deben elaborarse en tiempos cortos, por ende demandan que la programación tenga un desarrollo organizado y usar la reutilización aporta como un gran beneficio. El desarrollo por componentes tiene diferentes procesos internos los cuales se definen a continuación:
Ingeniería del Dominio
El propósito de la ingeniería de dominio es identificar, construir y catalogar
conjuntos de componentes de software que sean aplicables al software existente; la meta principal es permitir que los ingenieros de software compartan dichos componentes.
La ingeniería de dominio incluye tres actividades principales: análisis,
construcción y diseminación.
Los pasos del análisis de dominio son:
- Definir el dominio que se va a investigar.
- Clasificar los aspectos extraídos del dominio. - Reunir una muestra representativa de aplicaciones en el dominio. - Analizar cada aplicación en la muestra y definir clases de análisis. - Desarrollar un modelo de los requerimientos para las clases.
Es importante saber que el análisis del dominio es aplicable a cualquier
paradigma de la ingeniería de software y se aplica tanto al desarrollo convencional como al orientado a objetos.
Calificación, adaptación y combinación de los componentes
La ingeniería de dominio genera una biblioteca de componentes reutilizables,
pero teniendo estos es necesario aplicar una secuencia de acciones.
- Calificación de componentes: Esta acción garantiza que un componente
candidato ejecute la función requerida y “encaje” en forma adecuada con el estilo arquitectónico. - Adaptación de componentes: Incluso si un componente ha sido catalogado como apto para su uso dentro de la arquitectura, surgen conflictos con una o más áreas; para evitar esos conflictos se usa una técnica de adaptación llamada “envoltura de componentes”. - Combinación de componentes: Esta acción ensambla componentes calificados, adaptados y con la ingeniería requerida para incluirse en la arquitectura establecida para un software.
Análisis y diseño para la reutilización
La ingeniería de Software basada en componentes promueve el uso de los
mismos ya existentes, pero en ocasiones es necesario desarrollar componentes nuevos; al crearse estos componentes nuevos se deben realizar con ellos la ingeniería adecuada para su reutilización. Por lo anterior en esta subsección se estudian aspectos específicos de la reutilización, complementando así las prácticas sólidas de ingeniería de software. Los aspectos clave para este análisis y diseño son las siguientes:
- Datos estándar: Debe investigarse el dominio de la aplicación y las
estructuras de datos globales por ejemplo los de una base de datos. - Protocolos de Interfaz estándar: Deben establecerse 3 niveles de protocolos de interfaz (la naturaleza de las interfaces modulares, el diseño de las interfaces externas técnicas, la interfaz humano-computadora). - Plantillas de Programa: Se elige un estilo arquitectónico (plantilla para el diseño de la arquitectura).
Clasificación y recuperación de componentes
Teniendo en cuenta el funcionamiento de una biblioteca grande, se tienen
miles de libros, revistas y otras fuentes de información, pero para acceder a todas las fuentes se debe desarrollar un esquema de clasificación. Considerando un repositorio de componentes de gran tamaño, donde se encuentran cientos de componentes de software reutilizables, ¿cómo encontrar el que se necesita?; No hay una respuesta definitiva para esta pregunta. En esta sección se deben estudiar las direcciones actuales, las cuales permitirán que el ingeniero de software navegue en las bibliotecas de software de reutilización.
Un componente de software reutilizable se puede describir de muchas
maneras, pero la descripción ideal incluye un modelo 3C: concepto, contenido y contexto.
Concepto: Descripción de lo que hace el componente.
Contenido: Describe cómo se lleva a cabo el concepto, en esencia es
información que queda oculta a los usuarios casuales y que solo deben conocer aquellos que pretenden modificar o probar el componente. Contexto: Al especificar las características, el contexto permite que un ingeniero de software encuentre el componente apropiado para que se cumplan los requerimientos de la aplicación.
Conclusiones
Teniendo en cuenta lo investigado, tenemos que el desarrollo de software
basado en componentes, es una de las prácticas más utilizadas y más útiles, pero así mismo se evidencia que para poder aplicarlo es necesario documentarse y documentar cada uno de los componentes (nuevos o reutilizados), también se evidencia que no es solamente reciclar código, es necesario tener en cuenta parámetros y buenas prácticas para lograr implementar o reutilizarlo con éxito.
El desarrollo de software basado en componentes, ayuda a agilizar el proceso del
desarrollo, y bien implementado nos ayudará a generar software de calidad en menos tiempo. Referencias
Pressman, R. S., & Troya, J. M. (1988). Ingeniería del software.
Sommerville, I. (2005). Ingeniería del software. Pearson Educación.