Sunteți pe pagina 1din 24

INGENIERA EN SISTEMAS COMPUTACIONALES Ingeniera de Software Integrantes del equipo: Flores Navarrete Karina Esmeralda Gutirrez Daz scar

ar Len Pascual Constantino Moreno Adame Ulises Salgado Zamorano Jos Brandon

Desarrollo de Software Basado en Componentes.

El desarrollo de software basado en componentes permite reutilizar piezas de cdigo preelaborado que permiten realizar diversas tareas, conllevando a diversos beneficios como las mejoras a la calidad, la reduccin del ciclo de desarrollo y el mayor retorno sobre la inversin.

Un componente es una pieza de cdigo preelaborado que encapsula alguna funcionalidad expuesta a travs de interfaces estndar.

Los componentes software surgen, en cierta medida de la necesidad de desarrollar sistemas mediante el ensamblaje de mdulos independientes ya existentes. Un componente, en esencia, es una unidad reutilizable que puede interoperar con otros mdulos software por medio de sus interfaces, las cuales define desde donde se puede tener acceso a los servicios que este ofrece a los dems componentes.

Identificable: Debe tener una identificacin que permita acceder fcilmente a sus servicios que permita su clasificacin. Auto contenido: Un componente no debe requerir de la utilizacin de otros para finiquitar la funcin para la cual fue diseado. Puede ser remplazado por otro componente: Se puede remplazar por nuevas versiones u otro componente que lo remplace y mejore.

Con acceso solamente a travs de su interfaz: Debe asegurar que estas no cambiaran a lo largo de su implementacin. Sus servicios no varan: Las funcionalidades ofrecidas en su interfaz no deben variar, pero su implementacin s. Bien Documentado: Un componente debe estar correctamente documentado para facilitar su bsqueda si se quiere actualizar, integrar con otros, adaptarlo, etc.

Es genrico: Sus servicios deben servir para varias aplicaciones. Reutilizado dinmicamente: Puede ser cargado en tiempo de ejecucin en una aplicacin.
Independiente de la plataforma: Hardware, Software, S.O.

Un componente puede presentarse en forma de cdigo fuente o cdigo objeto; puede estar escrito en lenguaje funcional, procedural u orientado a objetos y puede ser tan simple como un botn GUI o tan complejo como un subsistema.
El paradigma de ensamblar componentes y escribir cdigo para hacer que estos componentes funcionen se conoce como Desarrollo de Software Basado en Componentes.

El desarrollo de software basado en componentes (DSBC) constituye una aproximacin del desarrollo de software que describe, construye y emplea tcnicas software para elaborar sistemas abiertos y distribuidos, mediante el ensamblaje de partes software reutilizables.

El paradigma orientado a objetos enfatiza la creacin de clases que encapsulan tanto los datos como los algoritmos que se utilizan para manejar los datos.
Si se disean y se implementan adecuadamente, las clases orientadas a objetos son reutilizables por las diferentes aplicaciones y arquitecturas de sistemas basados en computadora.

La metodologa de software basada en Componentes surgi a finales de los 90's como una aproximacin basada en la reutilizacin al desarrollo de sistemas de software.
Est metodologa fue motivada por la frustracin de los desarrolladores de que el modelo orientados a objetos no aplicaba una reutilizacin extensiva, tal como sta sugera originalmente, debido a que la utilizacin de clases implica el conocimiento detallado de ellas, lo cual significa que se deba tener acceso al cdigo fuente lo que imposibilitaba el marketing de clases para su reutilizacin.

Desarrollo basado en componentes.

La modularidad, la reusabilidad y componibilidad Son caractersticas muy relevantes de la tecnologa de programacin basada en componentes, en las cuales coincide con la tecnologa orientada a objetos de la que puede considerarse una evolucin.

No obstante en esta tecnologa tambin se requiere robustez debido a que los componentes deben operar en entornos muchos ms heterogneos.

Extensibles Tienen una interaccin con componentes heterogneos que se integran o abandonan el sistema de manera dinmica, o sea, que los componentes pueden ser substituidos por otros componentes, independientemente de su arquitectura y desarrollo.

La Notacin de Componentes Un componente puede ser algo como un control Actives; tanto un componente de la Interfaz de usuario como un servidor de reglas de negocio.

El Diagrama de Componentes El diagrama de componentes muestra la relacin entre componentes de software, sus dependencias, su comunicacin su ubicacin y otras condiciones.

Interfaces Estas son los puntos visibles de entrada o los servicios que un componente est ofreciendo y dejando disponibles a otros componentes de software y clases. Tpicamente, un componente est compuesto por numerosas clases y paquetes de clases internos.

Los componentes y los Nodos Un diagrama de despliegue muestra el despliegue fsico del sistema en un ambiente de produccin . Muestra dnde se ubican los componentes, en qu servidores, mquinas o hardware. Puede representar los enlaces de redes.

Anlisis del riesgo Se estudian todos los riesgos potenciales y se seleccionan una o varias alternativas propuestas para reducir o eliminar los riesgos. Revisamos todo lo hecho, evalundolo, y con ello continuamos con las fases siguientes y planificamos la prxima actividad.

Restricciones Los componentes pueden tener restricciones asignadas que indican el entorno en el que operan.

Las pre-condiciones especifican lo que debe ser verdadero antes de que un componente pueda realizar alguna funcin. Las post-condiciones indican lo que debe ser verdadero despus de que un componente haya realizado algn trabajo y los invariantes especifican lo que debe permanecer verdadero durante la vida del componente.

Reutilizacin del software. Nos lleva a alcanzar un mayor nivel de reutilizacin de software.
Simplifica las pruebas. Permite que las pruebas sean ejecutadas probando cada uno de los componentes antes de probar el conjunto completo de componentes ensamblados.

Simplifica el mantenimiento del sistema. Cuando existe un dbil acoplamiento entre componentes, el desarrollador es libre de actualizar y/o agregar componentes segn sea necesario, sin afectar otras partes del sistema.
Mayor calidad. Dado que un componente puede ser construido y luego mejorado continuamente por un experto u organizacin, la calidad de una aplicacin basada en componentes mejorar con el paso del tiempo.

De la misma manera, el optar por comprar componentes de terceros en lugar de desarrollarlos, posee algunas ventajas:

Ciclos de desarrollo ms cortos. La adicin de una pieza dada de funcionalidad tomar das en lugar de meses aos.

Mejor ROI. Usando correctamente esta estrategia, el retorno sobre la inversin puede ser ms favorable que desarrollando los componentes uno mismo.
Funcionalidad mejorada. Para usar un componente que contenga una pieza de funcionalidad, solo se necesita entender su naturaleza, ms no sus detalles internos.

Genera mucho tiempo en el desarrollo del sistema. Modelo costoso. Requiere experiencia en la identificacin de riesgos. Genera mucho trabajo adicional. Cuando un sistema falla se pierde tiempo y coste dentro de la empresa. Exige una cierta habilidad en los analistas (es bastante difcil).

INGENIERA DEL SOFTWARE UN ENFOQUE PRCTICO, Quinta edicin; Roger S. Pressman.


INTRODUCCIN Y PRINCIPIOS BSICOS DEL DESARROLLO DE SOFTWARE BASADO EN COMPONENTES; Maribel Ariza Rojas, Juan Carlos Molina Garca. Pgina: http://pegasus.javeriana.edu.co/~jcpymes/Do cs/DSBC.pdf

S-ar putea să vă placă și