Módulo de persistencia de datos para exámenes en simuladores de conducción.



Documentos relacionados
TALLER No. 1 Capitulo 1: Conceptos Básicos de Bases de datos

Las bases de datos pueden dividirse en dos grupos, considerando su función primordial, a saber:

Access Ministerio de Educación, Cultura y Deporte SERIE OFIMÁTICA COLECCIÓN AULA MENTOR. CamSo SGALV

INTRODUCCIÓN A LOS SISTEMAS GESTORES DE BASE DE DATOS

ACCESS 2010 OFIMÁTICA AULA MENTOR

UNIDAD DIDACTICA 1: SISTEMAS GESTORES DE BASES DE DATOS

Una base de datos es una colección de información ordenada e interrelacionada que es de importancia para una empresa.

Funciones del Administrador de Base de Datos. Ing. Anaylen López, MSc Base de Datos II

ADMINISTRACIÓN DE BASES DE DATOS DISTRIBUIDAS

Modelos y Bases de Datos

Colección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 5. Sistemas de Bases de Datos. frente a Sistemas de Ficheros

GUIA PROGRAMACIÓN ORIENTADA A OBJETOS

Base de datos en la Enseñanza. Open Office

IAP ENTORNOS INFORMATIZADOS CON SISTEMAS DE BASES DE DATOS

SISTEMA DE GESTIÓN DE BASE DE DATOS (Database Management System (DBMS))

INTRODUCCION. entidades. Modelo lógico de la base de datos. Matricula. carne. codigo_curso. año semestre nota. propiedades

Es una colección de datos operativos almacenados y utilizados por los programadores de aplicaciones y por usuarios finales de muy diversa índole!

ISO Anexo A OBJETIVOS DE CONTROL Y CONTROLES DE REFERENCIA DANIELA RAMIREZ PEÑARANDA WENDY CARRASCAL VILLAMIZAR

Instituto Tecnológico de Costa Rica

LINEAMIENTOS PARA LA ELABORACIÓN DEL PROGRAMA ANUAL DE TRABAJO

REGLAMENTO DE EXAMEN DE GRADO

GUÍA DE SEGURIDAD DE LA INFORMACIÓN GUÍA GOBIERNO CORPORATIVO PARA EMPRESAS SEP

QUÉ ES UNA BASE DE DATOS Y CUÁLES SON LOS PRINCIPALES TIPOS? EJEMPLOS: MYSQL, SQLSERVER, ORACLE, POSTGRESQL, INFORMIX (DV00204A)

DESARROLLO DE SOFTWARE DEFINICIÓN GENERAL DEL PROCESO GABY LORENA GUERRERO LEYDI ROCIO ERAZO PABLO FELIPE MIRANDA WALTER ALEXIS ANTE

Actividades para mejoras. Actividades donde se evalúa constantemente todo el proceso del proyecto para evitar errores y eficientar los procesos.

Manual para Empresas Prácticas Curriculares

GUÍA TÉCNICA PARA LA DEFINICIÓN DE COMPROMISOS DE CALIDAD Y SUS INDICADORES

Administración de la producción. Sesión 11: Gestor de Base de Datos (Access)

BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN

ISO 17799: La gestión de la seguridad de la información

Introducción a los sistemas de bases de datos

CAPITULO 3 REDES HIBRIDAS-COMPLEJAS. 3.1 Descripción de la Red Híbrida Compleja (HCNN)

Capítulo 1: Introducción a los Sistemas de Gestión de Bases de Datos (SGBD)

GRUPO DE TRABAJO SOBRE PROTECCIÓN DE DATOS -ARTÍCULO 29. Grupo de Trabajo sobre protección de datos - Artículo 29

Introducción. Ciclo de vida de los Sistemas de Información. Diseño Conceptual

DIGITALIZACIÓN DE DOCUMENTOS: PROYECTO DIGISAN

Capítulo 5: Pruebas y evaluación del sistema. A continuación se muestran una serie de pruebas propuestas para evaluar varias

MODELOS DE SIMULACIÓN

BASE DE DATOS RELACIONALES

Gabinete Jurídico. Informe 0183/2009

Manual del Profesor Campus Virtual UNIVO

HERRAMIENTAS DE ACCESS ACCESS Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Evaluación del Software

En esta unidad añadiremos información sobre EXT3 y trabajaremos con aspectos visibles que nos proporcionan estos sistemas de archivos.

Plan de estudios Maestría en Sistemas de Información y Tecnologías de Gestión de Datos

