Logo Studenta

Sistema-integral-de-operacion-y-control-de-pago-para-nominas-del-IFE-a-nivel-nacional-empleando-la-arquitectura-J2EE

¡Este material tiene más páginas!

Vista previa del material en texto

UNIVERSIDAD NACIONAL AUTÓNOMA DE 
MÉXICO 
 
 
FACULTAD DE INGENIERÍA 
 
 
 
 
SISTEMA INTEGRAL DE OPERACIÓN Y CONTROL DEL PAGO 
 PARA NÓMINAS DEL IFE A NIVEL NACIONAL 
EMPLEANDO LA ARQUITECTURA J2EE 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
T E S I S 
QUE PARA OBTENER EL TÍTULO DE: 
INGENIERO EN COMPUTACIÓN 
P R E S E N T A 
 
 
JORGE ALBERTO RODRÍGUEZ CAMPOS 
 DIRECTOR: ING. CARLOS ALBERTO ROMÁN ZAMITIZ 
 
 
 
 
 
 
 
CUIDAD UNIVERSITARIA, MÉXICO D.F. NOVIEMBRE 2005 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 
UNAM – Dirección General de Bibliotecas 
Tesis Digitales 
Restricciones de uso 
 
DERECHOS RESERVADOS © 
PROHIBIDA SU REPRODUCCIÓN TOTAL O PARCIAL 
 
Todo el material contenido en esta tesis esta protegido por la Ley Federal 
del Derecho de Autor (LFDA) de los Estados Unidos Mexicanos (México). 
El uso de imágenes, fragmentos de videos, y demás material que sea 
objeto de protección de los derechos de autor, será exclusivamente para 
fines educativos e informativos y deberá citar la fuente donde la obtuvo 
mencionando el autor o autores. Cualquier uso distinto como el lucro, 
reproducción, edición o modificación, será perseguido y sancionado por el 
respectivo titular de los Derechos de Autor. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
DEDICATORIAS 
 
 
 
 
 
Para lo más importante en mi vida, 
con todo cariño, este trabajo es para ellos. 
 
 
 
 
 
 
A Jesús Dios Padre y a la virgen de Guadalupe, 
de donde obtengo la fuerza, la salud basada 
en una gran Fé. 
 
 
 
A mis Padres, por su inmenso e incansable esfuerzo 
y cariño que nos brindan día a día, por ser el motor 
 que impulsa cada uno de mis logros y metas. 
 
 
 
 
A Carmen y Jorge por el apoyo, amistad y por consolidar 
la unión y armonía de esta familia desde hace ya 2 años. 
 
 
 
 
Al ser más maravilloso y pequeñito que llegó para llenar 
de alegría y felicidad a esta familia, para ti Lili, de tu tío. 
 
 
 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 
 
 
 
 
 
 
 
AGRADECIMIENTOS 
 
 
 
 A mi director de tesis Ing. Carlos Román 
Zamitiz, por el tiempo, los consejos y el 
conocimiento que hicieron posible la 
realización del presente trabajo, Gracias 
Carlos. 
 
A Julieta Sánchez, por tus consejos, la 
ayuda y tu amistad, Gracias Ale, por 
compartir tus conocimientos y la 
confianza que has depositado en mí. 
 
 
 A Yadira Contreras, por preocuparte, tu 
amistad, el apoyo y los consejos que me 
han sido de gran ayuda, Yac, Ahora sí, Ya 
terminé!! 
 
A Nancy Cortés, por tu sincera amistad, 
el tiempo y tus consejos, cuenta 
siempre conmigo!. Gracias, Nancy. 
 
 
 Ing. Germán Santos y a los profesores de 
la facultad, Ing. Alberto González , Ing. 
Laura Sandoval, gracias por formar a 
tantas personas al compartir su esfuerzo y 
sus conocimientos. 
 
Marcela, Juan M, Juan C, César, Saul, 
Gerardo por la amistad y los gratos 
recuerdos en la DGSCA. 
 
 
 A Mary Mañon, Eli, por su amistad, y los 
buenos ratos en RD, Elí, eres única, Gracias 
Mary, eres Genial! 
 
 
A Silvia, Janet, Mariano, Mildred,Hilda, 
Jorge G., por su confianza, amistad y 
las experiencias que el IFE nos dejó. 
 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 
 
 
 
 
 
 
 
 
 
 
 
CONTENIDO 
 
 
 
 
 
 
 
 
 
INTRODUCCIÓN ........................................................................................................................... 1 
CAPÍTULO 1. LA PROBLEMÁTICA Y LOS REQUERIMIENTOS............................................................. 7 
1.1 DEFINICIÓN DEL PROBLEMA ........................................................................................................... 9 
1.2 SITUACIÓN ACTUAL ..................................................................................................................... 10 
1.2.1 Operación y control del pago.................................................................................................... 11 
1.3 ANÁLISIS DE REQUERIMIENTOS.................................................................................................... 14 
1.3.1 Requerimientos no funcionales................................................................................................. 15 
1.3.2 Requerimientos funcionales ..................................................................................................... 16 
1.4 LAS PROPUESTAS DE SOLUCIÓN................................................................................................... 17 
LE
AD
TO
OL
S e
Pr
int
 IV
 ev
alu
ati
on
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Tabla de contenido 
 II 
1.5 EL ALCANCE................................................................................................................................ 17 
CAPÍTULO 2. LAS ARQUITECTURAS EMPRESARIALES................................................................. 19 
2.1 ARQUITECTURAS EMPRESARIALES DE DESARROLLO ....................................................................... 21 
2.2 PRINCIPALES ARQUITECTURAS EMPRESARIALES............................................................................. 23 
2.2.1 CORBA .................................................................................................................................. 24 
2.2.2 .NET ..................................................................................................................................... 26 
2.2.3 J2EE...................................................................................................................................... 26 
2.3 J2EE O .NET ?? ........................................................................................................................... 27 
2.3.1 Similitudes entre J2EE y .NET................................................................................................... 27 
2.3.2 Ventajas de .NET sobre J2EE .................................................................................................. 28 
2.3.3 Ventajas de J2EE sobre .NET .................................................................................................. 28 
2.3.4 Conclusión ............................................................................................................................. 29 
CAPÍTULO 3. LA HISTORIA Y LA TEORÍA: JAVA Y J2EE.............................................................. 33 
3.1 LA HISTORIA DE JAVA .................................................................................................................. 31 
3.2 LOS JDK/SDK DE JAVA.................................................................................................................. 32 
3.2.1 Java 1.5 (5.0)......................................................................................................................... 32 
3.3 CARACTERÍSTICAS DEL LENGUAJE JAVA........................................................................................ 34 
3.3.1 La Maquina Virtual De Java (JVM)............................................................................................. 35 
3.3.2 Arquitectura de la Maquina Virtual De Java (JVM)....................................................................... 36 
3.4 JAVA 2 ENTERPRISE EDITION........................................................................................................ 42 
3.4.1 Definición.............................................................................................................................. 42 
3.4.2 La arquitectura J2EE ............................................................................................................... 42 
3.4.2 Los componentes J2EE. ........................................................................................................... 43 
3.4.4 Las Capas J2EE. ..................................................................................................................... 44 
3.4.4.1 La capa del cliente ............................................................................................................ 44 
3.4.4.2 La capa de presentación.................................................................................................... 45 
3.4.4.3 La capa de lógica de negocios. ........................................................................................... 45 
3.4.4.4 La capa de acceso a datos. ................................................................................................ 45 
3.4.5 Los contenedores J2EE............................................................................................................ 45 
3.4.5.1 Tipos de Contenedores...................................................................................................... 45 
3.4.6 El API de J2EE....................................................................................................................... 46 
3.4.6.1 Java Servlet technology..................................................................................................... 46 
3.4.6.2 Java Server Pages technology ............................................................................................ 47 
3.4.6.3 Tecnologías de Aplicaciones distribuidas .............................................................................. 48 
3.4.6.4 Java Naming and Directory Interface (JNDI) ........................................................................ 48 
3.4.6.5 Enterprise Java Beans (EJB)............................................................................................... 49 
3.4.6.6 JDBC (Java Database Connectivity)..................................................................................... 51 
3.4.6.7 JTA (Java Transaction API) ................................................................................................ 52 
3.4.6.8 JMS (Java Message Service)............................................................................................... 53 
3.4.6.9 JavaMail API..................................................................................................................... 53 
3.4.6.10 XML API........................................................................................................................ 53 
3.4.6.11 J2EE Connector Architecture CA........................................................................................ 53 
3.4.6.12 Java Authentication and Authorization Service (JAAS).......................................................... 53 
LE
AD
TO
OL
S e
Pr
int
 IV
 ev
