13.11.2013 Views

´Indice general

´Indice general

´Indice general

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

10<br />

CAPÍTULO 2. CALIDAD, REUSO Y MODELOS<br />

del programa de aplicación (application program interface, API) ni<br />

documentan.<br />

Los desarrolladores no conocen los componentes existentes.<br />

Los desarrolladores no confían en la calidad del componente.<br />

Los componentes existentes son dependientes de la plataforma y son<br />

difíciles de instalar.<br />

Problemas con las políticas de licencias, de patentes o de costos.<br />

Una forma de fomentar el reuso de software es a través de frameworks y<br />

arquitecturas. El framework de aplicaciones es un diseño reusable construido<br />

a partir de un conjunto de clases, y un modelo de colaboración entre los<br />

objetos. Un framework de aplicaciones es el esqueleto de un conjunto de<br />

aplicaciones que pueden ser adaptadas para su uso por un desarrollador de<br />

software. Un framework proporciona un conjunto de clases que cuando son<br />

instanciadas trabajan conjuntamente para lograr ciertas tareas en el dominio<br />

de interés. Uno de los aspectos distintivos más importantes de un framework<br />

son sus puntos de acoplamiento, es decir, los lugares del framework donde<br />

el diseñador puede introducir las variantes o diferencias para una aplicación<br />

particular.<br />

Las definiciones de framework y arquitectura según el grupo de investigadores<br />

de GATE (ver capítulo 3) son las siguientes:<br />

Framework: Comúnmente, se usa framework para referirse a una biblioteca<br />

(library) de clases orientadas a objetos que se ha diseñado<br />

teniendo cierto dominio de aplicación en mente y que pueden ser adaptadas<br />

y extendidas para resolver problemas de ese dominio. (Otros autores<br />

le llaman a esto toolkit o library.) Los frameworks también son<br />

conocidos como plataformas o sistemas de componentes.<br />

Arquitectura: La arquitectura de software se ocupa de la estructura<br />

del sistema, de la organización del software, de la asignación de responsabilidades<br />

a los componentes y de asegurar que las interacciones<br />

entre los componentes satisfagan los requerimientos del sistema.<br />

En la figura 2.1 se presenta un infograma que ayuda a distinguir entre<br />

framework y arquitectura. La figura de la izquierda, donde el área sombreada<br />

es la parte de reuso del sistema, representa un framework. La de la derecha,<br />

representa una arquitectura. Es importante hacer notar desde ahora que<br />

GATE es, a la vez, un framework y una arquitectura. Es decir, al tiempo

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!