View
190
Download
5
Category
Preview:
Citation preview
INTRODUCCIÓN
En 1937 se creó, por decreto presidencial del Sr. Adolfo López Mateos
la Comisión Federal de Electricidad.
Al empezar a generar su propia energía y abrir sus mercados de
distribución, la CFE se organizó administrativamente en ocho divisiones de
operación, distribuidas en diferentes puntos del país.
Su misión es asegurar, dentro de un marco de competencia y
actualizado tecnológicamente, el servicio de energía eléctrica, en
condiciones de cantidad, calidad y precio, con la adecuada diversificación de
fuentes de energía. Optimizar la utilización de su infraestructura física,
comercial y de recursos humanos. Proporcionar una atención de excelencia
a nuestros clientes. Proteger el medio ambiente, promover el desarrollo
social y respetar los valores de las poblaciones donde se ubican las obras de
electrificación.
Su visión es ser una empresa de clase mundial que participe
competitivamente en la satisfacción de la demanda de energía eléctrica
nacional e internacional, que optimice el uso de su infraestructura física y
comercial, a la vanguardia en tecnología, rentable, con imagen de
excelencia, industria limpia y recursos humanos altamente calificados.
- 3 -
La actual División de Distribución Oriente, conocida en un principio
como División Veracruz, se fundó en 1951. No obstante, los orígenes de la
configuración eléctrica de la División datan de fines del siglo XIX.
Los primeros registros de actividad eléctrica en el ámbito veracruzano,
al igual que en el resto del país, provienen de la construcción y operación de
plantas generadoras. Así se tiene conocimiento de una planta termoeléctrica
en la población de Comapan, hoy Zona Los Tuxtlas, que fue instalada y
operada por su propietario, el señor Antonio González Castillo, en 1884.
En la actualidad algunas organizaciones tienen la necesidad de ser
más eficaces y de gran utilidad permitiéndoles tener un mejor desempeño.
Dichas organizaciones o empresas requieren de herramientas que les
facilite el área de trabajo para realizar sus actividades.
Es por eso que debido a las necesidades de los ejecutivos y
empresarios han surgido nuevos sistemas de información para ayudar en las
actividades llevadas a cabo en una organización.
El hacer todos los procesos de forma manual conlleva mucho tiempo,
debido a que el llenado de bitácoras es muy lento, provoca errores y esto a
su vez lo hace más tedioso. Pensando en esta problemática que presenta la
empresa C.F.E ya que ellos llevan su control de personal de forma manual,
- 4 -
se tuvo la necesidad de buscar un medio que reduzca el tiempo al momento
de registrarse el personal.
Con un sistema de Base de Datos que permita realizar todas las
operaciones del control de personal será de gran de apoyo para la
organización. Al sistema se le anexara un dispositivo de entrada que en este
caso será el lector de huella digital sistematizando el control del personal que
de manera manual son llevadas a cabo en esta empresa.
Es por esto que este proyecto tiene como finalidad apoyar y manejar
de una forma adecuada el control del personal de la empresa COMISION
FEDERAL DE ELECTRICIDAD, ya que este tendrá como función primordial
registrar al empleado con todos sus datos que requiere la empresa, modificar
si algún dato está mal capturado, consultar la base de datos en donde se
encuentran registrados y dar de baja al empleado cuando este ya no labore
en dicha empresa.
- 5 -
JUSTIFICACIÓN
Dentro de la empresa COMISIÓN FEDERAL DE ELECTRICIDAD
decidimos llevar a cabo el proyecto llamado COFEELECONP ya que en
dicha empresa tienen la problemática de llevar el registro de los empleados
de forma manual siendo esto muy tedioso para la persona que lleva acabo la
captura de dichos registros. De esta manera se beneficiara el departamento
de distribución como a su vez a la única persona que tendrá acceso al
sistema.
El proceso que se lleva a la hora de entrada es que cada trabajador
debe de registrarse todos los días en listas escribiendo la hora de entrada y
su firma y al término de su jornada se repite el mismo proceso
mencionado anteriormente.
Dichas listas se acumulan a lo largo de la semana para después ser
vaciados en un solo formato requiriendo de mucho tiempo en ocasiones
hasta mas de 2 horas suele llevarse dicho vaciados. Es por eso que se hace
muy complicado por el gran número de trabajadores, aparte se obtiene las
horas diarias trabajadas de cada empleado.
Pensando en esta problemática le planteamos una posible solución la
cual facilitara al vaciado de estas listas a la persona encargada.
- 6 -
OBJETIVO GENERAL
Se realizará un sistema de base de datos para la empresa COMISIÓN
FEDERAL DE ELECTRICIDAD que permita facilitar y llevar el control de los
registros de entrada y salida de los empleados que laboran en dicha
empresa optimizando así el tiempo de vaciado de dichas listas.
Este sistema generara tres tipos reportes los cuales son diarios, por
área y por mes.
Utilizando interfaces fáciles de manipular generando así los resultados
de manera más rápida para la empresa.
- 7 -
OBJETIVOS ESPECÍFICOS:
Recopilación de los datos de los empleados para la realización del sistema.
Crear una base de datos.
Diseñar las interfaces con que contara el sistema.
Generar un ambiente de trabajo visual agradable a los usuarios
que utilizaran dicho sistema.
Elegir el lenguaje de programación a utilizar para la construcción
del sistema.
Permitir dar de altas, bajas, realizar modificaciones y consultas de
los empleados con los que cuenta.
Minimizar el manejo de papeles.
Capacitar el personal para la manipulación del sistema.
- 8 -
CARACTERIZACIÓN DEL ÁREA EN QUE PARTICIPÓ
Comisión Federal de Electricidad Área de Distribución Acayucan
Ubicado en la calle Altamirano con Miguel Hidalgo y carretera Costera del
Golfo.
Esta empresa está a cargo del Ing. Alberto Jorge Quiroz Vera. Jefe del área
de distribución Acayucan
- 9 -
FIGURA No. 1 CROQUIS DE LA UBICACIÓN DE LA EMPRESA
UBICACION
ORGANIGRAMA DE DISTRIBUCION ACAYUCAN
- 10 -
FIGURA No. 2 ORGANIGRAMA DE LA EMPRESA
JEFE DE AREA DISTRIBUCION
ACAYUCAN
JEFE DE AREA DISTRIBUCION
ACAYUCAN
OFICINISTAOFICINISTADELEGADODELEGADO
SUBDELEGADO
DO
SUBDELEGADO
DO
ENCARGADO DE SEGURIDAD E HIGIENE
ENCARGADO DE SEGURIDAD E HIGIENE
LINIEROS LV SINDICALIZADOS
LINIEROS LV SINDICALIZADOS
TRABAJADORES TEMPORALES
TRABAJADORES TEMPORALES
AYUDANTES DE LINIEROS
AYUDANTES DE LINIEROS
A continuación daremos una breve explicación de cómo esta
conformado el organigrama:
Jefe de área de distribución Acayucan: Es el encargado de dar
autorización a todas las actividades que se llevan a cabo dentro de la
empresa.
Delegado: Coordinar y asignar las actividades diarias a los empleados.
Subdelegado: Coordina y asigna las actividades de los empleados siempre
y cuando el delegado este ausente.
Linieros sindicalizados: Estos realizan diversas actividades por ejemplo
reparar las líneas desenergizadas, reparación de trasformadores etc.
Ayudantes linieros: Son los que proporcionan material a los linieros cuando
están realizando sus actividades.
Trabajadores temporales: Son los que trabajan por un determinado tiempo
de 4 a 5 meses.
Encargado de seguridad e higiene: Se encarga de dar a conocer a sus
compañeros trabajadores la importancia de la seguridad que se debe tener
al realizar su trabajo. También proporciona el material de limpieza para el
personal que se encarga del aseo de la empresa.
- 11 -
Oficinista: Es el que se en carga de llevar el control de la lista de entradas
y salida de los empleados registrados o anexar a la lista a nuevos
empleados que se presente durante la semana en este caso serian los
temporales ya que estos no están por mucho tiempo en un mismo lugar. De
igual manera captura todas las diversas actividades que realizan diariamente
los trabajadores.
- 12 -
PROBLEMAS A RESOLVER PRIORIZANDOLOS
Actividades a realizar:
CRONOGRAMA DE ACTIVIDADES TIEMPO PARA REALIZAR LAS ACTIVIDADES DEL SISTEMA
ACTIVIDADESSEPTIEMBR
E OCTUBRE NOVIEMBRE DICIEMBREENER
O 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2INVESTIGACION PRELIMINAR Petición recopilación de información DETERMINACON DE REQUERIMIENTOS Cuestionario Entrevista ESTUDIO DE FACTIBILIDAD factibilidad económica factibilidad técnica factibilidad operacional DISEÑO DEL SISTEMA creación de diagrama entidad relación creación de la tablas creación diccionario de datos creación de diagrama de flujo Pantallas DESARROLLO DEL SOFTWARE Codificación PRUEBA DEL SISTEMA IMPLANTACION Y EVALUACION CAPACITACION MANUAL DE USUARIO DOCUMENTACION
- 13 -
FIGURA No. 3 CRONOGRAMA DE ACTIVIDADES
Investigación Preliminar
Se realiza una recopilación de información dentro de la empresa. Es
muy importante comprende todas las fases de la parte de la empresa que
está bajo análisis y nos referimos a la empresa de comisión federal de
electricidad.
Es necesario recopilar toda la información necesaria y hacer un estudio
relevante a cerca de los procesos que realizan para llevar el control del
personal.
1. Obtener la autorización de la gerencia.
2. Identificar la información necesaria para el proyecto para
cumplir con los objetivos de la investigación.
3. Realizar las acciones que sean necesarias para conseguir la
información, como por ejemplo:
a. Analizar el organigrama para conocer la estructura de los
departamentos y las personas claves para el sistema.
b. Realizar entrevistas a los usuarios, éste es el método
principal de obtener información.
c. Revisar la documentación actual, verificando con los
usuarios si la documentación es correcta y completa.
- 14 -
d. Realizar encuestas, método usado cuando se necesita
información de muchas personas.
2. Analizar la información obtenida, identificando alternativas con
sus costos y beneficios y recomendando la acción que se debe
tomar.
3. Presentar los resultados y recomendaciones a la gerencia.
Análisis
Una vez obtenida la información se procede a tomar en cuenta cómo
será implantando el sistema, el proceso y diagnóstico del problema.
Diseño del sistema
Tomaremos en cuenta las recomendaciones que nos proporcionen
durante el análisis sobre el sistema para realizar una interfaz fácil de utilizar
tomado en cuenta los factores ergonómicos.
Desarrollo del sistema
En esta fase seleccionaremos el lenguaje de programación Visual
Basic 6.0 MYSQL, como gestor de base de datos. que vamos a utilizar como
herramienta, así como también la realización del pseudocódigo que se
- 15 -
utilizara con el diccionario de datos donde se especificará las tablas del
sistema.
Prueba del sistema
Este se lleva a cabo cuando el sistema es implantado con el
encargado de llevar el control, se comprobara si el sistema satisface las
necesidades que se propusieron en la fase de investigación preliminar y
análisis, se hace una verificación que no tenga errores.
Documentación
Se realizará la documentación y manual correspondiente al programa.
Implantación del sistema
Se implantará el sistema como producto final en donde los usuarios
empezarán a interactuar con el sistema.
Capacitación
Se capacitará a los usuarios de la empresa COMISION FEDERAL
DE ELECTRICIDAD para que le den un buen uso al sistema que se les
proporcionara además que conocerán los beneficios que les traerá este.
- 16 -
ALCANCES Y LIMITACIONES
ALCANCES
Llevar un control de los trabajadores de la empresa
Proporcionar reportes impresos de los empleados
El sistema permitirá dar alta, bajas, consultas y modificaciones de los
empleados
Permitirá registrar los diferentes perfiles de los empleados
Toda la información será guardada en una base de datos
Se podrá consultar la información en el momento que se requiera.
Tener un acceso restringido a personas no autorizadas
- 17 -
LIMITACIONES
El sistema tendrá las siguientes limitaciones. Es decir los proceso que
el sistema no podrá realizar.
En este software no tendrá acceso a internet
Los datos que eliminen del sistema no podrán ser recuperados
- 18 -
MARCO TEÓRICO
En el marco teórico mencionaremos lo que es un sistema de
información, los tipos de sistemas de información que existen, los lenguajes
de programación, algunos gestores de base de datos entre ellos MYSQL,
PHP, ORACLE, la breve historia de visual Basic 6.0, los diferentes modelos
para desarrollar un software y por ultimo lo que es un lector de huella digital
y los tipos de lector que existen. La razón por la cual se mencionan todos
estos temas es para ampliar el conocimiento de la persona que vaya a crear
el sistema:
Un sistema: Es un conjunto de entidades caracterizadas por ciertos
atributos, que tienen relaciones entre si y están localizadas en un cierto
ambiente, de acuerdo con un cierto objetivo.
Un sistema: Es un conjunto de "elementos" relacionados entre sí, de
forma tal que un cambio en un elemento afecta al conjunto de todos ellos.
Los elementos relacionados directa o indirectamente con el problema, y sólo
estos, formarán el sistema que vamos a estudiar.
Un sistema de información: Es un conjunto de elementos que interactúan
entre si con fin de apoyar las actividades de una empresa o negocio.
- 19 -
El recurso humano que interactúa con el Sistema de Información, el
cual esta formado por las personas que utilizan el sistema.
Un sistema de información realiza cuatro actividades básicas: entrada,
almacenamiento, procesamiento y salida de información.
Un sistema funciona como un todo, pero tiene propiedades distintas
de las partes que lo componen.
Estas propiedades se conocen con el nombre de propiedades
emergentes, pues emergen del sistema mientras están en funcionamiento.
Si descomponemos un sistema no encontraremos sus propiedades en
ninguna de sus partes. Estas propiedades sólo surgen cuando el sistema
está en funcionamiento.
No se puede predecir las propiedades de un sistema dividiéndolo y
analizando sus partes.
Tampoco se puede saber cómo funciona un sistema, si alguna de sus
partes lo hace inadecuadamente.
- 20 -
Tipos de sistemas de información.
La tecnología de información (TI) nació como soporte a las
necesidades dentro de las organizaciones. Entre las aplicaciones de TI están
los sistemas automatizados que sirven para el registro de las transacciones
diarias y la generación de reportes que presentan información con
características de importancia, relevancia, claridad sencillez y oportunidad de
tal forma que sea útil para las personas a quienes se les entrega.
Sistemas De Información Gerencial
Son una colección de sistemas de información que interactúan entre si
y que proporcionan información tanto para las necesidades de las personas
de las operaciones como de la administración.
Es un conjunto de información extensa y coordinada de subsistemas
racionalmente integrados que transforman los datos e n información en una
variedad de formas para mejorar la productividad de acuerdo con los estilos
y características de los administradores.
- 21 -
Desarrollo de un sistema de información gerencial
Son una colección de sistemas de información que interactúan entre sí
y que proporcionan información tanto para las necesidades de las
operaciones como de la administración.
Se requiere un gran esfuerzo, experiencia tiempo y dinero para crear
un sistema de información gerencial que produzca información integrada y
completa.
Sin embargo, aun cuando la organización no se haya impuesto el
compromiso de desarrollar esta tarea, se puede realizar una función
importante para mejorar el sistema y cubrir sus necesidades.
Sistemas Transaccionales
Es un tipo de sistema de información diseñado para recolectar,
almacenar, modificar y recuperar todo tipo de información que es generada
por las transacciones en una organización. Una transacción es un evento o
proceso que genera o modifica la información que se encuentran
eventualmente almacenados en un sistema de información.
Un sistema transaccional debe controlar las transacciones para
mantener la seguridad y consistencia de los datos involucrados. Por ejemplo,
- 22 -
un cliente transfiere dinero de una cuenta a otra cuenta dentro de un mismo
banco; la cantidad de dinero que se descuenta de la cuenta emisora debe
ser igual a la que se suma en la cuenta receptora. De no ser así, la acción
(transacción) no se realiza.
Un sistema transaccional debe ser capaz de enmendar cualquier
error ocurrido durante una transacción, pudiendo deshacer las
operaciones realizadas, manteniendo los datos tal cual estaban antes
del error.
También debe ser capaz de controlar y administrar múltiples
transacciones, determinando prioridades entre éstas. Por ejemplo, un
cliente está haciendo la reserva de un asiento en un vuelo, dicho
asiento debe ser bloqueado temporalmente hasta que se concrete la
transacción, porque otro cliente podría estar queriendo reservar el
mismo asiento en el mismo momento.
Características de que debe cumplir un sistema transaccional
Para que un sistema informático pueda ser considerado como un
sistema transaccional, debe superar el test ACID:
Rapidez: Deben ser capaces de responder rápidamente, en general la
respuesta no debe ser mayor a un par de segundos.
- 23 -
Fiabilidad: Deben ser altamente fiables, de lo contrario podría afectar a
clientes, al negocio, a la reputación de la organización, etc. En caso de fallas,
debe tener mecanismos de recuperación y de respaldo de datos.
Inflexibilidad: No pueden aceptar información distinta a la establecida. Por
ejemplo, el sistema transaccional de una aerolínea debe aceptar reservas de
múltiples agencias de viajes. Cada reserva debe contener los mismos datos
obligatorios, con determinadas características.
Sistemas De Apoyo De Las Decisiones
Se define a los sistemas de apoyo a las Decisiones como un conjunto
de programas y herramientas que permiten obtener oportunamente la
información requerida durante el proceso de la toma de decisiones, en un
ambiente de incertidumbre.
A lo anterior se agrega que, en la mayoría de los casos, lo que
constituye el detonante de una decisión es el tiempo límite o máximo en el
que se debe tomar. Así, en cada decisión que se toma, siempre se podrá
pensar en que no se tiene toda la información requerida; sin embargo, al
llegar al límite de tiempo, se deberá llegar a una decisión. Esto implica
necesariamente que al verdadero objetivo de un sistema de apoyo a las
decisiones sea proporcionar la mayor cantidad de información relevante en el
menor tiempo posible, con el fin de decidir lo más adecuado.
- 24 -
Características de los Sistemas de Apoyo a las Decisiones
Características Generales Suelen introducirse después de haber
implantado los Sistemas transaccionales más relevantes de la empresa, ya
que estos últimos constituyen su plataforma de información.
La información que generan sirve de apoyo a los mandos intermedios
y al alta administración en el proceso de toma de decisiones. Suelen ser
intensivos en cálculos y escasos en entradas y salidas de información
No suelen ahorrar mano de obra.
Debido a lo anterior, la justificación económica para el desarrollo de
estos sistemas es difícil, ya que no se conocen los ingresos del proyecto de
inversión.
Suelen ser Sistemas de Información interactivos y amigables, con
altos estándares de diseño grafico y visual, ya que están dirigidos al usuario
final.
Apoyan la toma de decisiones que por naturaleza son repetitivas y de
decisiones no estructuradas que no suelen repetirse.
Estos sistemas pueden ser desarrollados directamente por el usuario
final sin la participación operativa de los analistas y programadores del área
de informática.
Este tipo de sistemas pueden incluir la programación de la producción,
compra de materiales, flujo de fondos, proyecciones financieras, modelos de
simulación de negocios, modelos de inventarios, etc.
- 25 -
Características Específicas
Interactividad: Sistema computacional con la posibilidad de interactuar con
el tomador de decisiones en forma amigable y con respuesta a tiempo real.
Tipos de decisiones Apoya el proceso de toma de decisiones estructuradas y
no estructuradas. Frecuencia de uso Tiene la utilización frecuente por parte
de la administración media y alta para el desempeño de su función. Variedad
de usuarios Puede ser utilizada por usuarios de diferentes áreas funcionales
como ventas, producción, administración, finanzas y recurso humanos.
Flexibilidad: Permite acoplarse a una variedad determinada de estilos
administrativos. Desarrollo Permite el desarrollo de modelos de decisión
directamente por el usuario interesado, sin la participación operativa de
profesionales en informática. Interacción ambiental Permite la posibilidad de
interactuar con información externa en la definición de los modelos de
decisión. Comunicación ínter organizacional Facilita la comunicación de
información relevante de los niveles altos a los niveles operativos y
viceversa, a través de graficas.
Acceso a bases de datos: Tiene la capacidad de acceder a la información
de las bases de datos corporativas sin que las modifiquen. Simplicidad
Simple y fácil de aprender y utilizar por el usuario final.
- 26 -
Finalmente se quiere hacer notar que la implantación de un Sistema de
Apoyo a las Decisiones puede llevarse a cabo en microcomputadoras o
mainframes, dependiendo de la infraestructura disponible.
Sistemas estratégicos
Su función primordial no es apoyar la automatización de procesos
operativos ni proporcionar información para apoyar la toma de decisiones.
Suelen desarrollarse dentro de una organización por lo tanto no pueden
adaptarse fácilmente a paquetes disponibles en el mercado. Típicamente su
forma de desarrollo es a base de incrementos a través de su evolución
dentro de la organización.
Su función es lograr ventajas que los competidores no posean, tales
como ventajas en costos y servicios diferenciados con clientes y
proveedores.
Apoyan el proceso de innovación de productos dentro de la empresa.
Son el uso de la tecnología de la información para soportar o dar
forma a la estrategia competitiva de la organización, a su plan para
incrementar o mantener la ventaja competitiva o bien para reducir la ventaja
de sus rivales.
- 27 -
Cambian significativamente el desempeño de un negocio al medirse
por uno o más indicadores clave, entre ellos, la magnitud del impacto.
Contribuyen al logro de una meta estratégica.
Generan cambios fundamentales en la forma de dirigir una compañía, la
forma en que compite o en la que interactúa con clientes y proveedores.
Debido a que las personas los buscan como una manera para optimizar el
desarrollo de sus actividades con el fin de ser más productivos y obtener una
ventaja competitiva, se les clasifica en Sistemas Competitivos, Cooperativos
y Sistemas que modifican el estilo de operación del negocio, los cuales nos
permiten tener:
Sistemas que modifican el estilo de operación del negocio.
Sistemas de soporte para la toma de decisiones.
Sistema de soporte para las decisiones en grupo.
Sistemas de información ejecutiva. En la década de los setenta
Richard Nolan. Un conocido autor y profesor de la escuelas de
negocios en Harvard, desarrollo una teoría que impacto el proceso de
planeación de los recursos y las actividades informáticas.
Los sistemas que se desarrollan son sistemas de manufactura integrados
por computadora, sistemas basados en el conocimiento y sistemas expertos,
sistemas de soporte de decisiones, sistemas estratégicos y en general,
- 28 -
aplicaciones que proporcionan información para decisiones de alta
administración y aplicaciones de carácter estratégico.
LENGUAJES DE PROGRAMACIÓN
Un lenguaje de programación es un conjunto de símbolos y reglas
sintácticas y semánticas que definen su estructura y el significado de sus
elementos y expresiones, y es utilizado para controlar el comportamiento
físico y lógico de una máquina.
Aunque muchas veces se usan los términos 'lenguaje de
programación' y 'lenguaje informático' como si fuesen sinónimos, no tiene por
qué ser así, ya que los lenguajes informáticos engloban a los lenguajes de
programación y a otros más, como, por ejemplo, el HTML (lenguaje para el
marcado de páginas web que no es propiamente un lenguaje de
programación).
Un lenguaje de programación permite a uno o más programadores
especificar de manera precisa sobre qué datos debe operar una
computadora, cómo estos datos deben ser almacenados o transmitidos y qué
acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a
través de un lenguaje que intenta estar relativamente próximo al lenguaje
- 29 -
humano o natural, tal como sucede con el lenguaje Léxico. Una característica
relevante de los lenguajes de programación es precisamente que más de un
programador puedan tener un conjunto común de instrucciones que puedan
ser comprendidas entre ellos para realizar la construcción del programa de
forma colaborativa.
Los procesadores usados en las computadoras son capaces de entender
y actuar según lo indican programas escritos en un lenguaje fijo llamado
lenguaje de máquina. Todo programa escrito en otro lenguaje puede ser
ejecutado de dos maneras:
Mediante un programa que va adaptando las instrucciones conforme
son encontradas. A este proceso se lo llama interpretar y a los
programas que lo hacen se los conoce como intérpretes.
Traduciendo este programa al programa equivalente escrito en
lenguaje de máquina. A ese proceso se lo llama compilar y al
programa traductor se le denomina compilador.
De todas maneras, un lenguaje de programación difiere en muchos
aspectos de un lenguaje humano. Un código escrito en un lenguaje de
programación específico siempre se interpreta de la misma manera (no como
los idiomas humanos ambiguos), los errores son mucho más significativos (a
tal punto de que un código puede volverse interpretable por la computadora),
etc. El código fuente es el conjunto de instrucciones que conforman un
- 30 -
programa (o subprograma o módulo). El código fuente debe ser compilado
para poder ser interpretado y ejecutado por la computadora. La compilación
traduce el código fuente (que depende del lenguaje de programación) a un
lenguaje máquina (que depende del sistema de la máquina).
Existen lenguajes del tipo script que son directamente ejecutados por un
intérprete y no necesitan compilación.
Los lenguajes de programación pueden clasificarse según el paradigma
que usan en: procedimentales, orientados a objetos, funcionales, lógicos,
híbridos, etc., clasificación que depende de motivos que escapan al alcance
de este artículo.
Son ejemplos de lenguajes de programación: php, prolog, asp, ActionScript,
ada, python, pascal, c, Basic, Java, etc.
BREVE HISTORIA DE VISUAL BASIC 6.O
Hace poco más de 10 años, el proceso de construir una simple
aplicación basada en Microsoft Windows se habría podido describir como
complicado, difícil y largo. Construir estas aplicaciones ricas en gráficos -una
tarea que hoy parece sencilla- no era un proceso trivial antes de la
introducción de Visual Basic1.0 en mayo de 1991.
Con Visual Basic, los programadores podían, por primera vez,
implementar aplicaciones de Windows en un ambiente intuitivo y gráfico,
- 31 -
simplemente arrastrando controles sobre un formulario. Haciendo posible a
los programadores profesionales y a los ocasionales maximizar su
productividad, Visual Basic conllevó un renacimiento del desarrollo de
aplicaciones basadas en Windows.
Este año, en la celebración del décimo cumpleaños de Visual Basic,
se mira al pasado a la herramienta que revolucionó la manera en la que se
construye software, y se anhelan otros 10 años de innovación y
productividad de Visual Basic.
En los últimos 10 años, la comunidad de Visual Basic ha crecido hasta
ser la mayor comunidad de desarrolladores de software del mundo. Durante
ese tiempo, una industria entera de vendedores de componentes creció
alrededor de este producto. Éste, combinado con la sencilla forma de
desarrollar aplicaciones para Windows, fueron la base fundamental de la
realización de la visión de Microsoft para la programación basada en
Windows. "Thunder"(Trueno)
Inicialmente, Visual Basic fue pensado para ser un
producto muy táctico. Microsoft tenía varias iniciativas en el desarrollo
que lideraba Visual Basic 1.0, todas fueron pensadas para convertirse
en las herramientas de programación a largo plazo, estratégicas,
gráficas y orientadas a objetos. Como siempre ocurre con los
productos en su versión 1.0, el equipo de Visual Basic 1.0 fue forzado
a cortar características de su larga lista de ideas para entregar
- 32 -
realmente el producto al mercado. Consecuentemente, la primera
versión incluyó poco más que la tecnología Embedded Basic que
había sido desarrollada originalmente en Microsoft QuickBasic 4.0 (el
código "p" y compilador de Microsoft) y una herramienta compiladora
de diseño simple originalmente diseñada para Windows 3.0 pero que
nunca fue utilizada para tal fin. Aproximadamente 12 meses después,
el desarrollo y mejora de la versión 1.0 comenzó, Microsoft sacó al
mercado una herramienta desarrolladora para cubrir la exigencia en
ese momento del mercado cuyo nombre en clave fue
"Thunder"(Trueno).1
Un cambio monumental
Desde este inicio bastante desfavorable vino un resultado igualmente
difícil de comprender: un impacto en la industria informática tan profundo que
cambió para siempre el curso del desarrollo del software y creó una
explosión en el mercado de las aplicaciones de Windows. Diez años más
tarde, parece muy obvio-pero en esa época, cuando solamente un pequeño y
selecto grupo de personas, era capaz de desarrollar aplicaciones para
Windows, Visual Basic 1.0 representó un cambio gigantesco en el diseño de
aplicaciones.
1 Obtenido de "http://es.wikipedia.org/wiki/Biometr%C3%ADa"
- 33 -
Innegablemente radical en su puesta en práctica, implementación y
capacidades, Visual Basic1.0 se propagó a través de la comunidad en
cuestión de pocos meses. Poco después del "shock" inicial de fiebre por
Visual Basic, un pequeño pero fuerte grupo de seguidores comenzó a
transformar las bibliotecas de código que tenían con sus características,
métodos y eventos, y a exponerlos como componentes de Visual Basic
llamados VBXs, o los controles personalizados. Después de poco tiempo, la
producción de estos componentes reutilizables creció de una comunidad
especializada a una industria que crecía de vendedores de controles, y
ayudó a Visual Basic a pasar de ser un logro de software a convertirse en un
descubrimiento tecnológico.
Cuando aún no había pasado un año de su salida inicial al mercado
Visual Basic ya había evolucionado rápidamente a un kit desarrollador
altamente estratégico. Microsoft había comenzado a utilizar Visual Basic
internamente en algunos de sus propios proyectos que estaba desarrollando.
A medida que la demanda de Visual Basic aumentaba, quedaba claro que
los desarrolladores requerirían un Visual Basic mejor y más capacitado.
Para tratar a esta necesidad creciente, Microsoft anunció la disponibilidad de
Visual Basic 2.0 en noviembre de 1992. La segunda versión de Visual Basic,
distribuida en la edición estándar y profesional, proveía a los desarrolladores
un funcionamiento perceptiblemente mejorado y mayor capacidad para crear
- 34 -
aplicaciones de tamaño mayor y más sofisticadas. Incluía también una ayuda
para mejorar la puesta a punto y depuración, proveía de la capacidad de
conectarse a bases de datos mediante ODBC, y nuevas y productivas
herramientas, por ejemplo, la ventana de propiedades, sintaxis del código en
color, y completo soporte para un Interfaz de Múltiples Documentos (MDI).
Aplicaciones Data-Aware
Mientras la adopción de Visual Basic en las corporaciones se
expandía, también lo hacía la necesidad de una herramienta para el
desarrollador que permitiera aplicaciones data-aware robustas. Visual Basic
3.0, anunciado solamente seis meses después de la salida al mercado de la
versión 2.0, solucionaba esta necesidad combinando el motor de la base de
datos de Microsoft Access 1.1 con un conjunto rico de controles data-aware.
Por primera vez, los desarrolladores podían conectar fácilmente a las bases
de datos en un ambiente cliente/servidor usando un diseñador visual intuitivo.
La complementación de estas características era los Data Access Object
(Objetos de Acceso a Datos) (DAO), un completo paquete de los objetos que
proporcionaban al acceso mediante código a la base de datos. Finalmente,
Visual Basic 3.0 amplió la capacidad de la herramienta de desarrollo
incluyendo los Crystal Reports, un motor para visualizar datos extraídos en
una variedad de formatos personalizables.
Herramientas más potentes
- 35 -
En los años venideros, la industria informática comenzaría a abrazar el
movimiento a la programación en 32-bits. La salida al mercado de Microsoft
Windows 95 y de Microsoft Windows NT condujeron a esta adopción y
destacó la necesidad de herramientas de desarrollo más potentes que
podrían soportar la nueva arquitectura. Fue entonces cuando la revista
Windows Watcher señaló que Visual Basic estaba adoptado por más
compañías (30 por ciento) que cualquier otro lenguaje de programación.
Llevar una base instalada tan grande del desarrollo de aplicaciones en 16-
bits a 32-bits sería una tarea de migración importante, pero aseguraría la
existencia prolongada del lenguaje de programación Visual Basic y de su
comunidad. La versión 32-bit de Visual Basic- versión 4.0-fue anunciada en
septiembre de 1995 e incluía la edición estándar y profesional así como una
nueva edición destinada al nivel empresarial y el desarrollo en equipo. La
edición empresarial ofrecía nuevas capacidades tales como automatización
remota, control de datos remoto, y una versión integrada de Microsoft Visual
SourceSafe para la dirección de la configuración y realización de diferentes
versiones.
Las versiones de Visual Basic 5.0 y 6.0-anunciadas en marzo de 1997
y en junio de 1998, respectivamente- representaron un paso importante hacia
posibilitar a los desarrolladores en Visual Basic programar en los nuevos
niveles del funcionamiento en el ambiente libre que representa Internet. Las
- 36 -
características tales como el compilador del código nativo introdujeron
aumentos del funcionamiento de hasta el 2.000 por ciento. El Webclass
designer (diseñador de clases Web) simplificó la creación de las aplicaciones
del Web proporcionando un modelo intuitivo del objeto para el servidor web.
Y el diseñador de páginas DHTML permitió la creación de aplicaciones para
Microsoft Internet Explorer 4.0- que combinaron la riqueza de HTML
dinámico (DHTML) con el funcionamiento y la productividad de Visual Basic.
Finalmente, con la Control Creation Edition (Edición de Creación de
Controles), los desarrolladores de Visual Basic podrían construir fácilmente
los controles Microsoft ActiveX de alto rendimiento y con un amplio alcance
que estaban destinados a Internet.
Hoy, se continúa ampliando las posibilidades del desarrollador en
Visual Basic. Con Visual Basic .NET, se posibilita a los desarrolladores en
Visual Basic con niveles de control y productividad sin precedentes. A través
de objetos-orientados de primera-clase, tales como herencia, manejo
estructural excepcional, y construcciones con parámetros, programar en
Visual Basic llegará a ser más elegante, simple, y de mantenimiento sencillo.
Con el acceso completo al marco del NET de Microsoft, los desarrolladores
pueden, por primera vez, conseguir ventaja directa de la rica plataforma de
Microsoft y construir aplicaciones tradicionales basadas en Windows,
aplicaciones Web de pequeños clientes, los servicios de nueva generación
de Web de XML, y software para móviles.
- 37 -
Los Formularios de Windows con formas, los ricos gráficos, las
construcciones orientadas al objeto, y la integración del servicio Web de XML
son todo la parte de Visual Basic .NET.
A través de los años, Visual Basic ha evolucionado de un juguete de
un aficionado a una herramienta imprescindible que continúa cambiando el
mundo. Ha revolucionado la manera que se trabaja con la información, la
manera de comunicarse, y la forma en la que se construyen aplicaciones.
Con todos los cambios en la configuración de la tecnología y de la aplicación
en los últimos 10 años, la comunidad de Visual Basic ha continuado
innovando como líderes en el desarrollo y la producción de software.
Mientras, es interesante mirar al pasado y observar los éxitos alcanzados por
este producto, es importante remarcar que Visual Basic está sólo en una fase
bastante inicial. Con Visual Basic .NET, Microsoft proporciona sus cimientos
para asegurarse de que los desarrolladores en Visual Basic continúan
conduciendo esta cursa -ahora y en el futuro.
¿Qué es Visual Basic?
Es un lenguaje de programación que se ha diseñado para facilitar el
desarrollo de aplicaciones en un entorno grafico (GUI-GRAPHICAL USER
INTERFACE) Como Windows 98, Windows NT o superior.
Características de Visual Basic.
- 38 -
Diseñador de entorno de datos: Es posible generar, de manera
automática, conectividad entre controles y datos mediante la acción de
arrastrar y colocar sobre formularios o informes.
Los Objetos ActiveX: Son una nueva tecnología de acceso a datos
mediante la acción de arrastrar y colocar sobre formularios o informes.
Asistente para formularios: Sirve para generar de manera automática
formularios que administran registros de tablas o consultas
pertenecientes a una base de datos, hoja de calculo u objeto (ADO-
ACTIVE DATA OBJECT).
Asistente para barras de herramientas: Es factible incluir barras de
herramientas es factible incluir barra de herramientas personalizada,
donde el usuario selecciona los botones que desea visualizar durante la
ejecución.
En las aplicaciones HTML: Se combinan instrucciones de Visual Basic
con código HTML para controlar los eventos que se realizan con
frecuencia en una página Web.
La Ventana de Vista de datos proporciona acceso a la estructura de
una base de datos. Desde esta también acceso al Diseñador de
Consultas y diseñador de Base de datos para administrar y registros.
- 39 -
JAVA
Java es un lenguaje de programación con el que podemos realizar
cualquier tipo de programa. En la actualidad es un lenguaje muy extendido y
cada vez cobra más importancia tanto en el ámbito de Internet como en la
informática en general. Está desarrollado por la compañía Sun Microsystems
con gran dedicación y siempre enfocado a cubrir las necesidades
tecnológicas más punteras.
Una de las principales características por las que Java se ha hecho
muy famoso es que es un lenguaje independiente de la plataforma. Eso
quiere decir que si hacemos un programa en Java podrá funcionar en
cualquier ordenador del mercado. Es una ventaja significativa para los
desarrolladores de software, pues antes tenían que hacer un programa para
cada sistema operativo, por ejemplo Windows, Linux, Apple, etc. Esto lo
consigue porque se ha creado una Máquina de Java para cada sistema que
hace de puente entre el sistema operativo y el programa de Java y posibilita
que este último se entienda perfectamente.
- 40 -
Java fue pensado originalmente para utilizarse en cualquier tipo de
electrodoméstico pero la idea fracasó. Uno de los fundadores de Sun rescató
la idea para utilizarla en el ámbito de Internet y convirtieron a Java en un
lenguaje potente, seguro y universal gracias a que lo puede utilizar todo el
mundo y es gratuito. Una de los primeros triunfos de Java fue que se integró
en el navegador Netscape y permitía ejecutar programas dentro de una
página Web, hasta entonces impensable con el HTML.
Actualmente Java se utiliza en un amplio abanico de posibilidades y
casi cualquier cosa que se puede hacer en cualquier lenguaje se puede
hacer también en Java y muchas veces con grandes ventajas. Para lo que
nos interesa a nosotros, con Java podemos programar páginas web
dinámicas, con accesos a bases de datos, utilizando XML, con cualquier tipo
de conexión de red entre cualquier sistema. En general, cualquier aplicación
que deseemos hacer con acceso a través web se puede hacer utilizando
Java.
PHP
El lenguaje PHP es un lenguaje de programación de estilo clásico, con
esto quiero decir que es un lenguaje de programación con variables,
- 41 -
sentencias condicionales, bucles, funciones.... No es un lenguaje de marcas
como podría ser HTML, XML o WML. Está más cercano a JavaScript o a C,
para aquellos que conocen estos lenguajes.2
Pero a diferencia de Java o JavaScript que se ejecutan en el navegador,
PHP se ejecuta en el servidor, por eso nos permite acceder a los recursos
que tenga el servidor como por ejemplo podría ser una base de datos. El
programa PHP es ejecutado en el servidor y el resultado enviado al
navegador. El resultado es normalmente una página HTML pero igualmente
podría ser una pagina WML.
Al ser PHP un lenguaje que se ejecuta en el servidor no es necesario que su
navegador lo soporte, es independiente del navegador, pero sin embargo
para que sus páginas PHP funcionen, el servidor donde están alojadas debe
soportar PHP.
SQL
El Lenguaje de consulta estructurado (SQL [/esekuˈele/ en español,
/ɛskjuːˈɛl / o /ˈsiːkwəl/, en inglés] Structured Query Language) es un lenguaje
declarativo de acceso a bases de datos relacionales que permite especificar
diversos tipos de operaciones sobre las mismas. Una de sus características
2 http://www.monografias.com/trabajos17/sistema-gerencial/sistema-gerencial.shtml
- 42 -
es el manejo del álgebra y el cálculo relacional permitiendo lanzar consultas
con el fin de recuperar -de una forma sencilla- información de interés de una
base de datos, así como también hacer cambios sobre la misma. Es un
lenguaje de cuarta generación (4GL).
Características
El SQL es un lenguaje de acceso a bases de datos que explota la
flexibilidad y potencia de los sistemas relacionales permitiendo gran variedad
de operaciones sobre los mismos.
Es un lenguaje declarativo de "alto nivel" o "de no procedimiento", que
gracias a su fuerte base teórica y su orientación al manejo de conjuntos de
registros, y no a registros individuales, permite una alta productividad en
codificación y la orientación a objetos. De esta forma una sola sentencia
puede equivaler a uno o más programas que utilizas en un lenguaje de bajo
nivel orientado a registro.3
C++
C++ es un lenguaje de programación diseñado a mediados de los
años 1980 por Bjarne Stroustrup. La intención de su creación fue el extender
al exitoso lenguaje de programación C con mecanismos que permitan la
manipulación de objetos. En ese sentido, desde el punto de vista de los
lenguajes orientados a objetos, el C++ es un lenguaje híbrido.
3 Obtenido de "http://es.wikipedia.org/wiki/Biometr%C3%ADa"
- 43 -
Posteriormente se añadieron facilidades programación genérica, que
se sumó a los otros dos paradigmas que ya estaban admitidos
(programación estructurada y la programación orientada a objetos). Por esto
se suele decir que el C++ es un lenguaje multiparadigma.
Actualmente existe un estándar, denominado ISO C++, al que se han
adherido la mayoría de los fabricantes de compiladores más modernos.
Existen también algunos intérpretes, tales como ROOT (enlace
externo).
Una particularidad del C++ es la posibilidad de redefinir los operadores
(sobrecarga de operadores), y de poder crear nuevos tipos que se comporten
como tipos fundamentales.
C++ está considerado por muchos como el lenguaje más potente,
debido a que permite trabajar tanto a alto como a bajo nivel, sin embargo es
a su vez uno de los que menos automatismos trae, con lo que obliga a usar
librerías de terceros, como por ejemplo Boost (enlace externo).
El nombre C++ fue propuesto por Rick Mascitti en el año 1983, cuando el
lenguaje fue utilizado por primera vez fuera de un laboratorio científico. Antes
se había usado el nombre "C con clases". En C++, la expresión "C++"
significa "incremento de C" y se refiere a que C++ es una extensión de C.
- 44 -
BASE DE DATOS
Una base de datos o banco de datos es un conjunto de datos
pertenecientes a un mismo contexto y almacenados sistemáticamente para
su posterior uso. En este sentido, una biblioteca puede considerarse una
base de datos compuesta en su mayoría por documentos y textos impresos
en papel e indexados para su consulta. En la actualidad, y debido al
desarrollo tecnológico de campos como la informática y la electrónica, la
mayoría de las bases de datos están en formato digital (electrónico), que
ofrece un amplio rango de soluciones al problema de almacenar datos.
Existen unos programas denominados sistemas gestores de bases de datos,
abreviado SGBD, que permiten almacenar y posteriormente acceder a los
datos de forma rápida y estructurada. Las propiedades de estos SGBD, así
como su utilización y administración, se estudian dentro del ámbito de la
informática.
Las aplicaciones más usuales son para la gestión de empresas e
instituciones públicas. También son ampliamente utilizadas en entornos
científicos con el objeto de almacenar la información experimental.
Aunque las bases de datos pueden contener muchos tipos de datos,
algunos de ellos se encuentran protegidos por las leyes de varios países. Por
ejemplo en España, los datos personales se encuentran protegidos por la
Ley Orgánica de Protección de Datos de Carácter Personal (LOPD).
- 45 -
MANEJADORES DE BASE DE DATOS
MICROSOFT ACCESS
Microsoft Access es un programa Sistema de gestión de base de
datos relacional creado y modificado por Microsoft para uso personal de
pequeñas organizaciones. Es un componente de la suite Microsoft Office
aunque no se incluye en el paquete "básico". Una posibilidad adicional es la
de crear ficheros con bases de datos que pueden ser consultados por otros
programas. Dentro de un sistema de información entraría dentro de la
categoría de Gestión y no en la de Ofimática como algunos creen.
ORACLE
Es básicamente una herramienta cliente/servidor para la gestión de
Bases de Datos. Es un producto vendido a nivel mundial, aunque la gran
potencia que tiene y su elevado precio hace que sólo se vea en empresas
muy grandes y multinacionales, por norma general. En el desarrollo de
páginas web pasa lo mismo: como es un sistema muy caro no está tan
extendido como otras bases de datos, por ejemplo, Access, MySQL, SQL
Server, etc.
Vamos ahora en centrarnos en que es Oracle exactamente y como
funciona la programación sobre éste. Oracle como antes he mencionado se
basa en la tecnología cliente/servidor, pues bien, para su utilización primero
- 46 -
sería necesario la instalación de la herramienta servidor (Oracle 8i) y
posteriormente podríamos atacar a la base de datos desde otros equipos con
herramientas de desarrollo como Oracle Designer y Oracle Developer, que
son las herramientas básicas de programación sobre Oracle.
Es posible lógicamente atacar a la base de datos a través del SQL
plus incorporado en el paquete de programas Oracle para poder realizar
consultas, utilizando el lenguaje SQL.
El Developer es una herramienta que nos permite crear formularios en
local, es decir, mediante esta herramienta nosotros podemos crear
formularios, compilarlos y ejecutarlos, pero si queremos que los otros
trabajen sobre este formulario deberemos copiarlo regularmente en una
carpeta compartida para todos, de modo que, cuando quieran realizar un
cambio, deberán copiarlo de dicha carpeta y luego volverlo a subir a la
carpeta. Este sistema como podemos observar es bastante engorroso y poco
fiable pues es bastante normal que las versiones se pierdan y se machaquen
con frecuencia. La principal ventaja de esta herramienta es que es bastante
intuitiva y dispone de un modo que nos permite componer el formulario, tal y
como lo haríamos en Visual Basic o en Visual C, esto es muy de agradecer.
- 47 -
MICROSOFT SQL SERVER
Microsoft SQL Server es un sistema de gestión de bases de datos
relacionales (SGBD) basado en el lenguaje Transact-SQL, y específicamente
en Sybase IQ, capaz de poner a disposición de muchos usuarios grandes
cantidades de datos de manera simultánea así como de tener unas ventajas
que más abajo se describen.
Microsoft SQL Server constituye la alternativa de Microsoft a otros
potentes sistemas gestores de bases de datos como son Oracle, Sybase
ASE, PostgreSQL, Interbase, Firebird o MySQL.
Características de Microsoft SQL Server
Soporte de transacciones.
Escalabilidad, estabilidad y seguridad.
Soporta procedimientos almacenados.
Incluye también un potente entorno gráfico de administración, que
permite el uso de comandos DDL y DML gráficamente.
Permite trabajar en modo cliente-servidor, donde la información y
datos se alojan en el servidor y las terminales o clientes de la red sólo
acceden a la información.
Además permite administrar información de otros servidores de datos.
- 48 -
Este sistema incluye una versión reducida, llamada MSDE con el mismo
motor de base de datos pero orientado a proyectos más pequeños, que en
sus versiones 2005 y 2008 pasa a ser el SQL Express Edition, que se
distribuye en forma gratuita.
Es común desarrollar completos proyectos complementando Microsoft
SQL Server y Microsoft Access a través de los llamados ADP (Access Data
Project). De esta forma se completa la base de datos (Microsoft SQL Server),
con el entorno de desarrollo (VBA Access), a través de la implementación de
aplicaciones de dos capas mediante el uso de formularios Windows.
Para el desarrollo de aplicaciones más complejas (tres o más capas),
Microsoft SQL Server incluye interfaces de acceso para varias plataformas
de desarrollo, entre ellas .NET, pero el servidor sólo está disponible para
Sistemas Operativos Windows.
- 49 -
MODELOS PARA EL DESARROLLO DEL SOFTWARE
Se han propuestos varios modelos diferentes, cada uno exhibiendo
ventajas e inconvenientes, pero todos tienen una serie de fases genéricas en
común.
Modelo secuencial
Modelo de construcción de prototipos
Modelo de rápido de aplicaciones
Modelo incremental
Modelo espiral
Modelo de métodos formales
MODELO SECUENCIAL
Propone un enfoque sistemático secuencial del desarrollo del software
que comienza con un nivel de sistema y progresa con el análisis , diseño,
codificación prueba y ,mantenimiento.
Es el modelo de referencia más sencillo y corresponde a una
ordenación del ciclo de vida del proyecto en fases ordenadas de modo
secuencial. En este modelo es necesario finalizar una fase para empezar la
siguiente por lo que no es adecuado para muchos tipos de proyectos. La
división del proceso de producción en fases se puede realizar con distinto
- 50 -
nivel de detalle en función de las peculiaridades de cada proyecto concreto.
Según el tamaño del proyecto (grande, pequeño) se pueden realizar todas
las tareas de las fases o no.
Este modelo lo conforman las siguientes fases:
Ingeniería y modelos de sistema / información
Análisis de los requisitos del software
Diseño
Generación de códigos
Pruebas
Mantenimiento.
MODELO DE CONSTRUCIÓN DE PROTOTIPOS
El desarrollo con prototipación, también llamado modelo de prototipos
que pertenece a los modelos de desarrollo evolutivo, se inicia con la
definición de los objetivos globales para el software, luego se identifican los
requisitos conocidos y las áreas del esquema en donde es necesaria más
definición. Entonces se plantea con rapidez una iteración de construcción de
prototipos y se presenta el modelado (en forma de un diseño rápido).
El diseño rápido se centra en una representación de aquellos aspectos del
software que serán visibles para el cliente o el usuario final (por ejemplo, la
configuración de la interfaz con el usuario y el formato de los despliegues de
- 51 -
salida). El diseño rápido conduce a la construcción de un prototipo, el cual es
evaluado por el cliente o el usuario para una retroalimentación; gracias a ésta
se refinan los requisitos del software que se desarrollará. La iteración ocurre
cuando el prototipo se ajusta para satisfacer las necesidades del cliente. Esto
permite que al mismo tiempo el desarrollador entienda mejor lo que se debe
hacer y el cliente vea resultados a corto plazo.
MODELO RAPIDO DE APLICACIONES
Es una adaptación alta velocidad del modelo lineal secuencial en el que
se logra el desarrollo rápido utilizando un enfoque de constricción basado en
el componente. Comprende las siguientes fases:
Modelo de gestión
Modelado de datos
Modelado de procesos
Generación de aplicaciones
Prueba y entrega
- 52 -
MODELO INCREMENTAL
Desarrollo iterativo y creciente (o incremental) es un proceso de
desarrollo de software, creado en respuesta a las debilidades del modelo
tradicional de cascada.
Para apoyar el desarrollo de proyectos por medio de este modelo se
han creado frameworks (entornos de trabajo), de los cuales los dos más
famosos son el Rational Unified Process y el Dynamic Systems Development
Method. El desarrollo incremental e iterativo es también una parte esencial
de un tipo de programación conocido como Extreme Programming y los
demás frameworks de desarrollo rápido de software.
La idea principal detrás de mejoramiento iterativo es desarrollar un
sistema de programas de manera incremental, permitiéndole al desarrollador
sacar ventaja de lo que se ha aprendido a lo largo del desarrollo anterior,
incrementando, versiones entregables del sistema. El aprendizaje viene de
dos vertientes: el desarrollo del sistema, y su uso (mientras sea posible). Los
pasos claves en el proceso eran comenzar con una implementación simple
de los requerimientos del sistema, e iterativamente mejorar la secuencia
evolutiva de versiones hasta que el sistema completo esté implementado.
En cada iteración, se realizan cambios en el diseño y se agregan nuevas
funcionalidades y capacidades al sistema.
- 53 -
MODELO ESPIRAL
El Desarrollo en Espiral es un modelo de ciclo de vida desarrollado por
Barry Boehm en 1985, utilizado generalmente en la Ingeniería de software.
Las actividades de este modelo se conforman en una espiral, cada bucle
representa un conjunto de actividades. Las actividades no están fijadas a
priori, sino que las siguientes se eligen en función del análisis de riesgo,
comenzando por el bucle interior.
Este modelo de proceso de software evolutivo que acompaña la naturaleza
interactiva de prototipo con los aspectos controlados y sistemáticos del
modelo lineal secuencial, se desarrollan en una serie de versiones
incrementales. Durante las primeras iteraciones la versión incremental
podría ser un modelo en papel o un prototipo, las últimas iteraciones se
producen versiones cada vez más completas de ingeniería del sistema. Este
modelo se divide en un numero de actividades estructurales o regiones de
tareas, como comunicación con el cliente, planificación de riesgos, ingeniería
construcción y adaptación, evaluación del cliente.
- 54 -
LECTOR DE HUELLA DIGITAL
La biometría es el estudio de métodos automáticos para el
reconocimiento único de humanos basados en uno o más rasgos
conductuales o físicos intrínsecos. El término se deriva de las palabras
griegas "bios" de vida y "metron" de medida.
La "biometría informática" es la aplicación de técnicas matemáticas y
estadísticas sobre los rasgos físicos o de conducta de un individuo, para
“verificar” identidades o para “identificar” individuos.
En las tecnologías de la información (TI), la autentificación biométrica
se refiere a las tecnologías para medir y analizar las características físicas y
del comportamiento humanas con propósito de autentificación.
Las huellas dactilares, las retinas, el iris, los patrones faciales, de
venas de la mano o la geometría de la palma de la mano, representan
ejemplos de características físicas (estáticas), mientras que entre los
ejemplos de características del comportamiento se incluye la firma, el paso y
el tecleo (dinámicas). La voz se considera una mezcla de características
físicas y del comportamiento, pero todos los rasgos biométricos comparten
aspectos físicos y del comportamiento.
- 55 -
HISTORIA
La biometría no se puso en práctica en las culturas occidentales hasta
finales del siglo XIX, pero era utilizada en China desde al menos el siglo XIV.
Un explorador y escritor que respondía al nombre de Joao de Barros escribió
que los comerciantes chinos estampaban las impresiones y las huellas de la
palma de las manos de los niños en papel con tinta. Los comerciantes hacían
esto como método para distinguir entre los niños jóvenes.
En Occidente, la identificación confiaba simplemente en la "memoria
fotográfica" hasta que Alphonse Bertillon, jefe del departamento fotográfico
de la Policía de París, desarrolló el sistema antropométrico (también
conocido más tarde como Bertillonage) en 1883. Éste era el primer sistema
preciso, ampliamente utilizado científicamente para identificar a criminales y
convirtió a la biométrica en un campo de estudio. Funcionaba midiendo de
forma precisa ciertas longitudes y anchuras de la cabeza y del cuerpo, así
como registrando marcas individuales como tatuajes y cicatrices. El sistema
de Bertillon fue adoptado extensamente en occidente hasta que aparecieron
defectos en el sistema - principalmente problemas con métodos distintos de
medidas y cambios de medida. Después de esto, las fuerzas policiales
occidentales comenzaron a usar la huella dactilar - esencialmente el mismo
sistema visto en China cientos de años antes.
- 56 -
En estos últimos años la biometría ha crecido desde usar simplemente
la huella dactilar, a emplear muchos métodos distintos teniendo en cuenta
varias medidas físicas y de comportamiento. Las aplicaciones de la biometría
también han aumentado - desde sólo identificación hasta sistemas de
seguridad y más.
La idea para usar patrones de iris como método de identificación fue
propuesto en 1936 por el oftalmólogo Frank Burch. Para los 1980’s la idea ya
había aparecido en películas de James Bond, pero permanecía siendo
ciencia ficción.
En 1985 los Doctores Leonard Flom y Aran Safir retomaron la idea. Su
investigación y documentación les concedió una patente en 1987. En 1989
Flom y Safir recurrieron a John Daugman para crear algoritmos para el
reconocimiento de iris. Estos algoritmos, patentados por Daugman en 1994 y
que son propiedad de Iridian Technologies, son la base para todos los
productos de reconocimiento de iris.
En 1993 la Agencia Nuclear de Defensa empezó a trabajar con
IriScan, Inc. para desarrollar y probar un prototipo. 18 meses después el
primer prototipo se completó y esta disponible comercialmente.
- 57 -
FUNCIONAMIENTO Y RENDIMIENTO
En un sistema de Biometría típico, la persona se registra con el
sistema cuando una o más de sus características físicas y de conducta es
obtenida, procesada por un algoritmo numérico, e introducida en una base de
datos. Idealmente, cuando entra, casi todas sus características concuerdan;
entonces cuando alguna otra persona intenta identificarse, no empareja
completamente, por lo que el sistema no le permite el acceso. Las
tecnologías actuales tienen tasas de error que varían ampliamente (desde
valores bajos como el 60%, hasta altos como el 99,9%).
El rendimiento de una medida biométrica se define generalmente en
términos de tasa de falso positivo (False Acceptance Rate o FAR), la tasa de
falso negativo (False NonMatch Rate o FNMR, también False Rejection Rate
o FRR), y el fallo de tasa de alistamiento (Failure-to-enroll Rate, FTR o FER).
Véase la figura 04.
- 58 -
En los sistemas biométricos reales el FAR y el FRR puede
transformarse en los demás cambiando cierto parámetro. Una de las
medidas más comunes de los sistemas biométricos reales es la tasa en la
que el ajuste en el cual acepta y rechaza los errores es igual: la tasa de error
igual (Equal Error Rate o EER), también conocida como la tasa de error de
cruce (Cross-over Error Rate o CER). Cuanto más bajo es el EER o el CER,
se considera que el sistema es más exacto.
Las tasas de error anunciadas implican a veces elementos
idiosincrásicos o subjetivos. Por ejemplo, un fabricante de sistemas
biométricos fijó el umbral de aceptación alto, para reducir al mínimo las falsas
aceptaciones; en la práctica, se permitían tres intentos, por lo que un falso
rechazo se contaba sólo si los tres intentos resultaban fallidos (por ejemplo
escritura, habla, etc.), las opiniones pueden variar sobre qué constituye un
falso rechazo. Si entro a un sistema de verificación de firmas usando mi
inicial y apellido, ¿puedo decir legítimamente que se trata de un falso
rechazo cuando rechace mi nombre y apellido?
A pesar de estas dudas, los sistemas biométricos tienen un potencial
para identificar a individuos con un grado de certeza muy alto. La prueba
forense del ADN goza de un grado particularmente alto de confianza pública
actualmente (ca. 2004) y la tecnología está orientándose al reconocimiento
- 59 -
FIGURA No. 04 RENDIMIENTO DE UNA MEDIDA BIOMÉTRICA
del iris, que tiene la capacidad de diferenciar entre dos individuos con un
ADN idéntico.
Lo que sigue a continuación es una tabla en la que recogen las diferentes
características de los sistemas biométricos: (vea la tabla 01)
Ojo (Iris) Ojo
(Retina)
Huellas
dactilares
Geometría
de la mano
Escritura y
firma
Voz Cara
Fiabilidad Muy alta Muy alta Alta Alta Media Alta Alta
Facilidad de uso Media Baja Alta Alta Alta Alta Alta
Prevención de
ataques
Muy alta Muy alta Alta Alta Media Media Media
Aceptación Media Media Alta Alta Muy alta Alta Muy alta
Estabilidad Alta Alta Alta Media Baja Media Media
- 60 -
TABLA No. 01 TABLA COMPARATIVA DE LOS SISTEMAS BIOMÉTRICOS
Reconocimiento de iris
El iris es el musculo que se encuentra dentro del ojo que regula el
tamaño de la pupila y que además puede controlar la cantidad de luz que
ingresa al ojo, este musculo es la parte coloreada dentro del ojo la cual
adquiere su pigmentación de la Melatonina.
Antes de que ocurra el reconocimiento de iris, se localiza el iris usando
características del punto de referencia. Estas características del punto de
referencia y la forma distinta del iris permiten digitalización de la imagen, el
aislamiento de la característica, y la extracción. La localización del iris es un
paso importante en el reconocimiento del iris porque, si está hecho
incorrectamente, el ruido resultante (e.g., pestañas, reflexiones, pupilas, y
párpados) en la imagen puede conducir al bajo rendimiento.
Debido a que el infrarrojo tiene energía insuficiente para causar
efectos fotoquímicos, la modalidad potencial principal de daños es termal.
Cuando se produce NIR usando los diodos electroluminosos, la luz que
resulta es incoherente. Cualquier riesgo para la seguridad del ojo es remoto
con una sola fuente de LED usando tecnología de LED de hoy. Los
iluminadores múltiples de LED pueden, sin embargo, producir daño en el ojo
si no es diseñado y usado cuidadosamente.
- 61 -
Robo de identidad
Las preocupaciones acerca del robo de identidad por el uso de la
Biometría aún no han sido resueltas. Si el número de tarjeta de crédito de
una persona es robado, por ejemplo, puede causarle a esa persona grandes
dificultades. Si sus patrones de escaneado de iris son robados, sin embargo,
y eso permite a otra persona acceder a información personal o a cuentas
financieras, el daño podría ser irreversible. Frecuentemente, las tecnologías
biométricas han sido puestas en uso sin medidas adecuadas de seguridad
para la información personal que es resguardada a través de las mismas.
Privacidad
Aunque la biometría es frecuentemente utilizada como un medio para
combatir la criminalidad, existe la preocupación de que la biometría pueda
ser utilizada para disminuir las libertades personales de los ciudadanos.
Los desarrollos en tecnología video digital, infrarrojos, rayos X,
inalámbricas, sistemas de posicionamiento global, biometría, escaneado de
imágenes, reconocimiento de voz, ADN, y identificación de ondas cerebrales
le proveen al gobierno con nuevos métodos para "buscar e investigar" vastas
bases de datos individuales y colectivas de información sobre la población en
general.
- 62 -
Los Padres de la Constitución de los Estados Unidos nunca pensaron
acerca de este tipo de "búsquedas e investigaciones" cuando diseñaron la
Cuarta Enmienda, pero como uno de los avances tecnológicos de nuestro
tiempo, nosotros tenemos que pensar en ese contexto.
CÓMO FUNCIONAN LOS LECTORES DE HUELLA DIGITAL
Los lectores de huella digital computarizados siempre han aparecido en
películas de espías resguardando el acceso a lugares restringidos, pero en el
mundo real eran una tecnología bastante exótica hasta hace unos años,
cuando empezaron a aparecer en todos lados para controlar el acceso a
edificios que necesitaban alta seguridad, e incluso en "mouse" y teclados
para computadora, reemplazando o complementando el uso de passwords
para dar acceso a una PC.
Fundamentos de las Huellas Digitales
Podríamos decir que los seres humanos tienen tarjetas de
identificación integradas, muy fácilmente accesibles: sus huellas digitales, las
cuales son diseños virtualmente únicos.
La gente tiene diminutos "valles y crestas" de piel en la punta de los
dedos que eran de gran utilidad a los ancestros de la raza humana, pues les
permitían hacer cosas con mayor facilidad. Estos valles y crestas se forman
por una combinación de factores genéticos y ambientales aleatorios, como la
- 63 -
posición del feto en un momento particular y la composición y densidad
exacta del líquido amniótico que lo rodea. (Vea figura 05)
Un lector de huella digital lleva a cabo dos tareas:
2) Comparar el patrón de valles y crestas de dicha imagen con los patrones
de las huellas que tiene almacenadas.
Los dos métodos principales de obtener una imagen de una huella
digital son por lectura óptica o lectura de capacitancia.
Lectores Ópticos
Un lector óptico funciona con un dispositivo CCD (Charged Coupled
Device), como el usado en las cámaras digitales, que tienen un arreglo de
diodos sensible a la luz que generan una señal eléctrica en respuesta a
fotones de luz. Cada diodo graba un pixel, un pequeño punto que representa
- 64 -
FIGURA No. 05 HUELLA DIGITAL
la luz que le es reflejada. Colectivamente, la luz y perfiles oscuros forman
una imagen de la huella leída. El proceso de lectura comienza cuando usted
pone su dedo sobre la ventana del lector, el cual tiene su propia fuente de
iluminación, típicamente un arreglo de LEDs, para iluminar las crestas de la
huella digital. El CCD genera, de hecho, una imagen invertida del dedo, con
áreas más oscuras que representan más luz reflejada (las crestas del dedo)
y áreas más claras que representan menos luz reflejada (los valles entre las
crestas).
Antes de comparar la información obtenida con la almacenada, el
procesador del lector se asegura de que el CCD ha capturado una imagen
clara. Checa la oscuridad promedio de los pixeles, o los valores generales en
una pequeña muestra, y rechaza la lectura si la imagen general es
demasiado oscura o demasiado clara. Si la imagen es rechazada, el lector
ajusta el tiempo de exposición para dejar entrar más o menos luz, e intenta
leer la huella de nuevo.
Si el nivel de luz es adecuado, el lector revisa la definición de la
imagen (que tan precisa es la imagen obtenida). El procesador busca varias
líneas rectas que se mueven horizontal y verticalmente sobre la imagen, y si
esta tiene buena definición, una línea que corre perpendicular a las crestas
será hecha de secciones alternantes de pixeles muy claros y muy oscuros.
- 65 -
Lectores de Capacitancia
Como los lectores ópticos, los lectores capacitivos de huella digital
generan una imagen de las crestas y valles que conforman una huella digital,
pero en vez de hacerlo con luz, los capacitores utilizan corriente eléctrica.
El diagrama de abajo muestra un ejemplo de sensor capacitivo. El
sensor está hecho de uno o más chips que contienen un arreglo de
pequeñas celdas. Cada celda incluye dos placas conductoras, cubiertas con
una capa aislante. (Vea figura 06)
Las celdas son más pequeñas que el ancho de una cresta del dedo. El
sensor es conectado a un integrador, un circuito eléctrico construido sobre la
base de un amplificador operacional inversor que altera un flujo de corriente.
La alteración se basa en el voltaje relativo de dos fuentes, llamado la terminal
inversora y el terminal no-inversor. En este caso, la terminal no-inversora es
- 66 -
FIGURA No. 06 EJEMPLO DE UN SENSOR CAPACITIVO
conectada a tierra, y la terminal inversora es conectada a una fuente de
voltaje de referencia y un bucle de retroalimentación que incluye las dos
placas conductoras, que funcionan como un capacitor, esto es, un
componente que puede almacenar una carga.
La superficie del dedo actúa como una tercera placa capacitora,
separada por las capas aislantes en la estructura de la celda y, en el caso de
los valles de la huella, una bolsa de aire.
Al variar la distancia entre las placas capacitoras (moviendo el dedo
más cerca o más lejos de las placas conductoras), se cambia la capacitancia
(o habilidad para almacenar una carga) total de el capacitor. Gracias a esta
cualidad, el capacitor en una celda bajo una cresta tendrá una capacitancia
más grande que el capacitor en una celda bajo un valle. Ya que la distancia a
el dedo altera la capacitancia, la cresta de un dedo resultará en una salida de
voltaje diferente a la del valle de un dedo.
El procesador del lector lee esta salida de voltaje y determina si es
característico de una cresta o un valle. Al leer cada celda en el arreglo de
sensores, el procesador puede construir una imagen de la huella, similar a la
imagen capturada por un lector óptico. La principal ventaja de un lector
capacitivo es que requiere una verdadera forma de huella digital y no sólo un
patrón de luz y oscuridad que haga la impresión visual de una huella digital.
- 67 -
Esto hace que el sistema sea más difícil de engañar. Adicionalmente,
al usar un chip semiconductor en vez de una unidad CCD, los lectores
capacitivos tienden a ser más compactos que los ópticos.
Análisis
En la televisión los lectores de huella digital típicamente empalman
varias imágenes de huellas digitales para encontrar una que corresponda. En
realidad, este no es un modo práctico para comparar las huellas digitales.
Una imagen borrosa puede hacer que dos imágenes de la misma huella se
vean bastante diferentes, así que raramente se podrá obtener un empalme
perfecto. Adicionalmente, utilizar la imagen completa de la huella digital en
un análisis comparativo utiliza muchos recursos del procesador, y además
hace más sencillo robar los datos impresos de la huella de alguien.
En vez de esto, la mayoría de los lectores compara rasgos específicos
de la huella digital, generalmente conocidos como minutiae. Típicamente, los
investigadores humanos y computadoras se concentran en puntos donde las
líneas de las crestas terminan o donde se separan en dos (bifurcaciones).
Colectivamente estos y otros rasgos distintivos se llaman typica.
El software del sistema del lector utiliza algoritmos altamente
complejos para reconocer y analizar estas minutiae. La idea básica es medir
las posiciones relativas de la minutiae.
- 68 -
Una manera simple de pensar en esto es considerar las figuras que
varios minutia forman cuando dibuja líneas rectas entre ellas. Si dos
imágenes tienen tres terminaciones de crestas y dos bifurcaciones formando
la misma figura dentro de la misma dimensión, hay una gran probabilidad de
que sean de la misma persona. (Vea figura 07)4
Para obtener una coincidencia, el sistema del lector no necesita
encontrar el patrón entero de minutiae en la muestra y en la imagen
almacenada, simplemente debe encontrar un número suficiente de patrones
de minutiae que ambas imágenes tengan en común. El número exacto varía
de acuerdo a la programación del lector.
Ventajas Generales
4 http://www.jabanet.com.mx/lector_huella_dig.html
- 69 -
FIGURA No. 07 ALGORITMO PARA RECONOCER Y ANALIZAR MINUTIAE
Las ventajas de un sistema biométrico de huella digital son que los
atributos físicos de una persona suelen ser difíciles de falsificar, uno no
puede adivinar una huella digital como adivina un password, no puede perder
sus huellas digitales como pierde una llave y no puede olvidar sus huellas
digitales como puede olvidar un password. (Vea figura 08)
Para hacer los sistemas de seguridad más confiables, es una buena idea
combinar el análisis biométrico con un medio convencional de identificación,
como un password o una tarjeta. TEC Electrónica ofrece lectores de huella
que además pueden verificar una tarjeta inteligente o una tarjeta mifare
(tarjeta inteligente sin contacto) en donde se almacene la huella digital del
usuario.
- 70 -
FIGURA No. 08 EJEMPLO DE UN LECTOR DE HUELLA DIGITAL
El lector coteja que la huella codificada en la tarjeta sea la misma que
se está poniendo sobre el lector, proporcionando un grado mayor de
seguridad y eliminando las limitaciones de espacio de almacenamiento de
huellas en un servidor, pues se pueden emitir credenciales con huellas
codificadas de manera infinita.
Cada día se implementan más y más nuevas soluciones con lectores
de huella digital, por lo que en un futuro cercano será una tecnología utilizada
por una gran proporción de la gente. Si desea aprovechar esta nueva
tendencia es el momento indicado, llame a uno de nuestros Ejecutivos de
Ventas para conocer la gama completa de lectores de huella digital que
podemos ofrecerle.
Lector huella digital Nitgen Hamster
Lector de huella dactilar de sobremesa conexión a PC.
El lector biométrico ideal para aplicaciones informáticas (vea figura 09)
- 71 -
FIGURA No. 09 LECTOR HUELLA DIGITAL NITGEN HAMSTER
Lector huella digital Nitgen Hamster II
Lector de máxima seguridad con las más altas prestaciones y servicios.
Lector de huella dactilar de activación automática con sensor de presencia
de dedo. (vea figura 10)
Lector huella digital Nitgen Mouse
Mouse con sensor biométrico de huella dactilar incoporado.
Ratón con reconocimiento de huella digital: 2 funcionalidades en un solo
equipo. (Vea figura 11)
- 72 -
FIGURA No.10 LECTOR HUELLA DIGITAL NITGEN HAMSTER ll
FIGURA No.11 LECTOR HUELLA DIGITAL NITGEN MOUSE
Lector de huella digital Nitgen FDU01
Lector sin carcasa de huella dactilar conexión PC.
Lector biométrico con conexión USB o puerto paralelo ideal para
integradores (Vea figura 12)
Lector de huella dactilar Precise 100 XS
Lector para PC's y control de acceso a redes.
Sensor de huella dactilar de pasada compacto y ergonómico. (Vea figura 13)
- 73 -
FIGURA No.12 LECTOR HUELLA DIGITAL NITGEN FDU01
FIGURA No.13 LECTOR HUELLA DACTILAR PRECISE 100 XS
Lector de huella digital Precise 100MC
Lector de huella dactilar y lector / grabador tarjeta chip en un solo equipo.
Doble autentificación: biométrica y smart card. Ideal para la seguridad en su
oficina. (Vea figura 14)
Lector de huella digital Precise 250MC
Lector combinado de huella digital y tarjeta chip para uso público
El proceso de identificación / autentificación se realiza mediante 2 elementos:
huella digital o smart card. (Vea figura 15)
- 74 -
FIGURA No.14 LECTOR HUELLA DIGITAL PRECISE 100MC
FIGURA No.15 LECTOR HUELLA DIGITAL PRECISE 250MC
Lector de huella digital Precise 200MC
Lector combinado de huella digital y tarjeta chip para control de accesos en
entorno de oficinas.
Especialmente ideado para aplicaciones en oficinas donde se requiera un
alto nivel de autentificación biométrica. (Vea figura 16)
- 75 -
FIGURA No.16 LECTOR HUELLA DIGITAL PRECISE 200MC
PROCEDIMIENTOS Y DESCRIPCIÓN DE LAS ACTIVIDADES
REALIZADAS
ESTUDIOS DE FACTIBILIDADES
El estudio de factibilidad lo utilizaremos para determinar que el
sistema solicitado sea factible y mediante eso tener una amplia información
de los requerimientos que va a necesitar el sistema.
FACTIBILIDAD (ECONÓMICA, TÉCNICA Y OPERATIVA)
Económica
La siguiente tabla muestra todos los costos involucrados en la elaboración
del software para la empresa.
ACTIVIDADES REALIZADAS HORAS COSTO
Solicitud del proyecto 6 $ 350.00
Aclaración de la solicitud 4 150.00
Aprobación de la solicitud 3 100.00
Análisis de sistemas y determinación de
requerimientos20 3,500
- 76 -
Estudio de factibilidades
Económica 12 1,000.00
Operativa 12 1,000.00
Técnica 12 1,000.00
Diseño de sistemas 40 6,000.00
Desarrollo del sistema 60 10,000.00
Implantación y evaluación 15 6,000.00
Capacitación 40 2,500.00
Gastos de operación y equipo 3,000.00
COSTO TOTAL DEL SISTEMA 224 $34,600.00
- 77 -
TÉCNICA
El sistema para el control de personal requiere de un equipo de
cómputo con las siguientes características:
Requerimientos mínimos:
Equipo de cómputo marca Ensamblada.
Procesador 3.5 GHz
Memoria de 512 MB
Disco duro de 160 GB
Unidad de DVD
Sistema operativo XP
Impresora HP LaserJet 1320
Procesador Pentium Dual Core.
- 78 -
OPERATIVA
La empresa está en completa disposición para que sea implantado el
sistema propuesto en su empresa, y que sea instalado en su equipo de
cómputo, por lo cual no va a existir la posibilidad de adquirir otro equipo.
La persona que haga uso del sistema lo utilizará sin ningún problema,
ya que contara con el manual de usuario el cual ayudará en su utilización,
además las asesorías que tomarán los empleados serán necesarias ya que
les van a permitir interactuar con el sistema,
Por lo tanto el estudio operacional también es factible para poder
continuar con nuestro sistema.
- 79 -
RESULTADOS, PLANOS, GRAFICAS, PROTOTIPOS Y PROGRAMAS
A CONTINUACIÓN SE MENCIONA LA CREACIÓN DEL SISTEMA
DIAGRAMA ENTIDAD RELACION
- 80 -
FIGURA No. 17 DIAGRAMA ENTIDAD RELACIÓN
EMPLEADOSHORARIOSCLAVE
NOMBRECODIGO CLAV
ETURNO
DEPARTAMENTO
FOTOENTRADA
SALIDA FECHA
H HUELLA
TABLAS
EMPLEADOS
NOMBRE TIPO LONGITUD DESCRIPCION
Huella
Nombre
Código
Clave
Turno
Departamento
foto
Blob
Varchar
Varchar
Varchar
Varchar
Varchar
Varchar
100
20
15
15
20
150
No se debe quedar vacio
No se debe quedar vacio
No se debe quedar vacio
No se debe quedar vacio
No se debe quedar vacio
No se debe quedar vacio
NOMBRE TIPO LONGITUD DESCRIPCION
Huella
Entrada
Salida
Fecha
Horas
Varchar
Varchar
Varchar
Date
Varchar
20
20
20
10
No se debe quedar vacio
No se debe quedar vacio
No se debe quedar vacio
No se debe quedar vacio
No se debe quedar vacio
HORARIOS
- 81 -
TABLA No. 02 TABLA EMPLEADO
ACCESO
PRESENTACION
INICIO
MENU
FINTABLA No. 03 TABLA HORARIOS
DIAGRAMAS DE FLUJO
- 82 -
REGISTRO DE ENTRADAS Y
SALIDAS
OPCIONES DE SISTEMA
INTRODUZCA USUARIO
USUARIO
INTRODUZCA CONTRASEÑA
MENU
B.D
CONTRASEÑA INCORRECTA
CONTRASEÑA
CONTRASEÑA=CONTRASEÑA
SI NO
FIGURA No. 18 DIAGRAMA DE BLOQUES
- 83 -
FIGURA No. 19 REGISTRO DE ENTRADAS Y SALIDAS
SALIR
MENU
OPCIONES DE MENU
EMPLEADOS REPORTES
AGREGAR
DAR DE BAJA
MODIFICAR
DIARIO
POR FECHAS
POR DEPARTAMENTO
FIN
- 84 -
FIGURA No.20 OPCIONES DE MENÚ
- 85 -
FIGURA No. 21 SALIR DEL SISTEMA
SALIR
“DESEA SALIR DEL SISTEMA”
OP
FIN MENU
SI NO
SI NO
ALTAS
REGISTRO DE EMPLEADOS
NOMBRE
CODIGO
CLAVE
TURNO
DEPARTAMENTO
FOTO
SI
B.D
CLAVE EXISTE
CLAVE=CLAVENO
“GUARDANDO DATOS”
OTRO
MENU
PANTALLAS
- 86 -
FIGURA No. 22 ALTAS DE EMPLEADOS
Pantalla Principal
- 87 -
FIGURA No. 23 PANTALLA PRINCIPAL
PANTALLA DE ACCESO
PANTALLA DE MENU
- 88 -
FIGURA No. 24 PANTALLA DE ACCESO
FIGURA No. 25 PANTALLA DE MENU
ALTAS DE EMPELADOS
- 89 -
FIGURA No. 26 ALTAS DE EMPLEADOS
BAJAS DE EMPLEADOS
- 90 -
FIGURA No. 27 BAJAS DE EMPLEADOS
ACTUALIZACIÓN DE EMPLEADOS
- 91 -
FIGURA No. 28 ACTUALIZACION DE EMPLEADOS
REPORTES POR FECHA
REPORTE POR DEPARTAMENTO
- 92 -
FIGURA No. 30 REPORTE POR DEPARTAMENTO
FIGURA No. 29 REPORTE POR FECHA
CODIGO DEL SISTEMA
MODULO PRINCIPAL
'Public BD As Database'Public Resultado As Recordset'hay que recordar incluir una referencia a Microsoft ActiveX Data Objects 2.8 Library'y bajar la última actualización de MDAC (Microsoft Data Access Components) de la web de microsoft'así como tener instalado el driver ODBC de MYSQL
Public Type rawImage img As Variant width As Long height As Long res As LongEnd Type
Public Type TTemplate tpt() As Byte Size As LongEnd Type
Public raw As rawImagePublic template(3) As TTemplate
- 93 -
ACCESO AL SISTEMA
Private Sub Form_Load() Skin1.LoadSkin App.Path & "\Skin\Web-II.skn" Skin1.ApplySkin Me.hWndEnd Sub
Private Sub cmdOK_Click() 'comprobar si la contraseña es correcta If ((txtPassword = "contra1" And txtUserName = "usuario1") Or (txtPassword = "contra2" And txtUserName = "usuario2")) Then 'colocar código aquí para pasar al sub 'que llama si la contraseña es correcta 'lo más fácil es establecer una variable global LoginSucceeded = True FRMOPCIONES.Show Unload Me Else MsgBox "La contraseña y nombre de Usuarui no Coinciden. Vuelva a intentarlo", , "Inicio de sesión" txtUserName.SetFocus SendKeys "{Home}+{End}" End IfEnd Sub
Private Sub cmdCancel_Click() 'establecer la variable global a false 'para indicar un inicio de sesión fallido LoginSucceeded = False Unload MeEnd Sub
- 94 -
MENU PRINCIPAL
Private Sub mnuabcempleados_Click()Form1.ShowMe.HideEnd Sub
Private Sub mnuop_Click()Form1.ShowEnd Sub
Private Sub mnureportearea_Click()FrmReporteDep.ShowEnd Sub
Private Sub Mnureportefechas_Click()FRMREPORTEFECHAS.ShowMe.HideEnd Sub
Private Sub Form_Unload(Cancel As Integer)FRMOPCIONES.ShowEnd Sub
- 95 -
REGISTRO DE DATOS
Private Sub Command1_Click()' realiza busqueda general para ver si existe
Reg.ActiveConnection = ConexReg.CommandType = 1StrSQL = "select * from cfe.empleados where clave='" & txtclave & "';"Reg.CommandText = StrSQLReg.Execute
'si existe busca en los horariosIf (Reg.Execute.RecordCount > 0) ThenSet tabla = New ADODB.Recordsettabla.Open StrSQL, Conex, adOpenDynamic, adLockOptimisticReg.ActiveConnection = Conex
Reg.CommandType = 1dato1 = Format(Date, "YYYY-mm-dd")'MsgBox dato1StrSQL = "select * from CFE.horarios where hhuella='" & txtclave & "' and fecha='" & dato1 & "';"Reg.CommandText = StrSQLReg.Execute
If (Reg.Execute.RecordCount > 0) ThenSet tabla = New ADODB.Recordsettabla.Open StrSQL, Conex, adOpenDynamic, adLockOptimisticIf tabla.Fields(2) = 0 Then'---------DiferenciaHoraria'----------
dato1 = Format(Date, "YYYY-mm-dd")'MsgBox dato1Reg.CommandText = "update cfe.horarios set salida='" & Label1 & "', horas='" & Label10.Caption & "' where hhuella='" & txtclave & "' and fecha='" & dato1 & "';"Reg.ExecuteMsgBox "Hora de Salida Registrada", vbExclamation, "Hora de Salida"Text1 = ""Else
- 96 -
MsgBox "Este Empleado ya fue Registrado el Dia de Hoy" vbInformation, "Error"Text1 = ""End IfElse
Reg.CommandType = 1dato1 = Format(Date, "YYYY-mm-dd")'MsgBox dato1
StrSQL = "insert into cfe.HORARIOS values('" & txtclave & "','" & Label1 & "','0','" & dato1 & "','0');"Reg.CommandText = StrSQLReg.ExecuteMsgBox "Hora de Entrada Registrada", vbExclamation, "Hora de Entrada"Text1 = ""End IfImage1.Picture = LoadPicture(App.Path & "\FotosEmpleados\ima.jpg")txtclave = ""Imagen(3).Picture = LoadPicture()Else
MsgBox "el empleado no existe", vbInformation, "Jesandmar"End If
End Sub
Private Sub btn_Guardar_Click()Dim conn As New ADODB.ConnectionDim rs As New ADODB.Recordsetconn.CursorLocation = adUseClientconn.ConnectionString = dame_cadena_conexionconn.Open
rs.Open "Select * from empleados where 1=0", conn, adOpenStatic, adLockOptimistic 'Set Resultado = BD.OpenRecordset("SELECT * FROM empleados")
- 97 -
'para usar el recordset con el with tienes que usar .Fields("nombre_campo")'la otra manera de hacerlo es con rs!nombre_campo
With rs ' Resultado.AddNew.Fields("nombre") = NombreGuardar.Fields("codigo") = txtCodigo.Fields("huella") = template(1).tpt.Fields("clave") = Text2.Fields("turno") = Combo2.Fields("departamento") = Combo1.Fields("foto") = Text6.UpdateEnd Withrs.CloseMsgBox "Huellas guardadas"
Imagen(1).Picture = LoadPicture()Imagen(2).Picture = LoadPicture()NombreGuardar = ""AreaGuardar = ""Set rs = Nothingconn.CloseSet conn = NothingImagen_Click 1End Sub
Private Sub OptionGuardar_Click()OcultarFramesFrameGuardar.Visible = TrueEnd Sub
Private Sub ChecaGuardar()If Imagen(1) <> 0 And Imagen(2) <> 0 And NombreGuardar <> "" And txtCodigo <> "" Thenbtn_Guardar.Enabled = TrueElsebtn_Guardar.Enabled = FalseEnd IfEnd Sub
Private Sub Imagen_Click(Index As Integer)ImagenNumero = Index
- 98 -
If Index = 1 ThenShape1.Left = 0ElseShape1.Left = 2520End IfEnd Sub
Private Sub GrFingerXCtrl1_ImageAcquired(ByVal idSensor As String, ByVal width As Long, ByVal height As Long, rawImage As Variant, ByVal res As Long)' Capturar Imagen (Este mensaje es muy raro que se vea. Si se muestra pero muy rapido)Mensajes = "Capturando imagen..."
With raw.img = rawImage.height = height.width = width.res = resEnd With
If OptionGuardar.Value = True ThenCapturaHuella False, GR_DEFAULT_CONTEXT, Form1, Form1.Imagen(ImagenNumero), ImagenNumeroIf EncuentraPuntos(Form1, Mensajes, Imagen(ImagenNumero), ImagenNumero) = True Then' Aqui entra si la Imagen se detecta bienIf ImagenNumero = 1 ThenImagen_Click 2ElseImagen_Click 1End IfEnd IfChecaGuardarEnd If
If OptionVerificar.Value = True ThenCapturaHuella False, GR_DEFAULT_CONTEXT, Form1, Form1.Imagen(3), 3If EncuentraPuntos(Form1, Mensajes, Imagen(3), 3) = True Then' El numero 3 es por el Template que es el numero 3CambiaFoco Identificar(Form1, 3, Form1.Nombreverificar, Form1.areaverificar, Form1.Combo4, Form1.Combo3, Form1.Text1, Form1.txtclave)
- 99 -
End IfEnd IfEnd Sub
Private Sub GrFingerXCtrl1_SensorPlug(ByVal idSensor As String)' Inicializar la Captura del dispositivoGrFingerXCtrl1.CapStartCapture (idSensor)End Sub
Private Sub GrFingerXCtrl1_SensorUnplug(ByVal idSensor As String)' Finalizar la Captura del dispositivoGrFingerXCtrl1.CapStopCapture (idSensor)End Sub
Private Sub GrFingerXCtrl1_FingerDown(ByVal idSensor As String)' Aqui detecta cuando pones el dedo (Este mensaje es muy raro que se vea. Si se muestra pero muy rapido)Detector = "Huella detectada"End Sub
Private Sub GrFingerXCtrl1_FingerUp(ByVal idSensor As String)' Aqui detecta cuando quitas el dedoDetector = "Huella removida"End Sub
ACTUALIZAR DATOS
Private Sub OptionGuardar_Click()OcultarFramesFrameGuardar.Visible = TrueEnd Sub
Private Sub Command4_Click()If (MsgBox("¿Esta seguro de las Modificaciones?", vbQuestion + vbYesNo, "Actualizar") = vbYes) ThenReg.CommandText = "update CFE.empleados set nombre= '" & Nombreverificar & "', codigo='" & areaverificar & "',turno='" & Combo4 & "',departamento='" & Combo3 & "',foto='" & Text1 & "' where clave='" & txtclave & "';"Reg.Execute
- 100 -
MsgBox "Los Datos han sido Actualizados", vbExclamation, "Actualizacion"ElseEnd IfEnd
ELIMINAR REGISTROS
Private Sub Command3_Click()If (MsgBox("¿Desea Dar de Baja al Empleado ? ", vbQuestion + vbYesNo, "Eliminar") = vbYes) ThenReg.CommandText = "delete from cfe.empleados where clave= '" & txtclave & "';"Reg.ExecuteMsgBox "Baja del Empleado Completa", vbExclamation, "Cuadro de Afirmación de Eliminación"ElseEnd IfEnd Sub
Private Sub OptionVerificar_Click()OcultarFramesFrameVerificar.Visible = TrueEnd Sub
CONEXIÓN
Option ExplicitPublic Conex As ADODB.ConnectionPublic Reg As ADODB.CommandPublic tabla As ADODB.RecordsetPublic StrSQL As StringDeclare Function CopyFile Lib "kernel32" Alias "CopyFileA" (ByVal lpExistingFileName As String, ByVal lpNewFileName As String, ByVal bFailIfExists As Long) As Long
'Función para realizar la conexion a la base de datosPublic Sub ConectaDB()StrSQL = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=localhost;UID=root;PWD=jm;OPTION=3"Set Conex = New ADODB.ConnectionSet Reg = New ADODB.Command
- 101 -
Conex.CursorLocation = adUseClientConex.Open StrSQLReg.ActiveConnection = Conex'MsgBox "exito"On Error GoTo ErrorExit SubError:MsgBox "Error de conexion"EndEnd Sub
'Función que permite la desconexion a la base de datosPublic Sub DesconectaDB()Conex.CloseEnd Sub
MODULO
Public Function EncuentraPuntos(Formulario As Form, ControlMensajes As Label, LaImagen As Image, Numero As Integer) As BooleanDim ret As Integer
template(Numero).Size = GR_MAX_SIZE_TEMPLATEReDim Preserve template(Numero).tpt(template(Numero).Size)ret = Formulario.GrFingerXCtrl1.Extract(raw.img, raw.width, raw.height, raw.res, template(Numero).tpt, template(Numero).Size, GR_DEFAULT_CONTEXT)If ret < 0 Then template(Numero).Size = 0ReDim Preserve template(Numero).tpt(template(Numero).Size)
If ret = GR_BAD_QUALITY ThenControlMensajes = "Huella detectada pero con baja calidad. Intentalo nuevamente"LaImagen.Picture = LoadPicture()ElseIf ret = GR_MEDIUM_QUALITY Then
- 102 -
ControlMensajes = "Huella detectada con calidad mediana"ElseIf ret = GR_HIGH_QUALITY ThenControlMensajes = "Huella detectada con buena calidad"End If
If ret >= 1 ThenCapturaHuella True, GR_NO_CONTEXT, Formulario, LaImagen, NumeroEncuentraPuntos = TrueElseEncuentraPuntos = FalseEnd IfEnd Function
- 103 -
ANEXOS
ÍNDICE DE FIGURAS
FIGURA No. 01 HUELLA DIGITAL.
FIGURA No. 02 EJEMPLO DE UN SENSOR CAPACITIVO.
FIGURA No. 03 ALGORITMO PARA RECONOCER Y ANALIZAR MINUTIAE
FIGURA No. 04 EJEMPLO DE UN LECTOR DE HUELLA DIGITAL
FIGURA No. 05 LECTOR HUELLA DIGITAL NITGEN HAMSTER
FIGURA No. 06 LECTOR HUELLA DIGITAL NITGEN HAMSTER ll
FIGURA No. 07 LECTOR HUELLA DIGITAL NITGEN MOUSE
FIGURA No. 08 LECTOR DE HUELLA DIGITAL NITGEN FDU01
FIGURA No. 09 LECTOR HUELLA DACTILAR PRECISE 100 XS
FIGURA No. 10 LECTOR HUELLA DIGITAL PRECISE 100MC
FIGURA No.11 LECTOR HUELLA DIGITAL PRECISE 250MC
FIGURA No. 12 LECTOR HUELLA DIGITAL PRECISE 200MC
FIGURA No.13 LECTOR HUELLA DACTILAR PRECISE 100 XS
FIGURA No.14 LECTOR HUELLA DIGITAL PRECISE 100MC
FIGURA No.15 LECTOR HUELLA DIGITAL PRECISE 250MC
FIGURA No.16 LECTOR HUELLA DIGITAL PRECISE 200MC
- 104 -
FIGURA No. 17 DIAGRAMA ENTIDAD RELACIÓN
FIGURA No. 18 DIAGRAMA DE BLOQUES
FIGURA No. 19 REGISTRO DE ENTRADAS Y SALIDAS
FIGURA No.20 OPCIONES DE MENÚ
FIGURA No. 21 SALIR DEL SISTEMA
FIGURA No. 22 ALTAS DE EMPLEADOS
FIGURA No. 23 PANTALLA PRINCIPAL
FIGURA No. 24 PANTALLA DE ACCESO
FIGURA No. 25 PANTALLA DE MENU
FIGURA No. 26 ALTAS DE EMPLEADOS
FIGURA No. 27 BAJAS DE EMPLEADOS
FIGURA No. 28 ACTUALIZACION DE EMPLEADOS
FIGURA No. 29 REPORTE POR FECHA
FIGURA No. 30 REPORTE POR DEPARTAMENTO
- 105 -
ÍNDICE DE TABLAS
TABLA No. 01 TABLA COMPARATIVA DE LOS SISTEMAS BIOMÉTRICOS
TABLA No.02 TABLA EMPLEADO
TABLA No.03 TABLA HORARIOS
- 106 -
ENTREVISTA
ENTREVISTA REALIZADA AL ING. ALBERTO JORGE QUIROZ VERA.
1.- ¿Qué sistema actual utiliza en la empresa?
Siad, Lotus, siccos.
2.- ¿Cuál es el problema que presenta actualmente la empresa?
Son varios pero el principal es la captura de la lista de registro de los
trabajadores ya que se lleva en forma manual.
3.- ¿Qué sistema le gustaría implementar para solucionar dicho problema?
Que permita ahorrar sobre todo tiempo y que sea sencillo, que realice
las actividades correspondientes al registro de los empleados.
4.- ¿Usted cuenta con conocimientos de cómputo?
Si
5.- ¿Usted cree que no va a tener dificultad al momento de utilizar el
sistema?
No ya que tendrán que dar una capacitación en cuanto a su manejo.
6.- A parte de usted ¿alguien más va a utilizar el sistema?
No
- 107 -
7.- ¿Requerirán de asesorías para la manipulación del sistema?
¿Si o no?, ¿por qué?
Si porque como todo sistema de cómputo nuevo requiere de una asesoría y
algunos empleados se les dificulta manejar una computadora.
8.- ¿Usted considera que al implementar un sistema nuevo ayudará a
solucionar el problema en esta área de la empresa?
¿Si o no?, ¿por qué?
Si será de mucha ayuda tanto para los trabajadores como para el encargado
de capturar dichos registros porque ahorrara tiempo y papeleos que se
utilizan para llenar la hora de entrada, firma y salida de los empleados.
9.- Si existiera algún problema más adelante ¿le gustaría modificar o
implementar un nuevo sistema?
Si
10.- ¿Cuáles son los beneficios que usted espera del sistema que se
implementará?
Que ahorre tiempo ya en esta empresa hay otras actividades que se
tienen que realizar al día.
11.- ¿Considera usted que le ahorrará tiempo, dinero y esfuerzo?
¿Si o no?, ¿por qué?
Si porque se realizará en forma electrónica.
- 108 -
12.- ¿Qué cantidad de dinero podría pagar la empresa por un sistema para
mejorar el control del personal?
$4,000.00
13.- ¿Qué métodos utiliza para realizar sus actividades en cuanto al control
del personal?
El proceso se lleva en forma manual solo cuando se va
hacer el vaciado de las listas se lleva a cabo en un formato de Excel.
14.- ¿Se siente usted conforme utilizando este sistema y por qué?
No porque quita mucho tiempo y es algo tedioso calcular las horas
trabajadas de cada empleado.
15.- ¿Desea cambiar el sistema que utiliza?
¿Por qué?
Si porque sería actualizarse en cuanto a la tecnología.
16.- ¿Cómo se inicia la elaboración del registro de los empleados?
Se inicia anotando en una hoja la hora de entrada y firma así como
su hora de salida al termino de la jornada esto se realiza diariamente y a la
semana se realiza el vaciado de dichas listas de todos los trabajadores
calculándole las horas trabajadas a la semana y posteriormente mandarlas al
depto. de administración.
- 109 -
17.- ¿Con qué frecuencia realiza la captura de las listas de asistencia?
Cada semana regularmente cuando no hay mucho trabajo y si no se
acumula hasta los 15 días.
19.- ¿Qué métodos se emplean para detectar errores en el vaciado?
Verificando manualmente a cada trabajador las horas diarias de
manera que cuadre bien la suma.
- 110 -
CONCLUSIONES Y RECOMENDACIONES
CONCLUSIÓN
El sistema desarrollado apoya en el área de distribución de Comisión
Federal de Electricidad, lleva el control diario del registro de las entradas y
salidas de los empleados.
Con este sistema el departamento automatiza el proceso del registro de los
empleados, también realiza reportes diarios, por área y por mes, por lo
tanto la empresa se pone cada día a la vanguardia con la tecnología
computarizada para poder brindar un buen servicio a los empleados. Este
sistema facilita el registro de los empleados de forma más rápida y menos
tediosa, puesto que anteriormente lo realizaba de forma manual.
Este sistema cumple con el objetivo que tiene que realizar de acuerdo a la
problemática que presenta la empresa ya que sus necesidades fueron
cubiertas satisfactoriamente para la persona encargada de esta importante
actividad.
- 111 -
RECOMENDACIONES
Unas de las principales recomendaciones para mejor funcionamiento del sistema COFEELECONP.
Realizar respaldo de la base de datos periódicamente.
Que el sistema operativo donde se vaya a instalar el sistema sea Windows XP.
Que cuente con suficiente espacio en disco duro,
Que el usuario que vaya a utilizar el sistema tenga conocimientos básicos de computación.
Antes de eliminar un dato verifique que ya no le sea útil.
Instalación de un antivirus para que pueda proteger su sistema.
Cualquier duda en el manejo del sistema consultar el manual de usuario.
- 112 -
COMENTARIOS
En este proyecto que realice reforme mis conocimientos de las
diferentes herramientas que se utilizan al momento de programar en visual
Basic, como es que captura una imagen en el lector de huella digital, a crear
una base de datos en mysql , todo esto fue muy importante porque puse en
práctica todos mis conocimientos adquiridos durante la carrera.
Elaborado por Jazmín Martínez Gómez
En este presente proyecto en el que participe para su realización es
de mucha importancia ya que puse mis conocimientos en práctica adquiridos
durante la carrera y aprendí cosas nuevas en cuanto a las herramientas
utilizadas en el lenguaje de programación que es visual Basic así como el
gestor de base de datos Mysql, también aprendí a utilizar el lector de huella
digital ya que fue una herramienta nueva para nuestro proyecto.
Elaborado por Mariela Cevero Osorio
- 113 -
REFERENCIAS BIBLIOGRÁFICAS
BIBLIOGRAFÍA
SENN JAMES, Análisis y diseño de sistema de información, (Segunda
edición) McGraw Hill, México 1992.
Korth Henry F. & Silberschatz Abraham, Análisis y Diseño de Sistemas (Segunda Edición) Mc Graw Hill.
Pressman Roger S. Ingeniería del Software (Cuarta Edición.) Editora Mc Graw Hill.
Linda Gail/ John Christie. Enciclopedia de Términos de Computación Editora: PHH, Prentice Hall.
Gred; Perry. Aprendiendo Visual Basic 6.0 en 21 días. Editorial prenticeHall, México 1999.
Siberchate Korth Sundarshan, Fundamento de la base de datos, (4ta Edición) McGraw Hill.
González Alfonso, Programación de la base de datos en visual BasicEditorial Ra-Ma.
- 114 -
REFERENCIA DE INTERNET
http://msdn.microsoft.com/vbasic/
http://www.microsoft.com/spain/msdn/Conector JDBC (Java Database
Connectivity).
http://www.mysqldevelopment.com MySQL development
http://www.planetmysql.org MySQL Weblogs
http://www.gestiopolis.com/canales/gerencial/articulos/59/pronosfut.m
http://www.monografias.com/trabajos17/sistema-gerencial/sistema-
gerencial.shtml
ww.cinterfor.org.uy/public/spanish/region/ampro/cinterfor/temas/
youth/exp/bol/procal/sgi.htm
"http://es.wikipedia.org/wiki/Biometr%C3%ADa"
http://www.jabanet.com.mx/lector_huella_dig.html
http://www.tec-mex.com.mx © TEC Electrónica, S.A. de C.V. 2003
- 115 -
Recommended