Sistema de cómputo para el registro de empleados por medio ...

61
INSTITUTO POLITECNICO NACIONAL ESCUELA SUPERIOR DE INGENÍERIA MECÁNICA Y ELÉCTRICA UNIDAD PROFESIONAL “ADOLFO LOPEZ MATEOS” TESIS QUE PARA OBTENER EL TÍTULO DE: INGENIERO EN COMUNICACIONES Y ELECTRÓNICA PRESENTAN: CHAVEZ BUENROSTRO LUIS HUMBERTO GODÍNEZ ESCALONA IVAN BARUE ASESOR: ING. PATIÑO GALLEGOS CATALINA MEXICO, D.F. 2015 SISTEMA DE CÓMPUTO PARA EL REGISTRO DE EMPLEADOS POR MEDIO DE LA HUELLA DIGITAL.

Transcript of Sistema de cómputo para el registro de empleados por medio ...

Page 1: Sistema de cómputo para el registro de empleados por medio ...

INSTITUTO POLITECNICO NACIONAL

ESCUELA SUPERIOR DE INGENÍERIA MECÁNICA Y ELÉCTRICA

UNIDAD PROFESIONAL “ADOLFO LOPEZ MATEOS”

TESIS

QUE PARA OBTENER EL TÍTULO DE:

INGENIERO EN COMUNICACIONES Y ELECTRÓNICA

PRESENTAN:

CHAVEZ BUENROSTRO LUIS HUMBERTO

GODÍNEZ ESCALONA IVAN BARUE

ASESOR:

ING. PATIÑO GALLEGOS CATALINA

MEXICO, D.F. 2015

SISTEMA DE CÓMPUTO PARA EL REGISTRO DE

EMPLEADOS POR MEDIO DE LA HUELLA DIGITAL.

Page 2: Sistema de cómputo para el registro de empleados por medio ...
Page 3: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

I

Resumen

El presente proyecto de tesis consiste en el desarrollo e implementación de un sistema de

cómputo para el registro de los horarios de los empleados mediante su huella dactilar,

siendo esta característica de identificación una de la más confiables para la identificación

de personas.

La implementación del sistema se realizó en una empresa y fue destinado al

departamento de recursos humanos. Este sustituyo la forma actual en que se realizaba

este proceso y resolvió los problemas que este generaba.

El resultado de este proyecto es un sistema estable que garantiza el control, confiabilidad

y entrega de resultados concretos con el fin de tener un informe a detalle y agilizar el

proceso de registro de los empleados.

Con el paso del tiempo este proyecto estará expuesto a cambios ya que las necesidades

de la empresa pueden ir cambiado dependiendo de su organización, sin embargo; se

consideran los principios de este proyecto para su modificación en el tiempo en que se

requieran, con el fin de solucionar problemas que surjan más adelante en la empresa.

Page 4: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

1

Índice

Glosario ............................................................................................................................................... 4

Objetivos ............................................................................................................................................. 6

Objetivo general .............................................................................................................................. 6

Objetivo particular .......................................................................................................................... 6

Justificación ......................................................................................................................................... 7

Descripción .......................................................................................................................................... 8

Contenido ............................................................................................................................................ 9

Capítulo I. Marco teórico y metodológico ........................................................................................ 10

1.1.- Introducción .......................................................................................................................... 11

1.2.1- Características de la huella dactilar y principios de reconocimiento .............................. 11

1.2.2- Características globales ................................................................................................... 12

1.2.3.- Características locales .................................................................................................... 12

1.2.4.- Patrón básico de las huellas ........................................................................................... 13

1.2.5.- La huella digital electrónica. .......................................................................................... 13

1.3.- Manejador de base de datos SQL Server .............................................................................. 14

1.4.- Lenguaje de programación C# .............................................................................................. 14

1.5.- Entorno de desarrollo Visual Studio 2010 ............................................................................ 15

Capítulo II. Análisis ............................................................................................................................ 16

2.1- Conocimiento del medio ........................................................................................................ 17

2.1.1- Sobre la empresa ............................................................................................................ 17

2.1.2- Análisis de problemas detectados. ................................................................................. 18

2.2- Propuesta del nuevo sistema ................................................................................................. 19

2.2.1- Requerimientos solicitados por recursos humanos. ....................................................... 19

2.2.2- Características propuestas. ............................................................................................. 19

2.3- Propuesta final del sistema .................................................................................................... 20

2.4- Elección del lector de huella digital ....................................................................................... 21

2.4.1- Lector de huellas digital .................................................................................................. 21

2.4.2.- Lectores ópticos ............................................................................................................. 22

2.4.3.- Lectores capacitivos. ...................................................................................................... 22

Page 5: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

2

2.4.4- Lector seleccionado para el sistema después del análisis. ............................................. 23

2.5- Diseño del nuevo sistema ...................................................................................................... 24

2.6- Tiempo de desarrollo e implementación (general) ............................................................... 25

2.7- Herramientas usadas para el desarrollo ................................................................................ 28

2.8- Análisis de costos. .................................................................................................................. 28

Capítulo III. Diseño ............................................................................................................................ 29

3.1- Diccionario de datos .............................................................................................................. 30

3.2- Arquitectura del sistema ........................................................................................................ 32

3.3- Diagrama de flujo de datos .................................................................................................... 33

3.5- Diseño de la base de datos .................................................................................................... 38

3.5.1- Entidad relación .............................................................................................................. 38

3.6- Modelo relacional .................................................................................................................. 39

Capítulo IV. Desarrollo e implementación ........................................................................................ 40

4.1- Desarrollo ............................................................................................................................... 41

4.1.1- Conexión con el motor de base de datos........................................................................ 41

4.1.2- Verificación de identidad de empleado .......................................................................... 43

4.1.3- Interfaz final del sistema ................................................................................................. 45

4.2- Pruebas .................................................................................................................................. 46

4.3.- Implementación .................................................................................................................... 47

4.3.1.- Instalación de SQL Server 2008 ...................................................................................... 47

4.3.2.- Instalación del programa de registro de asistencia ....................................................... 49

4.3.3.- Instalación de manejador para lector de huellas U4500. .............................................. 50

Conclusiones ..................................................................................................................................... 52

5.1.- Conclusiones generales ......................................................................................................... 53

Trabajos futuros ................................................................................................................................ 54

6.1.- Mejoras ................................................................................................................................. 55

Bibliografía y Web-grafía ................................................................................................................... 56

Anexos ............................................................................................................................................... 57

Mantenimiento de la base de datos ............................................................................................. 58

Page 6: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

3

Índice de figuras

FIGURA 1 – EJEMPLO DE ÁREA PATRÓN. ..................................................................................................................... 12

FIGURA 2 – EJEMPLO DE ÁREA DE PATRÓN DELTA. ....................................................................................................... 12

FIGURA 3 – PATRÓN DE BUCLE ................................................................................................................................. 13

FIGURA 4 – PATRÓN DE ARCO .................................................................................................................................. 13

FIGURA 5 – PATRÓN DE ESPIRAL ............................................................................................................................... 13

FIGURA 6 – RELACIÓN ENTRE TIEMPO DE COMPILACIÓN Y TIEMPO DE EJECUCIÓN DE UN PROYECTO EN C# .............................. 14

FIGURA 7 – DIAGRAMA DEL PROCESO DE REGISTRO DE EMPLEADOS ................................................................................. 17

