Proyecto Bases De Datos Entrega Final.docx

  • Uploaded by: Daniel Flechas
  • 0
  • 0
  • December 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Proyecto Bases De Datos Entrega Final.docx as PDF for free.

More details

  • Words: 2,482
  • Pages: 16
PROYECTO ANÁLISIS, DISEÑO E IMPLEMENTACIÓN DE UN SISTEMA DE VOTO ELECTRÓNICO I-VOTE

RAMIREZ LEIVA DEYSI CAROLINA FLECHAS TENORIO DANIEL RICARDO SALAMANCA SANCHEZ ANDREA HERRERA RUIZ KATHERINE BERRIO SALAS PAOLA

Institución Universitaria Politécnico Gran colombiano Especialización en Gerencia de proyectos en Inteligencia de Negocios Bogotá D.C., Colombia 2018

ÍNDICE

1. PLANTEAMIENTO DEL PROBLEMA

3

2. JUSTIFICACIÓN Y OBJETIVOS

3

3. MARCO TEÓRICO

4

4. ESTRUCTURA DE DESCOMPOSICIÓN DEL TRABAJO(WBS).......................................................................................5 5. CRONOGRAMA DE ACTIVIDADES…………………………………………6 6. SISTEMA PROPUESTO……………………….…………………………......7 ▪

Panorama (Universo del Discurso)



Requerimientos funcionales



Requerimientos no funcionales

7. MODELOS DEL SISTEMA……………..…………………………………….8 ▪ Diseño conceptual de la base de datos ▪ Normalización de la base de datos ▪ Diseño lógico de la base de datos 8. CUESTIONES DE CONTROL DE INTEGRIDAD REFERENCIAL………9 9. DISEÑO FÍSICO DE LA BASE DE DATOS………………………….…...14 10. Consultas SQL y reportes según requerimientos del sistema………….16 11. Descripción de los requerimientos mínimos en hardware y software necesarios para el buen funcionamiento de la aplicación y la base de datos………………………………………………………………………...…23 12. BIBLIOGRAFÍA 25

ANÁLISIS, DISEÑO E IMPLEMENTACIÓN DE UN SISTEMA DE BASES DE DATOS PARA LA GESTIÓN DE LA INFORMACIÓN DEL PROCESO DE VOTO ELECTRÓNICO I-VOTE

PLANTEAMIENTO DEL PROBLEMA El voto electrónico es un concepto creado para buscar el mejoramiento de los procesos electorales en cualquier país u organización democrática mediante el uso efectivo de las tecnologías de la información y las comunicaciones (TIC). Diversas herramientas o sistemas han sido creados buscando este objetivo, pero

no han sido del todo efectivas debido a problemas de seguridad, usabilidad, auditoría, entre otras. La empresa tiene la necesidad de realizar procesos democráticos internos que permitan elegir a sus directivos, representantes y delegados en los diferentes niveles de su estructura organizacional; para esto requiere una estrategia que incluya una solución tecnológica para la gestión de la información y la implementación del voto electrónico, de tal forma que sea un proceso ágil, sencillo, seguro y eficiente para todo el equipo de trabajo de la empresa. La votación electrónica tiene potencialmente múltiples ventajas en comparación con otros sistemas de votación. Puede reducir drásticamente el tiempo del recuento de votos así como el número de errores en dicho proceso debidas a fallas humanas o por anotación deficiente de las papeletas.

Al desarrollar nuestro sistema de bases de datos permitirá a los votantes emitir su voto en cualquier recinto habilitado sin restricciones geográficas, disminuir la posibilidad de fraudes por autoridades maliciosas o comprometidas (por medio de administración distribuida de la elección, en particular, del recuento de votos), y obtener verificación universal de la elección. Esta última característica permite garantizar un proceso completamente transparente ante cualquier observador interno o externo, quien puede verificar en forma online la realización correcta de cada una de las etapas del proceso de votación

JUSTIFICACIÓN En la actualidad los procesos democráticos requieren una logística que puede ser mayor o menor compleja dependiendo de su magnitud y características, sin embargo cualquiera que sea el tipo de elecciones a llevarse a cabo, genera para los votantes y quien la organiza, un inversión en tiempo, recursos técnicos y humanos que pueden llegar a ser engorrosos para ambas partes. En el contexto empresarial, algunas compañías tienen políticas de participación democrática de sus colaboradores, en la elección de representantes, consejos directivos, voceros, delegados, entre otros, lo cual demanda que estos procesos