alu
ati
on
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Tabla de contenido 
 III 
CAPÍTULO 4. EL ANÁLISIS Y EL DISEÑO INICIAL ......................................................................... 55 
4.1 LA METODOLOGÍA DE ANÁLISIS Y DISEÑO ORIENTADA A OBJETOS................................................. 57 
4.1.1 Enfoques de desarrollo de software .......................................................................................... 57 
4.1.1.1 El enfoque Waterfall (cascada) ........................................................................................... 57 
4.1.1.2 Proceso Unificado de Desarrollo de Software (USDP). ........................................................... 58 
4.1.1.3 Rational Unified Process (RUP). ......................................................................................... 59 
4.2 LENGUAJE UNIFICADO DE MODELADO (UML). .............................................................................. 61 
4.2.1 Los Diagramas en UML............................................................................................................ 62 
4.3 J2EE, UML Y SUS MECANISMOS DE EXTENSIÓN. ............................................................................ 62 
4.3.1 Modelado de componentes J2EE con UML ................................................................................ 63 
4.3.1.1 Estereotipos ..................................................................................................................... 63 
4.3.1.2 Valores marcados ............................................................................................................. 64 
4.3.1.3 Restricciones.................................................................................................................... 64 
4.3.1.4 Comentarios..................................................................................................................... 64 
4.4 MODELADO DEL NEGOCIO EN OPC ................................................................................................ 64 
4.4.1 La obtención de la información................................................................................................. 65 
4.4.2 Modelo de casos de uso de negocio ......................................................................................... 66 
4.4.3 Trabajadores de negocio ......................................................................................................... 67 
4.5 LOS REQUERIMIENTOS EN OPC.................................................................................................... 68 
4.5.1 El modelo de casos de uso....................................................................................................... 68 
4.5.2 Caso de uso – Control de Nóminas............................................................................................ 69 
4.5.3 Caso de uso – Fórmulas y conceptos......................................................................................... 70 
4.5.4 Los escenarios de casos de uso ............................................................................................... 71 
4.5.4.1 Los formatos de los Escenarios........................................................................................... 71 
4.5.5 Los diagramas de actividades................................................................................................... 74 
4.6 EL ANÁLISIS EN OPC .................................................................................................................... 77 
4.6.1 Las clases de análisis .............................................................................................................. 77 
4.6.1.1 Las clases de análisis tipo entity ......................................................................................... 77 
4.6.1.2 Las clases de análisis tipo boundary.................................................................................... 79 
4.6.1.3 Las clases de análisis tipo control ....................................................................................... 80 
4.7 EL DISEÑO EN OPC ...................................................................................................................... 80 
4.7.1 El refinamiento de las clases entity en OPC................................................................................ 80 
4.7.2 Relaciones entre clases ........................................................................................................... 81 
4.7.2.1 Herencia..........................................................................................................................82 
4.7.2.2 Polimorfismo .................................................................................................................... 83 
4.7.2.3 Asociación: Agregación...................................................................................................... 85 
4.7.2.4 Asociación: Composición.................................................................................................... 86 
4.7.3 El diseño de la base de datos: El modelo ER de OPC.................................................................. 86 
4.7.4 El diccionario de Datos ............................................................................................................ 90 
4.8 UN EJEMPLO DE ANÁLISIS Y DISEÑO: LAS FÓRMULAS Y CONCEPTOS DE PAGO EN OPC ..................... 91 
4.8.1 El Lenguaje de las fórmulas ..................................................................................................... 92 
4.8.2 El Análisis léxico de fórmulas.................................................................................................... 93 
4.8.3 El Análisis sintáctico de fórmulas ............................................................................................. 95 
4.8.3.1 Las gramáticas libres del contexto ...................................................................................... 95 
LE
AD
TO
OL
S e
Pr
int
 IV
 ev
alu
ati
on
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Tabla de contenido 
 IV 
4.8.3.2 Análisis sintáctico por descenso recursivo. ........................................................................... 96 
4.8.3.3 Los conjuntos de selección................................................................................................. 97 
CAPÍTULO 5. LA ARQUITECTURA Y LOS PATRONES J2EE........................................................ 103 
5.1 LA NECESIDAD DE EMPLEAR PATRONES EN J2EE ...........................................................................104 
5.1.1 Definición de patrón...............................................................................................................105 
5.2 EL CATALOGO DE PATRONES J2EE................................................................................................105 
5.3 LA ARQUITECTURA Y LOS PATRONES DE OPC................................................................................108 
5.3.1 Los mecanismos de análisis ....................................................................................................108 
5.3.2 La estructura física de la arquitectura en OPC. ..........................................................................110 
5.3.3 La estructura lógica de la arquitectura en OPC. .........................................................................110 
5.4 TRANSFER OBJECT......................................................................................................................111 
5.4.1 Transfer Object en OPC..........................................................................................................112 
5.5 FRAME CONTROLLER...................................................................................................................114 
5.5.1 El Frame controller de OPC .....................................................................................................115 
5.6 CICLOS DE CONTROL ..................................................................................................................117 
5.6.1 Los ciclos de control en OPC ...................................................................................................118 
5.7 SERVICE LOCATOR......................................................................................................................121 
5.7.1 Service locator en OPC ..........................................................................................................122 
5.8 BUSINESS DELEGATE...................................................................................................................125 
5.8.1 Business Delegate en OPC ......................................................................................................125 
5.9 SESSION FACADE.......................................................................................................................128 
5.9.1 Session Facade en OPC: El proceso de generación de nóminas. ..................................................129 
5.10 VALUE LIST HANDLER................................................................................................................134 
5.10.1 Value List Handler de OPC.....................................................................................................134 
5.11 LAS ESTRATEGIAS DE PERSISTENCIA..........................................................................................138 
5.11.1 El mapeo de bases de datos relacionales con objetos...............................................................139 
5.11.2 El cache de datos persistentes...............................................................................................139 
5.11.3 Persistencia transparente......................................................................................................139 
5.11.4 Principales tecnologías en el manejo de persistencia de datos .................................................140 
5.11.4.1 El manejo de recursos de persistencia ..............................................................................140 
5.11.4.2 CMP Entity Beans...........................................................................................................140 
5.11.4.3 JDBC ............................................................................................................................141 
5.11.4.4 iBATIS SQL Maps ...........................................................................................................142 
5.11.4.5 JDO..............................................................................................................................143 
5.11.4.6 Hibernate......................................................................................................................144 
5.11.4.7 Spring Framework..........................................................................................................144 
5.12 EL MANEJO DE PERSISTENCIA EN OPC.......................................................................................145 
5.13 DATA ACCESS OBJECT EN OPC ...................................................................................................147 
5.13.1 La fábrica de DAOs ..............................................................................................................147 
LE
AD
TO
OL
S e
Pr
int
 IV
 ev
alu
ati
on
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Tabla de contenido 
 V 
