Tarea: Identificar mecanismo de diseño
En esta tarea se describe cómo perfeccionar los mecanismos de análisis en mecanismos de diseño.
Objetivo
  • Perfeccionar los mecanismos de análisis en mecanismos de diseño basándose en las restricciones impuestas por el entorno de implementación.
Relaciones
Pasos
Categorizar los clientes de los mecanismos de análisis

Los mecanismos de análisis proporcionan conjuntos conceptuales de servicios que se utilizan en las clases de análisis. Ofrecen una forma abreviada de comportamientos muy complejos sobre los que debería preocuparse en última instancia, pero que están fuera del ámbito del esfuerzo de análisis. Su principal objetivo es permitirnos capturar los requisitos de estos servicios que todavía no se han diseñado, sin necesidad de preocuparse sobre los detalles del propio proveedor de servicios.

Ahora debemos empezar el perfeccionamiento de la información recopilada en el mecanismo de análisis. Para ello, siga estos pasos:

Identifique los clientes de cada mecanismo de análisis. Explore todos los clientes de un determinado mecanismo de análisis y observe las características que necesitan para ese mecanismo. Por ejemplo, varias clases de análisis pueden utilizar un mecanismo de persistencia, pero sus requisitos para ello pueden variar ampliamente: una clase que tendrá mil instancias persistentes tiene requisitos de persistencia muy diferentes a los de una clase que tendrá cuatro millones de instancias persistentes. De la misma manera, una clase cuyas instancias deben proporcionar respuestas en submilisegundos a los datos de una instancia requerirán un enfoque de persistencia distinto al de una clase donde sólo se accede a los datos de instancia mediante consultas ad-hoc y aplicaciones de informes por lotes.

Identifique los perfiles de características de cada mecanismo de análisis. Pueden existir perfiles de características muy diferentes, que proporcionen distintos grados de rendimiento, impresión, seguridad, coste económico, etc. Cada mecanismo de análisis es diferente y se le aplican distintas características. Muchos mecanismos requerirán cálculos del número de instancias que se va a gestionar y su tamaño esperado en términos del número esperado de bytes. El movimiento de grandes cantidades de datos a través de un sistema generará muchos problemas de rendimiento que se deben solucionar.

Agrupe los clientes según su uso de los perfiles de características. Forme grupos de clientes que parezca que comparten la necesidad de un mecanismo de análisis con un perfil de características parecido; identifique un mecanismo de diseño basándose en cada una de estas necesidades. Estas agrupaciones proporcionan un corte inicial en los mecanismos de diseño. Un mecanismo de análisis de ejemplo, la "comunicación entre procesos", se puede correlacionar con un mecanismo de diseño de "intermediario para solicitudes de objetos". Perfiles de características diferentes darán lugar a mecanismos de diseño diferentes que parten del mismo mecanismo de análisis. Un mecanismo de persistencia de análisis simple dará lugar a varios mecanismos de persistencia de diseño: persistencia en memoria, basado en archivos, basado en bases de datos, distribuido, etc. Los mecanismos de diseño son perfeccionamientos de los mecanismos de análisis basados en distintos perfiles de características.

Inventario de mecanismos de implementación

Proceda de forma ascendente y realice un inventario de los mecanismos de implementación (consulte Concepto: Mecanismos de implementación y diseño) que tenga a su disposición:

  • Mecanismos ofrecidos por un producto de middleware o una infraestructura de componentes.
  • Mecanismos ofrecidos por sistemas operativos.
  • Mecanismos ofrecidos por un componente.
  • Mecanismos ofrecidos por una biblioteca de clases.
  • Código heredado (consulte también Tarea: Incorporar elementos de diseño existentes)
  • Paquetes especiales: Constructor de GUI, Sistemas de Información Geográfica, DBMS, etc.

Determine dónde se pueden utilizar los mecanismos de implementación existentes y dónde se deben crear nuevos mecanismos de implementación.

Correlacionar mecanismos de diseño con mecanismos de implementación

Los mecanismos de diseño proporcionan una abstracción de los mecanismos de implementación, tendiendo un puente entre los mecanismos de análisis y los mecanismos de implementación. El uso de mecanismos de arquitectura abstractos durante el diseño permite considerar cómo vamos a proporcionar mecanismos de arquitectura sin eclipsar el problema específico con los detalles de un determinado mecanismo. También permite sustituir un mecanismo de implementación específico por otro sin que ello afecte negativamente al diseño.

Determine los rangos de características. Partiendo de las características identificadas para el mecanismo de diseño, determine rangos razonables, económicos o factibles de valores que se utilizarán en el mecanismo de implementación candidato.

Considere el coste de adquisición de los componentes. Para los mecanismos de implementación candidatos, considere el coste de adquisición de la licencia, la madurez del producto, la relación con el proveedor, el soporte, etc., además de criterios puramente técnicos.

Lleve a cabo una búsqueda de los componentes adecuados o cree los componentes. A veces, se encontrará con que no existe ningún mecanismo de implementación aparentemente adecuado para algunos mecanismos de diseño; esto desencadenará una búsqueda del producto adecuado o identificará la necesidad del desarrollo interno. También puede descubrir que algunos mecanismos de implementación no se utilizan en absoluto.

La elección de mecanismos de implementación no sólo se basa en encontrar las características técnicas correspondientes, sino también las características que no son técnicas como, por ejemplo, el coste. Algunas de las opciones pueden ser provisionales; la mayoría tienen riesgos asociados: el rendimiento, la fuerza y la escalabilidad son casi siempre riesgos a tener en cuenta y se deben validar mediante la evaluación, la creación de prototipos exploratorios o la inclusión en el prototipo de arquitectura.

Documentar mecanismos de arquitectura

El rol del arquitecto de software en esta tarea es decidir y validar estos mecanismos mediante la creación o la integración, así como verificar que realizan el trabajo y, a continuación, imponerlos en el resto del diseño del sistema. El rol del arquitecto de software colabora con el rol del ingeniero de procesos para documentar los mecanismos y los detalles de uso en directrices de diseño específicas del proyecto. Consulte  Tarea: Preparar directrices específicas del proyecto. La relación (o correlación) de los mecanismos de análisis con los mecanismos de diseño y los mecanismos de implementación, y el fundamento asociado a estas elecciones, se documenta en el Documento de arquitectura de software. Los propios mecanismos son elementos del modelo de diseño (por ejemplo, el paquete de diseño, la clase de diseño y el subsistema de diseño) que se detallan en Producto de trabajo: Modelo de diseño como parte de sus tareas de diseño respectivas.



Propiedades
Varias apariciones
Condicionado por sucesos
Continuo
Opcional
Planeado
Se puede repetir
Más información