sean lo más eficientes posible, en aras de ahorrar tiempo, desplazamientos, logística de materiales y recursos técnicos y humano para la realización de los mismos. La alta competitividad y productividad de las empresas hoy en día, requieren la optimización de todos sus procesos, en este sentido una solución a estos requerimientos es un sistema de bases de datos que permita gestionar la información necesaria y resultante de un proceso democrático interno. La implementación de un sistema de voto electrónico facilita, agiliza y asegura una elección al interior de la empresa, con resultados satisfactorios para las partes involucradas, ya que además puede garantizar seguridad y transparencia de las mismas. OBJETIVOS

OBJETIVO GENERAL ● Realizar un sistema de base de datos que permita gestionar la información de un sistema de votación electrónica a través de “i-vote”, proponiendo una solución para la gestión de la información y el apoyo a la toma de decisiones de la organización.

OBJETIVOS ESPECÍFICOS ● Diseñar una base de Datos implementada sobre el sistema de gestión de base de Datos MySQL. ● Utilizar un software para diseñar una base de Datos a partir de un modelo entidad-relación. ● Diseñar consultas SQL que respondan a requerimientos específicos. ● Aplicar las propiedades que tienen las bases de datos para realizar transacciones seguras.

MARCO TEÓRICO A lo largo de la historia las sociedades se han organizado de diversas maneras. Sin embargo, en los últimos dos siglos se ha producido un cambio generalizado

en la forma de organización y de gobierno. En efecto, muchos países u organizaciones han adoptado un modelo de gobierno democrático, incluso en los últimos años se ha visto cómo diversos pueblos con gobiernos autoritarios se han levantado contra estos en favor de establecer una nueva sociedad democrática.

En un régimen democrático el poder reside en la totalidad de sus miembros. Una característica fundamental de la democracia es que sus gobiernos derivan su legitimidad de las elecciones, que son la principal forma que tiene la sociedad para ejercer el poder de manera libre e igualitaria. Dada la importancia de las elecciones es absolutamente necesario contar con un sistema de votación confiable y seguro. Un sistema de este tipo debe cumplir una serie de requisitos esenciales: ● El voto debe ser secreto, tanto al momento de emitir el voto, como al realizar el conteo de los votos. (Si el voto es efectivamente secreto, la coerción del votante no es posible). ● Un votante sólo puede votar la cantidad de veces establecida legalmente. Normalmente esto es un voto por carrera, aunque puede haber excepciones. ● Un votante sólo puede emitir voto en las suscripciones o carreras en las que legalmente puede votar. ● Un votante no puede vender su voto. ● Todas las papeletas de votación deberían ser contadas sin errores. ● No debe haber obstáculos para que un votante pueda emitir su voto. ● El sistema de votación utilizado debe estar operable durante todo el proceso de votación.

Helios es un sistema de votación de tipo i-voting, es decir que los votantes pueden votar por Internet sin necesidad de ir a un local de votación. Este sistema es “abiertamente auditable", es decir, que el comportamiento y los resultados del sistema pueden ser verificados por cualquier persona o entidad. El sistema ha sido diseñado para ser utilizado en elecciones donde se necesita confianza,

voto secreto, pero donde la coerción de los votantes no es una preocupación importante.

El sistema está construido en Python, utiliza una interfaz Web implementada con JavaScript, jQuery, y utiliza JSON como estructura de datos. Se utiliza el protocolo de votación de Sako-Kilian, el cual utiliza mixnets para asegurar el anonimato de los votos, utilizando El-Gamal como esquema de encriptación.

Este sistema se presenta como una alternativa segura para realizar elecciones on-line, que puede ser utilizado por comunidades de Internet, grupos sociales o centros estudiantiles. Tiene la clara ventaja de permitir que los votantes puedan sufragar cómodamente desde cualquier lugar, en poco tiempo, especialmente útil en organizaciones o grupos que están muy distribuidos geográficamente como para votar todos en un mismo local de votación.

El sistema es públicamente auditable. Para esto proveen dos programas, un programa para verificar un único voto, verificando su integridad y validez, mediante revisión de checksums. Otro programa permite verificar las etapas del proceso de combinación, des encriptación y conteo de los votos. En el lado del cliente, se utiliza una técnica llamada Single-Page Web Application, esto se refiere a que en el lado del cliente ( Browser ) toda la aplicación se carga una sola vez, sin realizar solicitudes a través de la red hasta terminar el proceso de preparación del voto.