Sistema de base de datos para la gestión del fondo documental de la Biblioteca de la Facultad Enrique Cabrera.

Evaluación de la capacidad óptima de medida y alcance de la acreditación de un laboratorio de calibración

Patrones de Diseño Orientados a Objetos 2 Parte

Introducción. Componentes de un SI. Sistema de Información:

Digitalización de la Audiencia Nacional

CAPITULO I FORMULACION DEL PROBLEMA

SISTEMAS GESTORES DE BASE DE DATOS

Universidad Católica Boliviana San Pablo Centro de Sistemas de Información

Bases de Datos 3º Informática de Sistemas

Los estados financieros proporcionan a sus usuarios información útil para la toma de decisiones

Propiedad Colectiva del Código y Estándares de Codificación.

ELEMENTOS GENERALES DE GESTIÓN.

Unidad VI: Supervisión y Revisión del proyecto

Cómo Desarrollar un plan Estratégico

Estrategias Didácticas B-Learning: ÁLGEBRA RELACIONAL

ASEGURAMIENTO DE LA CALIDAD EN LABORATORIO

Solución Examen Parcial, Ingeniería del Software I.

La transnacionalidad en los proyectos comunitarios

4 Teoría de diseño de Experimentos

Proyecto de Digitalización del Archivo Histórico de las Compañias

GERENCIA DE INTEGRACIÓN

Perspectiva de Tech-Clarity: Mejores Prácticas para Administrar Datos de Diseño

MOTORES VERSUS DIRECTORIOS: EL DILEMA DE LA BÚSQUEDA

ENSAYOS CLÍNICOS. Guía para padres y tutores

GUÍA RÁPIDA DE TRABAJOS CON ARCHIVOS.

Servicio de hospedaje de servidores

DIPLOMADO DE FORMACIÓN DE TUTORES TELEMÁTICOS

REPUBLICA DE COLOMBIA PROGRAMA DE LAS NACIONES UNIDAS PARA EL DESARROLLO PNUD

FP BÁSICA Ofimática y archivo de Documentos

ESQUEMAS DE SISTEMAS VOIP CON ALTA DISPONIBILIDAD Y ALTO RENDIMIENTO

5.1. Organizar los roles

EJEMPLO DE REPORTE DE LIBERTAD FINANCIERA

Criterios para seleccionar tecnología de Modelos de Toma de Decisiones

Asignaturas antecedentes y subsecuentes

CAPÍTULO I. Sistemas de Control Distribuido (SCD).

Base de datos relacional

Instructivo Asesoría Básica Comunidad Virtual SharePoint 2010

BASES DE DATOS. 1.1 Funciones de un DBMS

Nº 27. Gestión de la PRL

BASES DE DATOS. Grado en. Ingeniería Telemática Ingeniería en Sistemas de Telecomunicación Ingeniería Electrónica de Comunicaciones

EXPOSICIÓN DE MOTIVOS.

CONTROL DE ASISTENCIA DE PERSONAL

1.1.- Objetivos de los sistemas de bases de datos Administración de los datos y administración de bases de datos Niveles de Arquitectura

Por qué es importante la planificación?

0226. SEGURIDAD INFORMÁTICA

Plan de Estudios. Maestría en Seguridad Informática

CONSOLIDACIÓN DE SERVIDORES PARA RENOVACIÓN DE PLATAFORMA DE SERVICIOS SERPES

El Producto: Software

GESTIÓN DE LA DOCUMENTACIÓN

Programa de Criminología UOC

TEMA 6. ARQUITECTURA DE ADO.NET 6.1. INTRODUCCIÓN A ADO.NET

MANTENIMIENTO Y SOPORTE

4. EVALUACIÓN DEL PROGRAMA DE CAPACITACIÓN

Sabe usted qué es la seguridad convergente?

Transcripción:

FACULTAD 5 Módulo de persistencia de datos para exámenes en simuladores de conducción. Autores: 1. Ing Juan Carlos Quevedo Lussón Dpto Ingeniería y Gestión de Software, UCI, jquevedo@uci.cu 2. Ing Omar Correa Madrigal Dpto Práctica Profesional, UCI, ocorrea@uci.cu

