Sei sulla pagina 1di 8

UNIVERSIDAD REGIONAL AUTONOMA DE LOS ANDES

UNIANDES
EXTENSIN SANTO DOMINGO FACULTAD SISTEMAS MERCANTILES CARRERA SISTEMAS MODULO INGENIERIA DE SOFTWARE II

TEMA: COMPONENTES DE SOFTWARE

AUTORES: BACHILLERCARLOS ANCHUNDIA(I+D). TUTOR: ING. PATRICIO SILVA FECHA: 13 DE JUNIO DEL 2011

PERIODO MAYO - OCTUBRE 2011

1. INTRODUCCIN
El desarrollo de software basado en componentes (DSBC), es una tecnologa que est demostrando importantes ventajas en tiempo de desarrollo y reduccin de costos en el proceso de desarrollo de software. Este proceso de industrializacin ha dado ya sus inicios con implementaciones como la plataforma .net, la cual impulsa la idea de industrializar el software utilizando tecnologas de componentes. Convirtiendo a los componentes .net en verdaderas piezas de ensamblaje, en un estilo muy similar a las lneas de ensamblaje modernas. Asimismo, los nuevos paradigmas como las Fbricas de Software proveen de los medios para hacer la transicin desde el 'hacer a mano' hacia la fabricacin o manufactura de software. Esta tecnologa motiva a la reutilizacin de componentes de software previamente elaborados, estructurados y funcionales en lugar de crear nuevos elementos para realizar las mismas tareas. Lo que conlleva diversos beneficios tales como mejora en la calidad, una reduccin considerable del ciclo de desarrollo y un mayor retorno sobre la inversin

2. OBJETIVOS
2.1. GENERAL Investigar y desarrollar acerca de los componentes de software 2.2. ESPECIFICOS

a) Comprender el concepto de un componente de software b) Estudiar los nuevos modelos de desarrollo de software y la importancia de los componentes y servicios software.

3.

FUNDAMENTACIN CIENTIFICA
COMPONENTES DE SOFTWARE

Los componentes de software o Desarrollo de software basados en componentes (DSBC) buscan, reducir el tiempo de trabajo, el esfuerzo que requiere implementar una aplicacin, los costos del proyecto, entre otras cosas para de esta forma incrementar el nivel de productividad de los grupos desarrolladores y minimizar los riesgos globales sin incurrir en gastos exorbitantes. De esta manera, las pequeas empresas pueden tener una mayor confiabilidad a la hora de realizar una inversin tecnolgica. Otra ventaja es poder integrar lo mejor de las tecnologas para

desarrollar una aplicacin de manera personalizada, a la medida de las necesidades de los clientes. Esto permite a los desarrolladores y a la empresa adquirir las tecnologas que ms se adapten a sus necesidades, y no realizar gastos de licenciamiento o soporte y actualizacin de las grandes soluciones, ya que muchas de estas tecnologas son gratis y existen bajo la premisa de Freeware y GNU (General PublicLicense), lo cual aade otra gran ventaja. DEFINICIONES Existen varias definiciones de componentes, complementarias entre s, de las cuales vamos a tomar 2 de las ms importantes Un componente es una parte no trivial, casi independiente, y reemplazable de un sistema que llena claramente una funcionalidad dentro de un contexto en una arquitectura bien definida. Un componente se conforma y provee la realizacin fsica por medio de un conjunto de interfaces. Un componente de software en tiempo de ejecucin es un paquete dinmicamente vinculado con uno o varios programas manejados como una unidad y que son accedidos mediante interfaces bien documentadas que pueden ser descubiertos en tiempo de ejecucin.

CARACTERISTICAS: Las anteriores definiciones permiten una comprensin ms precisa de los que es un componente, pero es necesario precisar cules son sus caractersticas, las cuales permiten junto con las definiciones anteriores, conformar un conjunto de componentes de particularidades bien definidas Identificable: Debe tener una identificacin que permita acceder fcilmente a sus servicios y que permita su clasificacin. Autocontenido: 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 debe servir para varias aplicaciones. Reutilizado dinmicamente: Puede ser cargado en tiempo de ejecucin en una aplicacin. Independiente de la plataforma:Hardware, Software, S.O. certificado: el componente puede ser certificado por una agencia de software independiente o mediante la aplicacin de modelos de auto-certificacin que le permiten al comprador del componente determinar la calidad del software adquirid