FIGURA 8 – LECTOR DE HUELLAS MODELO 4500 ......................................................................................................... 23

FIGURA 9 – DIAGRAMA DEL PROCESO DE REGISTRO POR MEDIO DE SISTEMA PROPUESTO ..................................................... 24

FIGURA 10 – DIAGRAMA DE GANT GENERAL ............................................................................................................... 25

FIGURA 11 – DIAGRAMA DETALLADO DEL PROYECTO (PARTE 1) ...................................................................................... 26

FIGURA 12 – DIAGRAMA DETALLADO DEL PROYECTO (PARTE 2) ...................................................................................... 27

FIGURA 13 – TABLA DE COSTOS ............................................................................................................................... 28

FIGURA 14 – DETALLE DE LA TABLA EMPLEADOS EN LA BASE DE DATOS ............................................................................ 30

FIGURA 15 – DETALLE DE TABLA PUESTOS EN LA BASE DE DATOS .................................................................................... 31

FIGURA 16 – DETALLE DE LA TABLA REGIMEN EN LA BASE DE DATOS ................................................................................ 31

FIGURA 17 – DETALLE DE LA TABLA AREA_INTERNA EN LA BASE DE DATOS ....................................................................... 31

FIGURA 18 – DETALLE DE LA TABLA AREA_GENERAL EN LA BASE DE DATOS ....................................................................... 31

FIGURA 19 – DETALLE DE LA TABLA EVENTOS EN LA BASE DE DATOS ................................................................................ 31

FIGURA 20 - DIAGRAMA QUE MUESTRA LA ARQUITECTURA DEL SISTEMA .......................................................................... 32

FIGURA 21 – DIAGRAMA DE FLUJO PARA EL SISTEMA DE REGISTRO .................................................................................. 33

FIGURA 22 – PANTALLA PRINCIPAL DEL SISTEMA .......................................................................................................... 34

FIGURA 23 – PANTALLA PARA REGISTRO .................................................................................................................... 34

FIGURA 24 – PANTALLA DE REGISTRO DE HUELLA ......................................................................................................... 35

FIGURA 25 – PANTALLA DE MENÚ PARA EL ADMINISTRADOR .......................................................................................... 35

FIGURA 26 – PANTALLA DE GENERACIÓN DE REPORTES ................................................................................................. 36

FIGURA 27 – PANTALLA DE REPORTES ....................................................................................................................... 36

FIGURA 28 – PANTALLA DE EMPLEADOS .................................................................................................................... 37

FIGURA 29 – DIAGRAMA ENTIDAD - RELACIÓN PARA LA BASE DE DATOS DBASISTENCIA ..................................................... 38

FIGURA 30 – MODELO RELACIONAL DE LA BASE DE DATOS DBASISTENCIA ........................................................................ 39

FIGURA 31 – INTERFAZ GRÁFICA DEL SISTEMA DE CÓMPUTO .......................................................................................... 45

FIGURA 32 – INTERFAZ GRÁFICA PARA EL INGRESO DE CONTRASEÑA ................................................................................ 45

FIGURA 33 – INTERFAZ DE FILTROS PARA GENERAR REPORTES ......................................................................................... 45

FIGURA 34 – VENTANA DE SQL MANAGEMENT STUDIO DONDE SE MUESTRA LA BASE DE DATOS .......................................... 46

FIGURA 35 – REPORTE DE ASISTENCIA GENERADO POR EL SISTEMA .................................................................................. 47

FIGURA 36 – ARCHIVO DE INSTALACIÓN..................................................................................................................... 49

FIGURA 37 – PANTALLA DE REQUISITOS PARA LA INSTALACIÓN. ...................................................................................... 49

FIGURA 38 – UBICACIÓN DE LA INSTALACIÓN DEL PROGRAMA. ....................................................................................... 49

FIGURA 39 – FINALIZACIÓN DE LA INSTALACIÓN DEL SISTEMA DE CÓMPUTO. ..................................................................... 50

FIGURA 40 – ARCHIVO DE INSTALACIÓN PARA LECTOR DE HUELLAS. ................................................................................. 50

FIGURA 41 – PANTALLA DE CONDICIONES DE USO. ....................................................................................................... 51

FIGURA 42 – SELECCIÓN DE PAQUETES A INSTALAR. ..................................................................................................... 51

Page 7: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

4

Glosario