RESUMEN La Facultad 5 de la Universidad de las Ciencias Informáticas, que atiende el perfil de Realidad Virtual, tiene como producto el simulador de conducción, el cual brinda la opción de realizar examenes para obtener la licencia de conducción. Los exámenes realizados en este simulador no son persistentes, una vez que el evaluado concluye su ejercicio no existe una forma de almacenar las principales incidencias del mismo, con el objetivo de resolver esta problemática se idea una herramienta que pueda ser incorporada a dicho simulador, que permita tener una constancia de la realización de los exámenes por parte de los clientes. Esta herramienta proveerá un vínculo mayor entre el Sistema de Evaluación Teórica, que es un producto acompañante del simulador y permite la realización de los exámenes teóricos previos al ejercicio de conducción, además de permitir almacenar los datos de los ejercicios realizados, y obtener después reportes que puedan contribuir a la mejora continua del proceso de evaluación. El presente trabajo explica las principales características de la herramienta propuesta. PALABRAS CLAVES Conducción,examen, simulador, persistencia. ABSTRACT KEYWORDS

INTRODUCCIÓN El simulador de conducción desarrollado por la Facultad 5, es un sistema que permite la evaluación de un ejercicio de conducción automovilística, realizado en un entorno virtual y con el objetivo de obtener la licencia de conducción. Este sistema va acompañado de un sistema de evaluación teórica, que automatiza mediante el uso de videos con situaciones del tránsito y preguntas acompañando a estos videos, la realización del examen teórico para obtener licencia de conducción. En el caso del sistema de evaluación teórica, los examenes son almacenados en una base de datos, donde se registran los datos personales de los aspirantes, así como los datos de los exámenes realizados, a partir de tenerlos almacenados se pueden obtener reportes de rendimiento, de complejidad de exámenes, y otros definidos por el sistema que permiten conocer en que nivel se encuentran los exámenes realizados. El simulador de conducción a pesar de ser la continuidad del examinador teórico no exige ninguna constancia de la realización del test teórico previo al ejercicio de conducción. En añadidura a esto tampoco se registran en ningún sitio los exámenes prácticos realizados, simplemente se da un resultado y al comenzarse otro examen, se borran de la memoria los datos referentes al anterior ejercicio. Esto anula la posibilidad de poder tener un informe con datos referentes a la realización de los ejercicios prácticos de conducción. El problema a solucionar en este caso es: Cómo lograr una mayor vinculación entre las dos aplicaciones o sistemas que automatizan el proceso de obtención de la licencia de conducción, permitiendo además almacenar los datos inherentes al examen práctico? Para solucionar esta interrogante se plantea como objetivo general desarrollar un módulo de persistencia de datos que permita almacenar los datos

correspondientes a los exámenes prácticos de conducción realizados en el simulador y vincularlos con los datos almacenados de los exámenes teóricos. Se plantean como tareas para cumplir el objetivo trazado las siguientes: Estudiar y analizar las principales variables que se manipulan en un examen de conducción. Analizar las principales tendencias en el almacenamiento de datos. Plantear soluciones técnicas que solucionen la problemática analizada. Realizar el análisis y diseño para obtener una arquitectura de clases que responda a los objetivos planteados. Desarrollar una herramienta de visualización de reportes que permita a los encargados de aplicar los exámenes, obtener resúmenes de los datos almacenados. Con el desarrollo de este módulo y su posterior vinculación al simulador de conducción se espera que se pueda obtener un mejor seguimiento de la realización de los exámenes de conducción, que se puedan alamacenar los datos correspondientes a los ejercicios de conducción realizados y obtener reportes que indiquen las tendencias de los examinados durante los ejercicios, datos estos que pueden ser muy importantes y necesarios a la hora de tomar decisiones, y que anteriormente eran imposibles de obtener.

DESARROLLO Sistemas Gestores de Bases de Datos (SGBD) Los sistemas de gestión de base de datos son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan. Se compone de un lenguaje de definición de datos, de un lenguaje de manipulación de datos y de un lenguaje de consulta.[wikipedia 1] El propósito de los sistemas de gestión de bases de datos es el de manejar de manera sencilla y ordenada un conjunto de información almacenada en las bases de datos, para ello deben tener ciertos objetivos: Abstracción de la información. Los SGBD ahorran a los usuarios detalles acerca del almacenamiento físico de los datos. Da lo mismo si una base de datos ocupa uno o cientos de archivos, este hecho se hace transparente al usuario. Así, se definen varios niveles de abstracción. Independencia. La independencia de los datos consiste en la capacidad de modificar el esquema (físico o lógico) de una base de datos sin tener que realizar cambios en las aplicaciones que se sirven de ella. Redundancia mínima. Un buen diseño de una base de datos logrará evitar la aparición de información repetida o redundante. De entrada, lo ideal es lograr una redundancia nula; no obstante, en algunos casos la complejidad de los cálculos hace necesaria la aparición de redundancias. Consistencia. En aquellos casos en los que no se ha logrado esta redundancia nula, será necesario vigilar que aquella información que aparece repetida se actualice de forma coherente, es decir, que todos los datos repetidos se actualicen de forma simultánea.

