Ingeniería de Requisitos en el Desarrollo de Software Orientado por Aspectos

Enviado por Programa Chuletas y clasificado en Magisterio

Escrito el en español con un tamaño de 4,92 KB

El Desarrollo de Software Orientado por Aspectos (AOSD)

El Desarrollo de Software Orientado por Aspectos (Aspect Oriented Software Development –AOSD–) es un nuevo paradigma de desarrollo de software que se fundamenta en principios clásicos como la modularización y la separación de intereses (concerns) y centra su aplicación en el tratamiento de intereses transversales (crosscutting concerns). Surge básicamente como una propuesta de programación que, de forma rápida, fue extendiéndose a las otras fases del ciclo de desarrollo del software.

Enfoques de la Ingeniería de Requisitos Orientada por Aspectos

Los enfoques orientados por aspectos asociados a la ingeniería de los requisitos proponen mecanismos que facilitan la identificación, separación y clasificación de intereses, así como la composición de intereses transversales.

Separación multidimensional de intereses (MDSOC)

Este enfoque es pionero en el tratamiento de los aspectos en la fase de requisitos. Se basa en el enfoque de Puntos de Vista (Viewpoints [20]) y su fortaleza está centrada en el tratamiento de las reglas de composición de los intereses, así como en la definición y manejo de conflictos.

Aspectos en modelos de objetivos de requisitos (ARGM)

Este enfoque integra las propuestas I* [13] y NFR (Non-Functional Requirements Framework) [14] agregando el concepto de aspectos. Utiliza un grafo en forma de V (llamado V-Graph) que contiene en sus vértices superiores objetivos funcionales (goals) y objetivos de calidad (softgoals) que pueden cruzar diferentes objetivos funcionales; en su vértice inferior se ubican las tareas u operaciones que debe realizar el sistema. Define un proceso sistemático e iterativo que va descomponiendo los objetivos hasta llegar al nivel de las tareas.

Identificación de aspectos en los requisitos: Theme/Doc

Theme/Doc es la primera fase del enfoque Theme que describe un proceso de desarrollo orientado por temas. La aproximación se centra en el concepto de tema, que representa una pieza de funcionalidad, asunto o interés que se quiere modelar de forma separada del sistema. Theme/Doc parte de una descripción textual de los requisitos en la cual se realiza un análisis gramatical para detectar las relaciones entre los requisitos y las acciones (minor actions); a partir de estas acciones se derivan las acciones de mayor granularidad.

AOSD con casos de uso (AOSD/UC)

Este enfoque trata los requisitos funcionales desde los casos de uso que representan la función básica del sistema (peer use cases). Los requisitos no funcionales se representan en casos de uso que extienden un caso de uso de infraestructura, el cual se parametriza al igual que el actor que lo usa (los parámetros representan el comportamiento que se cruzará en la funcionalidad de los casos de uso base).

Definición de los criterios de evaluación

  • Alcance en el tratamiento de requisitos: Capacidad o nivel de cobertura que un enfoque provee para favorecer el análisis de los diferentes tipos de requisitos que existen en un problema. Generalmente, los analistas dedican la mayor parte de los esfuerzos a la definición de requisitos funcionales y de estructura.
  • Trazabilidad: Se refiere al soporte que un enfoque provee para controlar la evolución de los requisitos desde fases tempranas de desarrollo hasta la implementación. En otras palabras, controlar la trazabilidad (hacia delante y hacia atrás).
  • Composición de requisitos: Es la capacidad que un enfoque tiene para componer requisitos individuales en requisitos de mayor nivel de abstracción.
  • Manejo de conflictos: Es la manera como el enfoque facilita el análisis y solución de conflictos entre los participantes del proyecto de desarrollo para dar apoyo a las decisiones y gestionar los riesgos.
  • Soporte para mapeo: Capacidad del enfoque para facilitar la transformación de un requisito en artefactos de una etapa siguiente. En la medida que el enfoque facilite el proceso de mapeo o transformación de los artefactos de una fase a otra, se estará logrando una mejor trazabilidad.
  • Validación y verificación: Capacidad de revisar y evaluar los resultados intermedios durante el proceso, es decir, validar si se están haciendo las cosas como se debe y verificar que los productos generados corresponden a lo que se ha solicitado.
  • Escalabilidad: Capacidad del enfoque para ajustarse a diferentes tipos de proyecto, tanto por su tamaño como por su misma naturaleza.

Entradas relacionadas: