Académique Documents
Professionnel Documents
Culture Documents
INVESTIGACIÓN
ALUMNA:
NUM. DE CONTROL:
16970012
CARRERA:
SEMESTRE:
7°
CATEDRÁTICO:
Las evaluaciones basadas en escenarios son una técnica más efectiva que la
anterior, sin embargo, se trata también de una técnica más costosa y más compleja
de implantar.
La evaluación basada en escenarios, toma como entrada escenarios que pueden
ser de atributos de calidad (como los descritos arriba) o bien funcionales (por
ejemplo, el flujo principal de algún caso de uso). Los escenarios son usados por un
equipo de evaluación para cuestionar al arquitecto sobre las decisiones de diseño
que tomó y el arquitecto debe ser capaz de argumentar de manera convincente que
el diseño planteado satisface o no los escenarios sobre los cuales se le está
cuestionando.
Una evaluación basada en escenarios requiere de poder conformar un comité de
evaluación. Generalmente, este comité de evaluación debe estar compuesto por
gente suficientemente experimentada como para poder entender y cuestionar el
diseño arquitectónico, este tipo de gente generalmente son ingenieros de software
experimentados o bien arquitectos de software.
Un proceso genérico de evaluación basada en escenarios se muestra en la figura
1. Como se puede observar, existen tres fases distintas asociadas con la
evaluación. Durante la fase de preparación, se solicita la evaluación y se envía un
paquete de evaluación al comité. El paquete de evaluación generalmente debe
incluir información general del sistema, detalle de los requerimientos que influyen
en la arquitectura y la documentación de la misma a través de distintas vistas. El
comité prepara la evaluación, incluyendo aspectos logísticos de la misma y define
la fecha en que se llevará a cabo.
En la fecha definida, se reúne el arquitecto junto con el comité de evaluación (y
posiblemente algunos otros involucrados). La junta de evaluación comienza con una
presentación del contexto del sistema, un repaso de los requerimientos que
influyeron en el diseño de la arquitectura y una presentación general de la misma
(por ejemplo, usando la vista de implantación y otros modelos de alto nivel).
Enseguida comienza la evaluación en sí. Se elige algún escenario que se desea
evaluar y el arquitecto comienza a realizar la presentación del mismo. Al tiempo que
el arquitecto presenta el escenario, el comité de evaluación debe tratar de identificar
riesgos y problemas con el diseño que se presenta. Los riesgos pueden incluir
decisiones de diseño que no se han tomado en cuenta, por ejemplo:
Los problemas pueden incluir decisiones de diseño claramente erróneas o bien que
no han sido tomadas, como por ejemplo:
La introducción de un nuevo componente para el escenario MOD-1 requiere de
modificar componentes existentes.
Figura 1. Proceso genérico de evaluación basada en escenarios.
Es importante señalar que con frecuencia es muy complicado poder tener seguridad
que un diseño puramente conceptual satisface, con seguridad, los drivers
arquitecturales. Esto es particularmente relevante respecto a los atributos de calidad
asociados con cuestiones en tiempo de ejecución (desempeño). Por ello, es muy
conveniente que, en esos casos, el arquitecto sustente sus decisiones de diseño no
sólo con diagramas sino con resultados de la ejecución de prototipos que se hayan
realizado justamente con el objetivo de mitigar riesgos técnicos. Una vez que se ha
terminado de evaluar un escenario, se continua con un escenario distinto hasta que
se han cubierto los distintos escenarios, o bien ha terminado el tiempo de la junta.
Como resultado de esta junta de evaluación, el comité debe reportar sus
observaciones con el fin de que puedan ser atendidas por el arquitecto.
La última fase es de seguimiento, en ella el arquitecto atiende las observaciones
levantadas durante la evaluación.
La evaluación basada en escenarios presenta diversas ventajas:
Otras técnicas
Según Kazman et al. (2001), un Utility Tree es un esquema en forma de árbol que
presenta los atributos de calidad de un sistema de software, refinados hasta el
establecimiento de escenarios que especifican con suficiente detalle el nivel de
prioridad de cada uno.
La intención del uso del Utility Tree es la identificación de los atributos de calidad
más importantes para un proyecto particular. No existe un conjunto preestablecido
de atributos, sino que son definidos por los involucrados en el desarrollo del sistema
al momento de la construcción del árbol.
El Utility Tree contiene como nodo raíz la utilidad general del sistema. Los atributos
de calidad asociados al mismo conforman el segundo nivel del árbol (Kazman et al.,
2001), los cuales se refinan hasta la obtención de un escenario lo suficientemente
concreto para ser analizado y otorgarle prioridad a cada atributo considerado.
Cada atributo de calidad perteneciente al árbol contiene una serie de escenarios
relacionados, y una escala de importancia y dificultad asociada, que será útil para
efectos de la evaluación de la arquitectura.