Seguridad. La información almacenada en una base de datos puede llegar a tener un gran valor. Los SGBD deben garantizar que esta información se encuentra asegurada frente a usuarios malintencionados, que intenten leer información privilegiada; frente a ataques que deseen manipular o destruir la información; o simplemente ante las torpezas de algún usuario autorizado pero despistado. Normalmente, los SGBD disponen de un complejo sistema de permisos a usuarios y grupos de usuarios, que permiten otorgar diversas categorías de permisos. Integridad. Se trata de adoptar las medidas necesarias para garantizar la validez de los datos almacenados. Es decir, se trata de proteger los datos ante fallos de hardware, datos introducidos por usuarios descuidados, o cualquier otra circunstancia capaz de corromper la información almacenada. Respaldo y recuperación. Los SGBD deben proporcionar una forma eficiente de realizar copias de seguridad de la información almacenada en ellos, y de restaurar a partir de estas copias los datos que se hayan podido perder. Control de la concurrencia. En la mayoría de entornos (excepto quizás el doméstico), lo más habitual es que sean muchas las personas que acceden a una base de datos, bien para recuperar información, bien para almacenarla. Y es también frecuente que dichos accesos se realicen de forma simultánea. Así pues, un SGBD debe controlar este acceso concurrente a la información, que podría derivar en inconsistencias. Tiempo de respuesta. Lógicamente, es deseable minimizar el tiempo que el SGBD tarda en darnos la información solicitada y en almacenar los cambios realizados.

Ventajas de los sistemas de gestión de bases de datos: Facilidad de manejo de grandes volúmenes de información. Gran velocidad en muy poco tiempo. Independencia del tratamiento de información. Seguridad de la información (acceso a usuarios autorizados), protección de información, de modificaciones, inclusiones, consulta. No hay duplicidad de información, comprobación de información en el momento de introducir la misma. Integridad referencial el terminar los registros. Desventajas: El costo de actualización del hardware y software son muy elevados. Costo (salario) del administrador de la base de datos es costoso. El mal diseño de esta puede originar problemas a futuro. Un mal adiestramiento a los usuarios puede originar problemas a futuro. Si no se encuentra un manual del sistema no se podrán hacer relaciones con facilidad. Generan campos vacíos en exceso. El mal diseño de seguridad genera problemas en esta. Variables a tener en cuenta en la realización de los ejercicios de conducción. Al analizar los datos necesarios para ser almacenados en un examen práctico de conducción, se nota que son muchas las variables que se manipulan. A diferencia de los exámenes teóricos, en los cuales solamente se almacena la información referente a las preguntas que existen en cada examen, las respuestas dadas por el examinado y el resultado del examen, en el ejercicio

práctico de conducción se manipulan datos referentes a la velocidad del auto, al tiempo del examen, a las maniobras realizadas por el conductor, las infracciones cometidas, en fin una serie de datos que en algunos casos no son importantes su almacenamiento. Las variables que si son muy útiles de almacenar son: Maniobra: Se entiende por maniobra toda accion realizada por el conductor en un ejercicio (frenar, doblar, acelerar, etc), por cada maniobra se almacenará el instante de tiempo exacto en que se realizó, (partiendo de que el tiempo comienza a contarse partiendo del momento en que enciende el auto para comenzar el examen), en cada maniobra el examinado puede cometer una infracción, por lo cual este es un dato que se debe almacenar, en cada maniobra se debe almacenar como dato importante la velocidad del vehiculo al realizar cada maniobra. En el diseño de esta base de datos se debe tener en cuenta además que cada ejercicio practico constituye la continuidad de un examen teórico por lo que se debe almacenar además el identificador del examen teórico realizado por el conductor. Propuesta de solución técnica Se propone para el diseño de la base de datos que la misma sea una expansión de la base de datos existente para el Sistema de Evaluación Teórica.(ver fig 1). En la cual se almacenan los principales datos de los clientes y de los exámenes teóricos realizados por estos. A esta expansión se le deben añadir las tablas que permitan almacenar los datos identificados en el acápite anterior como importantes en un examen de conducción(ver fig 2). Se propone aplicar el patrón de acceso a datos Row Data Gateway, el cual se implementó para el Sistema de Evaluación Teórica, con excelentes resultados, lo que permitirá que se reúse gran parte de este código. Este patrón consiste en