CAPÍTULO 6. EL DESARROLLO J2EE ....................................................................................... 155 
6.1 LA ESTRUCTURA DE LA APLICACIÓN J2EE .....................................................................................157 
6.1.1 El módulo Web y la tecnología Java Web Start en OPC...............................................................157 
6.2 CONSTRUCCIÓN DE PANTALLAS EN OPC .......................................................................................160 
6.2.1 Construcción de pantallas – Control de conceptos de pago .........................................................161 
6.3 DESARROLLO DE CASO DE USO: EL CONTROL DE FÓRMULAS EN OPC............................................1656.3.1 Mnemónicos..........................................................................................................................165 
6.3.2 Elementos del contexto. .........................................................................................................166 
6.3.3 Construcción del analizador léxico............................................................................................168 
6.3.4 Construcción del analizador sintáctico ......................................................................................171 
6.3.5 Construcción del Traductor y sustitución de fórmulas................................................................174 
6.3.5.1 El traductor de fórmulas: expresiones postfijas....................................................................174 
6.3.6 Construcción del evaluador de fórmulas ..................................................................................177 
6.4 LA SEGURIDAD EN OPC. ..............................................................................................................178 
6.4.1 La autentificación de usuarios (clientes) ..................................................................................179 
6.4.2 Los roles de seguridad............................................................................................................181 
6.5 LAS HERRAMIENTAS DE DESARROLLO ..........................................................................................182 
6.6 LA DOCUMENTACIÓN DEL SISTEMA. ............................................................................................183 
CAPÍTULO 7. LAS PRUEBAS Y LOS RESULTADOS: LA GENERACIÓN DE NÓMINAS CON J2EE ........ 187 
7.1 LOS PROCESOS PREVIOS A LA GENERACIÓN DE NOMINAS..............................................................189 
7.1.1 El catálogo de conceptos ........................................................................................................190 
7.1.1.1 Evaluación de conceptos...................................................................................................190 
7.2 EL PROCESO DE GENERACIÓN DE NÓMINAS.................................................................................192 
7.3 LA OBTENCIÓN DE LOS RESULTADOS ...........................................................................................199 
7.3.1 Ejercicio 1.............................................................................................................................201 
7.3.2 Ejercicio 2.............................................................................................................................202 
7.3.3 Ejercicio 3.............................................................................................................................202 
7.3.4 Ejercicio 4.............................................................................................................................203 
7.3.5 Ejercicio 5.............................................................................................................................207 
7.3.6 Ejercicio 6.............................................................................................................................219 
7.3.7 Ejercicio 7.............................................................................................................................210 
7.4 LOS RESULTADOS FINALES ..........................................................................................................211 
7.5 LOS ESCENARIOS DE PRUEBAS.....................................................................................................211 
7.5.1 El formato de los escenarios de prueba ...................................................................................211 
7.6 UN CASO DE PRUEBAS – PROBAR FÓRMULAS ................................................................................212 
CAPÍTULO 8. EL FINAL: CONCLUSIONES.................................................................................. 217 
8.1 LAS CONCLUSIONES....................................................................................................................219 
LE
AD
TO
OL
S e
Pr
int
 IV
 ev
alu
ati
on
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Tabla de contenido 
 VI 
APÉNDICE A........................................................................................................................... 225 
DOCUMENTACIÓN DE REQUERIMIENTOS Y ANÁLISIS ..........................................................................225 
A.1 CONTROLAR CALENDARIO ...........................................................................................................225 
A.1.1 Diagrama de casos de uso.....................................................................................................225 
A.1.2 Descripción de casos de uso ...................................................................................................226 
A.1.3 Escenario..............................................................................................................................226 
A.1.4 Diagrama de actividades ........................................................................................................228 
A.2 CONTROLAR MUNICIPIOS...........................................................................................................229 
A.2.1 Diagrama de casos de uso......................................................................................................229 
A.2.2 Descripción de casos de uso ...................................................................................................229 
A.2.3 Escenario..............................................................................................................................230 
A.2.4 Diagrama de actividades ........................................................................................................232 
A.3 CONTROLAR FÓRMULAS ..............................................................................................................233 
A.3.1 Diagrama de casos de uso......................................................................................................233 
A.3.2 Descripción de casos de uso ...................................................................................................233 
A.3.3 Escenario..............................................................................................................................233 
A.3.4 Diagrama de actividades ........................................................................................................236 
A.4 CONTROLAR CONCEPTOS DE PAGO ..............................................................................................238 
A.4.1 Diagrama de casos de uso......................................................................................................238 
A.4.2 Descripción de casos de uso ...................................................................................................238 
A.4.3 Escenario..............................................................................................................................238 
A.4.4 Diagrama de actividades ........................................................................................................240 
A.5 PROBAR FÓRMULAS Y CONCEPTOS DE PAGO.................................................................................242 
A.5.1 Diagrama de casos de uso.....................................................................................................242 
A.5.2 Descripción de casos de uso ...................................................................................................242 
A.5.3 Escenario..............................................................................................................................242A.5.4 Diagrama de actividades ........................................................................................................247 
APÉNDICE B........................................................................................................................... 249 
MODELO ENTIDAD RELACIÓN............................................................................................................249 
B.1 MODELO ER – ESQUEMA DE SEGURIDAD.......................................................................................249 
B.2 MODELO ER – PLANTILLA ............................................................................................................250 
B.3 MODELO ER – Operación y control del pago ...................................................................................250 
APÉNDICE C........................................................................................................................... 253 
SCRIPT SQL .....................................................................................................................................253 
C.1 SCRIPT SQL EMPLEADO EN OPC PARA MySQL...............................................................................253 
APÉNDICE D........................................................................................................................... 265 
EJEMPLOS DE CÓDIGO – PATRONES J2EE...........................................................................................265 
LE
AD
TO
OL
S e
Pr
int
 IV
 ev
alu
ati
on
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Tabla de contenido 
 VII 
D.1 FRAME CONTROLLER ..................................................................................................................265 
D.1.1 La clase cp.pantalla.util.JuBarraMenuHash ...............................................................................265 
D.1.2 La clase cp.pantalla.PnSiar .....................................................................................................266 
D.1.3 La clase cp.pantalla.util.JuMenu ..............................................................................................268 
D.1.4 La clase cp.cvalor. CvAdmArbolMenu .......................................................................................268 
D.1.5 La clase cp.pantalla.util.JuMenuIten ........................................................................................268 
D.2 LAS PANTALLAS – EJEMPLO. ........................................................................................................268 
D.2.1 La clase padre de todas las pantallas: cp.pantalla.PnBaseSiar....................................................268 
D.2.2 Ejemplo de pantalla, la clase cp.pantalla.PnFormula .................................................................269 
D.3 CICLOS DE CONTROL..................................................................................................................272 
D.3.1 La clase padre de los ciclos de control: cp.control.CnBaseSiar.....................................................272 
D.3.2 El ciclo de control empleado en el control de fórmulas...............................................................272 
D.4 SERVICE LOCATOR .....................................................................................................................276 
D.4.1 La clase cp.conexion.ServiceLocator ........................................................................................276 
D.5 BUSINESS DELEGATE ..................................................................................................................278 
D.5.1 La clase cp.delegate.BpControlFormula ....................................................................................278 
D.6 VALUE LIST HANDLER .................................................................................................................279 
D.6.1 La clase cp.ejb.PlValueListHandler..........................................................................................279 
D.7 DATA ACESS OBJECT...................................................................................................................281 
D.7.1 La clase cp.dao.factory.DAOFactory........................................................................................281 
D.7.2 La clase padre de los DAOS cp.dao.factory.DAOMaster .............................................................281 
D.7.3 La interface cp.dao.DaoEvaluador ...........................................................................................282 
D.7.4 La clase cp.dao.DaoEvaluadorMySQL.......................................................................................283 
APÉNDICE E........................................................................................................................... 287 
ANÁLISIS DE FÓRMULAS ...................................................................................................................287 
E.1 EL SCANNER DE FÓRMULAS .........................................................................................................287 
E.1.1 La clase cp.parser.ArrayListToken............................................................................................287 
E.1.2 La interface cp.parser.RegularExpretions .................................................................................288 
E.1.3 La clase cp.parser.ScannerFormula .........................................................................................288 
E.1.4 La clase cp.parser.ParserElement............................................................................................291 
E.2 EL PARSER DE FÓRMULAS...........................................................................................................291 
E.2.1 La clase cp.parser.ParserFormula............................................................................................291 
E.3 EL TRADUCTOR DE FÓRMULAS....................................................................................................294 
E.3.1 La clase cp.parser.TraductorFormula.......................................................................................294 
E.4 EL EVALUADOR DE FÓRMULAS ....................................................................................................296 
E.4.1 La clase cp.parser.EvaluadorFormula ......................................................................................296 
APÉNDICE F ........................................................................................................................... 301 
HILOS DE EJECUCIÓN: PROCESO DE GENERACIÓN DE NÓMINAS..........................................................301 
LE
AD
TO
OL
S e
Pr
int
 IV
 ev