ESTRUCTURA DE DESCOMPOSICIÓN DEL TRABAJO (WBS) SISTEMA DE VOTO ELECTRÓNICO I VOTE

ANÁLISIS PREVIO

ANÁLISIS DE REQUISITOS

DISEÑO

PROGRAMACIÓN

PRUEBAS E IMPLEMENTACIÓ N

Definir objetivos

Definir funciones del software

Definir estandares del software

Preparar entorno de desarrollo

Pruebas con usuarios

Definir estrategias

Definir modelos de datos

Diseñar modelos de datos

Codificar procesos

Evaluación de estado del proyecto

Definir recursos necesarios

Definir interfases

Diseñar interfases

Construir interfases

Implementación

Concretar costos y plazos

Definir procesos

Diseñar procesos

Pruebas globales

Diseñar juegos de prubas

1.1 Definir objetivos 1.2 Definir estrategias 1.3 Definir recursos 1.4 Concretar costos y plazos 2.1 Definir funciones del software 2.2 Definir modelos de datos 2.3 Definir interfases 2.4 Definir procesos 3.1 Definir estándares del software 3.2 Diseñar modelos de datos 3.3 Diseñar interfases 3.4 Diseñar procesos 3.5 Diseñar juegos de pruebas 4.1 Preparar entorno desarrollo 4.2 Codificar procesos 4.3 Construir interfases 4.4 Pruebas Globales 5.1 Pruebas con usuario 5.2 Evaluación de estado proyecto 5.3 Lanzamiento

(Probar el software, localizar y corregir los errores que se detecten)

5.PRUEBAS Y LANZAMIENTO

4. PROGRAMACIÓN (En esta etapa traduciremos el 3. DISEÑO (Esta fase reflejará la parte diseño a un código orgánica del proyecto) procesable por el hardware)

(Esta fase reflejaría la parte funcional del proyecto)

TAREAS

2. ANALISI DE REQUISITOS

FASE DEL PROYECTO

1. ANÁLISIS PREVIO ( Plan de trabajo del proyecto y procedimientos que van a marcar las pautas de control sobre el mismo )

CRONOGRAMA DE ACTIVIDADES

1

5

FEBRERO 10 15 20 25 30 1

5

10

MARZO 15 20 25

30

1

ABRIL 5 10 15 20 25

30

1

5

MAYO 10 15 20 25 30

1

5

JUNIO 10 15 20 25

SISTEMA PROPUESTO

Panorama (Universo del Discurso)

El sistema estará diseñado para el control y conteo de votos el cual permitirá emitir información confiable, manteniendo confidencialidad y eficiencia, a través de los componentes que lo integran, limitando el acceso de los usuarios según perfil de cada uno y actividad que gestiona, como el del administrador, asistente, delegado, jurado, votante y ente regulador.

Cada uno de los perfiles del sistema de voto electrónico tiene su par respecto al sistema de voto tradicional, sin embargo, ya que estos comparten información

30

en común, estos heredarán los datos en común de la entidad “cargos”, datos tales como nombre, número de identificación, etc. Para el caso de los postulantes, estos tendrán información adicional de interés para el votante, incluyendo los votos para cada candidato, registrado de manera acumulativa por cada votante, que a su vez resultan únicos para el mismo y verificables por la auditoría.

Requerimientos funcionales: ●

Autenticar a los usuarios que tendrán acceso al sistema



Deberá permitir la configuración requerido por el administrador



El sistema permitirá el acceso a los usuarios registrados



Permitirá el registro de los aspirantes (candidatos).



Deberá aceptar exitosamente el registro del votante.



Debe permitir la administración de los usuarios.



Controlar la jornada de las consultas.



Permitirá administrar las mesas.



Permitirá ejecutar y registrar el voto.



Emitirá reporte de resultados.



Emitirá reporte parcial del conteo de votos.



Emitirá reporte de actividad de usuarios.

Requerimientos no funcionales: ●

El sistema debe garantizar que la actividad electoral de cada terminal se ejecutará en el puesto designado, para ello contará con los mecanismos que permitan verificar el acceso al punto de red designado.



El sistema tendrá soporte para la autenticación biométrica.



El sistema deberá tener los protocolos de seguridad reglamentarios, además de los cifrados adecuados para garantizar la confidencialidad.



El sistema deberá ser accesible a través de cualquier navegador moderno.