un objeto que actúa como puerta de acceso a un record en la fuente de datos (base de datos), existiendo una instancia del mismo por cada fila que exista en la tabla de la base de datos. La metodología propuesta para desarrollar el proyecto es RUP, que garantiza la elaboración de todas las fases de un producto de software orientado a objeto. RUP no es simplemente un proceso, sino un marco de trabajo extensible que puede ser adaptado para diferentes áreas de aplicación, diferentes organizaciones o proyectos específicos. Está metodología entre sus múltiples ventajas ayuda a asegurar la producción de software de alta calidad con un costo y tiempo predecible para el usuario. En vistas de que se quiere realizar un software de calidad y siguiendo metodologías de desarrollo de software como RUP, donde se usa la programación orientada a objetos, debemos desechar el lenguaje C, ya que este no incorpora el paradigma de Programación Orientado a Objetos (POO), el lenguaje de programación Java, nos brinda facilidades a la hora de programar, pues es multiplataforma, y podríamos obtener un software que corriera en cualquier sistema operativo, pero tiene los inconvenientes de que las aplicaciones de escritorio son poco comunes en este lenguaje de programación, debido a lo lentas que resultan y otras inconveniencias que posee el mismo, si a esto se le añade que las máquinas virtuales de java para compilar el código de nuestra aplicación poseen licencia comercial (deben ser pagadas por su uso), esto conlleva a desechar también este lenguaje de programación, en el caso del C#, la no existencia de compiladores para este lenguaje que no generen los programas para la plataforma.net, y el hecho de que los compiladores de este lenguaje de programación también poseen licencia comercial, indican que la solución factible para programar el software deseado es hacerlo en C++, si se programa usando los tipos básicos de este lenguaje, se haría más factible una migración a software libre, ya que las versiones actuales del sistema solo corren en plataforma Win32.

Configuracion_examen id_configuracion : INTEGER tiempo_max : INTEGER valor_aprob : INTEGER 1 0..1 Config_preg_tipo tipo : INTEGER cantidad : INTEGER id_configuracion : INTEGER <<Non-Identifying>> 0..1 0..* ce_examenteorico num_examen : INTEGER nota : INTEGER fecha : DATE hora_inicio : DATE hora_fin : DATE usuario : VARCHAR(255) id_cliente : INTEGER id_configuracion : INTEGER 0..1 0..* <<Non-Identifying>> 0..1 0..* <<Identifying>> PregExamen num_examen : INTEGER id_pregunta : INTEGER cecliente id_cliente : INTEGER nombre_apell : VARCHAR(255) dir_part : VARCHAR(255) fecha_nac : DATE usuario : VARCHAR(255) <<Non-Identifying>> 0..* 0..1 0..* 1 <<Identifying>> 1 <<Identifying>> cepregunta id_pregunta : INTEGER texto_preg : VARCHAR(255) url_video : VARCHAR(255) tipo : INTEGER 0..* 0..* <<Non-Identifying>> 0..1 RespPregEx id_respuesta : INTEGER num_examen : INTEGER id_pregunta : INTEGER ceusuario contras : VARCHAR(255) usuario : VARCHAR(255) 1 1..* <<Identifying>> ce_respuesta texto : VARCHAR(255) correcta : BIT(1) id_respuesta : INTEGER id_pregunta : INTEGER Fig 1. Modelo físico de datos del Sistema de Evaluación Teórica.

Fig 2. Estructura de la BD para almacenar la información referente a los ejercicios de conducción.

Conclusiones Durante la realización de este trabajo se investigó acerca de las tendencias actuales de almacenamiento de datos, lo cual permitió conocer como se comporta este aspecto a nivel internacional. Además se realize una investigación sobre el simulador de conducción desarrollado por estudiantes y profesores de la Facultad 5, para determinar las variables a almacenar en una base de datos que sirviera para recopilar información referente a los exámenes de conducción. Se obtuvo como fruto de la investigación un prototipo de diseño inicial de la BD que solucionaría la problemática planteada al inicio de este informe. Además de una arquitectura básica que diera soporte a esta solución. Actualmente se trabaja en desarrollar la primera versión del módulo que dará solución al problema existente. La herramienta desarrollada, incorpora nuevas funcionalidades al sistema ya existente.

Referencias [Wikipedia 1]: Wikipedia "Firebird " Retrieved 22/01/2007, from http://es.wikipedia.org/wiki/firebird