alu
ati
on
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Tabla de contenido 
 VIII 
F.1 EL HILO DE EJECUCIÓN PARA EL CÁLCULO DE CONCEPTOS. .........................................................301 
F.1.1 La clase cp.ejb.ThreadCalculo .................................................................................................301 
F.2 EL HILO DE EJECUCIÓN EN BASE DE DATOS...............................................................................306 
F.2.1 La clase cp.ejb.ThreadAfectacion.............................................................................................306 
BIBLIOGRAFÍA ........................................................................................................................ 311 
 
 
 
LE
AD
TO
OL
S e
Pr
int
 IV
 ev
alu
ati
on
Evaluation notes were addedto the output document. To get rid of these notes, please order your copy of ePrint IV now.
CAPÍTULO 1 
 
CAPÍTULO 8 
CAPÍTULO 2 
 
APÉNDICE A 
CAPÍTULO 3 
 
APÉNDICE B 
CAPÍTULO 4 
 
APÉNDICE C 
CAPÍTULO 5 
 
APÉNDICE D 
CAPÍTULO 6 
 
APÉNDICE E 
CAPÍTULO 7 APÉNDICE F 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
INTRODUCCIÓN 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
SISTEMA INTEGRAL DE OPERACIÓN Y CONTROL DEL PAGO PARA NÓMINAS DEL IFE A NIVEL 
NACIONAL EMPLEANDO LA ARQUITECTURA J2EE 
 
 
 
EL SISTEMA OPC 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 
 2 
INTRODUCCIÓN 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Introducción 
 
 3 
 
 
En este trabajo de tesis se presenta el sistema OPC (Operación y Control del Pago), como una 
propuesta de diseño y desarrollo para dar solución a los problemas y requerimientos del IFE (Instituto 
Federal Electoral), que surgen con la necesidad de actualizar e integrar cada uno de sus módulos 
encargados del control y administración de sus recursos materiales, financieros y humanos. 
 
A lo largo de los 7 capítulos que componen este trabajo, se presenta el ciclo completo de 
desarrollo de software, partiendo del análisis de requerimientos y la situación actual, hasta la 
terminación del desarrollo, los resultados y la generación de pruebas. 
 
 En el capítulo 1 se discute la problemática y la situación actual. Las necesidades y los 
problemas aquí descritos representan el punto inicial para la identificación de los requerimientos, el 
análisis y el diseño. 
 
 Como respuesta al análisis de requerimientos planteado en el capítulo 1, el siguiente punto 
considerado en el capítulo 2, es una revisión de las arquitecturas empresariales como posible solución 
a los requerimientos del sistema. En este capítulo se presentan las principales características de estas. 
J2EE y .NET como las 2 opciones disponibles, así como los argumentos y la justificación del porque 
J2EE es la arquitectura seleccionada en OPC. 
 
 Una vez que se ha determinado el uso de una arquitectura empresarial en OPC, y después de 
haber seleccionado a J2EE, en el capítulo 3 se realiza el estudio y la revisión teórica de los 
conceptos más importantes de la tecnología Java y J2EE. La finalidad principal de este capítulo es el 
establecimiento de los conocimientos y fundamentos teóricos que permitirán realizar la toma de 
decisiones para el diseño y construcción de la arquitectura del sistema, haciendo uso de las tecnologías 
y herramientas más adecuadas. 
 
 Continuando con el ciclo de desarrollo del sistema OPC, en el capítulo 4 se realiza el análisis 
de los casos de uso en base al proceso de desarrollo de software seleccionado. UML como lenguaje de 
modelado es incorporado a cada una de las etapas del ciclo de desarrollo. En este capítulo se presentan 
los conceptos básicos de la teoría de UML, así como los conceptos empleados en el diseño de objetos: 
polimorfismo, relaciones entre objetos (herencia, agregación, composición), etc., empleando para ello los 
casos de uso de OPC. Se establece la metodología a seguir, iniciando con el modelado de negocio, 
para continuar con el análisis y diseño de entidades. 
 
 El capítulo 4 finaliza con el análisis y diseño de uno de los casos de uso más importantes del 
sistema: El control de fórmulas. Para satisfacer los requerimientos de este proceso, se incorporan 
algunos conceptos de la teoría de los lenguajes formales, así como de la teoría de compiladores, 
empleados en la definición y construcción del analizador léxico, analizador sintáctico, traductor y 
evaluador, para cada uno de los 3 tipos de fórmulas, definidos a través del empleo de las gramáticas. 
 
Continuando con el diseño del sistema, el capítulo 5 hace una completa revisión del catálogo 
de patrones J2EE, los cuales proporcionan la identificación de los principales riesgos y problemas 
comunes que se presentan durante el desarrollo de una aplicación. En este capítulo se refina la 
arquitectura del sistema OPC haciendo uso de 8 patrones: Frame Controller, Control cycles, Service 
Locator, Business Delegate, Session Facade, Value List Handler, Data Access Object y Transfer Object. 
Para cada uno de ellos, se realiza un análisis completo así como el estudio de los principales beneficios 
que estos ofrecen. 
 
Para ilustrar el funcionamiento de cada patrón, se emplean los casos de uso del sistema. UML 
juega un papel muy importante en este capítulo para el modelado, y la representación de cada uno de 
los patrones implementados. 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Introducción 
 
 4 
 El capítulo termina con el análisis de las principales tecnologías de persistencia de datos: 
Hibernate, JDO, iBATIS, Spring Framework, y Data Access Object. Estas tecnologías han surgido a partir 
de los problemas comúnmente conocidos relacionados con el manejo de la persistencia, identificadas en 
este capítulo. Su crecimiento y la aceptación han sido grandes, por lo que la integración de una o más 
de ellas es un aspecto que no puede omitirse para el caso de OPC. 
 
 En el capítulo 6 se presentan los principales aspectos técnicos del desarrollo del sistema, se 
muestra la implementación y fragmentos del código fuente de los principales casos de uso analizados y 
diseñados en capítulos anteriores. En este capítulo se discute la incorporación de la tecnología Java 
Web Start como mecanismo de transporte para la obtención, ejecución y actualización de la aplicación 
cliente standalone incluida en OPC. 
 
 Como complemento al ejemplo de análisis y diseño del caso de uso Controlar fórmulas estudiado 
