Actividad: Perfeccionar la arquitectura
Esta actividad completa la arquitectura en una iteración.
Amplía: Perfeccionar la arquitectura
DescripciónEstructura de desglose de trabajoAsignación de equiposUtilización del producto de trabajo
Relaciones
Actividades principales
Descripción

Esta actividad:

  • Proporciona las actividades de transición de análisis naturales para diseñar actividades y distingue:
    • los elementos de diseño adecuados de los elementos de análisis
    • los mecanismos de diseño adecuados de los mecanismos de análisis relacionados
  • Describe la organización de la arquitectura de tiempo de ejecución y de despliegue del sistema
  • Organiza el modelo de implementación de forma que realice una transición perfecta entre el diseño y la implementación
  • Mantiene la coherencia e integridad de la arquitectura, garantizando que:
    • los nuevos elementos de diseño identificados para la iteración actual se integren con los elementos de diseño preexistentes.
    • la reutilización máxima de los componentes disponibles y los elementos de diseño se alcance cuanto antes en el proceso de diseño.
Propiedades
Condicionado por sucesos
Varias apariciones
Continuo
Opcional
PlaneadoYes
Se puede repetir
Personal

Estas actividades las realiza mejor un equipo pequeño compuesto por miembros con funciones cruzadas. Las cuestiones que suelen ser arquitectónicamente significativas son la utilización, el rendimiento, la escala, la sincronización de procesos y hebras y la distribución. El equipo debe contar con miembros con experiencia en dominios que puedan identificar las abstracciones fundamentales. El equipo también debe tener experiencia en la organización de modelos y las capas. El equipo debe poder conseguir elaborar una arquitectura que reúna todas estas hebras tan dispares de forma coherente (aunque sea de forma preliminar).

Como el centro del esfuerzo en arquitectura se está desplazando hacia las cuestiones de implementación, debe prestar una mayor atención a las cuestiones tecnológicas específicas. De esta forma se obligará al equipo de arquitectura a ampliarse o a que cambie sus miembros para que cuente con expertos en distribución y despliegue (si tales cuestiones son arquitectónicamente significativas). Para comprender el impacto potencial de la estructura del modelo de implementación sobre su facilidad de integración, es de gran utilidad disponer de experiencia en el proceso de gestión de las compilaciones de software.

De la misma forma, es esencial que el equipo de arquitectura no esté compuesto por demasiados miembros. Una estrategia para contrarrestar esta tendencia es mantener un equipo principal relativamente pequeño con un grupo satélite de miembros suplementarios que se incorporan puntualmente como "consultores" ante cuestiones concretas. Esta estructura también funciona bien para proyectos más pequeños en los que otra empresa puede prestar o contratar una especialidad concreta; pueden incorporarse a medida que deben abordarse aspectos concretos.

Utilización
Instrucciones de utilización

El trabajo se realiza mejor en varias sesiones, quizás realizado en varios días (o semanas y meses en el caso de sistemas muy grandes). El enfoque inicial será en las actividades Identificar los mecanismos de diseñoIdentificar elementos de diseño, con mucha iteración con la actividad Incorporar elementos de diseño existentes para asegurarse de que los nuevos elementos no dupliquen la funcionalidad de los elementos existentes.

A medida que emerge el diseño, los temas de concurrencia y distribución se introducen en las actividades Describir la arquitectura del tiempo de ejecución y Describir distribución, respectivamente. A medida que se tratan estos temas, es posible que sea necesario realizar cambios en los elementos de diseño para dividir el comportamiento en procesos, hebras o nodos.

A medida de que los modelos individuales se perfeccionan para incorporar las decisiones sobre arquitectura, los resultados se documentan en las secciones de vista respectivas del documento de arquitectura de software (por ejemplo, a medida que se perfecciona el modelo de diseño, la vista lógica del documento de arquitectura de software también se perfecciona). Se revisa la arquitectura resultante.