PDF.- PDF (sigla del inglés portable document format, (formato de documento portátil) es

un formato de almacenamiento de documentos digitales independiente de plataformas

de software o hardware. Este formato es de tipo compuesto (imagen vectorial, mapa de

bits y texto).

SQL.-Las siglas SQL corresponde a la expresión inglesa Structured Query Language

traducida al español como Lenguaje de Consulta Estructurado, la cual identifica a un tipo

de lenguaje vinculado con la gestión de bases de datos de carácter relacional que permite

la especificación de distintas clases de operaciones entre éstas.

Base de Datos.-Es un conjunto de información relacionada con un asunto, tema o

actividad específica que pertenecen a un mismo contexto y que están almacenados de

manera ordenada para su uso futuro.

Microsoft SQL Server.-Es un sistema de cómputo producido por la empresa Microsoft el

cual permite el almacenamiento, modificación y obtención de información dentro de una

base de datos.

C#.-Es un lenguaje de programación orientado a objetos que se ha diseñado para compilar

diversas aplicaciones que se ejecutan en .NET Framework, es simple y eficaz.

Servidor.- Es un nodo que, formando parte de una red, provee servicios a otros nodos

denominados clientes.

DFD.- Un diagrama de flujo de datos es una representación gráfica del flujo de datos a

través de un sistema de información, también se puede utilizar para la visualización de

procesamiento de datos (diseño estructurado).

Archivo DLL.- Por las siglas en ingles DLL (Dynamic Link Library) es una biblioteca que

contiene el código y los datos que se pueden utilizar por más de un programa al mismo

tiempo.

SDK.- SDK (siglas en inglés de software development kit) o kit de desarrollo de software es

generalmente un conjunto de herramientas de desarrollo de software que le permite al

programador crear aplicaciones para un sistema concreto, por ejemplo ciertos paquetes

de software, frameworks, plataformas de hardware, computadoras, videoconsolas,

sistemas operativos, etc.

Page 8: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

5

.NET Framework.- Es un componente de software que puede ser o es incluido en los

sistemas operativos Microsoft Windows, en general los framework son soluciones

completas que contemplan herramientas de apoyo a la construcción (ambiente de trabajo

o desarrollo) y motores de ejecución (ambiente de ejecución).

Costo-beneficio.-El análisis costo-beneficio es una herramienta financiera que mide la

relación entre los costos y beneficios asociados a un proyecto de inversión con el fin de

evaluar su rentabilidad.

Entidad.-Se puede definir como entidad a cualquier objeto, real o abstracto, que existe en

un contexto determinado o puede llegar a existir y del cual deseamos guardar

información.

Modelo de Entidad Relación.- Es un modelo de datos basados en una percepción del

mundo real que consiste en un conjunto de objetos básicos llamados entidades y

relaciones entre estos objetos, implementándose en forma gráfica a través de un

Diagrama Entidad Relación.

Huella Digital.- Es una característica única de cada individuo y permanece asociada a una

persona a lo largo de su vida, esto hace de la huella digital la forma más fiable de

identificación de personas ya que no puede ser olvidado, extraviado o robado.

CLR.- Common Language Runtime o Lenguaje común de tiempo de ejecución, es el motor

de la plataforma NET encargado de gestionar la ejecución de todas las aplicaciones que

.NET tiene y las cuales ofrece numerosos servicios para simplificar su desarrollo,

favoreciendo con ello su fiabilidad y seguridad.

Clave principal o primaria (Id).- Se denomina Clave principal o primaria al tributo o

conjunto mínimo de atributos (uno o más campos) que permiten identificar en forma

única cada instancia de la entidad, es decir, a cada registro de la tabla.

Motor de Base de Datos.- Son programas específicos, dedicados a servir de intermediarios

entre las bases de datos y las aplicaciones que las utilizan como función principal, cada

uno de estos cumple una tarea específica, que van desde crear la Base de Datos hasta

administrar el uso y acceso a esta.

Interfaz.- Una interfaz en informática, es en términos técnicos, una capa de abstracción

entre el PC y el usuario, es un intermediario que permite la comunicación entre dos sistemas que

no pueden entenderse directamente.

NOI.- Nomina Integral

Page 9: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

6

Objetivos

Objetivo general

Dar solución a la problemática que se tienen en cuanto al manejo de registro de horas de

entrada y de salida de empleados en una empresa por medio de un sistema de registro.

Objetivo particular

Desarrollar un sistema de cómputo a la medida de la empresa, donde se puedan

registrar las horas de llegada y de salida de los empleados.

Implementar el registro en el sistema de cómputo por medio de la huella digital de

los empleados.

Implementar el sistema de cómputo en una empresa.

Page 10: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

7

Justificación

El éxito o fracaso de una empresa mucho depende del desempeño y eficiencia que tengan

sus empleados. Varios son los factores que influyen en el desempeño de una empresa

tales como:

- Horas trabajadas

- Eficiencia del empleado

- Actitud del empleado

- Forma en que la empresa administra sus recursos

En este caso nos centraremos en las horas trabajadas. El que la empresa tenga un control

y conocimiento sobre el tiempo que sus empleados laboran es muy importante ya que les

es útil a la hora de hacer pagos, promociones, evaluaciones e incluso incentivos. Cuando

se habla de una microempresa se puede observar que esto es fácil de controlar ya que los

empleados son pocos, pero se complica cuando el total de empleados aumenta a cientos

o incluso miles.

Precisamente es aquí donde surge la necesidad de crear un sistema el cual pueda registrar

las horas de llegada y de salida de los empleados a su lugar de trabajo. Pero no solo eso,

también es necesario que el sistema tenga un manejo correcto de la información para que

así pueda ser útil, de manera que el personal de recursos humanos o el propio jefe con un

solo vistazo logre tener una idea general y completa de la manera en que sus empleados

asisten al trabajo.

Como esta necesidad no es nueva, actualmente existen en el mercado varios sistemas que

cumplen con el registro de personal, aunque se pudiera pensar que lo más barato fuese

adquirir uno de esos programas ya existentes no es así y es en el párrafo anterior donde se

justifica el desarrollo de uno nuevo. Ya se ha dicho que el sistema debe tener un manejo

adecuado de la información, pero cada empresa necesita cierta información muy

diferente quizá a la que necesita otra empresa. Es por esto y dadas las necesidades de la

empresa en cuestión que se desarrolla un sistema a la medida y no es viable adquirir uno

“general”.

Page 11: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

8

Descripción

El sistema para el registro de horas de acceso y salida de empleados permite que este sea

llevado a cabo por medio de la huella digital del empleado, pudiendo utilizar el dedo que

desee.

El registro personal de cada empleado contiene su información básica como:

Foto

Nombre

Área

Área interna

Régimen

Días que labora

Puesto

Clave NOI

Hora de entrada y salida

Hora de salida a comer

Tiempo disponible para comer

Permite tanto dar de alta como de baja a empleados sin eliminar su registro del sistema,

generar reportes por fechas y periodos con filtros como área interna, área, régimen o

incluso reportes personales.

Genera reportes en:

PDF

Excel

Los reportes en PDF están destinados para los trabajadores, incluyen todos sus registros

de una quincena, con un espacio disponible para su firma, mostrando en colores los días

que llegaron tarde y los días que faltaron, dando la impresión de que un reporte

totalmente en blanco le pertenece a un empleado puntual.

Los reportes en Excel están destinados para recursos Humanos.

Los demás reportes son informativos con opción a exportar.

Page 12: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

9

Contenido

En el presente trabajo se describen los antecedentes, planeación, desarrollo,

programación, implementación y seguimiento del sistema de cómputo para registro de

empleados en una empresa determinada.

Contenido de 8 los capítulos:

Capítulo I.- Marco teórico y metodológico

Contiene la descripción del proyecto incluyendo antecedentes de sistemas

parecidos al que se realiza y las herramientas que usaron para cumplir con los objetivos.

Capítulo II.- Análisis

Habla sobre la justificación sobre el proyecto, análisis, propuesta y costos.

Capítulo III.- Diseño

Se especifican las herramientas de desarrollo, entorno en el que se usaran y la

justificación del porque usar estas y no otras.

Capítulo IV.- Desarrollo e implementación

Aborda el diseño del sistema, su estructura y etapas específicas de su

funcionamiento.

Al igual incluye la implementación junto con pruebas.

Capítulo V.- Trabajos futuros

Trata de las posibles mejoras que puede haber en el sistema.

Capítulo VI.- Conclusiones

Muestra los resultados a los que se llegó y si es que se logró dar solución a los

problemas que lo originaron.

Bibliografía y referencia.

Page 13: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

10

Capítulo I. Marco teórico y metodológico

Page 14: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

11

1.1.- Introducción

Actualmente en el mercado existen varios sistemas de cómputo o programas que realizan

las funciones de registro y manejo de la información sobre los horarios de los trabajadores

en una empresa, esto con el fin de poder tener un control sobre cuales empleados

cumplen con sus horarios y así poder calcular un pago acordado en relación con los días y

horas laboradas. El más conocido de estos es el programa Nomipack.

En el mercado no solo hay programas que cumplen con esta función, también existen

diversos modelos de reloj checador, los cuales limitan sus funciones a imprimir la hora en

una tarjeta de registro o en enviar los datos recolectados por algún medio como pudiera

ser Ethernet. En cuanto este último tipo de reloj, los más comunes son aquellos que llevan

el registro por medio de la lectura de la huella dactilar del empleado.

La desventaja que presentan estos dos tipos de sistemas mencionados anteriormente

radica en que son desarrollados de manera general, es decir; intentan cubrir todas las

necesidades posibles, pero por lo regular no se ajustan por completo a las necesidades de

la empresa, es por ello que la empresa se ve en la necesidad de solicitar un desarrollo

apropiado a la manera en que funcionan.

1.2.- La huella digital

1.2.1- Características de la huella dactilar y principios de reconocimiento

Los seres humanos tenemos en los dedos una superficie rugosa la cual nos permite tomar

con facilidad objetos para evitar que se resbalen. Estas rugosidades tienen patrones que

son únicos e irrepetibles, por esta característica los sistemas de seguridad utilizan estos

patrones para evitar que la identidad de alguien más se pueda ser usada. La huella dactilar

es la impresión visible que dejan estas rugosidades sobre alguna superficie.1

Las características de estos patrones de reconocimiento se clasifican en dos:

características globales y características locales.

Las características globales en las huellas dactilares son aquellas que se pueden observar a

simple vista, mientras que las características locales son llamadas puntos de minucia.

1 http://es.wikipedia.org/wiki/Huella_dactilar

Page 15: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

12

1.2.2- Características globales

Estas características incluyen

Área patrón

Delta

El área de patrón es la parte de la huella digital que contiene las características

globales. Las huellas digitales se leen y se clasifican de acuerdo a la información

en el área de patrón. Ciertos puntos de minucia que se utilizan para el

reconocimiento final podrían estar fuera del área de patrón.

Figura 1 – Ejemplo de área patrón.

La delta es un punto de bifurcación abrupta o encuentro de líneas donde se

pueden formar puntos o fragmentos cortos de línea.

Figura 2 – Ejemplo de área de patrón delta.

1.2.3.- Características locales

Las características locales son conocidas como puntos de minucia. Son las características

de las crestas diminutas huellas dactilares. Su disposición de dos dimensiones es distintivo

y se utiliza para el reconocimiento. Es posible que dos o más individuos para tener

características globales similares, pero todavía tienen diferentes y distintivas huellas

dactilares debido a las características locales, es decir, la disposición bidimensional de

puntos de minucias, es diferente.

Page 16: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

13

1.2.4.- Patrón básico de las huellas

El patrón básico de las huellas es la forma que adoptan las líneas. Puede ser en forma de

bucle, arco o espiral.

Figura 3 – Patrón de bucle

Figura 4 – Patrón de arco

Figura 5 – Patrón de espiral

1.2.5.- La huella digital electrónica.

Cuando esta huella dactilar es convertida en una imagen digital entonces se dice que se

tiene una huella digital. Así es como pueden almacenarse las huellas para poder usarlas en

sistemas de cómputo.

Page 17: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

14

1.3.- Manejador de base de datos SQL Server

El manejador de base de datos SQL Server es un sistema de cómputo producido por la

empresa Microsoft el cual permite el almacenamiento, modificación y obtención de

información dentro de una base de datos.2

Se entiendo por base de datos al conjunto de datos que pertenecen a un mismo contexto

y que están almacenados de manera ordenada para su uso futuro.

1.4.- Lenguaje de programación C#

C# es un lenguaje de programación orientado a objetos.3 C# está basado en el lenguaje

C/C++. Permite los conceptos de herencia, encapsulado y polimorfismo. Al igual que en

C/C++ el punto de entrada o inicio del programa se da en el método Main.

Cuando se ejecuta un programa desarrollado con C# el ensamblado será leído con el CLR

(Common Language Runtime o Lenguaje común de tiempo de ejecución)4. Si cumple los

requisitos del CLR entonces se realiza una compilación justo a tiempo (JIT) para convertir

el lenguaje intermedio del CLR en código máquina.

Figura 6 – Relación entre tiempo de compilación y tiempo de ejecución de un proyecto en C#

2 http://es.wikipedia.org/wiki/Microsoft_SQL_Server 3 http://msdn.microsoft.com/es-es/library/z1zx9t92.aspx 4 Como programar c# segunda edición. Deitel Deitel

Page 18: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

15

1.5.- Entorno de desarrollo Visual Studio 2010

Visual Studio es un entorno de desarrollo que proporciona Microsoft para poder crear

programas compatibles con Windows. Permite crear programas para computadora e

incluso páginas de internet bajo diferentes lenguajes como Visual Basic, C#, J#, C++ o

HTML. 5

5 http://www.visualstudio.com/es-es/visual-studio-homepage-vs.aspx

Page 19: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

16

Capítulo II. Análisis

Page 20: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

17

2.1- Conocimiento del medio

2.1.1- Sobre la empresa

La empresa donde se implementó el sistema se dedica a desarrollar proyectos de

ingeniería multidisciplinaria, con una trayectoria de más de 25 años. Ha adquirido amplia

experiencia y conocimiento del mercado en sistemas integrales para el control y gestión

administrativa de acceso peatonal y vehicular.

La implementación del sistema servirá para el departamento de Recursos Humanos. Este

está encaminado a sustituir la forma actual en que los empleados registran sus entradas y

salidas de la empresa. La manera en cómo se realiza este proceso es la siguiente:

1.- En la sala de espera hay una libreta donde el empleado registra su hora de llegada,

salida a comer, regreso de comida y su hora de salida.

2.- El departamento de recursos humanos (alrededor del medio día) toma los registros de

esa libreta y los transcribe a un archivo de Excel, el cual es enviado para posteriormente

llamara a los empleados que no llegaron a laborar.

3.- Cada quincena o mes el departamento de recursos humanos conjunta todos los

archivos de registro para contabilizar las horas laboradas y así poder generar el pago de

nómina.

Figura 7 – Diagrama del proceso de registro de empleados

Page 21: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

18

2.1.2- Análisis de problemas detectados.

Esta manera de registrar a los empleados propicia los siguientes problemas.

1) El empleado puede o no firmar la hoja, con lo cual no se asegura que la hora la