en el capítulo 4, se presenta la estrategia empleada para la construcción del analizador léxico, el 
analizador sintáctico, traductor y evaluador de fórmulas, empleando para ello las principales 
herramientas que ofrece el lenguaje de programación Java como son el manejo de expresiones 
regulares, manejo de estructuras de datos, comparación de objetos en tiempo de ejecución, evaluación 
de expresiones postfijas, etc., si dejar de tomar en cuenta a UML como medio principal para la 
representación y modelado de cada una de las clases e interfaces que participan en este proceso. 
 
 La seguridad es el siguiente punto sujeto a discusión. Se presentan los principales mecanismos 
empleados en OPC, aplicados en cada una de las capas que componen el sistema, se realiza una 
revisión del esquema de seguridad ofrecido por la arquitectura J2EE. 
 
 El capítulo 6 termina con la revisión de la documentación generada en donde se hace una 
mención especial de la documentación del desarrollo y código del sistema haciendo uso de la 
herramienta JAVADOC. 
 
 
Finalmente el capítulo 7 presenta el análisis de resultados empleando para ello el proceso de 
creación y generación de nóminas. Como primer punto, se muestra la estrategia de implementación para 
el cálculo y afectación de conceptos. (Afectación se refiere a las operaciones necesarias para guardar 
los cálculos de una nómina en el correspondiente mecanismo de persistencia). Para ello se emplea el 
concepto de programación multihilos en Java y J2EE, tanto en la capa del cliente como en el servidor 
de aplicaciones. 
 
Para la obtención de resultados se realizan diversos ejercicios en donde se ejecutan varios 
procesos de generación y calculo de nóminas bajo distintas circunstancias. Al término de esta sección se 
realiza un análisis determinandoasí las capacidades de procesamiento y tiempos empleados por el 
sistema, justificando así los resultados y las conclusiones del desarrollo. 
 
 En el capítulo 8 se presentan las conclusiones generales del presente trabajo. 
 
 Como complemento al desarrollo de cada uno de los capítulos que integran este trabajo, se 
presentan los apéndices cuya función principal es el refuerzo del entendimiento en las distintas 
etapas del desarrollo del sistema. 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 Introducción 
 
 5 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 
 
 
 
 
 
 
 
 
 
 
LA PROBLEMÁTICA Y LOS REQUERIMIENTOS 
 
 
 
 
 
 
 
 
 
 
 
 
 
 En la primer parte del capítulo, se describe el problema que habrá de abordarse en 
el presente trabajo de tesis. Posteriormente, se realiza una descripción general del entorno en el 
que se encuentra en sistema OPC (Operación y control del pago) como parte de un sistema 
integral. 
 
Es en este punto donde surge la necesidad de una nueva propuesta que habrá de 
resolver cada uno de los requerimientos identificados a lo largo de las secciones de este capítulo. 
 
 Como consecuencia de la situación actual del problema, se presenta el análisis de 
requerimientos el cual será el punto de partida para el análisis y diseño del sistema. 
 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 8 
CAPÍTULO 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
La problemática y los requerimientos Capítulo 1 
 
 9 
 
SISTEMA INTEGRAL DE OPERACIÓN Y CONTROL DEL PAGO PARA NÓMINAS DEL IFE A NIVEL 
NACIONAL USANDO LA ARQUITECTURA J2EE 
 
 
1.1 DEFINICIÓN DEL PROBLEMA 
 
El SIAR (Sistema Integrador de Administración de Recursos) nace como una propuesta del 
Instituto Federal Electoral (IFE) respondiendo a la necesidad de contar con una herramienta que 
permita la administración de sus recursos materiales, financieros y humanos. Una herramienta capaz de 
resolver cada uno de los problemas y requerimientos que se han generado a lo largo de los últimos años. 
El SIAR esta formado por 3 áreas basadas en el tipo de recurso. Cada área a su vez esta 
integrada por módulos que en su conjunto gestionan los recursos correspondientes a su área: 
 
 Recursos Materiales 
o Módulo de Inventario 
o Módulo de Almacén 
o Modulo de Adquisiciones 
 Recursos Financieros 
o Módulo de Presupuesto 
o Módulo Operación Bancaria 
o Módulo de Contabilidad. 
 Recursos Humanos 
o Módulo Control de la Plantilla 
o Módulo Censo de Personal 
o Módulo Enteros y pagos a Terceros 
o Módulo control Presupuestal del capitulo 1000 
o Módulo Operación y control del pago 
 
El SIAR es un sistema integral ya que permite la interacción y comunicación entre módulos de 
una misma ó distintas áreas. Dicha interacción es totalmente necesaria debido a la estrecha relación que 
existe entre los procesos que día a día realizan el IFE, desde la adquisición de algún recurso material, 
hasta la generación de un pago de nómina quincenal de un trabajador. En términos generales, un 
proceso dentro del SIAR se define como una serie de pasos a seguir partiendo de un módulo inicial y 
terminando en un módulo final, que pueden pertenecer a un mismo módulo, a módulos de una misma ó 
diferente área. 
 
Ejemplo: 
 
Fig. 1.1 Flujo general que describe los pasos de un proceso dentro del SIAR 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
La problemática y los requerimientos Capítulo 1 
 
 10 
 La figura 1.1 muestra la secuencia de pasos que se ejecutan dentro de un proceso, como son la 
adquisición de algún bien material, la licitación de algún servicio, etc. Se puede observar en el diagrama 
la interacción que tienen los módulos pertenecientes al área de recursos financieros. Dentro de cada 
módulo existe una secuencia entrada – proceso – salida en donde la salida del módulo inicial será la 
entrada del módulo siguiente. 
 
 A nivel nacional, el IFE cuenta con 32 Juntas locales (una por cada estado de la república 
mexicana). Consideraremos a una Junta local como una entidad que representa al IFE en cada estado 
del país. La administración de los recursos a nivel nacional se realiza de la siguiente forma: 
 
 Recursos Materiales y Financieros: Cada Junta Local se encarga de la administración de sus 
recursos y se realizan procesos de conciliación con oficinas centrales (Distrito Federal). 
 
 Recursos Humanos: Todo el procesamiento es centralizado, cada junta local envía su 
información a Oficinas centrales en donde se realiza el procesamiento de los datos, para 
finalmente, enviar la información procesada a las juntas locales. 
 
 
 
Fig. 1.2 Administración de Recursos a nivel nacional. 
 
En la figura 1.2 se muestra la infraestructura del sistema empleada para la administración de 
recursos del IFE a nivel nacional. Cada Junta local cuenta con tecnología y recursos de cómputo los 
cuales pueden ser diferentes por cada Junta, e inclusive diferentes a los recursos empleados en oficinas 
centrales. El SIAR es un sistema que debe ser capaz de adaptarse a cada una de las necesidades tanto 
de oficinas centrales como de cada junta local. 
 
 
1.2 SITUACIÓN ACTUAL 
 
 Los siguientes puntos muestran la forma general en la que el IFE realiza la administración de 
sus recursos. La manera en que se han venido realizando dicha administración durante los últimos años, 
el surgimiento de nuevos requerimientos, y el avance constante de nuevas tecnologías entre otras cosas, 
hacen evidentes los problemas que llevan a la integración del SIAR como solución a la problemática 
que a continuación se describe: 
 
 Sistemas Independientes. Actualmente cada módulo es un sistema independiente: 
presupuesto, adquisiciones, Op. y control del pago, etc. Las tecnologías empleadas son 
diversas, Visual Fox Pro, Visual Basic, C++, Hojas de calculo, bases de datos como SQL 
server, Clipper, Access, etc. La independencia de estos sistemas implica una nula relación 
entre módulos. 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
La problemática y los requerimientos Capítulo 1 
 
 11 
 Cada módulo cuenta con una administración independiente, se cuenta con una unidad técnica 
o de sistemas que se encarga del mantenimiento de cada sistema. 
 
 Debido a la naturaleza de los procesos, la comunicación entre módulos se lleva acabo 
