General
Modelos Matemáticos en Bases de Datos/Métodos Matemáticos en Ingeniería del Software
El proyecto
A lo largo del curso desarrollamos una aplicación para su uso por parte de una ONG aragonesa (ASA, Acción Solidaria Aragonesa).
El punto de partida es una descripción del funcionamiento de la ONG- EP-D-001. ASA: Descripción (PDF).
DISEÑO E IMPLEMENTACIÓN DE LA BASE DE DATOS
Diseño conceptual: se siguió un proceso iterativo. El equipo de diseño realizó una propuesta inicial, que fue evaluada por el equipo de control de calidad (informe de calidad). Cada versión del esquema conceptual, daba respuesta a las objeciones de control de calidad y era expuesto de nuevo al equipo de control, hasta llegar al esquema conceptual (definitivo)
Diseño lógico: se siguió un procedimiento análogo hasta llegar al esquema lógico definitivo.
- EP-EL-005. Esquema lógico (PDF).
Implementación: en esta fase se adaptó el esquema lógico para su implementación en un sgbd de Oracle. Partimos de una primera versión del código SQL, generado automáticamente por DB-Main. Tras un examen en clase de los errores del código, se llegó a una implementación satisfactoria, que incluía:
- Código SQL para la generación de tablas y restricciones nativas (claves primarias, foráneas, restricciones de unicidad y de tipo CHECK).
- Disparadores para las reglas de negocio no implementadas en el punto anterior.
- Una solución estándar para la implementación de restricciones EQU.
DISEÑO DE LA INTERFAZ, DIAGRAMA DE ACTIVIDADES
A continuación nos centramos en los módulos más complejos de la aplicación: el alta de nuevos proyectos y la modificación de la información disponible sobre ellos:
IMPLEMENTACIÓN DE LA CAPA DE NEGOCIOS
La capa de negocios se ocupa de:
- Establecer el acceso a los datos almacenados en la base de datos, estableciendo el puente entre los objetos con que trabaja la aplicación y los elementos relacionales de la base de datos.
- Gestionar las consultas.
- Realizar la gestión eficaz de transacciones (inserciones, modificaciones y borrados).
- Implementar la lógica de negocios (incluida la validación de datos).
En nuestra arquitectura, se subdivide, a su vez, en dos:
- Los componentes del dominio de negocios, que
- Traducen a clases la estructura de la base de datos:
- Objetos entidad ( tablas)
- Asociaciones (FK)
- Dominios (tipos de datos para atributos)
- Son responsables de la gestión eficaz de transacciones (inserciones, modificaciones y borrados).
- Encapsulan la lógica de negocios (incluida la validación de datos).
- Traducen a clases la estructura de la base de datos:
Esta capa incluye clases correspondientes a las tablas sobre las que se van a realizar operaciones LMD (inserciones, modificaciones y borrados).
- Los componentes del modelo de datos, que agrupan y organizan los datos para enviarlos a la capa de presentación:
- Objetos vista
- Links
- Módulo de aplicaciones (conjunto de objetos vista y links listos para ser exportados).
CIERRE DEL PROYECTO
Finalmente, se dedicó una sesión al cierre de proyecto. En ella se hizo:
- EP-EP-015. Formulario de evaluación de la práctica profesional (PDF).