escribió el.

2) El empleado puede poner la hora que él quiera.

3) La transcripción de los datos a la computadora consume demasiado tiempo.

4) Puede haber errores en la transcripción.

5) No hay un control sobre todos los empleados.

6) Desperdicio innecesario de papel.

7) Inversión de tiempo innecesario en la transcripción de horas.

Page 22: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

19

2.2- Propuesta del nuevo sistema

2.2.1- Requerimientos solicitados por recursos humanos.

1) El sistema debe permitir el alta de nuevos empleados con los siguientes datos.

a. Nombre con apellidos

b. Puesto

c. Área

d. Departamento

e. Clave NOI

f. Hora de entrada

g. Hora de salida

h. Hora de comida

i. Tiempo de comida

j. Días que labora

2) El registro se realizará por medio de la huella digital para acelerar el proceso.

3) Mostrar el nombre y la hora de forma clara y legible al momento del registro.

4) Genera reportes en archivos tipo Excel.

a. Reporte de inasistencias al del día actual

b. Reporte de asistencias del día actual

c. Reporte de asistencias por quincena

d. Reporte de retardos

2.2.2- Características propuestas.

1) Generar reportes personales.

2) Alta y baja de empleados del sistema (conservando su registro)

3) Reportes de horas de comida

4) Reporte por áreas.

5) En el registro del usuario se agrega una foto del empleado.

6) Acceso por medio de la red al sistema.

7) Generar reportes también en formato PDF.

Page 23: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

20

2.3- Propuesta final del sistema

Analizado lo anterior se determina que el sistema debe contar con.

1) El sistema debe permitir el alta y baja de los empleados conservando su registro en

la base de datos, con los siguientes campos.

a. Nombre

b. Puesto

c. Área

d. Departamento

e. Clave NOI

f. Hora de entrada y salida

g. Hora de comida

h. Tiempo de comida

i. Días en los cuales debe laborar

j. Fotografía del empleado

2) El registro será por medio de huella digital.

3) El reconocimiento será por medio de huella digital.

4) Se mostrará el nombre, foto y hora en el sistema de forma clara.

5) Antes de generar el reporte se mostraran en pantalla a excepción de los reportes

quincenales.

6) Generará los siguientes reportes en Excel

a. Asistencias del día

b. Retardos del día

c. Reporte por días

d. Reporte personal

e. Reporte por áreas

7) Generará reportes en formato PDF

a. Reporte quincenal

8) Acceso al sistema por medio de la red.

Page 24: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

21