principalmente mediante la distribución de archivos de texto y hojas de cálculo. 
 
 Como consecuencia de la implementación de diferentes tecnologías, cada módulo realiza 
procesos adicionales de adaptación para poder interpretar de forma correcta la información 
que es recibida. 
 
 A nivel nacional el proceso de conciliación con oficinas centrales es un proceso que requiere 
de la espera de la transmisión y recepción de la información que habrá de procesarse, la cual 
como se mencionó en el primer punto, llega en archivos de texto, hojas de calculo, o en bases 
de datos sin integridad. 
 
 En cada junta local se dispone de recursos de cómputo limitados.1.2.1 Operación y control del pago 
 
Adicionalmente a los puntos listados anteriormente, cada área y módulo que integran el SIAR 
presenta una problemática específica. 
El presente trabajo de tesis se especializa en un módulo del SIAR: Operación y control del 
Pago (OPC) teniendo en cuenta el rol que desempeña dentro de este sistema integrador. 
 
 Operación y control del pago es la parte medular del área de recursos humanos del SIAR, en el 
cual se realiza el cálculo, control y seguimiento de los pagos de cada uno de los trabajadores del IFE a 
nivel nacional. La principal tarea de este módulo es la generación de nóminas quincenales divididas en 
los diferentes tipos de plaza que define el módulo de plantilla. Así mismo OPC tiene la necesidad de 
interactuar con otras áreas y módulos del SIAR para poder llevar a cabo su tarea, como son: 
Presupuesto, control de la plantilla, enteros y pagos a terceros, etc. 
 
 Actualmente OPC cuenta con 87 procesos que gestionan el control de pagos de los empleados: 
 
OPERACIÓN Y CONTROL DEL PAGO 
CATÁLOGOS 
1. Consultar estados 2. Consultar clave programática (de presupuesto) 
3. Controlar tipos de baja 4. Controlar lista de documentos para expediente 
5. Controlar radicaciones 6. Controlar bancos y cuentas de cargo 
7. Consultar tipos de nominas 8. Controlar municipios 
9. Controlar calendario 10.Controlar subpartida 
FÓRMULAS Y CONCEPTOS 
11. Controlar formulas 12.Controlar conceptos de pago - alta 
13. Probar formulas y conceptos de pago 14.Controlar conceptos de pago - modificación y consulta 
15. Recalcular conceptos 
TABULADORES 
16. Controlar tabuladores 17.Controlar tabla de impuestos 
18. Calcular valor de tabuladores 19.Modificar tabuladores con base en un tabulador calculado 
NOMINAS 
20. Crear nomina manual 21.Cerrar nomina 
22. Crear nomina automática 23.Afectar un concepto en la nómina 
24. Controlar nóminas 25.Calcular nómina 
PRODUCTOS DE PAGO 
26. Generar estimado de nómina 27.Imprimir recibos 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
La problemática y los requerimientos Capítulo 1 
 
 12 
28. Generar interfaz con financieros 29.Generar archivos para bancos 
30. Imprimir listado de nómina 
FUM 
31. Captura de movimientos – alta presupuestal 32.Captura de movimientos – alta honorarios 
33. Captura de movimientos – promoción 
presupuestal 
34.Captura de movimientos – promoción honorarios 
35. Captura de movimientos – despromoción presupuestal 36.Captura de movimientos – despromoción honorarios 
37. Captura de movimientos – reingreso presupuestal 38.Captura de movimientos - reingreso honorarios 
39. Captura de movimientos – baja presupuestal 40.Captura de movimientos – baja honorarios 
41. Captura de movimientos–cambio radicación presupuestal 42.Captura de movimientos - cambio de radicación honorarios 
43. Modificar fum 44.Consulta de movimientos 
45. Validar movimientos 46.Autorizar movimientos 
47. Cancelar autorizaciones programadas 48.Habilitar trabajador 
NOMINA EXTRAORDINARIA 
49. Definir nómina extraordinaria - conceptos 50.
Capturar nómina extraordinaria – aplicar movimiento sin 
fum 
51. Capturar nómina extraordinaria – elaborar pago a un empleado activo 52.
Capturar nómina extraordinaria – fum sin autorización en 
procedimiento normal 
QUINQUENIO 
53. Capturar primer quinquenio 54.Actualizar antigüedad 
55. Aplicar quinquenio 56.Consultar antigüedad 
CONTRATOS 
57. Modificar parámetros de contratos 58.Imprimir contratos 
59. Cargar plantillas de contratos 
CANCELADOS Y REINTEGROS 
60. Capturar reintegro de cheque 61.Capturar reintegro por cuenta 
62. Consultar reintegro 63.Capturar reintegro anticipado 
64. Cancelar pago 65.Aplicar reintegro por cuenta 
66. Registrar reintegros en presupuesto 
PENSIÓN ALIMENTICIA 
67. Capturar pensión alimenticia 68.Calcular monto y retroactivo 
69. Modificar / eliminar pensión alimenticia 
FINIQUITOS 
70. Solicitar finiquito 71.Calcular finiquito 
72. Emitir cédula de análisis e investigación 
UTILERÍAS 
73. Capturar numero de cuenta del empleado 74.Mover conceptos entre nóminas 
75. Editar conceptos de un trabajador 76.Generar clave de autorización 
REPORTES 
77. Reporte - movimientos por autorizar 78.Reporte - constancia de no adeudo (cédula de análisis e investigación de registros) 
79. Reporte - resumen contable por reintegro individual 80.Reporte - certificado de no adeudo 
81. Reporte - reporte de reintegros 82.Reporte - certificado de antigüedad 
83. Reporte - resumen contable de nómina 84.Reporte – pensionadas 
85. Reporte - solicitud de ministración 86.Reporte - resumen contable de cancelados 
87. Reporte - movimientos autorizados y/o rechazados 
Fig. 1.3 casos de uso del Mod. Op. Control del Pago. 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
La problemática y los requerimientos Capítulo 1 
 
 13 
La problemática que se ha generado a lo largo de los últimos años para la ejecución de cada uno de sus 
procesos, ha venido en aumento debido a múltiples razones: 
 
 Como se mencionó anteriormente, el sistema debe permitir interactuar con otros módulos, 
actualmente esta interacción se realiza de forma manual mediante el uso de archivos y hojas de 
cálculo. Dicha interacción se requiere principalmente para realizar la interfaz con el módulo de 
presupuesto, en el que se reportan los importes calculados de todos los conceptos de pago de una 
nómina, y mediante los cuales, el módulo de presupuesto realiza los procesos requeridos para hacer 
posible la disponibilidad de los sueldos de los empleados en sus diferentes formas de pago. El uso de 
archivos presenta varios inconvenientes como son: 
 
o La carencia de integridad entre datos. 
o La susceptibilidad a errores al generar o capturar cada archivo. 
o La seguridad nula en cuanto a la veracidad de la información. 
o El tiempo requerido principalmente cuando esta interfaz se realiza con alguna dependencia 
del IFE dentro del país. 
 
 El cálculo de los conceptos de una nómina se realiza mediante la aplicación de rutinas programadas 
en la que se definen las reglas o criterios de aplicación así como la fórmula que define el importe de 
cada concepto. Esta forma de calcular conceptos presenta varios inconvenientes, ya que 
frecuentemente se requiere la modificación de los criterios de aplicación e importes tales como 
tabuladores, tablas de impuestos, etc., debido a alguna solicitud de incremento o ajuste de sueldos 
entre otras cosas. 
 
Cada vez que se requiere realizar algún ajuste a las fórmulas de cálculo o criterios de aplicación, se 
tienen que modificar o generar nuevas rutinas lo que implica la modificación de código fuente. Se 
requieren procesos de prueba de las rutinas creadas o modificadas generando un mayor esfuerzo y 
tiempo por parte del área de sistemas de Recursos Humanos. 
 
 Recalculo de conceptos. Una problemática adicional derivada del punto anterior se origina cuando se 
