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.
|
|