2.4- Elección del lector de huella digital

2.4.1- Lector de huellas digital

El lector de huellas digital es un dispositivo electrónico el cual tiene una superficie plana

destinada para recolectar la huella dactilar de cualquier dedo. Este detectara los

diferentes relieves, contornos, temperatura y presión que ejerza la superficie del dedo.

Después el dispositivo generara una imagen digital en escala de grises la cual puede ser

tratado por el dispositivo (si es que tiene capacidad para ello) o codificarla y enviarla a la

computadora para que esta sea tratada por algún programa especializado.

El nombre que se le da en inglés es “Finger Print Reader”, este traducido al español

significa “Lector de huellas digitales”

Características generales de un Lector de huellas digital

Si se habla de un lector de huellas independiente, este tiene la capacidad de

almacenar en su memoria interna información sobre las personas. Si no es

independiente forzosamente debe enviar la información a una computadora para

que sea tratada y almacenada.

Todos los lectores tienen un tiempo de exploración, este determina el tiempo que

tarda en recabar y procesar la información que reciba de los sensores que

contenga en su interior, se mide en segundos y puede ser de hasta 1.2s.

Tienen un tiempo de verificación, el cual determina cuánto tarda en procesar y

comparar la información recibida con su base de datos, se mide en segundos y

puede rondar entre los 1.5s y 2s.

Algunos equipos independientes tienen funcionalidades como insertar contraseña

de seguridad, pantalla con interfaz de administración.

Los modelos con conexión a puerto USB pueden alimentarse de los 5V que provee

el puerto a su salida.

Entre sus parámetros cuentan con un porcentaje de aceptación, el cual determina

la fiabilidad del dispositivo, este se mide en porcentaje.

Page 25: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

22

2.4.2.- Lectores ópticos

Este tipo de lectores utiliza en su interior pequeños diodos que emiten luz, integrados en

un sensor llamado CCD (“Charged Coupled Device”), el cual está encargado de detectar los

relieves gracias a las sobras y cambios de iluminación que ocasionan. Con esta

información el dispositivo forma un mapa digital con la información para posteriormente

realizar la verificación.

2.4.3.- Lectores capacitivos.

Estos lectores usan como sensores pequeños capacitores, los cuáles se cargan con diferentes cantidades de corriente de acuerdo a la huella que contenga. Al igual con esta información crea un mapa digital. Dado que detecta cargas del cuerpo humano este tipo de tecnología es más fiable.

Page 26: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

23

2.4.4- Lector seleccionado para el sistema después del análisis.

Se ha seleccionado el lector “U.are.U 4500 Fingerprinter Reader” de Digital Persona.

Se ha seleccionado este lector dado que es la marca que más abunda. A diferencia de los

lectores que produce Microsoft, Digital Persona provee el paquete de desarrollo (SDK

“software development kit” en inglés) para el desarrollo de aplicaciones y su integración

con otros sistemas.

Las características de este modelo de lector de huellas son:

LED rojo que muestra cuando la lectura fue hecha.

Diseño compacto

Excelente calidad de imagen

Datos de huella encriptados

Rechazo de impresión latente

Rechazo de huella falsa

Rotación de imagen

Resistente

Funciona con huellas secas, húmedas o ásperas

Compatible con Windows 7 ®, Vista, Professional XP, 2000 y Windows Server 2000,

2003, 2008, Java y Linux

Económico (En relación a otros)

Conexión y alimentación vía puerto USB

Imagen en escala de grises

Figura 8 – Lector de huellas modelo 4500

Page 27: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

24

2.5- Diseño del nuevo sistema

1.- El empleado llega y se registra por medio de su huella digital en la Computadora que se

encontrará ubicada en recepción.

2.- El departamento de Recursos Humanos obtiene los datos del sistema en cualquier

momento del día y con ello también los reportes necesarios.

Figura 9 – Diagrama del proceso de registro por medio de sistema propuesto

Page 28: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

25

2.6- Tiempo de desarrollo e implementación (general)

En el siguiente diagrama se muestra la planeación general en tiempos del proyecto.

Figura 10 – Diagrama de Gant general

Page 29: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

26

Aquí se muestra el mismo diagrama con más detalle

Figura 11 – Diagrama detallado del proyecto (parte 1)

Page 30: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

27

Se muestra la continuación de diagrama de Gant con más detalle.

Figura 12 – Diagrama detallado del proyecto (parte 2)

Page 31: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

28

2.7- Herramientas usadas para el desarrollo

Las herramientas usadas para el desarrollo del proyecto son:

Microsoft Visual Studio 2010

SQL Server 2008 R2

Paquete de desarrollo de Digital Persona

Computadora

Microsoft Office 2010

Adobe Reader PDF

2.8- Análisis de costos.

En la siguiente tabla se muestra la proyección de costos para realizar el proyecto del

sistema de cómputo.

Concepto Costo

Horas Hombre $ 11,470

Windos 7 Ultimate 32 bits $ 400

SQL SERVER 2008 Express $ 0

Computadora $ 6,000

Lector de huellas U4500 digital persona $ 1,400

Microsoft Office $ 990

Total $20,260 Figura 13 – Tabla de costos

Page 32: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

29

Capítulo III. Diseño

Page 33: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

30

3.1- Diccionario de datos

La siguiente tabla muestra los campos presentes en la tabla Empleados de la base de

datos

Tabla Empleados

Campo llave

Campo Descripción

Tipo de

dato

Longitud

Permite Nulos

Dominio

Rango

Si Id_emp Id de

empleado bigint 8 No Numérico Consecutivo

No Nombre Nombre del empleado

varchar 20 No Texto

No Apellido_p Apellido

paterno del empleado

varchar 20 No Texto

No Apellido_m Apellido

materno del empleado

varchar 20 No Texto

No Id_Puesto Puesto del empleado

int 4 No Numérico 0 -

2.147.483.647

No Hora_ent Hora de entrada

datetime 8 No hh:mm Todo el día

No Hora_sal Hora de salida

datetime 8 No hh:mm Todo el día

No Hora_com Hora de inicio de comida

datetime 8 No hh:mm Todo el día

No Tiempo_com Tiempo de

comida float 8 No Numérico 0> < 24

No Lunes Labora Lunes

Bit 1 No Verdadero/falso 1 o 0

No Martes Labora martes

Bit 1 No Verdadero/falso 1 o 0

No Miercoles Labora

miércoles Bit 1 No Verdadero/falso 1 o 0

No Jueves Labora jueves

Bit 1 No Verdadero/falso 1 o 0

No Viernes Labora viernes

Bit 1 No Verdadero/falso 1 o 0

No Sabado Labora sábado

Bit 1 No Verdadero/falso 1 o 0

No Domingo Labora

domingo Bit 1 No Verdadero/falso 1 o 0

No Activo Empleado

activo Bit 1 No Verdadero/falso 1 o 0

No Id_Area Area general Int 4 No Numérico 0 -

2.147.483.647

No Noi Claves NOI Int 4 No Numérico 0 -

2.147.483.647

No Id_AreaInt Area interna Int 4 No Numérico 0 -

2.147.483.647

No Id_Regimen Regimen

fiscal int 4 No Numérico

0 -

2.147.483.647

Figura 14 – Detalle de la tabla empleados en la base de datos

Page 34: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

31

Diccionario de datos (continuación)

Puestos

Campo llave

Campo Descripción

Tipo de

dato

Longitud

