¿Qué es un árbol de utilidades y cuál es su propósito en el caso del método de análisis de compensación de arquitectura (ATAM)?Propósito del árbol de utilidades en ATAM
Gracias
¿Qué es un árbol de utilidades y cuál es su propósito en el caso del método de análisis de compensación de arquitectura (ATAM)?Propósito del árbol de utilidades en ATAM
Gracias
La arquitectura del software es un tipo de diseño. Mientras que el diseño "regular" se trata principalmente de requisitos funcionales: la arquitectura se trata principalmente de "no funcionales" o "cosas" o los mejores "atributos de calidad".
Si va a las partes interesadas y les pregunta sobre los atributos de calidad, dirían que quieren rendimiento, disponibilidad, escalabilidad, etc. pero eso no es realmente útil. ATAM (y otros métodos) promueven la expresión de atributos de calidad como escenarios en contexto. p.ej.
Disponibilidad -> Tiempo de reparación -> En condiciones normales, el sistema detectará un fallo en un componente en menos de 5 segundos.
Adaptabilidad -> añadir/quitar función -> Una vez en producción, un cambio en una interfaz será compatible al menos una versión posterior
árboles de utilidad son una forma de organizar estos atributos de calidad. Con respecto a ATAM, sirven como una forma de priorizar los atributos de calidad y luego evaluar la idoneidad de una arquitectura candidata frente a los requisitos. También me gusta usarlos como requisitos de referencia e historias (o temas según el tamaño) como parte de un retraso en el desarrollo ágil.
se puede leer un poco más sobre los atributos de calidad y utilidad de árboles en un par de mensajes que escribí hace un tiempo: Quality attributes introduction y Utility trees - hatching quality attributes. Si desea leer sobre ellos en el contexto de ATAM, debe leer Evaluating Software Architectures: Methods and Case Studies Paul Clements, Rick Kazman & Mark Klein (y hay un viejo presentation que hice sobre el tema).
Editar: Se agregó blog post expandiendo la explicación anterior.
Hola, entiendo cuáles son los escenarios, tipos, en qué consiste, pero aún no puedo entender cómo se extraen, ¿es por requisitos? Al igual que "el usuario debe poder generar un informe de gastos seleccionando un mes", extraemos los escenarios de dichos requisitos. –
@PHPAvenger: Sí, los escenarios suelen extraerse de los requisitos. En caso de duda, debe intentar obtener el Acuerdo de todas las partes interesadas relevantes, p. en un Taller de atributos de calidad (consulte, por ejemplo, https://www.sei.cmu.edu/architecture/tools/establish/qaw.cfm) – EFrank
Básicamente, el árbol de utilidades es un árbol sobre las medidas de utilidad en las coordenadas ATAM. Indica si los requisitos no funcionales apropiados se mantienen a través de las opciones arquitectónicas propuestas. Con cada lave hay un nivel asociado de confianza.
¿Deberes, quizás? – JJJ