Sie sind auf Seite 1von 2

Desarrollo de Software Orientado a Aspectos 1.

Si en un aplicativo de cualquier tipo, con un nivel alto de complejidad, y sin usar Desarrollo de software Orientado a Aspectos (DSOA) existen dos soluciones: la primera consiste en un cdigo fcil de comprender pero ineficiente, la segunda en un cdigo enredado pero eficiente; describa como sera la solucin si se usa DSOA. En este caso la solucin brindada por el Desarrollo de Software Orientado a Aspectos (DSOA), consiste en adoptar las dos virtudes de las dos opciones, al igual que descartar las dificultades de ambas, de esta manera se obtiene una solucin eficiente con un cdigo fcil de comprender, es decir que el compromiso se define como cdigo entendible vs eficiencia, dado por la facilidad de comprensin en los bucles iterativos. La implementacin con DSOA, en este caso, permite programar declarativamente la manera de unir varios bucles sencillos concatenados (y por lo tanto, poco eficientes) en un nico bucle, eficiente. 2. Explique por qu un aspecto no puede ser encapsulado en un procedimiento generalizado. Los aspectos no son unidades funcionales en las que se pueda dividir un sistema, sino propiedades que afectan a la ejecucin o semntica de los componentes, adems los aspectos se encuentran diseminados a travs de todo el proyecto, esto quiere decir que, por ejemplo, un aspecto de diseo es una parte modular del diseo que se entremezcla en la estructura de otras partes del diseo. 3. En qu consiste la separacin de incumbencias y cules son los beneficios de usar este principio? La separacin de incumbencias es un proceso usado para gestionar la complejidad del desarrollo de software mediante la separacin de las funcionalidades principales de la aplicacin de otras partes con un propsito especfico, ortogonales a la funcionalidad principal (autenticacin, administracin, rendimiento, gestin de memoria, logging, etc.). La aplicacin final se construye con el cdigo de las funcionalidades principales ms el cdigo de propsito especfico. Los principales beneficios de usar este principio son: Un nivel de abstraccin ms alto, porque el desarrollador se puede centrar en incumbencias concretas y de forma aislada. Una mayor facilidad a la hora de entender la funcionalidad de la aplicacin. El cdigo que implementa dicha funcionalidad no est entremezclado con el de otras incumbencias. Una mayor reusabilidad al haber un menor acoplamiento. Una mayor mantenibilidad del cdigo, al ser ste menos complejo. Una mayor flexibilidad en la integracin de componentes. Un incremento de la productividad en el desarrollo. 4. Un advice es un cdigo del aspecto que se ejecuta en los puntos de enlace seleccionados por un punto de corte. Normalmente, desde su cdigo se puede

acceder al contexto de ejecucin del punto de enlace (como los valores de variables, etc.).

Este es el mtodo rechazarSolicitud al ser implementado bajo la orientacin a aspectos, mostrar el mismo cdigo tejido con el aspecto, indicando donde se activan los advices. Para el caso del cdigo que se muestra anteriormente, usando una implementacin bajo la orientacin a aspectos, el mtodo rechazarSolicitud debe ser tejido con el aspecto, dado qu e es un mtodo corto sin opciones de activar los advices desde los valores de las variables, estos deben ser activados antes y despus de la ejecucin del mtodo, el cdigo se representara de la siguiente forma: public int rechazarSolicitud (int idSoli, int idSust){ advice(); int resultado=0; return resultado; advice(); } long tiempoInicial =0;

Das könnte Ihnen auch gefallen