MODELOS DEL SISTEMA ● Diseño conceptual de la base de datos (Modelo Entidad Relación)

● Normalización de la base de datos Candidato Id_Candidato Nombre Apellidos Imagen Género Nacimiento Num_Lista Cod_Eleccion

Usuario Id_Usuario

Elección Votación Cod_Eleccion Fecha

Nombre Apellidos Género Fecha de nacimiento Contraseña

Fecha_Inicio Fecha_Fin Hora_Inicio Hora_Fin Estamento Activo

Hora Id_Usuario Id_Candidato Cod_Eleccion

● Diseño lógico de la base de datos

CUESTIONES DE CONTROL DE INTEGRIDAD REFERENCIAL

Cuando se da una relación entre tablas, la tabla principal es aquella que contiene un registro único que se relaciona con múltiples registros que se encuentran en la tabla secundaria. Por ejemplo: en el diseño descrito en la sección anterior se tiene una relación de uno a varios entre la tabla Elección y la tabla Candidato. Cada registro que se encuentra en la tabla Elección es único y el código de la elección jamás se repetirá por ser esta llave primaria.

Ahora en la tabla

Candidato cada registro también es único y el código del candidato jamás se repetirá por ser esta llave primaria, pero además esta tabla tiene un campo donde se relaciona el Código _Elección (llave foránea) al cual el candidato se postuló. En esta última tabla puede tener varios candidatos con el mismo código de elección.

Ahora bien, como en el diseño de esta base de datos se tienen tablas relacionadas y para mantener la integridad referencial entre los registros de estas

tablas, se definirán las siguientes reglas en los campos llaves foráneas que están en las tablas secundarias o hijas: 

Actualizar en cascada: Esto indica que cuando se actualiza un registro de la tabla principal se actualizarán los registros

relacionados que se

encuentren en la tabla secundaria. 

Eliminar restringida: Esto indica que a la hora de eliminar un registro de la tabla principal si este está relacionado en la tabla secundaria entonces se registren la eliminación.

DISEÑO FÍSICO DE LA BASE DE DATOS

CONSULTAS SQL Y REPORTES SEGÚN REQUERIMIENTOS DEL SISTEMA Para el desarrollo del software se usaron las siguientes consultas SQL:    

Para hacer el login en la aplicación: “Select contrasena from usuario where identificacion” (Se adicionan los criterios del where por código). Para listar los candidatos por nombre y apellido: “"Select nombre, apellido from candidato” Para listar el número de candidatos: “SELECT DISTINCT from candidato” Para conocer los votos de los candidatos: “Select * from votacion”

DESCRIPCIÓN DE LOS REQUERIMIENTOS MÍNIMOS EN HARDWARE Y SOFTWARE NECESARIOS PARA EL BUEN FUNCIONAMIENTO DE LA APLICACIÓN Y LA BASE DE DATOS

Para el desarrollo de la aplicación y puesta en marcha del servidor de base de datos, se utilizo un equipo con las siguientes características:    

Procesador: Intel i5 Octava Generación Memoria Ram: 8 GB Almacenamiento: 1 TB Sistema Operativo: Windows 10

SI bien con estos requerimientos la aplicación se ejecuto sin problemas al igual que el servidor de bases de datos, los requisitos mínimos de la instalación son los siguientes:    

Procesador: Intel compatible Memoria Ram: 512 MB Almacenamiento: 1 GB Sistema Operativo: Windows, Linux, Mac, etc.

BIBLIOGRAFÍA ● Richard Celeste, Dick Thornburgh, and Herbert Lin, editors. ● Asking The Right Questions About Electronic Voting. The National Academic Press, Washington D.C. (2006). ● Cordero, Pamela. Implementación de un Sistema de Votación Electrónica Eficiente Para Múltiples Candidatos. Memoria (Ingeniería civil en computación). Santiago, Chile. Universidad de Chile, Facultad de Ciencias Físicas y Matemáticas. (2008) ● http://www.maestrosdelweb.com/que-son-las-bases-de-datos/ ● http://histinf.blogs.upv.es/2011/01/04/historia-de-las-bases-de-datos/

● http://indira-informatica.blogspot.com/2007/09/qu-es-un-sistema-degestin-de-base-de.html ● http://www.cavsi.com/preguntasrespuestas/que-es-un-sistema-gestorde-bases-de-datos-o-sgbd/

Related Documents


More Documents from "fatima norely quintana trejo"