Permite Nulos

Dominio

Rango

Si Id_Puesto Id de puesto Int 4 No Númerico 0 -

2.147.483.647

No Nombre Nombre del

puesto varchar 20 No

Figura 15 – Detalle de tabla Puestos en la base de datos

Regimen

Campo llave

Campo Descripción

Tipo de

dato

Longitud

Permite Nulos

Dominio

Rango

Si Id_Regimen Id de

régimen Int 4 No Númerico

0 -

2.147.483.647

No Nombre Nombre del

régimen varchar 20 No

Figura 16 – Detalle de la tabla Regimen en la base de datos

Area_Interna

Campo llave

Campo Descripción

Tipo de

dato

Longitud

Permite Nulos

Dominio

Rango

Si Id_Areaint Id de área

interna Int 4 No Númerico

0 -

2.147.483.647

No Nombre Nombre de área interna

varchar 20 No

Figura 17 – Detalle de la tabla Area_Interna en la base de datos

Area_General

Campo llave

Campo Descripción

Tipo de

dato

Longitud

Permite Nulos

Dominio

Rango

Si Id_Area Id de área Int 4 No Númerico 0 -

2.147.483.647

No Nombre Nombre de

Área varchar 20 No

Figura 18 – Detalle de la tabla Area_General en la base de datos

Eventos (Registros de eventos de tiempo)

Campo llave

Campo Descripción

Tipo de

dato

Longitud

Permite Nulos

Dominio

Rango

Si Id_emp Id de

empleado bigint 8 No Numérico Consecutivo

No Registo Fecha de

registo Datetime 8 No

dd/mm/aaaa hh:mm:ss

Todo el día

Figura 19 – Detalle de la tabla Eventos en la base de datos

Page 35: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

32

3.2- Arquitectura del sistema

El siguiente diagrama muestra cómo se implementa el sistema de cómputo desarrollado.

Figura 20 - Diagrama que muestra la arquitectura del sistema

Descripción

La base de datos (1) se encuentra instalada dentro del servidor (2) (Computadora que está

en recepción, esto por requerimiento de la empresa).

El sistema de registro también está instalado en la misma computadora (2).

El empleado llegara y se registrara en esta computadora por medio de su huella digital.

El servidor está conectado en red con junto con recursos humanos (4), así cualquiera de

ellos puede acceder al sistema para obtener los reportes.

Page 36: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

33

3.3- Diagrama de flujo de datos

En este diagrama se muestra el proceso completo del sistema de cómputo desarrollado.

El empleado registra la hora

de su llegada o salida

poniendo su dedo en el

detector de huellas

El programa guarda el

dato en la base

Hora de

registro de

empleados

Registro de

asistencia

del

empleado

Generación

de reportes

Fin de proceso

Se elije el tipo de

reportes que se

quiere obtener

Hora

actual

Empleados

Id del

empleado

Registro

de un

nuevo

empleado

El administrador

ingresa los datos

del empleado

Toma si foto si

asi lo requiere

Obtiene la huella

digital del

empleado

Se guarda el

registro en la

base de datos

Se ordenan los

datos o registros

Fin del registro de un

nuevo empleado

Se muestra el

reporte

Exportar en

Excel

Guardar en

PDF

Fin de la

generación del

reporte

No

No

Se muestra el

informe en el

formato elegido

Si

Si

Nombre

Hora de entrada y salida

Hora y tiempo de comida

Días que trabaja

Régimen al que

pertenece

Área (s) a las que

pertenece

DFD para el sistema de registro de asistencia empleados

Figura 21 – Diagrama de flujo para el sistema de registro

Page 37: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

34

3.4- Interfaz gráfica del sistema

Se muestra la pantalla principal del sistema de cómputo desarrollado

Figura 22 – Pantalla principal del sistema

A continuación se muestra la pantalla de registro de empleados en el sistema de cómputo

desarrollado

Figura 23 – Pantalla para registro

Page 38: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

35

En esta pantalla se muestra la interfaz para el registro de la huella digital.

Figura 24 – Pantalla de registro de huella

Esta pantalla muestra el menú visible para recursos humanos

Figura 25 – Pantalla de menú para el administrador

Page 39: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

36

Esta pantalla muestra la interfaz para generar un reporte de algún empleado en

específico.

Figura 26 – Pantalla de generación de reportes

A continuación se muestra la interfaz para generar reportes de todos los empleados.

Figura 27 – Pantalla de reportes

Page 40: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

37

En esta imagen se muestra la interfaz gráfica donde se visualizan todos los empleados

registrados en el sistema de cómputo.

Figura 28 – Pantalla de empleados

Page 41: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

38

3.5- Diseño de la base de datos

3.5.1- Entidad relación

El empleado tiene un Id de empleado, el cual es único y auto incrementable (No lo define

el administrador), además de ello tiene una clave NOI la cual si define el administrador y le

sirve como referencia para cada empleado.

Cada empleado tiene un Régimen, un Área interna, un Área general y un puesto. El

administrador es el encargado de dar de alta estos datos por lo que para que exista un

empleado debe de existir un régimen, un área interna y un área general.

Cada vez que el empleado registra su entrada genera un registro, el cual se guardara en la

entidad “Registros”, esta contiene la fecha del registro y el id del empleado a quien le

pertenece dicho registro.

Figura 29 – Diagrama Entidad - Relación para la base de datos DBAsistencia

Page 42: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

39

3.6- Modelo relacional

En este se aprecian 6 tablas. La tabla principal “Empleados” contiene toda la información

referente a un empleado, donde el campo Id_Emp es el campo llave por el cual se hace

referencia a cada empleado; este es único e auto incrementable además de asignado por

el sistema. Esta tabla también contiene los campos Id_Area, Id_Regimen, Id_Puesto e

Id_Area interna los cuales referencian a sus respectivas tablas para asignar un empleado a

cada identidad, así un puesto, un régimen, un área o un área interna puede tener muchos

empleados, pero un empleado solo tendrá un área interna, un área y un puesto. Es por

esto que para que exista un empleado debe de existir primero un área, un área interna, un

régimen y un puesto.

La tabla eventos es la que contiene los registros (horas) del sistema, cada registro

contiene la hora y el id del empleado que lo genera, de esta manera un empleado puede

tener muchos registros pero un registro solo tendrá un empleado. Están referenciados por

el id_Emp para poder obtener todos los datos del empleado.

Figura 30 – Modelo relacional de la base de datos DBAsistencia

Page 43: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

40

Capítulo IV. Desarrollo e implementación

Page 44: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

41

4.1- Desarrollo

En este capítulo se muestran los principales métodos que forman parte del código del

programa.

4.1.1- Conexión con el motor de base de datos

La DLL “LibreriaSqlServer” está diseñada para establecer la comunicación entre el motor

de base de datos y el programa. Está hecha con el lenguaje de programación C#.

Los métodos principales dentro de la clase SqlServerLib son:

/// <summary> /// Constructor /// </summary> /// <param name="cadConexion">Cadena de conexión al motor de base de datos</param> public SqlServerLib(string cadConexion) { CadConexion = cadConexion; }