debe realizar un cambio a las fórmulas de cálculo cuando el pago ya ha sido entregado al 
trabajador, es decir, un recalculo. Para ello se requieren procesos que corrijan los importes ya 
generados y ajustarlos en pagos posteriores. Actualmente se tienen que programar y probar nuevas 
rutinas, proceso que en ocasiones dura varios días. 
 
 Manejo de Históricos. A lo largo de 5 años, se debe mantener un histórico de toda la información 
generada como son afectaciones (una afectación es un importe de un concepto de un trabajador), 
movimientos de empleados, histórico de conceptos de pago, histórico de fórmulas, etc. 
 
Actualmente el sistema no cuenta con un histórico de fórmulas adecuado para su aplicación que 
verifique una fecha anterior a lafecha de la quincena en curso. El cálculo con versiones de fórmulas 
anteriores se tiene que hacer manual, ya que el sistema no es capaz de seleccionar una versión de 
fórmula adecuada dependiendo de la quincena que se este evaluando. Con frecuencia estos cálculos 
se requieren efectuar, sobre todo para trabajadores con pagos atrasados. 
 
 Interacción con las Juntas locales. El área de recursos humanos cuenta con un sistema 
centralizado con respecto a las Juntas locales del país. Cada quincena de pago, el sistema genera 
los cálculos y la información necesaria para la entrega de los pagos a cada empleado a nivel 
nacional. 
 
Actualmente la información se envía por distintos medios. La carencia de un mecanismo general y 
centralizado que permita una rápida, confiable y segura interfaz entre el sistema central y el resto del 
país trae como consecuencia el retraso y la falta de seguridad entre otras cosas para poder realizar 
el procesamiento y finalmente la entrega de los pagos a los trabajadores. 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
La problemática y los requerimientos Capítulo 1 
 
 14 
 
 
Fig. 1.4 El Mod. Op. Control del Pago es un sistema centralizado. 
 
 La falta de la interfaz descrita en el punto anterior, se hace notar también cuando cada Junta local 
envía sus movimientos de trabajadores como son altas, bajas, etc., para su procesamiento en el 
sistema central. Actualmente toda esta información se manda en papel mediante formatos FUM 
(Formato Único de Movimientos) por lo que en el sistema central se tiene que capturar toda esta 
información generando retrasos, y riesgo de error al capturar. 
 
Adicionalmente, cada movimiento de un trabajador pasa por un proceso de validación, la cual si no es 
exitosa, esta información habrá de ser corregida por parte de las Juntas locales. Debido al 
mecanismo empleado, las correcciones generan atrasos provocando el retraso de los pagos de los 
trabajadores. 
 
 Generación de Nóminas. La generación de nóminas quincenales es uno de los procesos más 
importantes del módulo. El sistema debe ser capaz de procesar una plantilla con las siguientes 
características: 
 
o Procesamiento de 8750 trabajadores (aprox.). Para plazas tipo presupuestales. 
o Procesamiento de 7100 trabajadores (aprox.). Para plazas tipo Honorarios y hasta 80,000 
(aprox.) en proceso electoral. 
 
Lo anterior implica un sistema lo suficientemente capaz de ejecutar todo el procesamiento de 
cálculos correspondiente en el menor tiempo posible que garantice la confiabilidad y la seguridad 
entre otras cosas, que requiere una nómina quincenal. 
 
Actualmente este proceso se realiza por partes con una duración de varios días. Cada parte del 
proceso es independiente, lo que origina riesgos como la posibilidad de que un trabajador aparezca 
en 2 nóminas diferentes. Cuando el proceso de generación de nóminas genera errores por alguna 
falla en fórmulas, etc., la corrección se tiene que hacer de forma manual, todos aquellos trabajadores 
que no hayan podido ser incluidos en la nómina ordinaria, se tienen que agregar en forma manual, 
con la finalidad de no retrasar sus pagos. 
 
 
1.3 ANÁLISIS DE REQUERIMIENTOS 
 
En base a la situación actual descrita en la sección anterior, el módulo de operación y control del 
pago como parte del SIAR, debe ser un módulo que cumpla con los siguientes requerimientos: 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
La problemática y los requerimientos Capítulo 1 
 
 15 
1.3.1 Requerimientos no funcionales 
 
 El sistema debe ser centralizado. Es decir, todo el procesamiento y control de los pagos se 
concentra en el sistema principal ubicado en oficinas centrales que habrá de atender las 
necesidades de cada junta local. 
 
 Cada junta local debe contar con una interfaz de acceso al sistema central la cual debe 
proporcionar una serie de servicios gestionados por perfiles de usuario. Los servicios que debe 
proporcionar para una junta local son: 
o Capturar, Modificar y Consultar movimientos de trabajadores, como son Altas, Bajas, 
etc. Al permitir a cada junta local realizar estas tareas, la información de los movimientos 
de sus trabajadores será capturada directamente en el sistema central, evitando de esta 
forma la re-captura y el envío de información por medios alternos o externos al sistema, 
así como los retrasos originados por el actual mecanismo, y la nula seguridad en cuanto 
a la integridad y privacidad de la información durante su envío a oficinas centrales. 
 
o La interfaz de cada junta local debe permitir quincenalmente, realizar consultas de los 
productos de pago pertenecientes a los trabajadores de cada estado del país, los cuales 
serán impresos y distribuidos a lo largo del estado correspondiente. 
 
 Multiplataforma. Tanto en oficinas centrales como en Juntas Locales, se emplean diversas 
plataformas: 
o Oficinas Centrales. Cuentan con servidores SUN y servidores Linux (Red Hat). 
o Juntas Locales. Cuentan con servidores Linux (Red Hat) y Servidores Windows NT. 
 
Lo anterior implica un sistema capaz de responder satisfactoriamente a cada una de las 
anteriores plataformas con una interfaz en común. 
 
 Empleo de diversas fuentes de Datos. Como se mencionó anteriormente el sistema en el área de 
Recursos Humanos es un sistema centralizado con una sola base de datos ubicada en Oficinas 
centrales. Sin embargo, en el área de recursos financieros, tanto Oficinas centrales como Juntas 
locales cuentan con bases de datos separadas: 
o Oficinas Centrales. Se emplea Oracle 9i y postgreSQL 
o Juntas Locales. Se emplea PostgreSQL y MySQL en algunos casos. 
 
Por lo anterior, el sistema debe ser capaz de operar con diversos manejadores de bases de 
datos, ya que un mismo proceso es ejecutado varias veces empleando diferentes plataformas y 
diferentes manejador de base de datos. 
 
Fig. 1.5 Requerimientos de Arquitectura. 
 
SISTEMA
Oracle MySQL PostgreSQL
 
 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
La problemática y los requerimientos Capítulo 1 
 
 16 
La figura 1.5 muestra la forma general en la que un proceso puede ejecutarse. Las fuentes de 
datos pueden ser varias y de diferente manejador, esto ocurre principalmente cuando se realiza 
una operación de conciliación entre oficinas centrales y las juntas locales. De manera similar, 
este proceso puede ser ejecutado en cualquiera de las 3 plataformas empleadas por el IFE. 
 
Otro ejemplo ocurre con Recursos Humanos. En oficinas centrales el sistema central puede estar 
ejecutándose en un servidor SUN, mientras que un usuario de Juntas locales puede estar 
capturando ó consultando información en una PC con Windows 2000. Ambos deben poder 
compartir una misma interfaz. 
 
 Seguridad. La seguridad es un requerimiento fundamental que debe proporcionar el SIAR a 
