“El presente cuestionario nos servirá de apoyo para la inspección de diversos documentos producto, derivados de cada una de las actividades en el proceso de desarrollo de software. Dicho cuestionario pretende ser consistente con el documento Reglas de Diseño de Software”.
Capitulario.
1. Datos generales. generales. 2. De los principios básicos. básicos. 3. De los objetivos a cumplir cumplir en la Fase de Inicio. 4. De los aspectos aspectos a cubrir en el Análisis y Diseño Orientado Orientado a Objetos. 5. Del diseño y especificación especificación de las interfaces. interfaces. 6. Referent Referente e a la modularidad. 7. En cuanto a las reglas de Análisis y Diseño Orientado Orientado a Objetos. 8. En cuanto cuanto a la utilización de de algoritmos. 9. De las reglas reglas generales. generales.
1
1. Datos generales.
Documento a inspeccionar: þÿ
Autor:
þÿ
Inspector:
þÿ
Verificación
Condiciones Si
No
Observaciones
No aplica
2. De los principios básicos.
2.1
¿Es posible comprender bien la raíz del problema y el contexto en el que se desarolla?
þÿ
2.2
¿Se percibe cual es la funcionalidad del sistema?
þÿ
2.3
De ser asi ¿ya se encuentra diseñada?
þÿ
2.2
¿Existen criterios de modularidad para la resolución de problemas complejos?
þÿ
2.5
Los componentes diseñados, ¿cumplen con el criterio de extensibilidad?
þÿ
2.6
¿Se han definido las interfaces de los componentes?
þÿ
2.7
De ser así ¿cumplen con el criterio de encapsulamiento de la información?
þÿ
2.8
¿Se han incluido patrones de diseño de cualquier índole en el desarrollo del diseño del software?
þÿ
3. De los objetivos a cumplir en la Fase de Inicio.
3.1
¿Es posible identificar los distintos componentes del sistema?
þÿ
3.2
De ser así ¿se pueden identificar las dependencias entre estos?
þÿ
3.3
¿Se han especificado los mecanismos de comunicación entre los componentes?
þÿ
3.4
¿Se han definido las interfaces de los distintos componentes que conforman el sistema?
þÿ
2
3.5
¿Existe la descripción de cada uno de los componentes del sistema?
þÿ
3.6
¿Se han identificado los componentes reutilizables dentro del diseño del sistema?
þÿ
4. De los aspectos a cubrir en el Análisis y diseño Orientado a Objetos. 4.1
¿Se cumple con el principio de encapsulamiento de la información?
þÿ
4.2
Las interfaces abstractas del sistema:
þÿ
¿Ocultan la información dinámica? 4.3
¿Son el único medio de comunicación con el software de aplicación?
þÿ
4.4
La representación de los datos, ¿cumplen con ser tipos abstractos de datos?
þÿ
4.5
¿Se ha utilizado encapsulamiento en algoritmos para la ordenación y búsqueda?
þÿ
4.6
¿Se ha utilizado encapsulamiento para el orden de las operaciones en interfaces de bajo nivel?
þÿ
5. Del diseño y especificación de las interfaces.
5.1
¿Cumplen con el criterio de extensibilidad?
þÿ
5.2
¿Los nombres de los servicios que ofrecen son nemotécnicos?
þÿ
5.3
¿Los servicios que ofrece cada componente están especificados en su interfaz?
þÿ
5.4
¿Cada interfaz identifica para que tipo de usuario va dirigida?
þÿ
6. Referente a la modularidad.
6.1
¿El diseño del sistema es modular?
6.2
¿Los módulos del sistema cumplen con ser extensibles y reutilizables?
þÿ þÿ
3
6.3
¿Los módulos del sistema mantienen compatibilidad bajo el patrón bridge?
þÿ
6.4
¿Los módulos del sistema cumplen con el criterio de escalabilidad?
þÿ
7. En cuanto a las reglas de Análisis y Diseño Orientado a Objetos.
7.1
¿El diseño del software está basado en el diseño de clases y objetos según las técnicas de Análisis y Diseño Orientado a Objetos?
þÿ
7.2
¿Los componentes del sistema se encuentran basados en el modelo de datos jerárquico?
þÿ
7.3
¿Existen propuestas para la arquitectura lógica del sistema?
þÿ
7.4
¿Los grupos de clases y objetos se encuentran agrupados en paquetes según el criterio de similitud o funcionalidad semejante?
þÿ
7.5
¿La información que presentan los diagramas del sistema son congruentes con el análisis de los requerimientos?
þÿ
7.6
¿Los diagramas de clase describen gráficamente la dependencia o relaciones que se tienen con otras clases, objetos y módulos?
þÿ
7.7
¿La manipulación de los objetos cumplen con todas las técnicas del Análisis y Diseño Orientado a Objetos (encapsulamiento, generalizaciónespecialización, ocultamiento de la información, etc.)?
þÿ
8. En cuanto a la utilización de algoritmos.
8.1
Los algoritmos utilizados dentro del sistema, ¿cumplen con el criterio de organización basada en funciones?
þÿ
8.2
¿Las funciones se encuentran refinadas para guiar en el modelo de datos?
þÿ
4
8.3
¿El flujo de datos entre funciones está bien definido? y si es así, ¿se definen las estructuras de datos sobre las cuales actúan?
þÿ
9. De las reglas generales.
9.1
¿El diseño de software es entendible y de fácil lectura?
þÿ
9.2
¿El diseño del software cumple con ser modular?
þÿ
9.3
¿Los módulos del sistema tienen características de funcionamiento independiente?
þÿ
9.4
¿Las interfaces de implementación facilitan la interacción entre los módulos del sistema?
þÿ
9.5
Con las interfaces de implementación, ¿es fácil interpretar una posible interfaz general?
þÿ
9.6
¿Es posible determinar la información que se va presentar?
þÿ
9.7
¿Se puede seleccionar la forma en la cual será presentada la información?
þÿ
9.8
¿Se pueden identificar las clases encargadas de la representación de la información?
þÿ
9.9
¿Es posible seleccionar la salida de la información de acuerdo al destinatario?