/// <summary> /// Metodo para probar la conexion asql /// </summary> /// <returns></returns> public bool probarConex() { var cadena = CadConexion; using (OleDbConnection conexion = new OleDbConnection(cadena)) try { conexion.Open();//abre la conexion if (conexion.State == ConnectionState.Open)//se logro comunicar { conexion.Close(); return true; } else { MessageBox.Show("No se pude hacer conexión con la base de datos"); return false; } } catch (Exception e) { MessageBox.Show("Error: " + e.Message); return false; } } /// <summary> /// Ejecuta un comando y devuelve el número de filas afectadas /// </summary> /// <param name="comando"></param> /// <returns></returns> public int ejecutar(string comando) { var cadena = CadConexion;

Page 45: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

42

using (OleDbConnection conexion = new OleDbConnection(cadena)) try { conexion.Open();//abre la conexion if (conexion.State == ConnectionState.Open)//se logro comunicar { try { OleDbCommand sqlComando= new OleDbCommand(comando, conexion); sqlComando.CommandTimeout=800000; int r = sqlComando.ExecuteNonQuery(); conexion.Close(); return r; } catch (Exception e) { MessageBox.Show("Error en la consulta... " + e.ToString()); return 0; } } else { MessageBox.Show("No se puede iniciar una conexion... "); return 0; } } catch { return 0; } }

/// <summary> /// Obtiene los datos y los devuelve en Datatable /// </summary> /// <param name="comando"></param> /// <returns></returns> public DataTable sqlObtenerDatosTabla(string comando) { var cadena = CadConexion; using (OleDbConnection conexion = new OleDbConnection(cadena)) try { conexion.Open();//abre la conexion try { OleDbDataAdapter datos = new OleDbDataAdapter(comando, cadena); DataTable datoRetorno = new DataTable(); datos.Fill(datoRetorno); conexion.Close(); return datoRetorno; } catch (Exception e) { MessageBox.Show("Error en la consulta... " + e.ToString()); return null; } } catch { return null; } }

Page 46: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

43

Descripción del código:

- SqlServerLib: Este es el constructor y en su interior asigna la cadena de conexión para

posteriormente usarse en los demás métodos.

- probarConex: Prueba la conexión al motor de base de datos. Regresa un valor verdadero

o falso dependiendo si la conexión fue o no satisfactoria.

- ejecutar: Ejecuta un comando y devuelve el número de filas que afecto ese comando.

- sqlObtenerDatosTabla: Obtiene una serie de datos especificados y los devuelve en una

objeto DataTable. Si hubo un error devuelve null.

La ventaja de empaquetar todos los métodos de comunicación con el motor de base de

datos en una librería dll radica en que si fuera necesario con el tiempo cambiar de motor

de base de datos o este se actualizara no es necesario modificar todo el código, sino

simplemente esta librería, lo cual, en implementación se reduce a sustituir un simple

archivo.

4.1.2- Verificación de identidad de empleado

La comprobación sobre la identidad del usuario que ingresa su registro por medio de su

huella digital lo lleva a cabo el método VerHuella_OnComplete

/// <summary>

/// Lectura de huella completa /// </summary> /// <param name="Control"></param> /// <param name="FeatureSet"></param> /// <param name="EventHandlerStatus"></param> private void VerHuella_OnComplete(object Control, DPFP.FeatureSet FeatureSet, ref DPFP.Gui.EventHandlerStatus EventHandlerStatus) { DPFP.Verification.Verification ver = new DPFP.Verification.Verification(); DPFP.Verification.Verification.Result res = new DPFP.Verification.Verification.Result(); // Obtiene un objeto de plantillas. KeyValuePair<DPFP.Template, string> plantilla; if (Huellas.Count > 0)//hay huellas registradas? { //Busca en todas las huellas registradas foreach (object huell in Huellas) { string idEmpleado,hora; plantilla = (KeyValuePair<DPFP.Template, string>)huell; // compara ver.Verify(FeatureSet, plantilla.Key, ref res); //si se encontro la huella if (res.Verified) { idEmpleado = plantilla.Value ;

Page 47: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

44

EventHandlerStatus = DPFP.Gui.EventHandlerStatus.Success; MsjAnterior = Estado.Text; Estado.Text = "¡¡¡ Registrado !!!"; //Busca los datos del empleado //muestra imagen if (File.Exists(constantes.pathImagenes + "\\" + idEmpleado + ".jpg")) { Foto.Load(constantes.pathImagenes + "\\" + idEmpleado + ".jpg");//carga } //Obtiene el id del registro ultimo DataTable dato = sql.sqlObtenerDatosTabla("select Nombre from " + NomDB + ".dbo.Empleados where id_Emp=" + idEmpleado); labelEmpleado.Text = dato.Rows[0][0].ToString(); DelayMsj.Enabled = true; //muestra mensaje de registro encontrado //Guarda el evento en la base de datos dato = sql.sqlObtenerDatosTabla("select GETDATE()"); //Obtiene la hora del servidor hora = dato.Rows[0][0].ToString(); //inserta el registro en la base de datos SQLprocLib OCOMANDO = new SQLprocLib(constantes.CadConexionDB, "sp_Registro"); OCOMANDO.addParam("@id_Emp", System.Data.OleDb.OleDbType.VarChar,idEmpleado); OCOMANDO.addParam("@Hora_Ent", System.Data.OleDb.OleDbType.Date, DateTime.Now);//aqui inserta la hora del sistema OCOMANDO.ejecutarProc();//ejecuta el comando return; } else { //Envia animacion de registro incorrecto EventHandlerStatus = DPFP.Gui.EventHandlerStatus.Failure; } } MsjAnterior = Estado.Text; Estado.Text = "¡¡¡ Huella no registrada !!!"; DelayMsj.Enabled = true; } else//no hay huellas { //Envia animacion de registro incorrecto EventHandlerStatus = DPFP.Gui.EventHandlerStatus.Failure; MsjAnterior = Estado.Text; Estado.Text = "¡¡¡ No hay ninguna huella registrada !!!"; DelayMsj.Enabled = true; } }

Como se observa en el método anterior, la comprobación de la identidad del empleado se

hace por medio de la comparación con todas las huellas ya registradas, si existe entonces

se registra la hora en la base de datos junto con el id de empleado que genero el evento,

caso contrario informa que la huella no está registrada.

Page 48: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

45

4.1.3- Interfaz final del sistema

A continuación se muestra la interfaz gráfica del sistema de cómputo que vera el

empleado

Figura 31 – Interfaz gráfica del sistema de cómputo

En la pantalla principal se muestra en la parte superior derecha la hora y fecha actual. En

la parte inferior derecha se encuentra un botón para accesar a la configuración de

administración o generar reportes.

En la parte central se muestra el nombre del empleado y su foto cada vez que realiza un

registro con su huella.

Para ingresar a realizar reportes o administrar los registros de empleados el usuario debe

antes introducir una contraseña, validando así que este es un administrador.

Figura 32 – interfaz gráfica para el ingreso de contraseña

Si se desea realizar algún reporte quincenal se selecciona la fecha, área y régimen.

Figura 33 – interfaz de filtros para generar reportes

Page 49: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

46

4.2- Pruebas

Para probar el sistema primero verificamos que agregue información de manera correcta

en la base de datos. Para ello se da de alta un empleado y después se procede a verificar

su existencia.

Figura 34 – Ventana de SQL Management Studio donde se muestra la base de datos

En la imagen anterior se muestra una consulta realizada sobre la tabla empleados que se

encuentra dentro de la base de datos DBAsistencia. Se puede observar cómo fue dado de

alta correctamente el registro con nombre Luis Humberto.

La siguiente prueba consiste en ingresar registros de diferentes días y horas para poder

realizar un reporte sobre algún usuario (en este caso sobre el registro de prueba con

nombre Luis Humberto).

En el reporte se pueden apreciar 3 diferentes colores:

Verde.- Indica que el empleado llego a laborar 16 minutos después de su hora de

entrada.

Amarillo.- Marca que el empleado llego 10 minutos después de su hora de entrada.

Rojo.- El empleado no se presentó a trabajar.

A continuación se muestra una prueba del reporte que genera el sistema en formato PDF.

Page 50: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

47

Figura 35 – Reporte de asistencia generado por el sistema

El último recuadro está reservado para que el empleado firme de conformidad.

Este reporte es generado en un formato tipo pdf, por lo que no puede ser alterado.

4.3.- Implementación

4.3.1.- Instalación de SQL Server 2008

Requisitos del sistema:

En las ediciones de 32 o de 64 bits de SQL Server 2008 R2 se aplica lo siguiente:

Page 51: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

48

Microsoft recomienda ejecutar SQL Server 2008 R2 en equipos con el formato de

archivo NTFS. Para las actualizaciones a SQL Server 2008 R2, los sistemas de

archivos FAT32 no se bloquearán.

La instalación de SQL Server bloqueará las instalaciones en unidades de disco de

solo lectura o comprimidas.

Requisitos de reinicio de equipos durante la instalación de SQL Server: la

instalación de .NET Framework requiere un reinicio del sistema operativo. Si la

instalación de Windows Installer también requiere un reinicio, el programa de

instalación esperará hasta que se hayan instalado los componentes de .NET

Framework y Windows Installer antes de reiniciar.

Procesador:

Tipo de procesador:

Procesador compatible con Pentium III o superior

Velocidad del procesador:

Mínimo: 1,0 GHz

Recomendado: 2,0 GHz o más

Sistema operativo

Windows XP profesional, vista, Windows 7 u 8 (Versión service pack 1)

Memoria RAM:

Mínimo: 1 GB

Recomendado: 4 GB o más

2 TB (SQL Server Enterprise Edition admite un máximo de 2 TB de RAM o el valor

máximo del sistema operativo, el que sea menor)

Page 52: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

49

4.3.2.- Instalación del programa de registro de asistencia

1.- Ejecute el archivo Instalador Asistencia Biometrica.exe

Figura 36 – Archivo de instalación.

2.- Le mostrara una pantalla con los requerimientos mínimos del sistema que debe

cumplir. Si los cumple haga click en siguiente.

Figura 37 – Pantalla de requisitos para la instalación.

3.- Le mostrara la ruta donde se instalara el programa. Haga click en siguiente y luego en

instalar.

Figura 38 – Ubicación de la instalación del programa.

Page 53: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

50

4.- Si no tiene instalado .NET framework 4.0 el asistente lo descargar por usted. Para esto

de estar conectado a internet. Cuando la instalación haya finalizado le mostrara la

siguiente pantalla.

Figura 39 – Finalización de la instalación del sistema de cómputo.

5.- Por último reinicie su computadora.

4.3.3.- Instalación de manejador para lector de huellas U4500.

1.- Ejecute el archivo “setup Digital” ubicado en Inicio-> Programas -> Asistencia.

Figura 40 – Archivo de instalación para lector de huellas.

Page 54: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

51

2.- Una vez iniciado el instalador de click en siguiente y acepte las condiciones de uso.

Figura 41 – Pantalla de condiciones de uso.

3.- Seleccione instalar .net y com / active.

Figura 42 – Selección de paquetes a instalar.

4.- Al finalizar reinicie su computadora.

Page 55: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

52

Conclusiones

Page 56: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

53

5.1.- Conclusiones generales

Todos los sistemas de cómputo con el tiempo requieren de diversas actualizaciones para

poder seguir funcionando de manera óptima, es por esto que se vuelve necesario el

realizar un proyecto de forma correcta y documentada. De esta manera se gastaran

menos recursos, sepodrá estar seguro de que el proyecto está basado en las necesidades

que le dieron origen y que sobre todo; es capaz de satisfacerlas. Si un proyecto no está

documentado debidamente, cuando se necesite modificarlo para dar solución a los

nuevos problemas no se sabrá por donde ni cómo empezar, lo que forzara a que se tenga

que implementar un nuevo proyecto comenzando de cero y con ello invertir más recursos

perdiendo la inversión que se llevó a cabo en un principio.

Se infiere en base a este proyecto y al modelo que se siguió para su desarrollo que las

fases necesarias para llevarlo a cabo de forma exitosa son:

Análisis

Diseño

Construcción e implementación del sistema de cómputo

Teniendo esto, junto con los manuales siempre es posible hacer mejoras en el sistema,

correcciones y sobre todo obtener un mayor beneficio.

El desarrollo de un sistema a la medida siempre es un beneficio para cualquier usuario, ya

que por ejemplo; en el caso de las empresas, no tienen que ajustarse a los parámetros ni a

las funciones que proveen estos, las cuales, muy a menudo son insuficientes o

simplemente no tienen razón de ser. Cuando ocurre esto a veces la empresa se ve

obligada a adquirir muchos programas diferentes para poder dar solución a sus procesos,

gastando así más dinero del que podrían haber gastado invirtiendo en el desarrollo de su

propio sistema de manejo de información.

Page 57: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

54

Trabajos futuros

Page 58: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

55

6.1.- Mejoras

El sistema es capaz de almacenar y organizar información de manera eficiente, por lo que

se puede aprovechar esto para darle mayor utilidad. Es de gran importancia que el

programa pueda hacer el cálculo del pago de una pre-nomina e incluso poder generar

facturas de nómina, ya que a partir del SAT lo requiere para que los empresarios puedan

hacer deducciones.

Por otra parte se puede usar para mejorar la seguridad de la empresa usando este

programa junto con la huella digital y algún sistema de apertura de puertas para poder

permitir o negar el acceso a las instalaciones. Tales sistemas de apertura son muy variados

y van desde simples chapas electrónicas hasta electroimanes. La idea es que el sistema

sea controlado por la computadora, la comunicación puede realizarse por medio de

Ethernet para resolver el problema de la distancia que pueda haber entre la puerta y el

sistema de cómputo.

Page 59: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

56

Bibliografía y Web-grafía

http://technet.microsoft.com/es-es/library/ms143506(v=sql.105).aspx

www.mercadolibre.com.mx

www.digitalpersona.com

manual de lector U4500 de digital persona

http://www.visualstudio.com/es-es/visual-studio-homepage-vs.aspx

Como programar C# segunda edición. Deitel Deitel 2005

El lenguaje SQL. Carme Martin Escofet.

Page 60: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

57

Anexos

Page 61: Sistema de cómputo para el registro de empleados por medio ...

Sistema de cómputo para el registro de empleados por medio de la huella digital

58

Mantenimiento de la base de datos

Se recomienda hacer un respaldo periódico de la base de datos DBAsistencia por si esta

llegara a corromperse.

1.- Iniciar el motor SQLServer

2.- Desplegar las bases de datos, Sobre la base DBAsistencia dar click derecho y

seleccionar

Herramientas -> Respaldo.

3.- Seleccionar donde se guardara el respaldo y dar click en Ok

-De igual manera para restaurar la base de datos, dar click derecho sobre la base de datos

a restaurar y seleccionar Restaurar.

- Seleccionar el archivo y dar click en OK