diferentes niveles: integridad de datos, privacidad, autorización, autentificación, encriptación, son 
algunos conceptos que deben ser implementados en cada uno de los módulos del SIAR. Cada 
usuario cuenta con un perfil el cual de acuerdo a su naturaleza determinará las tareas y los 
procesos que podrá realizar dentro del sistema. 
 
 El sistema debe proporcionar una interfaz gráfica, amigable y sobre todo, común a todos los 
usuarios del SIAR sin importar el área, el módulo, e independiente de la plataforma. Así mismo 
esta interfaz debe ser lo suficientemente robusta, ya que existen procesos que requieren una 
gran interactividad entre el usuario y los datos presentadosen pantalla como son: calendarios, 
listados, reportes, tablas de datos modificables, etc. 
 
 
1.3.2 Requerimientos funcionales 
 
 El sistema debe proporcionar una adecuada automatización del control de los catálogos de 
fórmulas y conceptos de tal forma que se permita su modificación y actualización sin tener que 
modificar el código fuente. 
 
 El sistema debe contar con un mecanismo general de manejo de históricos para todos los 
catálogos que tengan algún efecto en la generación de pagos, tales como conceptos de pago, 
fórmulas, tabuladores, tablas de impuestos, zonas económicas, etc. 
 
 Automatización de recálculos. El sistema debe contar con la capacidad de generación de 
nóminas de recalculo, generadas como consecuencia de un ajuste a algún valor de un catálogo, 
concepto, o fórmula que afecte el pago de un trabajador. De esta forma se evitará la generación 
de rutinas adicionales cada vez que se requiera un proceso de recalculo. 
 
 Mejora del proceso general de generación de nóminas. El nuevo sistema demanda una reforma 
absoluta en la gestión de nóminas, desde su creación hasta su cierre. El punto crítico del ciclo de 
vida de una nómina ocurre durante su creación, en donde se realizan los cálculos de los 
conceptos de pago de todos los trabajadores del IFE. La actual situación demanda un proceso de 
generación de nóminas que cumpla con las siguientes características: 
 
o Centralización del proceso. Se requiere que este proceso sea uno solo para todo el país, 
eliminando procesos independientes e aislados (generación de nóminas por partes). El 
sistema debe calcular TODA la plantilla del IFE como parte de una nómina ordinaria a 
nivel nacional. 
 
o Integración de nóminas. Actualmente se cuentan con 5 tipos de nóminas: Ordinaria, 
Extraordinaria, Pensión alimenticia, Retroactiva y de Recálculo, sin embargo, no existe 
comunicación entre ellas en forma automatizada. Dicha comunicación es importante 
debido a que se debe controlar en que nóminas puede aparecer un trabajador, proceso 
que actualmente se realiza manualmente. 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
La problemática y los requerimientos Capítulo 1 
 
 17 
 
o Reducción de tiempos. Definitivamente se requiere que el tiempo empleado para realizar 
el calculo de conceptos de toda la plantilla del IFE se minimice al empleado actualmente 
que es de varios días (1 a 2). 
 
o Minimización de los errores de cálculo al crear una nómina. 
 
o Creación de nóminas de recalculo en forma automática al detectarse una modificación 
de algún catálogo que impacte en los pagos de un empleado. 
 
 
1.4 LAS PROPUESTAS DE SOLUCIÓN 
 
Para dar solución a los requerimientos y necesidades planteadas en la sección anterior, se han 
realizado diversos proyectos y esfuerzos orientados hacia la construcción de este sistema integral, tanto 
soluciones internas como soluciones externas. Actualmente, se cuentan con avances en el área de 
recursos materiales y financieros. 
 
Para el caso de recursos humanos, y en específico de OPC, el estado actual se encuentra a 
nivel de análisis, a partir del cual se han revisando y considerando diversas soluciones, que hasta el 
momento no han sido lo suficientemente adecuadas para adoptarlas tanto en desarrollo como en 
integración. Este análisis contempla a cada uno de los módulos del sistema, incluido OPC. 
 
Es de esta forma como surge la razón de ser del presente trabajo de tesis, como una propuesta 
nueva y diferente, que contempla cada uno de los requerimientos, así como cada uno de los aspectos 
que han hecho que anteriores intentos se hayan quedado en el camino. 
 
 
1.5 EL ALCANCE 
 
El alcance de este trabajo se centra en el módulo OPC (Operación y control del pago), debido 
principalmente a que constituye el módulo más importante del área de recursos humanos, en especial los 
procesos relacionados con el proceso de creación y generación de nóminas. 
 
En este sentido, este trabajo habrá de generar, implementar y hacer uso del análisis existente 
para realizar el desarrollo del sistema, teniendo en cuenta el entorno de integración al que pertenece 
OPC y el área de recursos humanos. 
 
 
 
 
 
 
 
 
 
 
 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
º 
 
 
 
 
 
 
 
 
 
 
 
LAS ARQUITECTURAS EMPRESARIALES 
 
 
 
 
 
 
 
 
 
En este capítulo se presentan las tecnologías empresariales como solución a las 
necesidades de grandes sistemas. Sistemas que requieren la integración de diversos servicios y 
tecnologías ganando beneficios en comparación de otras arquitecturas como lo es la arquitectura 
cliente servidor. 
 
Se presenta el panorama actual de las tecnologías empresariales del momento: J2EE y 
.NET, sus ventajas y sus desventajas. Este panorama permitirá realizar una toma de decisión en 
cuanto al camino que debe seguir el sistema que habrá de dar solución a los requerimientos 
expuestos en el capítulo anterior. 
 
 
 
 
 
 
 
 
 
 
 
 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
 20 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
CAPÍTULO 
 
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint IV now.
Las arquitecturas empresariales Capítulo 2 
 
 21 
2.1 ARQUITECTURAS EMPRESARIALES DE DESARROLLO 
 
 
Hoy en día, compañías y diversas organizaciones empresariales han estado o estarán en un 
futuro no muy lejano, frente a un problema que impacta en gran medida el éxito o el fracaso de los 
diferentes servicios computacionales que cada una de ellas ofrezca o requiera: La integración de 
tecnologías y arquitecturas de software, que darán solución a los requerimientos y necesidades que la 
actual situación demanda. 
 
 En la actualidad el número de soluciones en cuanto a aplicaciones empresariales de software 
está creciendo a un ritmo acelerado. Ya no son únicamente los clásicos servidores web o bases de datos 
los principales, sino que un gran número de productos como servidores de aplicaciones, soluciones de 
mensajería, sistemas de servicios web, sistemas de seguridad, etc., están surgiendo con un gran 
impacto. Cada vez es más difícil ignorar la existencia de tales soluciones, y los responsables en la toma 
de decisiones están considerando, más a menudo, al mundo de las tecnologías empresariales y el 
software libre como una solución valida. 
 
 Una arquitectura empresarial esta formada por un conjunto de componentes, APIs (Application 
Programming Interfaces) y protocolos, que ofrecen la posibilidad de diseñar, desarrollar y ejecutar 
aplicaciones distribuidas multicapa. La integración de dichos componentes en un ambiente en común, 
permite la abstracción y la eliminación de la constante problemática a la que se enfrenta cualquier 
aplicación empresarial como son: escalabilidad, rendimiento, seguridad, etc. Lo anterior permite al 
desarrollador enfocarse en las reglas de negocio de su aplicación. 
 
Un arquitecto empresarial debe ser capaz de estudiar un problema en concreto y de escoger una 
serie de componentes y tecnologías con la finalidad de generar un modelo de arquitectura que sea el 
más adecuado para resolver el problema en cuestión. 
 
Dichos componentes pueden ser servidores de aplicaciones, contenedores web, servidores de 
mensajería, etc. El arquitecto, además, debe ser capaz de establecer el modelo de trabajo

Continuar navegando

Otros materiales