El nombre de la cápsula y la descripción reflejan detalladamente el rol que desempeña la cápsula en el sistema
La cápsula tiene un objetivo bien definido, y rodea un único conjunto de responsabilidades relacionadas
La cápsula representa un foco de control significativo en el sistema, y representa una hebra de control significativa en el sistema
Los roles que la cápsula desempeña se reflejan en sus puertos externos, y cada rol tiene uno o más puertos separados
No se utiliza ningún puerto en más de un rol
Donde existe la necesidad de controlar la interacción de casos de ejemplo concurrentes, se ha utilizado una cápsula con múltiples puertos distintos
Las cápsulas de interfaz se han utilizado para facilitar el desacoplamiento donde se esperan futuros cambios
Las cápsulas se utilizan de forma efectiva para aislar futuros cambios potenciales y decisiones de diseño
Las cápsulas de coordinador se utilizan para gestionar relaciones complejas y dinámicas entre entidades (de uno a varios o de varios a varios)
Las cápsulas de coordinador se utilizan donde es necesario mediar entre cápsulas para encapsular un proceso
La orden de inicialización se ha considerado correctamente
El inicio y la sincronización de hebras de control independientes se ha considerado
La herencia se utiliza de forma apropiada
No hay pruebas de una jerarquía de generalización/especialización muy llanas ni demasiado profundas. Los factores
comunes más obvios se han reflejado en la jerarquía heredada. La herencia no se está utilizando principalmente para
consideraciones de implementación (por ej., reutilización de código), sino como forma de capturar abstracciones de
diseño comunes. Las superclases no son sencillamente fusiones de atributos de las subclases, sino que representan una
abstracción lógica. La jerarquía de herencia no contiene clases abstractas intermedias con propiedades ortogonales.
|
|