mantenido: es deseable que un componente (como toda pieza de software) est inmerso en un proceso de mejoramiento continuo que le garantice al integrador nuevas versiones que incluyan correctivos, optimizaciones y nuevas

caractersticas. Esto contribuye a que dicho componente sea seleccionado con mayor frecuencia
Fuente:http://pegasus.javeriana.edu.co/~jcpymes/Docs/Articulo.pdf

PERSPECTIVAS DE VIAVILIDAD
Existen ya varios modelos que permiten entender los componentes de software, para poder encontrar los componentes que determinada aplicacin necesita. Uno de estos modelos desarrollado por AnnelieseAndrews y SudiptoGhosh , en Colorado StateUniversity, planta la posibilidad de entender un componente por medio de tres perspectivas, estas son: El Dominio : Representa en trminos generales todos los aspectos del

problema el usuario relacionado de forma directa con la funcionalidad que apoya el componente. Programa :Este enfoque es el que ms varia de componente a componente, ya que muestra en forma ms detallada la informacin tcnica del componente como la estructura de los archivos de informacin, definiciones de las bases de datos, la definicin de la Interface de datos, los tipos de parmetros, informacin acerca de la invocacin de los mtodos del componente, etc. Situacin: En este punto El conocimiento del diseo y comportamiento de las entidades necesita ser especificado[10], la informacin que se determina en este punto es til para igualar los requerimientos con las capacidades funcionales y no funcionales del componente; aqu se deben determinar aspectos como: Estructura de la arquitectura fsica y conceptual, flujos de Informacin que el componente transfiere, usa y transforma y tipos de algoritmos. Ya fueron presentados los

trminos: la definicin de componente, sus caractersticas y las variables por la cuales puede ser comprendido un componente.
Fuente: http://dis.um.es/~jsaez/dbc/curso1011/docs/art03_DSBC.pdf

4.

DESARROLLO

El objetivo de la tecnologa de componentes software es construir aplicaciones complejasmediante ensamblado de mdulos ( componentes ) que han sido previamente diseados porotras personas a fin de ser reusados en mltiples aplicaciones . La ingeniera de programacinque sigue esta estrategia de diseo se la conoce por el acrnimo CBSE y es actualmente unade las ms prometedoras para incrementar la calidad del software, abreviar los tiempos deacceso al mercado y gestionar el contnuo incremento de su complejidad. La arquitectura software de una aplicacin basada en componentes consiste en uno o unnmero pequeo de componentes especficos de la aplicacin ( que se disean especficamentepara ella ), que hacen uso de otros muchos componentes prefabricados que se ensamblan entres para proporcionar los servicios que se necesitan en la aplicacin

En la tecnologa de componentes la interfaz constituye el elemento bsico deinterconectividad. Cada componente debe describir de forma completa las interfaces que ofrece,as como las interfaces que requiere para su operacin. Y debe operar correctamente conindependencia de los mecanismos internos que utilice para soportar la funcionalidad de lainterfaz. BENEFICIOS DEL DESARROLLO DE SOFTWARE BASADO EN COMPONENTES El paradigma de ensamblar componentes y escribir cdigo para hacer que estos componentes funcionen se conoce como Desarrollo de Software Basado en Componentes. El uso de este paradigma posee algunas ventajas: 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 o 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. As, una funcionalidad que sera imprctica de implementar en la empresa, se vuelve ahora completamente asequible.

5.

CONCLUSIONES

Esta nueva tecnologa para realizar software nos brinda grandes beneficios a la hora de desarrollarlos. Permite a los desarrolladores de software elaborar sistemas de mayor calidad en periodo menor de tiempo El desarrollo de software basado de componentes se ha convertido en un elemento muy importante dentro de la revolucin industrial del software y se proyecta hoy en da en diversas nuevas formas de hacer software de calidad con los costos ms bajos del mercado y en periodos de tiempo relativamente menores que antes.

6.

BIBLIOGRAFIA

Msdn. (s.f.). Desarrollo de Software basado en Componentes. Recuperado el 10 de Junio de 2011, de Desarrollo de Software basado en Componentes: http://msdn.microsoft.com/eses/library/bb972268.aspx Scribd. (s.f.). Modelo basado en componentes. Recuperado el 10 de Junio de 2011, de Modelo Basado en componentes: http://es.scribd.com/doc/53039789/MODELO-BASADO-ENCOMPONENTES Sommerville, I. (2005). Ingeniera de software. Pearson Educacin.

Potrebbero piacerti anche