SlideShare una empresa de Scribd logo
1 de 127
Descargar para leer sin conexión
Instituto Politécnico Nacional
Unidad Profesional Interdisciplinaria en
Ingeniería y Tecnologías Avanzadas
Proyecto Terminal:
“Sistema de Gestión de Nóminas en
Cloud Computing - Software as a Service
para la Pequeña y Mediana Empresa.”
Para obtener el título de:
“Ingeniero en Telemática”
Presentan:
Vilchis Vieyra César
Martínez Robles Marco Antonio
Asesores:
M. en C. Miguel Alejandro Martinez Rosales.
M. en C. Paola Nayeli Cortez Herrera.
M. en C. Cyntia Eugenia Enriquez Ortiz.
Ciudad de México, Diciembre 2014
Instituto Politécnico Nacional
Unidad Profesional Interdisciplinaria en
Ingeniería y Tecnologías Avanzadas
Proyecto Terminal:
“Sistema de Gestión de Nóminas en
Cloud Computing - Software as a Service
para la Pequeña y Mediana Empresa.”
Para obtener el título de:
“Ingeniero en Telemática”
Presentan:
_________________ __________________________
Vilchis Vieyra Cesar Martínez Robles Marco Antonio
Asesores:
________________________________ ______________________________
M. en C. Miguel Alejandro Martinez Rosales. M. en C. Paola Nayeli Cortez Herrera.
_______________________________
M. en C. Cyntia Eugenia Enriquez Ortiz.
Presidente del Jurado Secretario
_________________________ _________________________
Dr. Miguel Félix Mata Rivera. M. en C. Susana Sánchez Nájera
AGRADECIMIENTOS
Generales
Agradecemos a nuestra casa de estudios el Instituto Politécnico Nacional (I.P.N.) y nuestra grandiosa
escuela Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas (UPIITA) así
como a todos nuestros maestros que nos impartieron clase en el transcurso de nuestra carrera y a
nuestros asesores en el proyecto terminal: M. en C. Miguel Alejandro Martínez Rosales, M. en C.
Paola Nayeli Cortez Herrera y M. en C. Cyntia Eugenia Enríquez Ortiz, finalmente agradecemos a
LabMóvil por el apoyo brindado y por el discurso de Steve Jobs compartido. A todos ustedes
¡MUCHAS GRACIAS!
Martínez Robles Marco Antonio:
A toda mi familia que creyó en mí, a mis asesores que me brindaron su apoyo y su tiempo así como
también a mi compañero de tesis por su colaboración y participación constante durante la realización
de la misma, a todos ellos gracias.
Vilchis Vieyra César:
Agradezco a la vida y a Dios por esta grandiosa oportunidad, así como también un agradecimiento
sumamente especial a mis abuelitos maternos (Gloria V.C. y Rafael V.L.) por todo su enorme apoyo,
un súper agradecimiento mi mamá (M.V.V.) por su apoyo incondicional durante toda mi vida, un
agradecimiento muy especial a mi novia T. M. E. M. por su comprensión, apoyo y por ser un gran
ser humano muy especial en mi vida entera, MUCHAS GRACIAS así con mayúsculas a todos ustedes
aunque pienso y siento que un gracias no es suficiente por todo su enorme apoyo que me han
brindado. También estoy muy agradecido con mis 3 asesores, ya que en todo momento nos apoyaron
y nos brindaban lo mejor de sí, muchas gracias. No me puede faltar mi agradecimiento a mi
compañero del proyecto por confiar en mí y trabajar juntos para este proyecto, muchas Gracias.
Finalmente, quiero agradecer a esta institución (Instituto Politécnico Nacional) y a mi escuela
(Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas - UPIITA) por dejarme
aprender a superarme a mí mismo. Gracias a todos ustedes porque si uno de ustedes me hubiera
faltado yo no habría llegado hasta este momento. MUCHISIMAS GRACIAS.
SOY POLITÉCNICO
Porque aspiro a ser todo un hombre.
SOY POLITÉCNICO
Porque exijo mis deberes antes que mis derechos.
SOY POLITÉCNICO
Por convicción y no por circunstancia.
SOY POLITÉCNICO
Para alcanzar las conquistas universales y ofrecerlas a mí
pueblo.
SOY POLITÉCNICO
Porque me duele la Patria en mis entrañas y aspiro a calmar
sus dolencias.
SOY POLITÉCNICO
Porque ardo en deseos de despertar al hermano dormido.
SOY POLITÉCNICO
Para prender una antorcha en el altar de la Patria.
SOY POLITÉCNICO
Porque me dignifico y siento el deber de dignificar a mi
institución.
SOY POLITÉCNICO
Porque mi respetada libertad de joven y estudiante me impone
la razón de respetar este recinto.
SOY POLITÉCNICO
Porque traduzco la tricromía de mi bandera como trabajo,
deber y honor.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
I
Contenido
Resumen........................................................................................................................................IX
Abstract.......................................................................................................................................... X
Objetivo General...........................................................................................................................XI
Objetivos Específicos....................................................................................................................XI
CAPÍTULO I. INTRODUCCIÓN............................................................................................. 1
1.1 Planteamiento del problema ................................................................................................. 3
1.2 Actualidad del problema....................................................................................................... 3
1.3 Justificación.......................................................................................................................... 3
1.4 Solución propuesta ............................................................................................................... 4
1.5 Alcances y limitaciones........................................................................................................ 5
CAPITULO II. MARCOTEÓRICO........................................................................................... 7
2.1 Cómputo en la nube.............................................................................................................. 8
2.2 Características del cómputo en la nube ................................................................................ 9
2.3 Capas del cómputo en la nube............................................................................................ 10
2.4 Modelos de implementación............................................................................................... 11
2.5 Seguridad en la nube .......................................................................................................... 13
2.6 Proveedores de servicio en la nube..................................................................................... 15
2.7 Framework y lenguajes de programación en la nube......................................................... 18
CAPÍTULO III. ESTADO DEL ARTE ................................................................................. 21
3.1 Trabajos de investigación relacionados.............................................................................. 22
3.2 Versiones comerciales en la nube....................................................................................... 24
3.2 Tesis o trabajos similares o relacionados ........................................................................... 25
CAPÍTULO IV. ANÁLISIS Y DISEÑO .................................................................................. 29
4.1Metodología de trabajo........................................................................................................ 30
4.2 Análisis de requerimientos ................................................................................................. 30
4.3 Módulos del sistema........................................................................................................... 33
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
II
4.4 Usuarios.............................................................................................................................. 34
4.5 Diseño general del sistema ................................................................................................. 35
4.6 Toma de decisiones ............................................................................................................ 35
CAPITULO V. DESARROLLO E IMPLEMENTACIÓN................................................... 43
5.1. Ejecución de pruebas de escritorio independientes ........................................................... 44
5.2. Programa Hola mundo en la nube ..................................................................................... 45
5.3. Primer acercamiento para almacenar datos en la nube...................................................... 47
5.4. Programa con la primera conexión con la base de datos SQL Cloud................................ 49
5.5. Programa que hace uso de formularios en la nube ............................................................ 51
5.6. Programa que hace uso de servicios del usuario Gmail en la nube................................... 52
5.7. Programa que hace uso de plantillas.................................................................................. 54
5.8. Programa que hace uso de archivos estáticos................................................................... 56
5.9. Implementación de la sección de comentarios .................................................................. 57
5.10. Desarrollar el formato de nómina, implementar operaciones de la nómina y validación de
formularios ............................................................................................................................... 60
5.11. Desarrollar sesiones de usuario ...................................................................................... 63
CAPÍTULO VI. PRUEBAS Y RESULTADOS ........................................................................ 67
6.1 Pruebas de desempeño....................................................................................................... 68
6.2 Esquema de validación...................................................................................................... 73
6.3. Resultados finales.............................................................................................................. 78
6.4. Sesión de Recursos Humanos............................................................................................ 79
6.5. Sesión de Empleado ......................................................................................................... 97
CONCLUSIONES......................................................................................................................... 102
Trabajo a futuro...................................................................................................................... 103
Aportaciones........................................................................................................................... 104
Áreas de oportunidad.............................................................................................................. 104
Referencias..................................................................................................................................... 106
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
III
Glosario.......................................................................................................................................... 108
Anexos Digitales ............................................................................................................................ 109
Anexo Digital. Diagramado........................................................................................................ 109
Anexo Digital. Código fuente..................................................................................................... 109
Anexo Digital. Manual de Usuario. ............................................................................................ 109
Anexo Digital. Manual Técnico.................................................................................................. 109
Anexo Digital. Ley Federal del Trabajo. .................................................................................... 109
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
IV
Índice de Figuras
Figura 1. Diagrama general del sistema de gestión de nóminas en la nube para la Micro, Pequeña y
Mediana Empresa (PyME). ........................................................................................................ 5
Figura 2. Modelos de despliegue, servicio y características esenciales del cómputo en la nube...... 12
Figura 3. Diagrama de bloques del funcionamiento general del sistema.......................................... 34
Figura 4. Proceso para realizar el deploy de una aplicación en Google Cloud. ................................ 46
Figura 5. Resultado de un Deployment exitoso................................................................................. 47
Figura 6. Resultado Final del primer hola mundo en la nube. .......................................................... 47
Figura 7. Ejemplo de libro de visitas que almacena en data store en el espacio de Gmail. ............. 47
Figura 8. Se puede observar la diferencia entre escribir un comentario iniciando sesión pues
aparece el nombre de la persona que lo escribió ...................................................................... 49
Figura 9. Se observa el proceso de acceso a la base de datos en la nube.......................................... 50
Figura 10. Resultado de la creación de la base de datos en la nube visto desde la consola. ............. 50
Figura 11. Resultado de la primera conexión con la base de datos en la nube. ................................ 51
Figura 12. Primera prueba usando HTML dentro del framework..................................................... 52
Figura 13. Resultado del libro de visitas........................................................................................... 52
Figura 14. Uso de servicios de Google cloud a través de Gmail....................................................... 53
Figura 15. Muestra el inicio de sesión ocupando la cuenta Gmail.................................................... 53
Figura 16. Se puede observar cómo se puede acceder a este formulario y cualquier persona puede
escribir lo que quiera. ............................................................................................................... 55
Figura 17. Se puede apreciar la diferencia entre un mensaje anónimo y un mensaje iniciando sesión
de usuario.................................................................................................................................. 56
Figura 18. Se puede observar que se añadió estilo CSS al ejercicio anterior................................... 57
Figura 19. Se puede apreciar la ventana principal de la sección de comentarios.............................. 58
Figura 20. Sección de comentarios. .................................................................................................. 59
Figura 21. El dueño puede publicar el anuncio deseado con su respectivo título y contenido. ........ 59
Figura 22. Pantalla general del administrador con sus comentarios realizados. ............................... 59
Figura 23. Sección de comentarios de los empleados....................................................................... 60
Figura 24. Plantilla de nómina básica. .............................................................................................. 61
Figura 25. Validación de campos no vacíos en el cálculo de la nómina........................................... 63
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
V
Figura 26. Panel de SQL Cloud para dar de alta una dirección IP.................................................... 64
Figura 27. Conexión con la base de datos en la nube........................................................................ 64
Figura 28. Se ingresan los datos en el sistema para iniciar sesión. ................................................... 65
Figura 29. Inicio de sesión correcto. ................................................................................................. 65
Figura 30. Registro de un nuevo usuario en la base de datos............................................................ 65
Figura 31. Imagen en consola de las actuales de la base de datos..................................................... 66
Figura 32. Grafica que brinda Google cloud sobre la cantidad de solicitudes que se reciben. ........ 69
Figura 33. Almacenamiento utilizado en SQL cloud........................................................................ 69
Figura 34. Grafica de errores por código de estado. ......................................................................... 70
Figura 35. Grafica de operaciones de lectura o escritura que ha tenido el sistema........................... 70
Figura 36. Cargos del mes correspondientes al uso de la base de datos. .......................................... 71
Figura 37. Información técnica de la instancia en la cual está corriendo la aplicación en la nube. .. 71
Figura 38. Resumen de las propiedades del proyecto actual............................................................ 72
Figura 39. Se le puede agregar memoria RAM al sistema fácilmente y su cobro es por uso de horas
o por día.................................................................................................................................... 72
Figura 40. Se puede elegir el horario de la copia de seguridad de la base de datos, así como su
política de activación y replica de sistemas de archivos........................................................... 73
Figura 41. Mensaje de validación de correo electrónico................................................................... 74
Figura 42. Validación numérica en el sistema. ................................................................................. 74
Figura 43. Mensaje de error al no cumplir con el formato del CURP............................................... 75
Figura 44. Mensaje de error al no cumplir con el formato de RFC................................................... 75
Figura 45. Mensaje mostrado al ingresar un número mayor al número de horas laborales por día.. 75
Figura 46. Mensaje mostrado al no cumplir con la cantidad de dígitos para el registro patronal para
el seguro del trabajador. ........................................................................................................... 76
Figura 47. El código postal solo acepta como máximo 5 dígitos...................................................... 76
Figura 48. Validación del número telefónico con su respectiva lada y extensión, así como el número
de celular y fax. ........................................................................................................................ 77
Figura 49. Vista principal del Sistema de Gestión de Nóminas en la nube para PyMEs.................. 79
Figura 50. Menú principal para el registro de un nuevo propietario de una PyME. ......................... 79
Figura 51. Formulario para el registro de un nuevo propietario........................................................ 80
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
VI
Figura 52. E-mail recibido después de su registro exitoso................................................................ 80
Figura 53. Menú principal de la sesión de Recursos Humanos......................................................... 81
Figura 54. Dar de alta un empleado. ................................................................................................. 82
Figura 55. En la opción de administrar asistencia esta la opción de tomar asistencia. ..................... 82
Figura 56. Pantalla para poder tomar asistencia................................................................................ 83
Figura 57. Dentro de la opción consultar Asistencia se puede editar............................................... 83
Figura 58. Editar Asistencia.............................................................................................................. 84
Figura 59. Datos básicos para procesar la nómina. ........................................................................... 84
Figura 60. Bonos (percepciones) que incluye el concepto de nómina. ............................................. 85
Figura 61. Total de percepciones por concepto de nómina............................................................... 85
Figura 62. Deducciones de la Nómina. ............................................................................................. 86
Figura 63. Calculo de sueldo antes de impuestos y sueldo neto. ...................................................... 86
Figura 64. Dentro de la opción gestionar empleado se pueden obtener los reportes de nómina y
asistencia................................................................................................................................... 87
Figura 65. Gestión de reportes para generar el reporte en PDF. ...................................................... 87
Figura 66. Reporte de nómina en formato PDF. ............................................................................... 88
Figura 67. Reporte de asistencia mostrado en formato PDF............................................................. 89
Figura 68. Anuncio que emitió el propietario a su departamento de Recursos Humanos................ 89
Figura 69. Mensaje que emite Recursos humanos a sus empleados. ................................................ 90
Figura 70. Primera parte del formulario para calcular los procesos anuales..................................... 90
Figura 71. Estos son los conceptos con los cuales se hacen los procesos anuales. ........................... 91
Figura 72. Calculo de procesos anuales y total de percepciones....................................................... 91
Figura 73. Deducciones y total a recibir por el proceso anual. ......................................................... 92
Figura 74. Reporte generado en formato PDF correspondiente a procesos anuales. ........................ 92
Figura 75. Calculo del finiquito, primera parte del formulario......................................................... 93
Figura 76. Calculo Final correspondiente al finiquito....................................................................... 93
Figura 77. Mensaje correspondiente a que se ha guardado exitosamente el cálculo del finiquito.... 94
Figura 78. Consultar reporte del finiquito antes de guardarlo en PDF.............................................. 94
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
VII
Figura 79. Reporte del Finiquito en formato PDF............................................................................. 94
Figura 80. Primera parte del formulario para calcular la liquidación................................................ 95
Figura 81. Calculo de la liquidación. ................................................................................................ 95
Figura 82. Calculo guardado satisfactoriamente............................................................................... 96
Figura 83. Total de liquidación antes de guardarlo en formato PDF. ............................................... 96
Figura 84. Reporte de liquidación en formato PDF. ......................................................................... 97
Figura 85. Menú principal de la sesión de Empleado. ...................................................................... 97
Figura 86. Reporte del finiquito antes de guardarlo en formato PDF. .............................................. 98
Figura 87. Reporte en formato PDF que el empleado puede descargar, guardar o imprimir............ 98
Figura 88. Editar información básica del empleado.......................................................................... 99
Figura 89. El empleado puede cambiar su contraseña inicial. .......................................................... 99
Figura 90. Anuncios emitidos por Recursos humanos hacia sus empleados. ................................. 100
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
VIII
Índice de Tablas
Tabla 1. Comparación Aspel (SAE, NOI, COI) vs Sistema de Gestión de Nóminas en la nube para
la Micro, Pequeña y Mediana Empresa (PyME)……………………………………………... 23
Tabla 2 Comparativa entre el sistema de gestión de nómina Vs software en la nube comercial…..25
Tabla 3 Comparativa con los trabajos terminales en UPIITA………………………………………26
Tabla 4 Usuarios del sistema con sus respectivas funciones………………………………………..34
Tabla 5 Comparación entre proveedores del servicio……………………………………………… 35
Tabla 6 Metodologías de software contempladas…………………………………………………...36
Tabla 7 . Comparativa de proveedores que ofrecen certificados SSL y plataforma cloud………….37
Tabla 8 . Se muestran los dos tipos de servicios SSL que ofrece Google App Engine……………..38
Tabla 9 . Framework y lenguajes para Google App Engine……………………………………….. 39
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
IX
Resumen
El cómputo en la nube (Cloud Computing) está revolucionando el uso del software tradicional
instalado en las computadoras personales o laptops, satisfaciendo las nuevas tendencias y necesidades
de estar al día, contando con información disponible en todo momento con sólo disponer de acceso a
Internet. En el presente trabajo se presenta la fase de análisis, diseño e implementación de un sistema
en la nube, que realiza la gestión de nóminas del recurso humano, orientado a “PyME” (Pequeña y
Mediana Empresa). Dicho sistema toma como base la nueva ley federal del trabajo. La finalidad es
hacer una gestión de la información de una manera confiable, disponible en todo momento y
ofreciendo las bondades que provee el cómputo en la nube; haciendo uso de una nueva tendencia en
el software, como lo es el Software as a Service (SaaS).
Palabras clave
Cómputo en la nube, Cloud Computing, gestión de nóminas, SaaS, PyME.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
X
Abstract
The Cloud Computing is revolutionizing the use of the traditional software installed in the personal
computers or laptops, satisfying the new trends and needs current, available information at all-time
only with having access to Internet.
In the present work one presents the phase of analysis, design and implementation of a system in the
cloud, performs calculating payroll and attendance, orientated to "SME" (Small and Medium
Company).
The above mentioned system takes as a base the new federal law of the work of Mexico. The purpose
is to do a management of the information of a reliable, available way at all moment and offering the
kindness of the cloud computing ; using a new trend in the software, as the Software as Service (SaaS).
Key words: Cloud Computing, Payroll, SaaS, SME.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
XI
Objetivo General
Desarrollar un sistema enfocado a las PyMEs para llevar la gestión de nóminas sobre sus empleados,
basado en Cloud Computing.
Objetivos Específicos
 Analizar la nueva ley federal del trabajo respecto a las nóminas.
 Investigar y seleccionar proveedor de cómputo en la nube.
 Investigar y seleccionar modelo de servicio.
 Investigar y seleccionar seguridad de la información del sistema.
 Analizar y diseñar el sistema (Diagramas UML).
 Analizar y seleccionar herramientas de desarrollo.
 Analizar y seleccionar framework de desarrollo y lenguaje.
 Diseñar y seleccionar manejador de base de datos.
CAPÍTULO I.
INTRODUCCIÓN
“Yo sólo sé que no sé nada, pues al
conocer algo nuevo, descubro que
desconozco otras mil cosas...”
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
2
El ritmo de vida actual nos exige estar al día para poder satisfacer las nuevas necesidades de este
mundo globalizado con más competencia día con día, por lo cual se realizó una investigación sobre
la importancia en las pequeñas y medianas empresas en México obteniendo los siguientes resultados:
“… actualmente (Septiembre 2013) las PyMEs representan el 52% del PIB nacional y el 81% del
empleo en México…”. [1].
Posteriormente se realizó una investigación sobre como gestionaban las PyMEs sus nóminas y los
resultados obtenidos fueron los siguientes: “…En México se obtuvieron las siguientes cifras para
poder llevar el control de la nómina, el 60.8 % de las PyMEs ocupan software instalado en cada
computadora pagando una licencia por cada una, el porcentaje restante aún ocupa hojas de cálculo,
contadores,…” [2].
Analizando esta información se tiene que las PyMEs son muy importantes para el desarrollo del país,
además las únicas que ocupan software para manipular sus nóminas lo tienen previamente instalado
en cada una de sus computadoras, por lo cual en la mayoría de las ocasiones pagan costosas licencias
por cada máquina para poder ocuparlo cada determinado tiempo o realizan los cálculos repetitivos de
nómina de forma manual, haciendo que los trámites se vuelvan tardados y que se tenga poca o nula
actualización de los datos.
Esto da como resultado mayores costos en paquetería de software, hardware y empleados, así como
información desactualizada que no les permite ser competitivos ante las grandes corporaciones por
no poder dar respuesta a necesidades de la sociedad actual de manera ágil.
De acuerdo con la información presentada en este punto, se observa una necesidad de tener el control
de la nómina de los empleados de una pequeña y mediana empresa (PyME) con los beneficios que la
nube conlleva, esto permitirá a las PyMEs ser competitivas ante las grandes empresas, además no está
orientado a un cliente sino a toda un área de servicio, cuantos más usuarios utilicen el sistema más
barato es contratarlo, lo cual es característico del cómputo en la nube.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
3
1.1 Planteamiento del problema
En la actualidad el mundo globalizado tiene nuevas necesidades, por ello la tecnología evoluciona
para dar solución a éstas. Todas las empresas necesitan realizar la nómina respectiva de cada uno de
sus empleados, entre más grande sea la empresa se necesitan gestionar más nóminas y más empleados
que hagan estos cálculos repetitivos. El cómputo en la nube ofrece soluciones a los requerimientos
de la vida moderna (accesible, seguro, económico…), en México el mercado que tienen las PyMEs
es muy importante pues aportan el 52% del PIB nacional, de aquí nace la necesidad de poder brindar
una solución de gestión de nóminas del personal de manera práctica pues no es necesario tener
trabajando al departamento de tecnologías de la información y contadores con tareas repetitivas que
bien se pueden automatizar, razón por lo cual se plantea apoyarse de nuevas tendencias de cómputo
y con ello agilizar los procesos de nómina y asistencia, para contar con más tiempo en nuevos
proyectos o negocios.
1.2 Actualidad del problema
Como se menciona en [1] y en [2] el 60.8% de las PyMEs ocupan software instalado en cada
computadora pagando licencia en cada una y el 39.2 % hace sus cálculos apoyándose de diversas
soluciones, la mayoría de las empresas no conocen la nueva tendencia de la nube por lo que es un
mercado totalmente nuevo para los emprendedores, a su vez “...Grandes empresas como Google bajan
sus costos para poderle dar más impulso a esta nueva tecnología...”[3] por lo que hoy en día este
proyecto es una gran oportunidad de poder automatizar la gestión de la nómina apoyado en una nueva
tendencia del cómputo, como lo es el cómputo en la nube, brindando una nueva posibilidad a las
PyMEs de ser competitivas en este mundo globalizado.
1.3 Justificación
Como ya se mencionó las PyMEs en México son de suma importancia, razón por la cual se propone
una nueva solución ante la gestión de sus nóminas apoyándose en las nuevas tecnologías de cómputo
para que les permita mantener su competitividad en este mercado globalizado ante las grandes
corporaciones. La implementación del proyecto es la oportunidad para aquellas PyMEs que no
cuentan con la paquetería, el software o tecnología necesaria para su actualización en el proceso de
llevar a cabo la gestión de sus datos de nómina y que lo puedan hacer sin tener que pagar costosas
licencias por el software instalado ya que el sistema de gestión trabajará sobre la nube, obteniendo
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
4
ahorros en software y hardware, teniendo un control de la nómina con acceso en cualquier lugar a
cualquier hora desde una computadora o un dispositivo móvil (Tablet) con acceso a Internet con los
beneficios de la nube.
Cuando se habla de cómputo en la nube en el sistema de nómina se hace referencia a la ejecución de
las aplicaciones en un centro de datos compartido, ninguna PyME necesitará de (servidores, equipo
técnico, actualizaciones) solo será necesario iniciar sesión, y empezar a ocupar la aplicación.
El sistema propuesto es en realidad un proyecto para el campo laboral ya que gestiona las nóminas
cubriendo las normas mexicanas vigentes.
1.4 Solución propuesta
El sistema en la nube de gestión de nóminas realiza todos los cálculos correspondientes a la nómina
conforme los requerimientos de la ley mexicana, se encuentra alojado en la nube y está orientado para
la Micro, Pequeña y Mediana Empresa (PyMEs). Asimismo, está diseñado únicamente para PyMEs,
accediendo al sistema por sesiones a diferentes tipos de usuarios, recopilando la información
necesaria desde cualquier computadora (reportes de asistencia), en donde cada usuario tendrá
funcionalidades diferentes, esto con la finalidad de preservar la integridad de la información. Se
contempla el escenario en donde la empresa cuente con una o varias sucursales ubicadas en diversas
áreas del país.
La información de nómina proveerá un mecanismo de protección a la información con el uso de
certificados SSL (Secure Sockets Layer) proporcionados por el proveedor de servicio, cuenta con
acceso por sesiones, siendo una propuesta económicamente viable a las empresas pues reducen su
costo de licencias de software, equipo y empleados haciendo cálculos repetitivos, haciendo uso de las
bondades del cómputo en la nube: (Sólo es necesario estar conectado a internet, los datos se
encuentran protegidos y en redundancia, disponible en cualquier lugar en cualquier momento, se
puede acceder desde cualquier dispositivo fijo o móvil de cualquier marca y sistema operativo,
funciona con cualquier explorador de internet moderno y actualizado, siempre al día, actualizaciones
constantes para cumplir con los requisitos de las autoridades )
Es económico ya que el pago es independiente del número de computadoras en las cuales se quiera
tener acceso al servicio, es decir de licencias, además elimina el soporte y mantenimiento al
hardware; no requiere instalación (más software y menos hardware), tiene sistemas de respaldo y
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
5
recuperación de la información, no requiere presencia física (soporte técnico) y estará disponible
cualquier día a cualquier hora.
Finalmente, el diagrama general del sistema se muestra en la figura 1.
Figura 1. Diagrama general del sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana
Empresa (PyME).
1.5 Alcances y limitaciones
El resultado esperado es el sistema enfocado a las PyMEs para llevar un control de nómina sobre sus
empleados, gestionando dicha información apoyados del cómputo en la nube. Se contempla realizar
los siguientes escenarios de prueba (simulaciones con dos PyMEs): hacer la gestión de nómina, contar
con certificado de seguridad SSL, comprobar el correcto funcionamiento de todas las sesiones para
las cuales haya sido diseñado, así como su compatibilidad únicamente con los dispositivos móviles
(Tablet).
Las limitaciones del sistema propuesto son:
 Capacidad para no más de 500 empleados y/o 20 sucursales por PyME.
 Diseñado únicamente para las leyes que rigen a México.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
6
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
7
CAPITULO II.
MARCOTEÓRICO
“Conócete a ti mismo y conocerás al
universo y a los Dioses”
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
8
A continuación se presentan los conceptos fundamentales para la gestión nómina sobre sus
empleados, basado en cómputo en la nube: sus características, capas, modelos de implementación,
proveedores framework y seguridad en la nube.
2.1 Cómputo en la nube
“Cloud Computing es la evolución de un conjunto de tecnologías que afectan al enfoque de las
organizaciones y empresas en la construcción de sus infraestructuras de Tecnologías de la
Información. Al igual que ha sucedido con la evolución de la Web, con la Web 2.0, el cómputo en la
nube no incorpora nuevas tecnologías. Se han unido tecnologías potentes e innovadoras, para
construir este nuevo modelo y arquitectura de la Web.
Se plantea que, si bien Internet es un fundamento necesario, la nube es algo más que Internet. Es
aquel lugar donde utilizar tecnología cuando se necesita, mientras se necesite. No se instala nada en
su escritorio, ni se paga por la tecnología cuando no se utiliza.
La nube puede ser infraestructura o software, es decir, puede ser una aplicación con la que se accede
a través del escritorio y se ejecuta inmediatamente tras su descarga, o bien un servidor al que se invoca
cuando se necesita. En la práctica, el cómputo en la nube proporciona un servicio de software o
hardware.
No existe una definición aceptada universalmente; sin embargo, existen organismos internacionales
cuyos objetivos son la estandarización de Tecnologías de la Información y, en particular, de Cloud
Computing.
Una de las definiciones más extendidas y populares sobre Cloud Computing es la que ofrece el
National Institute of Standards and Technology (NIST), de Estados Unidos, según la cual “Cloud
computing es un modelo para permitir el acceso de la red en servicio bajo demanda, a un conjunto de
recursos (que incluyen las redes, servidores, almacenamiento, aplicaciones y servicios) que pueden
ser rápida y dinámicamente aprovisionados y liberados con mínima interacción humana.
La nube es un conjunto de hardware y software, almacenamiento, servicios e interfaces que facilitan
la entrada de la información como un servicio. El mundo de la nube tiene un gran número de actores
o participantes. Los grupos de intereses del mundo del cómputo en la nube son: los vendedores o
proveedores que proporcionan las aplicaciones y facilitan las tecnologías, infraestructura, plataformas
y la información correspondiente; los socios de los proveedores que crean servicios para la nube,
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
9
ofreciendo servicios a los clientes; los líderes de negocios que evalúan los servicios de la nube para
implantarlos en sus organizaciones y empresas; los usuarios finales utilizan los servicios de la nube,
gratuitamente o con una tarifa.
Los servicios de la nube deben ser distribuidos; es decir, empresas diferentes comparten los mismos
recursos fundamentales. Por esta razón, las empresas comienzan a encontrar nuevos valores,
facilitando la eliminación de las complejas restricciones que supone el entorno informático
tradicional; incluyendo espacio, tiempo, energía y costes.” [4]
2.2 Características del cómputo en la nube
“El modelo de la nube, según NIST, se compone de cinco características esenciales, tres modelos de
servicio y cuatro modelos de despliegue. Las características fundamentales se describen en las
siguientes subsecciones.
2.2.1 Autoservicio bajo demanda
Un consumidor puede proveerse de tiempo de servidor y almacenamiento en red, a medida que lo
necesite; sin requerir interacción humana con el proveedor del servicio.
2.2.2 Distribución de recursos independientes de la posición
Los recursos de computación del proveedor son agrupados para servir a múltiples consumidores
utilizando un modelo multi-distribuido (“multitenant”) con diferentes recursos físicos y virtuales
asignados y reasignados dinámicamente conforme a la demanda del consumidor. Existe una sensación
de independencia de la posición, de modo que el cliente, normalmente, no tiene control ni cono-
cimiento sobre la posición exacta de los recursos proporcionados. Pero podría especificarla a un nivel
más alto de abstracción (país, región geográfica o centro de datos). Ejemplos de recursos incluyen
almacenamiento, procesamiento, memoria, ancho de banda de la red y máquinas virtuales.
2.2.3 Elasticidad rápida
Las funcionalidades se pueden proporcionar de modo rápido y elástico, en algunos casos
automáticamente. Sus características de aprovisionamiento dan la sensación de ser ilimitadas y
pueden adquirirse en cualquier cantidad o momento.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
10
2.2.4 Servicio medido
Los sistemas de cómputo en la nube controlan y optimizan automáticamente el uso de recursos,
potenciando la capacidad de medición en un nivel de abstracción apropiado al tipo de servicio
(almacenamiento, procesamiento, ancho de banda y cuentas activas de usuario). El uso de recursos
puede ser monitorizado, controlado e informado, proporcionando transparencia para el proveedor y
para el consumidor. ” [5]
2.3 Capas del cómputo en la nube
El cómputo en la nube se compone de tres capas las cuales se describen a continuación:
2.3.1 Software como un servicio (SaaS)
“La capacidad proporcionada al consumidor es utilizar aplicaciones del proveedor de servicios de
nube que se ejecutan en una infraestructura cloud.
El software como servicio (software as a Service, SaaS) se encuentra en la capa más alta y caracteriza
una aplicación completa ofrecida como un servicio, en-demanda, —que significa una sola instancia
del software que corre en la infraestructura del proveedor y sirve a múltiples organizaciones de
clientes. Un ejemplo es la plataforma Office como servicio SaaS con su denominación de Microsoft
Office 365, que incluye versiones online de la mayoría de las aplicaciones de esta suite ofimática de
Microsoft.
2.3.2 Plataforma como Servicio (PaaS)
La capacidad proporcionada al consumidor es implementar en la infraestructura de la nube creada por
él, de aplicaciones creadas o adquiridas, usando lenguajes de programación, bibliotecas, servicios y
herramientas soportadas por el proveedor.
La capa del medio, que es la plataforma como servicio (en inglés Platform as a Service, PaaS), es la
encapsulación de una abstracción de un ambiente de desarrollo y el empaquetamiento de una serie de
módulos o complementos que proporcionan, normalmente, una funcionalidad horizontal (persistencia
de datos, autenticación, mensajería, etc.). De esta forma, este modelo de plataforma como servicio
podría consistir en un entorno conteniendo una pila básica de sistemas, componentes o API pre
configurado y listo para integrarse sobre una tecnología concreta de desarrollo. Las ofertas de PaaS
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
11
pueden dar servicio a todas las fases del ciclo de desarrollo y pruebas del software, o pueden estar
especializadas en cualquier área en particular, tal como la administración del contenido.
Los ejemplos comerciales incluyen Google App Engine, que sirve aplicaciones de la infraestructura
Google, y también Windows Azure, de Microsoft, una plataforma en la nube que permite el desarrollo
y ejecución de aplicaciones codificadas en varios lenguajes y tecnologías como .NET, Java y PHP.
Servicios PaaS tales como éstos permiten gran flexibilidad, pero puede ser restringida por las
capacidades que están disponibles a través del proveedor.
2.3.3 Infraestructura como Servicio (IaaS)
La capacidad proporcionada al consumidor es la provisión de proceso, almacenamiento, redes y otros
recursos de computación fundamentales de procesamiento donde el consumidor es capaz de
implementar y ejecutar software arbitrario, que puede incluir sistemas operativos y aplicaciones.
La infraestructura como servicio (Infrastructure as a Service, IaaS) -también llamado en algunos
casos hardware as a service, HaaS) se encuentra en la capa inferior y es un medio de entregar
almacenamiento básico y capacidades de cómputo como servicios estandarizados en la red.
Servidores, sistemas de almacenamiento, conexiones, enrutadores, y otros sistemas se concentran (por
ejemplo a través de la tecnología de virtualización) para manejar tipos específicos de cargas de trabajo
desde procesamiento en lotes (“batch”) hasta aumento de servidor/almacenamiento durante las cargas
pico.”[6]
2.4 Modelos de implementación.
A continuación se describen los modelos de implementación en Cloud computing.
2.4.1 Nube privada
La infraestructura de la nube se provee para uso exclusivo de una sola organización que comprende
varios consumidores.
2.4.2 Nube de la comunidad
La infraestructura de la nube se provee para uso exclusivo de una comunidad específica de los
consumidores de las organizaciones que han compartido preocupaciones por ejemplo, misión,
requisitos de seguridad, política y cumplimiento consideraciones.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
12
2.4.3 Nube pública
La infraestructura de la nube se provee para uso abierto por el público en general. Podría pertenecer,
ser administrada y operada por una organización de negocios, académicos o gobierno, o alguna
combinación de ambos.
2.4.4 Nube híbrida
La infraestructura de nube es una composición de dos o más infraestructuras de cloud distintas
privada, comunidad o público que siguen siendo entidades únicas, pero están enlazadas por tecnología
estandarizada o propietaria que permite la portabilidad de datos y aplicaciones.
Es importante señalar que no existe ninguna alineación específica entre los modelos de servicio y
entrega de nube. Cualquier modelo de servicio puede crear instancias utilizando cualquiera de los
modelos de entrega
En la figura 2 se presentan los modelos de despliegue, modelos de servicio y características esenciales
del cómputo en la nube.
Figura 2. Modelos de despliegue, servicio y características esenciales del cómputo en la nube.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
13
2.5 Seguridad en la nube
2.5.1 Protección de datos
“La nube, es un modelo de computación que ofrece el uso de una serie de servicios, aplicaciones,
datos, plataformas, infraestructuras, compuestas a su vez por recursos de computación, redes,
servidores, almacenamiento, etc.
La empresa o el usuario de la nube no sabe con exactitud dónde está la información guardada,
mientras que en la computación tradicional las empresas y los usuarios conocen perfectamente donde
está su información almacenada localmente. Naturalmente, llevar toda la información a la nube
significa confiar en terceros la seguridad
El responsable de los datos es el cliente (personal o empresa). IBM llama a este tipo de seguridad
“Secure by design”, o dicho de otro modo seguridad personalizada”. El concepto pretende que el
entorno sea el resultado de la interacción entre proveedor y empresa receptora de servicios.
La seguridad tiene que partir del cliente. Cuando una empresa quiere llevar sus datos a la nube, debe
indicar cuáles son sus preferencias. Conociendo sus necesidades el proveedor diseña un servicio
específico para la empresa.
El cómputo en la nube tiene características específicas que requieren evaluación de los riesgos en
áreas tales como integridad, recuperación y privacidad de los datos, así como en asuntos legales en
áreas como normativa de regulación y auditoría de los sistemas de seguridad de la información.
2.5.2 Seguridad de los servicios de la nube
La evaluación de riesgos y la revisión de la seguridad en la nube deben considerar en primer lugar las
opciones de despliegue de la nube (pública, privada e hibrida) y modelos de entrega de servicios
(SaaS, PaaS, IaaS). Estrechamente relacionada con los modelos anteriores estarán los procesos
relacionados con la virtualización, los cuales también consideraremos. Evidentemente, como sucede
en el Plan General de Seguridad de la Información (PGSI), ninguna lista de controles de seguridad
podrá cubrir todas las circunstancias, pero se deberá adoptar un enfoque basado en riesgos para
moverse o migrar a la nube y seleccionar las opciones de seguridad. Los activos de despliegue en la
nube se agrupan en dos grandes bloques: los datos y las aplicaciones.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
14
2.5.3 Riesgos y tipos de seguridad
Los centros de datos en la nube afrontan la resolución de los planes de recuperación de desastres
como en un centro de datos tradicional, ya que en los primeros las copias de seguridad estarán
normalmente replicadas, por lo que será posible mover fácilmente toda la infraestructura de un centro
a otro de la nube ya que, con toda seguridad, estarán sincronizados y sus funcionamiento será muy
similar.
Otra gran ventaja de la nube será relativa al costo económico considerablemente más bajo en la nube,
puesto que no necesitará realizar inversión inmediata en infraestructuras, pues el plan de
mantenimiento ordinario siempre contemplará las posibilidades de desastre y la replicación o
alternativa de otros centros de datos de la nube.
Un ejemplo muy eficaz de recuperación de desastres lo ofrece S3 de Amazon, que mediante centros
de datos completamente redundantes es capaz de funcionar prácticamente sin interrupciones con el
modelo temporal 24 x 7 (24 horas los 7 días de la semana).” [7]
2.5.4 Modelo de software tradicional
Las aplicaciones de software tradicionales están basadas en un modelo de costes de licencias, soporte,
mantenimiento y actualización por periodos de tiempo anuales, bianuales, trianuales, etc. Los costes
de las licencias se basan en métricas que por lo general no están alineadas con el uso de las
aplicaciones, sino con el coste del desarrollo del software, normalmente alto, y el periodo de
despliegue entre sus clientes. Las renovaciones de las licencias suelen hipotecar tanto el proveedor
como al cliente.
Por otra parte, un paquete típico de software empresarial requiere un despliegue de equipos de
hardware, servidores, red de aprovisionamiento para el número de usuarios internos y externos a la
organización, procesos de despliegue de la aplicación, periodos de formación, etc., los cuales ofrecen
la ventaja de que las aplicaciones de software tradicionales son muy personalizables, lo que, por otra
parte, aumenta los costes.
Una diferencia importante entre el modelo de software tradicional y el modelo de software como
servicio, reside en el número de usuarios que soportan la aplicación. El modelo de software tradicional
es un modelo aislado, de un único cliente (la organización o empresa), lo que significa que el cliente
compra la aplicación de software y la instala en un servidor. El servidor ejecuta la aplicación para el
grupo de usuarios del cliente.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
15
Por el contrario, el modelo SaaS es un modelo multicliente (multi-inquilino) donde la infraestructura
hardware que soporta la aplicación es compartida por muchos clientes diferentes, aunque lógicamente
es única para cada cliente. La arquitectura multicliente está diseñada para la compartición de recursos
entre los clientes, aunque es capaz de poder diferenciar con seguridad total los datos que pertenecen
a cada cliente o inquilino de la plataforma. Esta característica significa que una empresa cliente puede
utilizar sus datos con total independencia y seguridad, a la vez que otras compañías pueden estar
utilizando en condiciones similares y también con total independencia y seguridad sus datos.
En las normas de gobierno de seguridad de una organización se deben implementar controles
ajustados a los riesgos previsibles. Estos controles se implementan según la Cloud Security Alliance
en una o más capas que irán en el rango de las facilidades (seguridad física) a la infraestructura de
redes (seguridad en las redes), a los sistemas de Tecnologías de la Información (seguridad de
sistemas) y a toda la gestión de la información y las aplicaciones (seguridad de las aplicaciones).
Las responsabilidades de seguridad se repartirán entre el proveedor y el consumidor de la nube y se
diferirá según sea el modelo de servicio de la nube.
2.6 Proveedores de servicio en la nube
Proveedores de software como servicio más populares son: Microsoft, Google (Google Apps),
Amazon.
Proveedores de plataforma como servicio muy reconocidos son: Microsoft Windows Azure, Google
App Engine, Force.com de Salesforce, GigaSpaces.
En infraestructura como servicio, proveedores también muy reconocidos son: Amazon, Rackspace.
IBM, VMware, Citrix, Cisco, HP, CA Technologies.
A continuación se describen algunos de los proveedores mencionados anteriormente.
2.6.1 Amazon
“AWS (Amazon Web Services, aws.amazon.zom) es la espina dorsal de los servicios en la nube. Se
basa en estándares SOA, incluyendo HTTP y protocolos de transferencia SOAP, código abierto y
sistemas operativos comerciales, servidores de aplicaciones y acceso basado en navegador. Ofrece
nubes privadas conectadas a través de redes privadas virtuales con una alta seguridad y controlada
por el administrador del sistema. AWS ofrece su servicio de “pago por uso” y el consiguiente ahorro
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
16
de costos. Comprende una gran variedad de servicios, la mayoría en el amplio concepto de Cloud
Computing. Estos servicios se incluyen fundamentalmente dentro del modelo IaaS de infraestructura
como servicio, aunque sus retos son ofrecer de modo gradual los otros modelos de software como
servicio y plataformas como servicio. Todos los servicios AWS, según manifiesta Amazon en su sitio
Web oficial, pueden utilizarse en forma independiente o implementarse de manera conjunta para crear
una completa plataforma informática basada en la nube. ”[8]
2.6.2 Google
Google es, sin duda, uno de los gigantes de la industria informática y desde hace unos años ha
decidido también convertirse en proveedor estrella de la nube en ofertas de servicios para usuarios,
organizaciones y empresas y desarrolladores, y así encontramos en su portafolio de servicios
diferentes herramientas para la nube: Google Apps, aplicación de software como servicio SaaS para
usuarios y organizaciones y empresas; Google (PaaS) pensado en desarrolladores; Google Web
Toolkit, otra herramienta para desarrolladores Web.
Google Apps
“Google Apps (www.google.com/apps) es una herramienta de software como servicio que ofrece
Gmail —su servicio de correo electrónico Web— y otras herramientas colaborativas dirigida a
usuarios particulares y empresas; desde la perspectiva ofimática, fundamentalmente Google ofrece
una oferta en el objetivo principal de reducir costo de las Tecnologías de la Información y versatilidad
en la automatización de tareas de oficina, el estilo de un paquete integrado (suite).
Las aplicaciones que ofrece Google Apps son: Gmail para empresas, Google Calendar, Google Docs,
Grupos de Google, Google Sites, y Google Videos. Google Apps ofrece un número de productos de
seguridad y cumplimientos de normas (compliance) para la infraestructura existente de correo
electrónico. La versión estándar es gratuita y ofrece la misma cantidad de almacenamiento que las
cuentas ordinarias del correo electrónico Gmail. La versión Premium se basa en el modelo de licencia
de pago por uso y nivel de almacenamiento de correo electrónico por empleado, todo ello con el pago
de una tasa corporativa de 50 dólares americanos por usuario al año.
La citada tarifa corporativa de Google Apps ofrece funciones de empresa como interoperabilidad,
entre otros, con Blackberry y Microsoft Outlook; controles de empresa con SSL requisitos de
seguridad de contraseña personalizada y otras funcionalidades; asistencia y fiabilidad para empresas
con garantía de tiempo de actividad de 99,9% y asistencia 24 horas los siete días de la semana.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
17
Google App Engine
“Es una plataforma que ofrece construcción y alojamiento de aplicaciones Web en la infraestructura
de Google. Las aplicaciones App Engine son fáciles de construir, mantener y escalables (ampliables)
a medida que crecen las necesidades, almacenamiento y tráfico Web.
App Engine facilita la escritura y despliegue de código y su integración con otras aplicaciones Web
de Google. Actualmente está soportada por los lenguajes de programación Python y Java. App Engine
es gratuito hasta un cierto nivel de recursos utilizados, a partir de los cuales se carga una tasa por
almacenamiento adicional, ancho de banda o ciclos de CPU requeridos para la aplicación.
Las aplicaciones App Engine son fáciles de crear, de mantener y de ampliar al ir aumentando el tráfico
y las necesidades de almacenamiento de datos. Con App Engine: sólo tendrá que subir su aplicación
para que los usuarios puedan empezar a utilizarla. Se puede proporcionar a la aplicación su propio
nombre de dominio a través de Google Apps. También es posible darle un nombre que esté disponible
en el dominio appspot.com. Podrá compartir su aplicación con todo el mundo o limitar el acceso a
los miembros de su organización.
Con App Engine sólo se paga lo que se utiliza. No existen costes de configuración ni tarifas
recurrentes. Los recursos que utiliza su aplicación como, por ejemplo, el almacenamiento y el ancho
de banda, se miden por gigabytes y se facturan según tarifas, pudiéndose controlar la cantidad máxima
de recursos que consume su aplicación para ajustar el presupuesto.”[9]
2.6.3 Microsoft
Microsoft ofrece un gran número de servicios en la Nube para organizaciones y empresas de cualquier
tamaño, muchos de los cuales son variante o actualizaciones de servicios populares de esta gran
empresa.
Es importante destacar que grandes empresas a nivel mundial están contratando servicios de la nube
de Microsoft. Este es el caso de Ferrovial —una de las grandes empresas constructoras de España,
precursora en el uso de servicios en la nube ya que a mediados de diciembre de 2009 firmó un acuerdo
por cinco años con Microsoft para migrar gradualmente gran parte de sus servicios informáticos a la
nube. El plan permitía que 40.000 empleados de la empresa repartidos en más de 50 países se
conectasen a la nube creando una gran red colaborativa.
Microsoft Azure Platform
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
18
Azure Platform es una oferta de Microsoft que ofrece servicios y plataformas alojados en los centros
de datos de Microsoft y que forma parte de su estrategia de brindar sus recursos de ofimática y gestión
empresarial, fundamentalmente, como servicios Web en la nube. Esta estrategia llevará a Microsoft
a ofrecer su nuevo Office en la nube incluyendo una oferta gratuita (Office Web), además de la oferta
de pago. La plataforma Azure Service proporciona un sistema operativo en la nube y herramientas de
desarrollo que permiten la gestión y alojamiento de aplicaciones gestionadas en los centros de datos
de Microsoft. Las aplicaciones pueden ser desarrolladas con protocolos estándares de la industria.
La plataforma Windows Azure se ha construido como una plataforma abierta que ofrece diferentes
opciones a los desarrolladores. Permite utilizar múltiples lenguajes tales como .NET, PHP, Ruby,
Python y Java y herramientas de desarrollo (Visual Studio y Eclipse).
Windows Azure
“Windows Azure es un sistema operativo basado en la nube que permite el desarrollo, alojamiento y
entornos de gestión de servicios para la plataforma Windows Azure Platform. Windows Azure
proporciona a los desarrolladores computación bajo demanda y almacenamiento para alojar, escalar
(ampliar) y administrar las aplicaciones Web en Internet a través de los centros de datos de Microsoft.
Windows Azure es una plataforma flexible que soporta múltiples lenguajes y se integra con sus
entornos existentes. Para construir aplicaciones y servicios en Windows Azure, los desarrolladores
pueden usar sus experiencias en Microsoft Visual Studio y también los protocolos estándares como
SOAP, REST, XML y PHP.”[10]
2.7 Framework y lenguajes de programación en la nube
En este apartado se mencionan algunos de los Framework pertenecientes a los lenguajes soportados
en la nube como son: PHP, Java, Python entre otros. Cabe aclarar que es necesario que el proveedor
de la plataforma en la nube proporcione la lista de lenguajes con los cuales puede trabajar.
A continuación se enlistan algunos Web framework de los lenguajes soportados en la nube.
2.7.1 Python Framework
“Webapp2 es un framework ligero compatible con webapp de Google App Engine: se extiende
webapp para agregar mejor enrutamiento y el manejo de excepciones. También ofrece sesiones, la
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
19
localización, la internacionalización, el dominio y el enrutamiento subdominio. Puede ser utilizado
fuera de App Engine, independientemente de la App Engine SDK.” [11]
2.7.2 Java Frameworks
Apache structs, structs 2 frameworks funcionan correctamente en la nube, pero requieren del soporte
del proveedor del servicio.
Jclouds Apache es una biblioteca de código abierto que le ayuda a empezar en la nube, y utiliza sus
habilidades de desarrollo de Java o Clojure. El API jclouds le da la libertad de usar abstracciones
portátiles o características en la nube específica.
Jclouds pone a prueba el apoyo de los 30 proveedores de la nube y pilas de software de nube como
Amazon, Azure, GoGrid, nueve veces, OpenStack, Rackspace y vCloud.
2.7.3 PHP Cloud
Con Zend Developer Cloud, se obtiene acceso inmediato a un entorno PHP completa, la Compañía
PHP. Incluye, un gran conjunto de extensiones de PHP, Zend Framework y mucho más, por lo que
ya no tendrá que pasar tiempo en la construcción de la pila usted mismo.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
20
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
21
CAPÍTULO III.
ESTADO DEL ARTE
“La oscuridad es la ausencia de la luz
y la luz es un atributo del ser”
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
22
A continuación se presentan los trabajos relacionados con la gestión de nómina sobre sus empleados,
basados en cómputo en la nube, tanto en la industria como en la UPIITA.
3.1 Trabajos de investigación relacionados
Las tecnologías de información y comunicaciones cambian constantemente y el paradigma sobre la
implementación del software no es la excepción, anteriormente se ocupaba el software especializado
con licencias, lo que generaba el costo de la licencia por año y este aumentaba progresivamente según
el número de máquinas a utilizar.
Además la mayoría de las PyMEs no solo ocupan software tradicional instalado en cada máquina,
sino que también tienen bases de datos que se encargan de gestionar la información (almacenada en
servidores); utilizando aplicaciones que en su mayoría son de pago o gratuitas (que no contemplan
las leyes mexicanas), para realizar dicha gestión de su nómina.
Por lo tanto algunas de estas PyMEs administran su propia información y cada una debe contar con
su software y hardware correspondiente. Actualmente existe software que se encarga de la gestión
de nómina, pero no ofrece este servicio en la nube, algunos de ellos son: (SAE, NOI, COI), Nómina
Sol, Mega Nómina y Nómina Plus Suscripción Anual.
“SAE: Controla el ciclo de todas las operaciones de compra-venta de la empresa como: inventarios,
clientes, facturación, cuentas por cobrar, vendedores, compras, proveedores y cuentas por pagar;
automatizando eficientemente los procesos administrativos y asegurando el cumplimiento de las
disposiciones fiscales. Integra la operación de las sucursales conectándolas remotamente vía Internet
y ofrece acceso a través de dispositivos móviles. Brinda reportes, estadísticas, gráficas y consultas de
alto nivel que colaboran en la oportuna toma de decisiones y desarrollo de estrategias comerciales.
Costo de licencia 1 usuario $ 9,740.
Requerimientos mínimos de hardware y software.
NOI: Aspel-NOI 6.0 automatiza el control de los aspectos más importantes de la nómina, su fácil
manejo y versatilidad ofrecen un cálculo exacto de las percepciones y deducciones de los trabajadores
atendiendo los requerimientos específicos de la empresa.
Costo de licencia 1 usuario $ 5,090.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
23
Requerimientos mínimos de hardware y software: Procesador Intel de 32 bits (x86) a 1 GHz. o
superior.*, 512 MB de RAM, recomendado 1 GB.* 320 MB. De espacio libre en disco duro, Monitor
Súper VGA (800x600) o superior, Microsoft Windows® XP, 2003, Vista, 2008, 7, 2012 u 8.
Tabla 1. Comparación Aspel (SAE, NOI, COI) vs Sistema de Gestión de Nóminas en la nube para la Micro,
Pequeña y Mediana Empresa (PyME).
Característica Aspel (SAE,NOI,COI) Sistema de Gestión de Nóminas en la nube
para la Micro, Pequeña y Mediana Empresa
(PyME).
Número limitado de licencias de uso otorgado
por Aspel (número limitado de veces que se
puede instalar y costo por cada licencia)
Es cómputo en la nube, el servicio es
independiente del número de dispositivos que
accederán al sistema, lo que genera un ahorro
para las PyMEs.
Al ser un software de distribución es vulnerable
a ser víctima de la piratería y requiere
instalación en todas las maquinas a utilizarse.
El software de servicio será ejecutado desde un
servidor remoto por lo que no requerirá
instalación.
Solo funciona en sistemas operativos Microsoft
Windows, lo que requiere tener dicho sistema
instalado por lo que es dependiente del sistema
operativo.
Será independiente del sistema operativo.
Funciona solo con procesador de 32 bits Será independiente del procesador.
Tiene requerimientos en hardware. No requerirá de características especiales de
hardware de computadora.
Se descargan versiones actualizadas Se actualizará automáticamente desde el
servidor.
Toda la información de (operaciones de
compra-venta “SAE”, nómina “NOI”, e
información contable “COI”)se encuentra en
una máquina y no existen respaldos automáticos
Se tiene acceso a cualquier hora en cualquier
lugar a la información y el servidor generará
respaldos de la información.
COI: Aspel-COI 6.0 procesa, integra y mantiene actualizada la información contable y fiscal de la
empresa en forma segura y confiable. Proporciona diversos reportes, documentos de trabajo y gráficas
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
24
que permiten soportar y evaluar el estado financiero de la organización, así como generar
oportunamente las diferentes declaraciones fiscales e informativas como las correspondientes a IETU,
IVA, ISR y DIOT. Calcula la depreciación de los activos fijos. Mantiene interfaces con los sistemas
de la línea Aspel e interactúa con hojas de cálculo, lo que contribuye a lograr una eficiente
administración de la empresa. Costo de licencia 1 usuario $ 4,760” [12].
3.2 Versiones comerciales en la nube
7all
“7all.com es una empresa que proporciona soluciones para la administración, control y gestión de
recursos empresariales de pequeñas y medianas empresas, profesionistas y personas físicas con
actividad empresaria
Ofrece planes
Renta ($200/mes)
Personas Físicas que renten bienes inmuebles Régimen de arrendamiento de inmuebles
Profesionista y venta de servicios ($300/mes)
Pymes ($500/mes)
Manejo de inventarios, almacenes y categorías
Punto de venta ($700/mes)
Personas Físicas y Morales con manejo de inventarios, almacenes y categorías
Terminal Punto de Venta” [13]
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
25
Tabla 2 Comparativa entre el sistema de gestión de nómina Vs software en la nube comercial.
7all.com Sistema de gestión de
nomina
Requisitos Se necesita un dispositivo con
acceso a internet y un
navegador
Se necesita un dispositivo con
acceso a internet y un
navegador
Generación de reportes No Si
Emite comprobante
electrónico
Facturación electrónica
Cumple los requerimientos
establecidos por las
autoridades hacendarias
Reportes de nómina
electrónicos. Cumplirá con los
requerimientos de nómina que
contempla Ley federal del
trabajo
Seguridad Proporciona seguridad pero
no especifica como
Implementara SSL para
seguridad de la información
3.2 Tesis o trabajos similares o relacionados
Respecto a los trabajos elaborados en UPIITA no existen aquellos relacionados con la gestión de
nómina en la nube, pero se consideran los siguientes ya que están enfocados a dar solución a
problemáticas en el entorno empresarial. A continuación se mencionan sus características:
Manejador de procesos de negocio basado en Business Intelligence.
“Este trabajo terminal es un sistema modular que es capaz de mostrar estadísticas de los
departamentos de recursos humanos y finanzas de una empresa bajo el concepto de arquitectura de
Software SOA y que pueda desarrollar informes de la misma, así también escenarios de negocio
basado en Business Intelligence. ”[14]
Sistema para administrar, monitorear y controlar: unidades móviles e inventarios de artículos
emplayados mediante el uso de GPS y base de datos
“Este trabajo es un sistema para administrar, monitorear y controlar: unidades móviles e inventarios
de artículos emplayados mediante el uso de GPS1 y base de datos, el cual está pensado para dar
solución a la problemática empresarial correspondiente al control y administración del proceso:
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
26
“emplayamiento de productos en tiendas específicas”, que realiza el equipo de trabajadores de la
empresa S.C. Johnson and Son S. A. de C. V. ”[15]
La principal diferencia entre los dos trabajos terminales anteriores y el sistema propuesto es su
implementación en la nube, así como su diseño pues en el primero utilizaron una arquitectura de
software SOA, así como un negocio basado en Business Intelligence, el segundo gestiona unidades
móviles e inventarios mediante un sistema para un dispositivo móvil. A continuación se presenta en
la Tabla 2 la comparativa entre los trabajos terminales en UPIITA y el sistema propuesto.
Tabla 3 Comparativa con los trabajos terminales en UPIITA.
Características Manejador
de procesos
de negocio
basado en
Business
Intelligence.
Sistema para administrar,
monitorear y controlar: unidades
móviles e inventarios de artículos
emplayados mediante el uso de
GPS y base de datos.
Sistema de Gestión de
Nóminas en la nube para
la Micro, Pequeña y
Mediana empresa (PyME).
Cómputo en la
nube
X
Acceso Remoto X X
Seguridad SSL X
Da solución a
la problemática
de una empresa
X X X
Da solución a
la problemática
de varias
empresas
X
Recopilación
de información
en BD
X X X
Uso de minería
de datos
X
Arquitectura de
software SOA
X
Generación de
reportes
X X X
El sistema de Gestión de Nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME)
está orientado a ser flexible ante cualquier empresa de este tipo, satisfaciendo las nuevas tendencias
y necesidades de contar con la información disponible en todo momento, con la finalidad de hacer
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
27
una gestión de la información de una manera rápida, confiable y ofreciendo una conexión segura
través del uso de Internet.
Cada usuario del sistema puede modificar o consultar la información dependiendo de sus funciones
asignadas, por ejemplo el empleado puede verificar su horario de entrada, cuando ya se encuentre
depositado su salario, así como sus diversos descuentos y horas extras, cumpliendo con las normas
vigentes establecidas por la ley federal del trabajo del gobierno mexicano.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
28
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
29
CAPÍTULO IV.
ANÁLISIS Y DISEÑO
“No puedes conocer el significado de tu
vida, hasta que estés conectado con el
poder que te ha creado”
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
30
A continuación se presenta la etapa de análisis y diseño del presente trabajo gestión de nómina sobre
sus empleados, basado en cómputo en la nube.
4.1Metodología de trabajo
La metodología de trabajo que se siguió en este proyecto fue la siguiente:
 Analizar información correspondiente a la nómina de un empleado.
 Analizar la nueva ley del trabajo.
 Investigar cómputo en la nube y seleccionar modelo de servicio.
 Investigar y seleccionar proveedores del servicio
 Seleccionar un framework y un lenguaje de programación.
 Analizar y diseñar el sistema (Diagramas UML).
 Diseñar e implementar los reportes a entregar al jefe de la empresa.
 Desarrollar los diagramas UML.
 Investigar y seleccionar la seguridad del sistema.
4.2 Análisis de requerimientos
Requerimientos generales para el sistema propuesto.
 Elegir el modelo de servicio en la nube.
 Elegir un proveedor de servicio en la nube que brinde una plataforma como servicio y un
hardware como servicio sólido para implementar el software como servicio, que también
permita el respaldo de la información.
 Cumplir con los requerimientos de nómina que contempla la Ley federal del trabajo.
 Analizar y diseñar el sistema (UML) junto con su base de datos.
 Identificar usuarios del sistema con sus respectivas funciones.
 Contar con un certificado de seguridad adecuado para la seguridad de la información.
 Tener un framework (lenguaje) especial para la nube.
 Elegir un gestor de base de datos soportado en la nube.
 Diseñar la base de datos para SQL cloud.
 Registrar la empresa en un formulario.
 Ajustar la empresa según los parámetros configurables.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
31
 Poder dar de alta 20 sucursales como máximo para cada empresa registrada.
 Cada sucursal tendrá su propio departamento de recursos humanos.
 El Departamento de recursos humanos debe estar capacitado para dar de alta, baja, modificar
empleados.
 El capturista debe estar capacitado para poder registrar faltas, tiempo extra, bonos.
 Generar de reportes mensuales de nómina y de asistencia para cada trabajador.
 Generar reporte mensual global de todas las sucursales para el dueño de la empresa.
Requerimientos funcionales:
Software:
 Tener instalado un navegador web actualizado, según sea el caso en una PC de escritorio,
Laptop o Tablet.
Hardware:
 Computadora de escritorio, Laptop o Tablet.
 Personal capacitado: Departamento de recursos humanos, empleados y dueño.
Entradas y salidas del sistema
Requerimientos de entrada (Sesión):
 Usuario
 Contraseña
Información previamente capturada por el departamento de RRHH
 Id Empleado (Asignado automáticamente)
 Sueldo base.
 Datos personales (Nombre, edad, RFC, etc…)
 Datos del lugar donde labora (id_sucursal)
 Información de créditos (bancos, Infonavit…)
 Información de descuentos (pensión alimenticia…)
 Tiempo extra.
 Retardos.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
32
 Faltas.
Requerimientos de salida:
Desglose de la nómina por deducciones y percepciones.
Ejemplos de Deducciones
 Impuesto sobre la renta. (ISR- impuesto directo sobre la ganancia obtenida; es decir, por la
diferencia entre el ingreso y las deducciones autorizadas)
 Fondo de pensiones y prestaciones.
 Inasistencias y suspensiones.
 Seguro institucional.
Ejemplos de percepciones
 Comisiones.
 Sueldos compactados.
 Compensaciones por servicios.
 Prima vacacional.
 Estímulos al personal.
 Estímulo al desempeño.
 Pago por renuncia.
 Gratificaciones.
 Estímulo por antigüedad.
 Estímulo por puntualidad.
 Pago por días de descanso.
 Pago por horas extra.
 Aguinaldo.
 Reparto de utilidades.
 Estímulo por productividad.
 Vacaciones.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
33
4.3 Módulos del sistema
En la solución propuesta se contempla una visión general del funcionamiento del sistema el cual
posee los siguientes módulos con las siguientes funciones.
4.3.1 Módulos
 Formulario Web: El posible cliente observa el anuncio publicitario en internet (AdWords)
que lo direcciona a una página web y si el posible cliente le interesa el servicio llena un
formulario, este posible cliente ahora es el propietario que puede tener una o varias empresas
registradas y cada empresa con una o más sucursales.
 Saas: El proveedor del servicio es capaz de gestionar a los propietarios de las empresas, así
como datos generales como actualizar los salarios mínimos vigentes.
 Propietario: El propietario genera los periodos de nómina que tendrán sus sucursales y da
de alta al encargado de Recursos Humanos de cada sucursal. Un mismo propietario puede
tener una o más empresas y cada empresa puede tener una o más sucursales y cada sucursal
tiene su propio departamento de Recursos Humanos.
 Sucursal y Recursos Humanos: Cada sucursal da de alta sus propios empleados y gestiona
su asistencia así como su nómina.
 Datos Empleado: El departamento de Recursos humanos capturará los datos personales de
nómina de cada empleado que se brinden en su contrato.
 Asistencia: Este módulo lleva el conteo de asistencia, retardos, faltas de cada empleado, para
las empresas que así lo soliciten.
 Nomina: Este módulo hace todos los cálculos de nómina (percepciones y deducciones) de
cada trabajador con la frecuencia de los periodos de nómina generados por el propietario de
la empresa.
 Reportes: En este módulo se generan los reportes de nómina y de asistencia de cada
trabajador, también el dueño de la empresa podrá observar el reporte general de su empresa.
 Sesiones: Se garantiza la protección de la información por medio de las funciones que tiene
cada sesión y por un certificado SSL instalado con el proveedor de servicio.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
34
4.3.2 Diagrama de bloques del funcionamiento general del sistema
Figura 3. Diagrama de bloques del funcionamiento general del sistema.
4.4 Usuarios
A continuación se muestran los posibles usuarios del sistema.
Tabla 4 Usuarios del sistema con sus respectivas funciones.
Actor Funcionalidad en el sistema
Área de
RRHH
Captura de datos referentes a la nómina (alta de empleados, baja de empleados,
registro de sueldo base y otras remuneraciones) y puede publicar anuncios a los
empleados.
Empleado Podrá visualizar sus reportes correspondientes a nómina y control de asistencia.
Además de los avisos emitidos por el dueño.
Propietario Podrá visualizar los reportes correspondientes a sus sucursales, también podrá
publicar avisos o anuncios a sus trabajadores de Recursos Humanos.
SaaS En esta sesión se realizarán operaciones de mantenimiento del sistema.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
35
4.5 Diseño general del sistema
El diseño del proyecto consta del diagramado UML el cual se encuentra completo en el anexo digital
(Disco Compacto) del presente documento, dicho documento consta de 103 páginas y 109 imágenes
y contiene los siguientes diagramas.
 Diagramas de actividades.
 Diagramas de caso de uso.
 Diagramas de secuencia.
 Diagrama Entidad – Relación.
 Diagrama Relacional.
 Diagrama de Clases.
4.6 Toma de decisiones
A continuación se presenta el procedimiento y las decisiones tomadas en las elecciones del presente
proyecto para su posterior desarrollo.
4.6.1 Elección del Proveedor de servicios.
Tabla 5 Comparación entre proveedores del servicio.
Proveedor Amazon Google Cloud Microsoft
Costo del
plan
$0.08 per hour $0 per hour $0 per hour
Categoría Infrastructure as
a Service
Platform as a Service Platform as a Service
Interface API API API
Tipo de
suscripción
Subscripción
por planes
Pagas lo que usas Pagas lo que usas
Web http://aws.amaz
on.com/es/ec2/#
pricing
https://developers.goo
gle.com/appengine/pri
cing?hl=es&csw=
http://azure.microsoft.com
/es-es/
Seguridad X X X
Soporte
gratis
X X X
Servicio de
soporte
Foros Foros y recursos en
línea
Foros y recursos en línea
Lenguajes
soportados
Java, Php,
Phyton, Ruby
.net
Java, Php, Phyton, Go. .NET, Java, PHP, Node.js,
Python o Ruby.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
36
El proveedor seleccionado fue Google Cloud debido a las siguientes razones:
Uno de los requerimientos principales del sistema a desarrollar es el respaldo de la información y de
una plataforma sólida en el PasS (Platform as a Service) y HasS (Hardware as a Service), también
un soporte seguro y fiable de su plataforma SasS, tutoriales para poder usar su plataforma, también
es indispensable el uso de certificados SSL para la seguridad a implementar en la nube.
Google cloud proporciona las herramientas y el soporte necesario para trabajar con la aplicación en
la nube, el costo del plan base es gratuito (cuenta bronce), tiene soporte de diferentes framework en
la nube.
A pesar de que la nube de Microsoft cumple con los requerimientos solicitados, se eligió Google
Cloud sobre los otros proveedores debido a que proporciona un mayor apoyo con tutoriales y grupos
de ayuda para desarrolladores.
4.6.2 Elección de la metodología de software elegido.
Comparando las metodologías de software tenemos:
Tabla 6 Metodologías de software contempladas.
Modelo Modelo de Cascada Modelo de Espiral Modelo incremental
Fases 1.- Análisis y definición de
requerimiento
2.- Diseño del sistema y del
software
3.-Implementación y prueba
del sistema
4.- integración y prueba del
sistema
5.-Funcionamiento y
mantenimiento
1.-Definición de
objetivos
2.-Evaluación y
reducción de riesgos
3.-Desarrollo y
validación
4.- Planificación
1.-Definir esbozo de
requerimientos
2.-Asignar requerimientos a
los incrementos
3.- Diseñar la arquitectura del
sistema
4.-Desarrollar incrementos
del sistema
5.- validar incrementos
6.- validar sistema
7.- sistema final
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
37
Elección:
Modelo de Espiral: Combinación de lineal e iterativo.
Debido a que es una combinación entre lineal e iterativo, tiene mucha más flexibilidad que el
incremental y no es tan común como el lineal. Nos permite crecer junto con la aplicación sobre la
nube.
4.6.3 Elección del tipo de seguridad en la nube
El uso certificados SSL personalizados permite entregar contenido a través de HTTPS (Protocolo
seguro de transferencia de hipertexto) lo que a su vez permite una comunicación autenticada y
cifrada. Ya que se planea manejar la información referente a la nómina lo cual implica manejo de
información personal, resulta totalmente necesario aplicar medidas de seguridad para mantener la
integridad y confidencialidad de la información.
Los principales proveedores en la nube cuentan con este servicio de certificados SSL como se
muestran en la Tabla 7.
Tabla 7 . Comparativa de proveedores que ofrecen certificados SSL y plataforma cloud.
Proveedor certificados Costo USD
Amazon Certificados SSL personalizados $600 (por mes)
Google SNI SSL certificates
SSL Virtual IPs (VIPs)
$ 9.00 (por mes)
$ 39.00 (por mes)
Microsoft SSL SIN
SSL IP
$6,12 - $7,20/mes
$26,52 - $31,20/mes
Rackspace SSL Clusters $20 por mes
Esta cotización fue extraída de las correspondientes páginas:
 Amazon (http://aws.amazon.com/es/cloudfront/pricing/),
 Google (https://developers.google.com/appengine/pricing),
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
38
 Microsoft (http://www.windowsazure.com/es-es/pricing/details/web-sites/#ssl-connections)
 Rackspace (http://www.rackspace.com/cloud/sites/pricing/)
Como se mencionó anteriormente, son proveedores que además ofrecen otros servicios como
almacenamiento o base de datos para trabajar en la nube, Google cloud además de ofrecer seguridad
ofrece también mejora en los servicios dependiendo el paquete (silver, gold y Premium) sin olvidar
que cuenta con una versión gratuita (bronze).
Tipos de servicio SSL que oferta Google App Engine (Tabla 8).
Tabla 8 . Se muestran los dos tipos de servicios SSL que ofrece Google App Engine.
Recurso Unidad Costo unitario
SNI SSL certificates Costo del certificado por mes $ 9.00
SSL Virtual IPs (VIPs) Certificado VIP costo por mes $ 39.00
“Server Name Indication (SNI)
SNI es una característica que extiende SSL. Esta extensión permite que múltiples dominios compartan
la misma dirección IP. Cuando un usuario visita un sitio SNI con un cliente que no admite SNI no
podrán ver la página cuando se conecta a través de HTTPS.
Virtual IP (VIP)
Una dirección IP dedicada se asigna para su aplicación. Esto permite ser utilizado sin la extensión
SNI y, como tal, funciona en cualquier navegador o sistema operativo que soporte SSL. Cada VIP
sólo admite un certificado. La dirección IP virtual puede cambiar, por lo que los registros DNS A no
debe ser utilizado.” [16]
Elección:
Para el desarrollo del proyecto y la realización de pruebas se ha contemplado utilizar el servicio “SSL
certificates” siempre que los proveedores de la nube no realicen modificaciones a la información
presentada en la tablas anteriores. Ya que los certificados básicos de SSL, cumplen con nuestro
requerimiento de seguridad sin elevar el costo a cambio del beneficio de mantener segura la
información de nómina.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
39
4.6.4 Elección del Framework y lenguaje
Solo algunos framework soportan trabajar en la nube y unos pocos fueron diseñados específicamente
para trabajar en ella aunque esto depende también del proveedor que se haya seleccionado.
Tabla 9 . Framework y lenguajes para Google App Engine.
Proveedor lenguaje Framework
Google App Engine
(Google)
Python: CherryPy,
Pyramid,
Flask,
web2py,
and webapp2.
Django (requires workarounds),
Java --Apache Struts 1
-Struts 2 runs with workarounds
Go
(Experimental)
PHP (en fase experimental)
De la Tabla 9 se observa que java aún presenta problemas en la utilización de framework (a excepción
de Apache Struts 1) por lo que basándonos en el uso de framework la opción más viable es Python
ya que cubre con los requerimientos del proyecto.
App Engine ejecuta el código de aplicación Python usando un intérprete de Python pre cargado en un
ambiente seguro "espacio aislado". Su aplicación recibe las peticiones Web, realiza un trabajo, y
envía las respuestas mediante la interacción con este entorno.
Una aplicación Web de Python interactúa con el servidor Web de App Engine mediante el protocolo
WSGI (Gateway Interface Web Server es una simple especificación universal de interfaz), por lo que
las aplicaciones pueden utilizar cualquier framework de aplicaciones Web compatibles con WSGI.
App Engine incluye un framework de aplicación web simple, llamado Webapp2.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
40
Cabe mencionar que Webapp2 es un framework nativo de Google App Engine por lo que fue diseñado
específicamente para funcionar en la nube.
Webapp2 es un framework Web Python ligero compatible con Google App Engine. También ofrece
las webapp2_extras que es un paquete con varias utilidades opcionales: sesiones, localización,
internacionalización, dominio y subdominio, enrutamiento, cookies seguras. Webapp2 también se
puede utilizar fuera de Google App Engine, independientemente de la App Engine SDK.
El framework Webapp2 ya está instalado en el entorno de App Engine y en el SDK, por lo que no es
necesario un paquete con el código de aplicación para usarlo.
Webapp2 es un framework que cuenta con soporte del proveedor del servicio seleccionado además
se cuenta con una mayor documentación y experiencia en la nube soportado por Google cloud.
El framework Webapp2 es ligero ya que permite crear rápidamente aplicaciones web sencillas para
el tiempo de ejecución de Python 2.7. Además que es un framework que cuenta con mucha
documentación en Google cloud.
Elección:
Con base al requerimiento de framework de estar diseñado para la nube y de realizar una comparación
de varios de ellos se eligió un framework de desarrollo y por consecuencia el lenguaje.
El framework seleccionado es Webapp2 y como consecuencia el lenguaje seleccionado fue Python.
4.7.5 Elección del gestor de base de datos.
El único gestor de base de datos en la nube ofrecido por Google cloud es “SQL Cloud” y tiene las
siguientes características:
“Cloud Platform Google le proporciona potentes bases de datos, para que no se quede sin espacio,
almacenamiento redundante y fiable que necesita.
Genere e implemente en la nube rápidamente porque SQL cloud ofrece bases de datos estándar de
MySQL, la base de datos de código abierto más popular del mundo. Instancias disponibles de hasta
16 GB de RAM, 500 GB de almacenamiento.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
41
La opción de pago por uso hace que sea económica para empezar. Si se está ejecutando una base de
datos utilizada a la ligera o de forma esporádica, se ahorrará dinero al pagar sólo por el tiempo que
accede a sus datos.
Seguridad, disponibilidad, durabilidad, copia de seguridad, y se cifra, por lo que es excepcionalmente
seguro. Sus datos se replicarán en muchos lugares geográficos, y la conmutación por error entre ellos
se maneja automáticamente. Esto significa que sus datos están seguros y su base de datos está
disponible incluso en el caso de un fallo importante. También gestionamos copias de seguridad, por
lo que es fácil para que usted pueda recuperar cuando sea necesario.
Migración fácil; No Lock–in, Conexiones y herramientas como mySQLdump Estándar, Wire
Protocol MySQL, y JDBC
Maneja y accede a las instancias a través de la consola o nube API JSON.
Totalmente gestionado sin tener que preocuparse acerca de la replicación, administración de parches
o de gestión de base de datos.
Google ofrece dos planes de facturación para el Cloud SQL:
Para los desarrolladores con más tráfico, tenemos planes de paquete.
Para los desarrolladores con aplicaciones ligeras, ofrecemos un esquema de precios flexible "por uso".
Usted sólo paga por el tiempo que acceder a sus datos.” [17]
Elección única: SQL Cloud.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
42
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
43
CAPITULO V.
DESARROLLO E
IMPLEMENTACIÓN
“Existe una luz que desafía la muerte de
la noche, un resplandor brilla como alas
de esperanza tomando vuelo hacia un
día soleado”
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
44
A continuación se presenta el desarrollo del sistema de gestión de nómina basado en cómputo en la
nube.
5.1. Ejecución de pruebas de escritorio independientes
5.1.1. Descripción general del proyecto
Todo proyecto en Google Cloud, consta de una serie de archivos base los cuales son necesarios para
compilar dicho proyecto, el programa base para poder compilar los proyectos es Google App Engine,
acompañado del soporte del framework seleccionado.
Los archivos básicos del proyecto son:
Nombre.yaml : En este archivo se coloca el nombre de la instancia (dominio) del proyecto para poder
realizar la compilación y el deploy (subirlo a la nube) del proyecto
Archivo.py: Se encuentra toda la información del framework con el cual se va a trabajar, aquí se
implementa todo el proceso de análisis y diseño del sistema.
Index.html: En este archivo se encuentra todo el código HTML y Java script que va a realizar las
vistas y los cálculos correspondientes.
Para poder hacer uso de un proyecto en Google Cloud es necesario contar con el siguiente software:
 Google App Engine.
Seleccionar el Run Time Enviroment (en este caso ocuparemos Phyton 2.7)
 Si se va a ocupar SQL Cloud es necesario instalar MySQL (la versión que se ocupó en el
proyecto fue MySQL 5.5)
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
45
5.2. Programa Hola mundo en la nube
Todo proyecto en Google cloud se compone principalmente de dos archivos, el primero con extensión
.yaml y el segundo con extensión .py a continuación se describe el contenido de cada uno de ellos.
 Nombre.yaml
En este archivo en la primera línea debe de ir el nombre de tu dominio en el cual se alojará el proyecto
en la nube en este caso borrar “your-app-id” y poner el nombre deseado.
En la opción de Runtime es el lenguaje que se compilará con la versión correspondiente y si se desea
se pueden agregar librerías que se ocuparán en la nube según el framework seleccionado.
application: your-app-id
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: helloworld.application
Al realizar la compilación este fue el código final:
application: manual-tecnico-2015
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: helloworld.application
 Nombre.py
Básicamente en este archivo se importa el framework seleccionado mediante una instancia de su clase
y se escribe el contenido “Hola Mundo Cloud” para posteriormente hacer su correspondiente Deploy,
el Deploy no es más que compilar el proyecto y subirlo a la nube.
El contenido de este archivo es el siguiente:
import webapp2
class MainPage(webapp2.RequestHandler):
def get(self):
self.response.headers['Content-Type'] = 'text/plain'
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
46
self.response.write('Hola Mundo Cloud')
application = webapp2.WSGIApplication([
('/', MainPage),
], debug=True)
Para hacer un deploy en Google Cloud y compilar en la nube, es necesario abrir el programa Google
App Engine, localizar la carpeta donde se encuentra ubicado el proyecto y se le da click en el botón
azul “Deploy”, posteriormente se escribe el e-mail y password de la cuenta vinculada a Google cloud
y se le da click en el botón “Ok” para empezar a realizar la compilación en la figura 4 se muestra
este proceso.
Figura 4. Proceso para realizar el deploy de una aplicación en Google Cloud.
Una vez que se ha realizado el proceso de deploy se obtiene el resumen de la compilación del
proyecto, en la figura 5 se puede observar dichos resultados.
Cabe notar que cuando no existe problema alguno se muestra el mensaje “Deployment Sucessful”.
Para comprobar el correcto Deploy de la aplicación se puede visitar el dominio:
www.manual-tecnico-2015.appspot.com y se observará la salida mostrada en la figura 6.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
47
Figura 5. Resultado de un Deployment exitoso.
Figura 6. Resultado Final del primer hola mundo en la nube.
5.3. Primer acercamiento para almacenar datos en la nube.
En la figura 7 se muestra un primer programa el cual almacena datos que ingresa el usuario. Una
vez que se accesa a la página principal e inicia sesión.
Figura 7. Ejemplo de libro de visitas que almacena en data store en el espacio de Gmail.
Posteriormente se puede empezar a usar el mini diario que almacena los datos en el data store que
proporciona gratuitamente Google cloud.
Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME).
48
A continuación se muestra el código con el cual se realizó el Deploy de este proyecto
application: true-kite-622
version: 1
runtime: python27
api_version: 1
threadsafe: true
handlers:
- url: /.*
script: guestbook.application
libraries:
- name: webapp2
version: latest
codigo.py
MAIN_PAGE_FOOTER_TEMPLATE = """
<form action="/sign?%s" method="post">
<div><textarea name="content" rows="3" cols="60"></textarea></div>
<div><input type="submit" value="Sign Guestbook"></div>
</form>
<hr>
<form>Guestbook name:
<input value="%s" name="guestbook_name">
<input type="submit" value="switch">
</form>
<a href="%s">%s</a>
</body>
</html>
"""
DEFAULT_GUESTBOOK_NAME = 'default_guestbook'
En el código se muestra el contenido del .yaml para| poder realizar el deploy del proyecto.
Cabe mencionar que Google cloud datastore está totalmente administrado por Google, él se encarga
automáticamente de la fragmentación y la replicación de datos.
Cloud Datastore ajusta automáticamente la escala según las necesidades. Esto permite centrarse en
crear la aplicación y olvidarse de la administración.
Cloud Datastore proporciona transacciones ACID. La aplicación puede ejecutar varias operaciones
de almacén de datos en una única transacción, que se ejecutarán correctamente o con errores en su
totalidad, garantizando así la integridad de tus datos.
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita
Cesar vilchis vieyra   upiita

Más contenido relacionado

La actualidad más candente (20)

Losses in optical fiber
Losses in optical fiberLosses in optical fiber
Losses in optical fiber
 
Security in Wireless Sensor Network
Security in Wireless Sensor NetworkSecurity in Wireless Sensor Network
Security in Wireless Sensor Network
 
Wireless Sensor Networks
Wireless Sensor NetworksWireless Sensor Networks
Wireless Sensor Networks
 
Non orthogonal multiple access
Non orthogonal multiple accessNon orthogonal multiple access
Non orthogonal multiple access
 
Engineering Application of Ham Radio
Engineering Application of Ham RadioEngineering Application of Ham Radio
Engineering Application of Ham Radio
 
localization in wsn
localization in wsnlocalization in wsn
localization in wsn
 
cellular wireless networks
cellular wireless networkscellular wireless networks
cellular wireless networks
 
2.1 introduction to cellular architecture
2.1   introduction to cellular architecture2.1   introduction to cellular architecture
2.1 introduction to cellular architecture
 
Mobile Communication
Mobile CommunicationMobile Communication
Mobile Communication
 
Cellular communication
Cellular communicationCellular communication
Cellular communication
 
Satellite link design
Satellite link designSatellite link design
Satellite link design
 
Leach protocol
Leach protocolLeach protocol
Leach protocol
 
Smart antenna
Smart antennaSmart antenna
Smart antenna
 
Antenna system
Antenna systemAntenna system
Antenna system
 
Wavelength division multiplexing
Wavelength division multiplexingWavelength division multiplexing
Wavelength division multiplexing
 
ppt on Smart antennas
ppt on Smart antennasppt on Smart antennas
ppt on Smart antennas
 
optical fiber
optical fiberoptical fiber
optical fiber
 
58808269 microwave-manual
58808269 microwave-manual58808269 microwave-manual
58808269 microwave-manual
 
cellular concepts in wireless communication
cellular concepts in wireless communicationcellular concepts in wireless communication
cellular concepts in wireless communication
 
Mobile computing unit-I-notes 07.01.2020
Mobile computing unit-I-notes 07.01.2020Mobile computing unit-I-notes 07.01.2020
Mobile computing unit-I-notes 07.01.2020
 

Similar a Cesar vilchis vieyra upiita

Tesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfTesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfjbsysatm
 
Tesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfTesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfjbsysatm
 
Portafolio digital tic´s
Portafolio digital tic´sPortafolio digital tic´s
Portafolio digital tic´sBarbie Mora
 
TESIS+Aplicación Modelo+Incremental+Para+el+Desarrollo+del.pdf
TESIS+Aplicación Modelo+Incremental+Para+el+Desarrollo+del.pdfTESIS+Aplicación Modelo+Incremental+Para+el+Desarrollo+del.pdf
TESIS+Aplicación Modelo+Incremental+Para+el+Desarrollo+del.pdfPedroCalero11
 
Bc tes-3410 jamanca chavez - rios damian
Bc tes-3410 jamanca chavez - rios damianBc tes-3410 jamanca chavez - rios damian
Bc tes-3410 jamanca chavez - rios damianRonald Guerra
 
Las redes-sociales-en-la-vida-de-tus-hij@s
Las redes-sociales-en-la-vida-de-tus-hij@sLas redes-sociales-en-la-vida-de-tus-hij@s
Las redes-sociales-en-la-vida-de-tus-hij@sMarta Montoro
 
Las redes sociales y tus hij@s
Las redes sociales y tus hij@sLas redes sociales y tus hij@s
Las redes sociales y tus hij@sMarta Aresté Pozo
 
Criptomonedas y blockchain: propuesta de uso y consecuencias en el sistema fi...
Criptomonedas y blockchain: propuesta de uso y consecuencias en el sistema fi...Criptomonedas y blockchain: propuesta de uso y consecuencias en el sistema fi...
Criptomonedas y blockchain: propuesta de uso y consecuencias en el sistema fi...eraser Juan José Calderón
 
M1 plataforma moodle_u1
M1 plataforma moodle_u1M1 plataforma moodle_u1
M1 plataforma moodle_u1Israel Mendoza
 
ejemplo M1 plataforma moodle_u1
ejemplo M1 plataforma moodle_u1ejemplo M1 plataforma moodle_u1
ejemplo M1 plataforma moodle_u1lexyolguin
 

Similar a Cesar vilchis vieyra upiita (20)

Saa s
Saa sSaa s
Saa s
 
Luis trabajo de redes
Luis trabajo de redesLuis trabajo de redes
Luis trabajo de redes
 
Tesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfTesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdf
 
Tesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdfTesis_Gutierrez_Vazquez.pdf
Tesis_Gutierrez_Vazquez.pdf
 
2018 01-soto
2018 01-soto2018 01-soto
2018 01-soto
 
Portafolio digital tic´s
Portafolio digital tic´sPortafolio digital tic´s
Portafolio digital tic´s
 
Info plc net_0063171
Info plc net_0063171Info plc net_0063171
Info plc net_0063171
 
Sistema de-informacion
Sistema de-informacionSistema de-informacion
Sistema de-informacion
 
Ensayo tics
Ensayo ticsEnsayo tics
Ensayo tics
 
TESIS+Aplicación Modelo+Incremental+Para+el+Desarrollo+del.pdf
TESIS+Aplicación Modelo+Incremental+Para+el+Desarrollo+del.pdfTESIS+Aplicación Modelo+Incremental+Para+el+Desarrollo+del.pdf
TESIS+Aplicación Modelo+Incremental+Para+el+Desarrollo+del.pdf
 
Bc tes-3410 jamanca chavez - rios damian
Bc tes-3410 jamanca chavez - rios damianBc tes-3410 jamanca chavez - rios damian
Bc tes-3410 jamanca chavez - rios damian
 
Elecronica 1
Elecronica 1Elecronica 1
Elecronica 1
 
Comunicaciondigital
ComunicaciondigitalComunicaciondigital
Comunicaciondigital
 
Las redes-sociales-en-la-vida-de-tus-hij@s
Las redes-sociales-en-la-vida-de-tus-hij@sLas redes-sociales-en-la-vida-de-tus-hij@s
Las redes-sociales-en-la-vida-de-tus-hij@s
 
Las redes sociales y tus hij@s
Las redes sociales y tus hij@sLas redes sociales y tus hij@s
Las redes sociales y tus hij@s
 
Criptomonedas y blockchain: propuesta de uso y consecuencias en el sistema fi...
Criptomonedas y blockchain: propuesta de uso y consecuencias en el sistema fi...Criptomonedas y blockchain: propuesta de uso y consecuencias en el sistema fi...
Criptomonedas y blockchain: propuesta de uso y consecuencias en el sistema fi...
 
M1 plataforma moodle_u1
M1 plataforma moodle_u1M1 plataforma moodle_u1
M1 plataforma moodle_u1
 
ejemplo M1 plataforma moodle_u1
ejemplo M1 plataforma moodle_u1ejemplo M1 plataforma moodle_u1
ejemplo M1 plataforma moodle_u1
 
M1 plataforma moodle_u1(1)
M1 plataforma moodle_u1(1)M1 plataforma moodle_u1(1)
M1 plataforma moodle_u1(1)
 
INFORME
INFORMEINFORME
INFORME
 

Más de estudiantes2010 (20)

Cesar Vilchis Vieyra
Cesar Vilchis VieyraCesar Vilchis Vieyra
Cesar Vilchis Vieyra
 
cesar vilchis vieyra ipn
cesar vilchis vieyra ipncesar vilchis vieyra ipn
cesar vilchis vieyra ipn
 
Cesar vilchis vieyra upiita
Cesar vilchis vieyra upiitaCesar vilchis vieyra upiita
Cesar vilchis vieyra upiita
 
vilchis vieyra
vilchis vieyravilchis vieyra
vilchis vieyra
 
Cesar vilchis
Cesar vilchis Cesar vilchis
Cesar vilchis
 
Cesar Vilchis Vieyra
Cesar Vilchis VieyraCesar Vilchis Vieyra
Cesar Vilchis Vieyra
 
Vilchis Vieyra Cesar
Vilchis Vieyra CesarVilchis Vieyra Cesar
Vilchis Vieyra Cesar
 
Cesar Vilchis Vieyra
Cesar Vilchis VieyraCesar Vilchis Vieyra
Cesar Vilchis Vieyra
 
vilchis vieyra cesar
vilchis vieyra cesarvilchis vieyra cesar
vilchis vieyra cesar
 
cesar vilchis vieyra
cesar vilchis vieyra  cesar vilchis vieyra
cesar vilchis vieyra
 
Cesar Vilchis Vieyra
Cesar Vilchis VieyraCesar Vilchis Vieyra
Cesar Vilchis Vieyra
 
vilchis vieyra cesar
vilchis vieyra cesarvilchis vieyra cesar
vilchis vieyra cesar
 
vilchis vieyra cesar
vilchis vieyra cesarvilchis vieyra cesar
vilchis vieyra cesar
 
cesar vilchis vieyra
cesar vilchis vieyracesar vilchis vieyra
cesar vilchis vieyra
 
cesar vilchis vieyra
cesar vilchis vieyracesar vilchis vieyra
cesar vilchis vieyra
 
Cesar Vilchis Vieyra
Cesar Vilchis VieyraCesar Vilchis Vieyra
Cesar Vilchis Vieyra
 
Vilchis vieyra cesar
Vilchis vieyra cesarVilchis vieyra cesar
Vilchis vieyra cesar
 
Cesar vilchis vieyra
Cesar vilchis vieyraCesar vilchis vieyra
Cesar vilchis vieyra
 
Cesar vilchis vieyra IPN
Cesar vilchis vieyra   IPNCesar vilchis vieyra   IPN
Cesar vilchis vieyra IPN
 
Vilchis vieyra cesar
Vilchis vieyra cesarVilchis vieyra cesar
Vilchis vieyra cesar
 

Último

Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA241531640
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaarkananubis
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELmaryfer27m
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativaAdrianaMartnez618894
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx241523733
 
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Luis Olivera
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptMiguelAtencio10
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxazmysanros90
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofJuancarlosHuertasNio1
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.241514949
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxJOSEFERNANDOARENASCA
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadMiguelAngelVillanuev48
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 

Último (20)

Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6    CREAR UN RECURSO MULTIMEDIAActividad integradora 6    CREAR UN RECURSO MULTIMEDIA
Actividad integradora 6 CREAR UN RECURSO MULTIMEDIA
 
R1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en minaR1600G CAT Variables de cargadores en mina
R1600G CAT Variables de cargadores en mina
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
El uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFELEl uso delas tic en la vida cotidiana MFEL
El uso delas tic en la vida cotidiana MFEL
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
definicion segun autores de matemáticas educativa
definicion segun autores de matemáticas  educativadefinicion segun autores de matemáticas  educativa
definicion segun autores de matemáticas educativa
 
GonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptxGonzalezGonzalez_Karina_M1S3AI6... .pptx
GonzalezGonzalez_Karina_M1S3AI6... .pptx
 
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
Clase N°4 - Purificación y secuenciación de acidos nucleicos Benoit Diringer ...
 
dokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.pptdokumen.tips_36274588-sistema-heui-eui.ppt
dokumen.tips_36274588-sistema-heui-eui.ppt
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
tics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptxtics en la vida cotidiana prepa en linea modulo 1.pptx
tics en la vida cotidiana prepa en linea modulo 1.pptx
 
ejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sofejercicios pseint para aprogramacion sof
ejercicios pseint para aprogramacion sof
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.El uso de las TIC's en la vida cotidiana.
El uso de las TIC's en la vida cotidiana.
 
Arenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptxArenas Camacho-Practica tarea Sesión 12.pptx
Arenas Camacho-Practica tarea Sesión 12.pptx
 
Presentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidadPresentación inteligencia artificial en la actualidad
Presentación inteligencia artificial en la actualidad
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 

Cesar vilchis vieyra upiita

  • 1. Instituto Politécnico Nacional Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas Proyecto Terminal: “Sistema de Gestión de Nóminas en Cloud Computing - Software as a Service para la Pequeña y Mediana Empresa.” Para obtener el título de: “Ingeniero en Telemática” Presentan: Vilchis Vieyra César Martínez Robles Marco Antonio Asesores: M. en C. Miguel Alejandro Martinez Rosales. M. en C. Paola Nayeli Cortez Herrera. M. en C. Cyntia Eugenia Enriquez Ortiz. Ciudad de México, Diciembre 2014
  • 2. Instituto Politécnico Nacional Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas Proyecto Terminal: “Sistema de Gestión de Nóminas en Cloud Computing - Software as a Service para la Pequeña y Mediana Empresa.” Para obtener el título de: “Ingeniero en Telemática” Presentan: _________________ __________________________ Vilchis Vieyra Cesar Martínez Robles Marco Antonio Asesores: ________________________________ ______________________________ M. en C. Miguel Alejandro Martinez Rosales. M. en C. Paola Nayeli Cortez Herrera. _______________________________ M. en C. Cyntia Eugenia Enriquez Ortiz. Presidente del Jurado Secretario _________________________ _________________________ Dr. Miguel Félix Mata Rivera. M. en C. Susana Sánchez Nájera
  • 3.
  • 4. AGRADECIMIENTOS Generales Agradecemos a nuestra casa de estudios el Instituto Politécnico Nacional (I.P.N.) y nuestra grandiosa escuela Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas (UPIITA) así como a todos nuestros maestros que nos impartieron clase en el transcurso de nuestra carrera y a nuestros asesores en el proyecto terminal: M. en C. Miguel Alejandro Martínez Rosales, M. en C. Paola Nayeli Cortez Herrera y M. en C. Cyntia Eugenia Enríquez Ortiz, finalmente agradecemos a LabMóvil por el apoyo brindado y por el discurso de Steve Jobs compartido. A todos ustedes ¡MUCHAS GRACIAS! Martínez Robles Marco Antonio: A toda mi familia que creyó en mí, a mis asesores que me brindaron su apoyo y su tiempo así como también a mi compañero de tesis por su colaboración y participación constante durante la realización de la misma, a todos ellos gracias. Vilchis Vieyra César: Agradezco a la vida y a Dios por esta grandiosa oportunidad, así como también un agradecimiento sumamente especial a mis abuelitos maternos (Gloria V.C. y Rafael V.L.) por todo su enorme apoyo, un súper agradecimiento mi mamá (M.V.V.) por su apoyo incondicional durante toda mi vida, un agradecimiento muy especial a mi novia T. M. E. M. por su comprensión, apoyo y por ser un gran ser humano muy especial en mi vida entera, MUCHAS GRACIAS así con mayúsculas a todos ustedes aunque pienso y siento que un gracias no es suficiente por todo su enorme apoyo que me han brindado. También estoy muy agradecido con mis 3 asesores, ya que en todo momento nos apoyaron y nos brindaban lo mejor de sí, muchas gracias. No me puede faltar mi agradecimiento a mi compañero del proyecto por confiar en mí y trabajar juntos para este proyecto, muchas Gracias. Finalmente, quiero agradecer a esta institución (Instituto Politécnico Nacional) y a mi escuela (Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas - UPIITA) por dejarme aprender a superarme a mí mismo. Gracias a todos ustedes porque si uno de ustedes me hubiera faltado yo no habría llegado hasta este momento. MUCHISIMAS GRACIAS.
  • 5. SOY POLITÉCNICO Porque aspiro a ser todo un hombre. SOY POLITÉCNICO Porque exijo mis deberes antes que mis derechos. SOY POLITÉCNICO Por convicción y no por circunstancia. SOY POLITÉCNICO Para alcanzar las conquistas universales y ofrecerlas a mí pueblo. SOY POLITÉCNICO Porque me duele la Patria en mis entrañas y aspiro a calmar sus dolencias. SOY POLITÉCNICO Porque ardo en deseos de despertar al hermano dormido. SOY POLITÉCNICO Para prender una antorcha en el altar de la Patria. SOY POLITÉCNICO Porque me dignifico y siento el deber de dignificar a mi institución. SOY POLITÉCNICO Porque mi respetada libertad de joven y estudiante me impone la razón de respetar este recinto. SOY POLITÉCNICO Porque traduzco la tricromía de mi bandera como trabajo, deber y honor.
  • 6. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). I Contenido Resumen........................................................................................................................................IX Abstract.......................................................................................................................................... X Objetivo General...........................................................................................................................XI Objetivos Específicos....................................................................................................................XI CAPÍTULO I. INTRODUCCIÓN............................................................................................. 1 1.1 Planteamiento del problema ................................................................................................. 3 1.2 Actualidad del problema....................................................................................................... 3 1.3 Justificación.......................................................................................................................... 3 1.4 Solución propuesta ............................................................................................................... 4 1.5 Alcances y limitaciones........................................................................................................ 5 CAPITULO II. MARCOTEÓRICO........................................................................................... 7 2.1 Cómputo en la nube.............................................................................................................. 8 2.2 Características del cómputo en la nube ................................................................................ 9 2.3 Capas del cómputo en la nube............................................................................................ 10 2.4 Modelos de implementación............................................................................................... 11 2.5 Seguridad en la nube .......................................................................................................... 13 2.6 Proveedores de servicio en la nube..................................................................................... 15 2.7 Framework y lenguajes de programación en la nube......................................................... 18 CAPÍTULO III. ESTADO DEL ARTE ................................................................................. 21 3.1 Trabajos de investigación relacionados.............................................................................. 22 3.2 Versiones comerciales en la nube....................................................................................... 24 3.2 Tesis o trabajos similares o relacionados ........................................................................... 25 CAPÍTULO IV. ANÁLISIS Y DISEÑO .................................................................................. 29 4.1Metodología de trabajo........................................................................................................ 30 4.2 Análisis de requerimientos ................................................................................................. 30 4.3 Módulos del sistema........................................................................................................... 33
  • 7. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). II 4.4 Usuarios.............................................................................................................................. 34 4.5 Diseño general del sistema ................................................................................................. 35 4.6 Toma de decisiones ............................................................................................................ 35 CAPITULO V. DESARROLLO E IMPLEMENTACIÓN................................................... 43 5.1. Ejecución de pruebas de escritorio independientes ........................................................... 44 5.2. Programa Hola mundo en la nube ..................................................................................... 45 5.3. Primer acercamiento para almacenar datos en la nube...................................................... 47 5.4. Programa con la primera conexión con la base de datos SQL Cloud................................ 49 5.5. Programa que hace uso de formularios en la nube ............................................................ 51 5.6. Programa que hace uso de servicios del usuario Gmail en la nube................................... 52 5.7. Programa que hace uso de plantillas.................................................................................. 54 5.8. Programa que hace uso de archivos estáticos................................................................... 56 5.9. Implementación de la sección de comentarios .................................................................. 57 5.10. Desarrollar el formato de nómina, implementar operaciones de la nómina y validación de formularios ............................................................................................................................... 60 5.11. Desarrollar sesiones de usuario ...................................................................................... 63 CAPÍTULO VI. PRUEBAS Y RESULTADOS ........................................................................ 67 6.1 Pruebas de desempeño....................................................................................................... 68 6.2 Esquema de validación...................................................................................................... 73 6.3. Resultados finales.............................................................................................................. 78 6.4. Sesión de Recursos Humanos............................................................................................ 79 6.5. Sesión de Empleado ......................................................................................................... 97 CONCLUSIONES......................................................................................................................... 102 Trabajo a futuro...................................................................................................................... 103 Aportaciones........................................................................................................................... 104 Áreas de oportunidad.............................................................................................................. 104 Referencias..................................................................................................................................... 106
  • 8. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). III Glosario.......................................................................................................................................... 108 Anexos Digitales ............................................................................................................................ 109 Anexo Digital. Diagramado........................................................................................................ 109 Anexo Digital. Código fuente..................................................................................................... 109 Anexo Digital. Manual de Usuario. ............................................................................................ 109 Anexo Digital. Manual Técnico.................................................................................................. 109 Anexo Digital. Ley Federal del Trabajo. .................................................................................... 109
  • 9. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). IV Índice de Figuras Figura 1. Diagrama general del sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). ........................................................................................................ 5 Figura 2. Modelos de despliegue, servicio y características esenciales del cómputo en la nube...... 12 Figura 3. Diagrama de bloques del funcionamiento general del sistema.......................................... 34 Figura 4. Proceso para realizar el deploy de una aplicación en Google Cloud. ................................ 46 Figura 5. Resultado de un Deployment exitoso................................................................................. 47 Figura 6. Resultado Final del primer hola mundo en la nube. .......................................................... 47 Figura 7. Ejemplo de libro de visitas que almacena en data store en el espacio de Gmail. ............. 47 Figura 8. Se puede observar la diferencia entre escribir un comentario iniciando sesión pues aparece el nombre de la persona que lo escribió ...................................................................... 49 Figura 9. Se observa el proceso de acceso a la base de datos en la nube.......................................... 50 Figura 10. Resultado de la creación de la base de datos en la nube visto desde la consola. ............. 50 Figura 11. Resultado de la primera conexión con la base de datos en la nube. ................................ 51 Figura 12. Primera prueba usando HTML dentro del framework..................................................... 52 Figura 13. Resultado del libro de visitas........................................................................................... 52 Figura 14. Uso de servicios de Google cloud a través de Gmail....................................................... 53 Figura 15. Muestra el inicio de sesión ocupando la cuenta Gmail.................................................... 53 Figura 16. Se puede observar cómo se puede acceder a este formulario y cualquier persona puede escribir lo que quiera. ............................................................................................................... 55 Figura 17. Se puede apreciar la diferencia entre un mensaje anónimo y un mensaje iniciando sesión de usuario.................................................................................................................................. 56 Figura 18. Se puede observar que se añadió estilo CSS al ejercicio anterior................................... 57 Figura 19. Se puede apreciar la ventana principal de la sección de comentarios.............................. 58 Figura 20. Sección de comentarios. .................................................................................................. 59 Figura 21. El dueño puede publicar el anuncio deseado con su respectivo título y contenido. ........ 59 Figura 22. Pantalla general del administrador con sus comentarios realizados. ............................... 59 Figura 23. Sección de comentarios de los empleados....................................................................... 60 Figura 24. Plantilla de nómina básica. .............................................................................................. 61 Figura 25. Validación de campos no vacíos en el cálculo de la nómina........................................... 63
  • 10. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). V Figura 26. Panel de SQL Cloud para dar de alta una dirección IP.................................................... 64 Figura 27. Conexión con la base de datos en la nube........................................................................ 64 Figura 28. Se ingresan los datos en el sistema para iniciar sesión. ................................................... 65 Figura 29. Inicio de sesión correcto. ................................................................................................. 65 Figura 30. Registro de un nuevo usuario en la base de datos............................................................ 65 Figura 31. Imagen en consola de las actuales de la base de datos..................................................... 66 Figura 32. Grafica que brinda Google cloud sobre la cantidad de solicitudes que se reciben. ........ 69 Figura 33. Almacenamiento utilizado en SQL cloud........................................................................ 69 Figura 34. Grafica de errores por código de estado. ......................................................................... 70 Figura 35. Grafica de operaciones de lectura o escritura que ha tenido el sistema........................... 70 Figura 36. Cargos del mes correspondientes al uso de la base de datos. .......................................... 71 Figura 37. Información técnica de la instancia en la cual está corriendo la aplicación en la nube. .. 71 Figura 38. Resumen de las propiedades del proyecto actual............................................................ 72 Figura 39. Se le puede agregar memoria RAM al sistema fácilmente y su cobro es por uso de horas o por día.................................................................................................................................... 72 Figura 40. Se puede elegir el horario de la copia de seguridad de la base de datos, así como su política de activación y replica de sistemas de archivos........................................................... 73 Figura 41. Mensaje de validación de correo electrónico................................................................... 74 Figura 42. Validación numérica en el sistema. ................................................................................. 74 Figura 43. Mensaje de error al no cumplir con el formato del CURP............................................... 75 Figura 44. Mensaje de error al no cumplir con el formato de RFC................................................... 75 Figura 45. Mensaje mostrado al ingresar un número mayor al número de horas laborales por día.. 75 Figura 46. Mensaje mostrado al no cumplir con la cantidad de dígitos para el registro patronal para el seguro del trabajador. ........................................................................................................... 76 Figura 47. El código postal solo acepta como máximo 5 dígitos...................................................... 76 Figura 48. Validación del número telefónico con su respectiva lada y extensión, así como el número de celular y fax. ........................................................................................................................ 77 Figura 49. Vista principal del Sistema de Gestión de Nóminas en la nube para PyMEs.................. 79 Figura 50. Menú principal para el registro de un nuevo propietario de una PyME. ......................... 79 Figura 51. Formulario para el registro de un nuevo propietario........................................................ 80
  • 11. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). VI Figura 52. E-mail recibido después de su registro exitoso................................................................ 80 Figura 53. Menú principal de la sesión de Recursos Humanos......................................................... 81 Figura 54. Dar de alta un empleado. ................................................................................................. 82 Figura 55. En la opción de administrar asistencia esta la opción de tomar asistencia. ..................... 82 Figura 56. Pantalla para poder tomar asistencia................................................................................ 83 Figura 57. Dentro de la opción consultar Asistencia se puede editar............................................... 83 Figura 58. Editar Asistencia.............................................................................................................. 84 Figura 59. Datos básicos para procesar la nómina. ........................................................................... 84 Figura 60. Bonos (percepciones) que incluye el concepto de nómina. ............................................. 85 Figura 61. Total de percepciones por concepto de nómina............................................................... 85 Figura 62. Deducciones de la Nómina. ............................................................................................. 86 Figura 63. Calculo de sueldo antes de impuestos y sueldo neto. ...................................................... 86 Figura 64. Dentro de la opción gestionar empleado se pueden obtener los reportes de nómina y asistencia................................................................................................................................... 87 Figura 65. Gestión de reportes para generar el reporte en PDF. ...................................................... 87 Figura 66. Reporte de nómina en formato PDF. ............................................................................... 88 Figura 67. Reporte de asistencia mostrado en formato PDF............................................................. 89 Figura 68. Anuncio que emitió el propietario a su departamento de Recursos Humanos................ 89 Figura 69. Mensaje que emite Recursos humanos a sus empleados. ................................................ 90 Figura 70. Primera parte del formulario para calcular los procesos anuales..................................... 90 Figura 71. Estos son los conceptos con los cuales se hacen los procesos anuales. ........................... 91 Figura 72. Calculo de procesos anuales y total de percepciones....................................................... 91 Figura 73. Deducciones y total a recibir por el proceso anual. ......................................................... 92 Figura 74. Reporte generado en formato PDF correspondiente a procesos anuales. ........................ 92 Figura 75. Calculo del finiquito, primera parte del formulario......................................................... 93 Figura 76. Calculo Final correspondiente al finiquito....................................................................... 93 Figura 77. Mensaje correspondiente a que se ha guardado exitosamente el cálculo del finiquito.... 94 Figura 78. Consultar reporte del finiquito antes de guardarlo en PDF.............................................. 94
  • 12. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). VII Figura 79. Reporte del Finiquito en formato PDF............................................................................. 94 Figura 80. Primera parte del formulario para calcular la liquidación................................................ 95 Figura 81. Calculo de la liquidación. ................................................................................................ 95 Figura 82. Calculo guardado satisfactoriamente............................................................................... 96 Figura 83. Total de liquidación antes de guardarlo en formato PDF. ............................................... 96 Figura 84. Reporte de liquidación en formato PDF. ......................................................................... 97 Figura 85. Menú principal de la sesión de Empleado. ...................................................................... 97 Figura 86. Reporte del finiquito antes de guardarlo en formato PDF. .............................................. 98 Figura 87. Reporte en formato PDF que el empleado puede descargar, guardar o imprimir............ 98 Figura 88. Editar información básica del empleado.......................................................................... 99 Figura 89. El empleado puede cambiar su contraseña inicial. .......................................................... 99 Figura 90. Anuncios emitidos por Recursos humanos hacia sus empleados. ................................. 100
  • 13. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). VIII Índice de Tablas Tabla 1. Comparación Aspel (SAE, NOI, COI) vs Sistema de Gestión de Nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME)……………………………………………... 23 Tabla 2 Comparativa entre el sistema de gestión de nómina Vs software en la nube comercial…..25 Tabla 3 Comparativa con los trabajos terminales en UPIITA………………………………………26 Tabla 4 Usuarios del sistema con sus respectivas funciones………………………………………..34 Tabla 5 Comparación entre proveedores del servicio……………………………………………… 35 Tabla 6 Metodologías de software contempladas…………………………………………………...36 Tabla 7 . Comparativa de proveedores que ofrecen certificados SSL y plataforma cloud………….37 Tabla 8 . Se muestran los dos tipos de servicios SSL que ofrece Google App Engine……………..38 Tabla 9 . Framework y lenguajes para Google App Engine……………………………………….. 39
  • 14. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). IX Resumen El cómputo en la nube (Cloud Computing) está revolucionando el uso del software tradicional instalado en las computadoras personales o laptops, satisfaciendo las nuevas tendencias y necesidades de estar al día, contando con información disponible en todo momento con sólo disponer de acceso a Internet. En el presente trabajo se presenta la fase de análisis, diseño e implementación de un sistema en la nube, que realiza la gestión de nóminas del recurso humano, orientado a “PyME” (Pequeña y Mediana Empresa). Dicho sistema toma como base la nueva ley federal del trabajo. La finalidad es hacer una gestión de la información de una manera confiable, disponible en todo momento y ofreciendo las bondades que provee el cómputo en la nube; haciendo uso de una nueva tendencia en el software, como lo es el Software as a Service (SaaS). Palabras clave Cómputo en la nube, Cloud Computing, gestión de nóminas, SaaS, PyME.
  • 15. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). X Abstract The Cloud Computing is revolutionizing the use of the traditional software installed in the personal computers or laptops, satisfying the new trends and needs current, available information at all-time only with having access to Internet. In the present work one presents the phase of analysis, design and implementation of a system in the cloud, performs calculating payroll and attendance, orientated to "SME" (Small and Medium Company). The above mentioned system takes as a base the new federal law of the work of Mexico. The purpose is to do a management of the information of a reliable, available way at all moment and offering the kindness of the cloud computing ; using a new trend in the software, as the Software as Service (SaaS). Key words: Cloud Computing, Payroll, SaaS, SME.
  • 16. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). XI Objetivo General Desarrollar un sistema enfocado a las PyMEs para llevar la gestión de nóminas sobre sus empleados, basado en Cloud Computing. Objetivos Específicos  Analizar la nueva ley federal del trabajo respecto a las nóminas.  Investigar y seleccionar proveedor de cómputo en la nube.  Investigar y seleccionar modelo de servicio.  Investigar y seleccionar seguridad de la información del sistema.  Analizar y diseñar el sistema (Diagramas UML).  Analizar y seleccionar herramientas de desarrollo.  Analizar y seleccionar framework de desarrollo y lenguaje.  Diseñar y seleccionar manejador de base de datos.
  • 17. CAPÍTULO I. INTRODUCCIÓN “Yo sólo sé que no sé nada, pues al conocer algo nuevo, descubro que desconozco otras mil cosas...”
  • 18. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 2 El ritmo de vida actual nos exige estar al día para poder satisfacer las nuevas necesidades de este mundo globalizado con más competencia día con día, por lo cual se realizó una investigación sobre la importancia en las pequeñas y medianas empresas en México obteniendo los siguientes resultados: “… actualmente (Septiembre 2013) las PyMEs representan el 52% del PIB nacional y el 81% del empleo en México…”. [1]. Posteriormente se realizó una investigación sobre como gestionaban las PyMEs sus nóminas y los resultados obtenidos fueron los siguientes: “…En México se obtuvieron las siguientes cifras para poder llevar el control de la nómina, el 60.8 % de las PyMEs ocupan software instalado en cada computadora pagando una licencia por cada una, el porcentaje restante aún ocupa hojas de cálculo, contadores,…” [2]. Analizando esta información se tiene que las PyMEs son muy importantes para el desarrollo del país, además las únicas que ocupan software para manipular sus nóminas lo tienen previamente instalado en cada una de sus computadoras, por lo cual en la mayoría de las ocasiones pagan costosas licencias por cada máquina para poder ocuparlo cada determinado tiempo o realizan los cálculos repetitivos de nómina de forma manual, haciendo que los trámites se vuelvan tardados y que se tenga poca o nula actualización de los datos. Esto da como resultado mayores costos en paquetería de software, hardware y empleados, así como información desactualizada que no les permite ser competitivos ante las grandes corporaciones por no poder dar respuesta a necesidades de la sociedad actual de manera ágil. De acuerdo con la información presentada en este punto, se observa una necesidad de tener el control de la nómina de los empleados de una pequeña y mediana empresa (PyME) con los beneficios que la nube conlleva, esto permitirá a las PyMEs ser competitivas ante las grandes empresas, además no está orientado a un cliente sino a toda un área de servicio, cuantos más usuarios utilicen el sistema más barato es contratarlo, lo cual es característico del cómputo en la nube.
  • 19. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 3 1.1 Planteamiento del problema En la actualidad el mundo globalizado tiene nuevas necesidades, por ello la tecnología evoluciona para dar solución a éstas. Todas las empresas necesitan realizar la nómina respectiva de cada uno de sus empleados, entre más grande sea la empresa se necesitan gestionar más nóminas y más empleados que hagan estos cálculos repetitivos. El cómputo en la nube ofrece soluciones a los requerimientos de la vida moderna (accesible, seguro, económico…), en México el mercado que tienen las PyMEs es muy importante pues aportan el 52% del PIB nacional, de aquí nace la necesidad de poder brindar una solución de gestión de nóminas del personal de manera práctica pues no es necesario tener trabajando al departamento de tecnologías de la información y contadores con tareas repetitivas que bien se pueden automatizar, razón por lo cual se plantea apoyarse de nuevas tendencias de cómputo y con ello agilizar los procesos de nómina y asistencia, para contar con más tiempo en nuevos proyectos o negocios. 1.2 Actualidad del problema Como se menciona en [1] y en [2] el 60.8% de las PyMEs ocupan software instalado en cada computadora pagando licencia en cada una y el 39.2 % hace sus cálculos apoyándose de diversas soluciones, la mayoría de las empresas no conocen la nueva tendencia de la nube por lo que es un mercado totalmente nuevo para los emprendedores, a su vez “...Grandes empresas como Google bajan sus costos para poderle dar más impulso a esta nueva tecnología...”[3] por lo que hoy en día este proyecto es una gran oportunidad de poder automatizar la gestión de la nómina apoyado en una nueva tendencia del cómputo, como lo es el cómputo en la nube, brindando una nueva posibilidad a las PyMEs de ser competitivas en este mundo globalizado. 1.3 Justificación Como ya se mencionó las PyMEs en México son de suma importancia, razón por la cual se propone una nueva solución ante la gestión de sus nóminas apoyándose en las nuevas tecnologías de cómputo para que les permita mantener su competitividad en este mercado globalizado ante las grandes corporaciones. La implementación del proyecto es la oportunidad para aquellas PyMEs que no cuentan con la paquetería, el software o tecnología necesaria para su actualización en el proceso de llevar a cabo la gestión de sus datos de nómina y que lo puedan hacer sin tener que pagar costosas licencias por el software instalado ya que el sistema de gestión trabajará sobre la nube, obteniendo
  • 20. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 4 ahorros en software y hardware, teniendo un control de la nómina con acceso en cualquier lugar a cualquier hora desde una computadora o un dispositivo móvil (Tablet) con acceso a Internet con los beneficios de la nube. Cuando se habla de cómputo en la nube en el sistema de nómina se hace referencia a la ejecución de las aplicaciones en un centro de datos compartido, ninguna PyME necesitará de (servidores, equipo técnico, actualizaciones) solo será necesario iniciar sesión, y empezar a ocupar la aplicación. El sistema propuesto es en realidad un proyecto para el campo laboral ya que gestiona las nóminas cubriendo las normas mexicanas vigentes. 1.4 Solución propuesta El sistema en la nube de gestión de nóminas realiza todos los cálculos correspondientes a la nómina conforme los requerimientos de la ley mexicana, se encuentra alojado en la nube y está orientado para la Micro, Pequeña y Mediana Empresa (PyMEs). Asimismo, está diseñado únicamente para PyMEs, accediendo al sistema por sesiones a diferentes tipos de usuarios, recopilando la información necesaria desde cualquier computadora (reportes de asistencia), en donde cada usuario tendrá funcionalidades diferentes, esto con la finalidad de preservar la integridad de la información. Se contempla el escenario en donde la empresa cuente con una o varias sucursales ubicadas en diversas áreas del país. La información de nómina proveerá un mecanismo de protección a la información con el uso de certificados SSL (Secure Sockets Layer) proporcionados por el proveedor de servicio, cuenta con acceso por sesiones, siendo una propuesta económicamente viable a las empresas pues reducen su costo de licencias de software, equipo y empleados haciendo cálculos repetitivos, haciendo uso de las bondades del cómputo en la nube: (Sólo es necesario estar conectado a internet, los datos se encuentran protegidos y en redundancia, disponible en cualquier lugar en cualquier momento, se puede acceder desde cualquier dispositivo fijo o móvil de cualquier marca y sistema operativo, funciona con cualquier explorador de internet moderno y actualizado, siempre al día, actualizaciones constantes para cumplir con los requisitos de las autoridades ) Es económico ya que el pago es independiente del número de computadoras en las cuales se quiera tener acceso al servicio, es decir de licencias, además elimina el soporte y mantenimiento al hardware; no requiere instalación (más software y menos hardware), tiene sistemas de respaldo y
  • 21. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 5 recuperación de la información, no requiere presencia física (soporte técnico) y estará disponible cualquier día a cualquier hora. Finalmente, el diagrama general del sistema se muestra en la figura 1. Figura 1. Diagrama general del sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 1.5 Alcances y limitaciones El resultado esperado es el sistema enfocado a las PyMEs para llevar un control de nómina sobre sus empleados, gestionando dicha información apoyados del cómputo en la nube. Se contempla realizar los siguientes escenarios de prueba (simulaciones con dos PyMEs): hacer la gestión de nómina, contar con certificado de seguridad SSL, comprobar el correcto funcionamiento de todas las sesiones para las cuales haya sido diseñado, así como su compatibilidad únicamente con los dispositivos móviles (Tablet). Las limitaciones del sistema propuesto son:  Capacidad para no más de 500 empleados y/o 20 sucursales por PyME.  Diseñado únicamente para las leyes que rigen a México.
  • 22. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 6
  • 23. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 7 CAPITULO II. MARCOTEÓRICO “Conócete a ti mismo y conocerás al universo y a los Dioses”
  • 24. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 8 A continuación se presentan los conceptos fundamentales para la gestión nómina sobre sus empleados, basado en cómputo en la nube: sus características, capas, modelos de implementación, proveedores framework y seguridad en la nube. 2.1 Cómputo en la nube “Cloud Computing es la evolución de un conjunto de tecnologías que afectan al enfoque de las organizaciones y empresas en la construcción de sus infraestructuras de Tecnologías de la Información. Al igual que ha sucedido con la evolución de la Web, con la Web 2.0, el cómputo en la nube no incorpora nuevas tecnologías. Se han unido tecnologías potentes e innovadoras, para construir este nuevo modelo y arquitectura de la Web. Se plantea que, si bien Internet es un fundamento necesario, la nube es algo más que Internet. Es aquel lugar donde utilizar tecnología cuando se necesita, mientras se necesite. No se instala nada en su escritorio, ni se paga por la tecnología cuando no se utiliza. La nube puede ser infraestructura o software, es decir, puede ser una aplicación con la que se accede a través del escritorio y se ejecuta inmediatamente tras su descarga, o bien un servidor al que se invoca cuando se necesita. En la práctica, el cómputo en la nube proporciona un servicio de software o hardware. No existe una definición aceptada universalmente; sin embargo, existen organismos internacionales cuyos objetivos son la estandarización de Tecnologías de la Información y, en particular, de Cloud Computing. Una de las definiciones más extendidas y populares sobre Cloud Computing es la que ofrece el National Institute of Standards and Technology (NIST), de Estados Unidos, según la cual “Cloud computing es un modelo para permitir el acceso de la red en servicio bajo demanda, a un conjunto de recursos (que incluyen las redes, servidores, almacenamiento, aplicaciones y servicios) que pueden ser rápida y dinámicamente aprovisionados y liberados con mínima interacción humana. La nube es un conjunto de hardware y software, almacenamiento, servicios e interfaces que facilitan la entrada de la información como un servicio. El mundo de la nube tiene un gran número de actores o participantes. Los grupos de intereses del mundo del cómputo en la nube son: los vendedores o proveedores que proporcionan las aplicaciones y facilitan las tecnologías, infraestructura, plataformas y la información correspondiente; los socios de los proveedores que crean servicios para la nube,
  • 25. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 9 ofreciendo servicios a los clientes; los líderes de negocios que evalúan los servicios de la nube para implantarlos en sus organizaciones y empresas; los usuarios finales utilizan los servicios de la nube, gratuitamente o con una tarifa. Los servicios de la nube deben ser distribuidos; es decir, empresas diferentes comparten los mismos recursos fundamentales. Por esta razón, las empresas comienzan a encontrar nuevos valores, facilitando la eliminación de las complejas restricciones que supone el entorno informático tradicional; incluyendo espacio, tiempo, energía y costes.” [4] 2.2 Características del cómputo en la nube “El modelo de la nube, según NIST, se compone de cinco características esenciales, tres modelos de servicio y cuatro modelos de despliegue. Las características fundamentales se describen en las siguientes subsecciones. 2.2.1 Autoservicio bajo demanda Un consumidor puede proveerse de tiempo de servidor y almacenamiento en red, a medida que lo necesite; sin requerir interacción humana con el proveedor del servicio. 2.2.2 Distribución de recursos independientes de la posición Los recursos de computación del proveedor son agrupados para servir a múltiples consumidores utilizando un modelo multi-distribuido (“multitenant”) con diferentes recursos físicos y virtuales asignados y reasignados dinámicamente conforme a la demanda del consumidor. Existe una sensación de independencia de la posición, de modo que el cliente, normalmente, no tiene control ni cono- cimiento sobre la posición exacta de los recursos proporcionados. Pero podría especificarla a un nivel más alto de abstracción (país, región geográfica o centro de datos). Ejemplos de recursos incluyen almacenamiento, procesamiento, memoria, ancho de banda de la red y máquinas virtuales. 2.2.3 Elasticidad rápida Las funcionalidades se pueden proporcionar de modo rápido y elástico, en algunos casos automáticamente. Sus características de aprovisionamiento dan la sensación de ser ilimitadas y pueden adquirirse en cualquier cantidad o momento.
  • 26. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 10 2.2.4 Servicio medido Los sistemas de cómputo en la nube controlan y optimizan automáticamente el uso de recursos, potenciando la capacidad de medición en un nivel de abstracción apropiado al tipo de servicio (almacenamiento, procesamiento, ancho de banda y cuentas activas de usuario). El uso de recursos puede ser monitorizado, controlado e informado, proporcionando transparencia para el proveedor y para el consumidor. ” [5] 2.3 Capas del cómputo en la nube El cómputo en la nube se compone de tres capas las cuales se describen a continuación: 2.3.1 Software como un servicio (SaaS) “La capacidad proporcionada al consumidor es utilizar aplicaciones del proveedor de servicios de nube que se ejecutan en una infraestructura cloud. El software como servicio (software as a Service, SaaS) se encuentra en la capa más alta y caracteriza una aplicación completa ofrecida como un servicio, en-demanda, —que significa una sola instancia del software que corre en la infraestructura del proveedor y sirve a múltiples organizaciones de clientes. Un ejemplo es la plataforma Office como servicio SaaS con su denominación de Microsoft Office 365, que incluye versiones online de la mayoría de las aplicaciones de esta suite ofimática de Microsoft. 2.3.2 Plataforma como Servicio (PaaS) La capacidad proporcionada al consumidor es implementar en la infraestructura de la nube creada por él, de aplicaciones creadas o adquiridas, usando lenguajes de programación, bibliotecas, servicios y herramientas soportadas por el proveedor. La capa del medio, que es la plataforma como servicio (en inglés Platform as a Service, PaaS), es la encapsulación de una abstracción de un ambiente de desarrollo y el empaquetamiento de una serie de módulos o complementos que proporcionan, normalmente, una funcionalidad horizontal (persistencia de datos, autenticación, mensajería, etc.). De esta forma, este modelo de plataforma como servicio podría consistir en un entorno conteniendo una pila básica de sistemas, componentes o API pre configurado y listo para integrarse sobre una tecnología concreta de desarrollo. Las ofertas de PaaS
  • 27. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 11 pueden dar servicio a todas las fases del ciclo de desarrollo y pruebas del software, o pueden estar especializadas en cualquier área en particular, tal como la administración del contenido. Los ejemplos comerciales incluyen Google App Engine, que sirve aplicaciones de la infraestructura Google, y también Windows Azure, de Microsoft, una plataforma en la nube que permite el desarrollo y ejecución de aplicaciones codificadas en varios lenguajes y tecnologías como .NET, Java y PHP. Servicios PaaS tales como éstos permiten gran flexibilidad, pero puede ser restringida por las capacidades que están disponibles a través del proveedor. 2.3.3 Infraestructura como Servicio (IaaS) La capacidad proporcionada al consumidor es la provisión de proceso, almacenamiento, redes y otros recursos de computación fundamentales de procesamiento donde el consumidor es capaz de implementar y ejecutar software arbitrario, que puede incluir sistemas operativos y aplicaciones. La infraestructura como servicio (Infrastructure as a Service, IaaS) -también llamado en algunos casos hardware as a service, HaaS) se encuentra en la capa inferior y es un medio de entregar almacenamiento básico y capacidades de cómputo como servicios estandarizados en la red. Servidores, sistemas de almacenamiento, conexiones, enrutadores, y otros sistemas se concentran (por ejemplo a través de la tecnología de virtualización) para manejar tipos específicos de cargas de trabajo desde procesamiento en lotes (“batch”) hasta aumento de servidor/almacenamiento durante las cargas pico.”[6] 2.4 Modelos de implementación. A continuación se describen los modelos de implementación en Cloud computing. 2.4.1 Nube privada La infraestructura de la nube se provee para uso exclusivo de una sola organización que comprende varios consumidores. 2.4.2 Nube de la comunidad La infraestructura de la nube se provee para uso exclusivo de una comunidad específica de los consumidores de las organizaciones que han compartido preocupaciones por ejemplo, misión, requisitos de seguridad, política y cumplimiento consideraciones.
  • 28. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 12 2.4.3 Nube pública La infraestructura de la nube se provee para uso abierto por el público en general. Podría pertenecer, ser administrada y operada por una organización de negocios, académicos o gobierno, o alguna combinación de ambos. 2.4.4 Nube híbrida La infraestructura de nube es una composición de dos o más infraestructuras de cloud distintas privada, comunidad o público que siguen siendo entidades únicas, pero están enlazadas por tecnología estandarizada o propietaria que permite la portabilidad de datos y aplicaciones. Es importante señalar que no existe ninguna alineación específica entre los modelos de servicio y entrega de nube. Cualquier modelo de servicio puede crear instancias utilizando cualquiera de los modelos de entrega En la figura 2 se presentan los modelos de despliegue, modelos de servicio y características esenciales del cómputo en la nube. Figura 2. Modelos de despliegue, servicio y características esenciales del cómputo en la nube.
  • 29. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 13 2.5 Seguridad en la nube 2.5.1 Protección de datos “La nube, es un modelo de computación que ofrece el uso de una serie de servicios, aplicaciones, datos, plataformas, infraestructuras, compuestas a su vez por recursos de computación, redes, servidores, almacenamiento, etc. La empresa o el usuario de la nube no sabe con exactitud dónde está la información guardada, mientras que en la computación tradicional las empresas y los usuarios conocen perfectamente donde está su información almacenada localmente. Naturalmente, llevar toda la información a la nube significa confiar en terceros la seguridad El responsable de los datos es el cliente (personal o empresa). IBM llama a este tipo de seguridad “Secure by design”, o dicho de otro modo seguridad personalizada”. El concepto pretende que el entorno sea el resultado de la interacción entre proveedor y empresa receptora de servicios. La seguridad tiene que partir del cliente. Cuando una empresa quiere llevar sus datos a la nube, debe indicar cuáles son sus preferencias. Conociendo sus necesidades el proveedor diseña un servicio específico para la empresa. El cómputo en la nube tiene características específicas que requieren evaluación de los riesgos en áreas tales como integridad, recuperación y privacidad de los datos, así como en asuntos legales en áreas como normativa de regulación y auditoría de los sistemas de seguridad de la información. 2.5.2 Seguridad de los servicios de la nube La evaluación de riesgos y la revisión de la seguridad en la nube deben considerar en primer lugar las opciones de despliegue de la nube (pública, privada e hibrida) y modelos de entrega de servicios (SaaS, PaaS, IaaS). Estrechamente relacionada con los modelos anteriores estarán los procesos relacionados con la virtualización, los cuales también consideraremos. Evidentemente, como sucede en el Plan General de Seguridad de la Información (PGSI), ninguna lista de controles de seguridad podrá cubrir todas las circunstancias, pero se deberá adoptar un enfoque basado en riesgos para moverse o migrar a la nube y seleccionar las opciones de seguridad. Los activos de despliegue en la nube se agrupan en dos grandes bloques: los datos y las aplicaciones.
  • 30. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 14 2.5.3 Riesgos y tipos de seguridad Los centros de datos en la nube afrontan la resolución de los planes de recuperación de desastres como en un centro de datos tradicional, ya que en los primeros las copias de seguridad estarán normalmente replicadas, por lo que será posible mover fácilmente toda la infraestructura de un centro a otro de la nube ya que, con toda seguridad, estarán sincronizados y sus funcionamiento será muy similar. Otra gran ventaja de la nube será relativa al costo económico considerablemente más bajo en la nube, puesto que no necesitará realizar inversión inmediata en infraestructuras, pues el plan de mantenimiento ordinario siempre contemplará las posibilidades de desastre y la replicación o alternativa de otros centros de datos de la nube. Un ejemplo muy eficaz de recuperación de desastres lo ofrece S3 de Amazon, que mediante centros de datos completamente redundantes es capaz de funcionar prácticamente sin interrupciones con el modelo temporal 24 x 7 (24 horas los 7 días de la semana).” [7] 2.5.4 Modelo de software tradicional Las aplicaciones de software tradicionales están basadas en un modelo de costes de licencias, soporte, mantenimiento y actualización por periodos de tiempo anuales, bianuales, trianuales, etc. Los costes de las licencias se basan en métricas que por lo general no están alineadas con el uso de las aplicaciones, sino con el coste del desarrollo del software, normalmente alto, y el periodo de despliegue entre sus clientes. Las renovaciones de las licencias suelen hipotecar tanto el proveedor como al cliente. Por otra parte, un paquete típico de software empresarial requiere un despliegue de equipos de hardware, servidores, red de aprovisionamiento para el número de usuarios internos y externos a la organización, procesos de despliegue de la aplicación, periodos de formación, etc., los cuales ofrecen la ventaja de que las aplicaciones de software tradicionales son muy personalizables, lo que, por otra parte, aumenta los costes. Una diferencia importante entre el modelo de software tradicional y el modelo de software como servicio, reside en el número de usuarios que soportan la aplicación. El modelo de software tradicional es un modelo aislado, de un único cliente (la organización o empresa), lo que significa que el cliente compra la aplicación de software y la instala en un servidor. El servidor ejecuta la aplicación para el grupo de usuarios del cliente.
  • 31. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 15 Por el contrario, el modelo SaaS es un modelo multicliente (multi-inquilino) donde la infraestructura hardware que soporta la aplicación es compartida por muchos clientes diferentes, aunque lógicamente es única para cada cliente. La arquitectura multicliente está diseñada para la compartición de recursos entre los clientes, aunque es capaz de poder diferenciar con seguridad total los datos que pertenecen a cada cliente o inquilino de la plataforma. Esta característica significa que una empresa cliente puede utilizar sus datos con total independencia y seguridad, a la vez que otras compañías pueden estar utilizando en condiciones similares y también con total independencia y seguridad sus datos. En las normas de gobierno de seguridad de una organización se deben implementar controles ajustados a los riesgos previsibles. Estos controles se implementan según la Cloud Security Alliance en una o más capas que irán en el rango de las facilidades (seguridad física) a la infraestructura de redes (seguridad en las redes), a los sistemas de Tecnologías de la Información (seguridad de sistemas) y a toda la gestión de la información y las aplicaciones (seguridad de las aplicaciones). Las responsabilidades de seguridad se repartirán entre el proveedor y el consumidor de la nube y se diferirá según sea el modelo de servicio de la nube. 2.6 Proveedores de servicio en la nube Proveedores de software como servicio más populares son: Microsoft, Google (Google Apps), Amazon. Proveedores de plataforma como servicio muy reconocidos son: Microsoft Windows Azure, Google App Engine, Force.com de Salesforce, GigaSpaces. En infraestructura como servicio, proveedores también muy reconocidos son: Amazon, Rackspace. IBM, VMware, Citrix, Cisco, HP, CA Technologies. A continuación se describen algunos de los proveedores mencionados anteriormente. 2.6.1 Amazon “AWS (Amazon Web Services, aws.amazon.zom) es la espina dorsal de los servicios en la nube. Se basa en estándares SOA, incluyendo HTTP y protocolos de transferencia SOAP, código abierto y sistemas operativos comerciales, servidores de aplicaciones y acceso basado en navegador. Ofrece nubes privadas conectadas a través de redes privadas virtuales con una alta seguridad y controlada por el administrador del sistema. AWS ofrece su servicio de “pago por uso” y el consiguiente ahorro
  • 32. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 16 de costos. Comprende una gran variedad de servicios, la mayoría en el amplio concepto de Cloud Computing. Estos servicios se incluyen fundamentalmente dentro del modelo IaaS de infraestructura como servicio, aunque sus retos son ofrecer de modo gradual los otros modelos de software como servicio y plataformas como servicio. Todos los servicios AWS, según manifiesta Amazon en su sitio Web oficial, pueden utilizarse en forma independiente o implementarse de manera conjunta para crear una completa plataforma informática basada en la nube. ”[8] 2.6.2 Google Google es, sin duda, uno de los gigantes de la industria informática y desde hace unos años ha decidido también convertirse en proveedor estrella de la nube en ofertas de servicios para usuarios, organizaciones y empresas y desarrolladores, y así encontramos en su portafolio de servicios diferentes herramientas para la nube: Google Apps, aplicación de software como servicio SaaS para usuarios y organizaciones y empresas; Google (PaaS) pensado en desarrolladores; Google Web Toolkit, otra herramienta para desarrolladores Web. Google Apps “Google Apps (www.google.com/apps) es una herramienta de software como servicio que ofrece Gmail —su servicio de correo electrónico Web— y otras herramientas colaborativas dirigida a usuarios particulares y empresas; desde la perspectiva ofimática, fundamentalmente Google ofrece una oferta en el objetivo principal de reducir costo de las Tecnologías de la Información y versatilidad en la automatización de tareas de oficina, el estilo de un paquete integrado (suite). Las aplicaciones que ofrece Google Apps son: Gmail para empresas, Google Calendar, Google Docs, Grupos de Google, Google Sites, y Google Videos. Google Apps ofrece un número de productos de seguridad y cumplimientos de normas (compliance) para la infraestructura existente de correo electrónico. La versión estándar es gratuita y ofrece la misma cantidad de almacenamiento que las cuentas ordinarias del correo electrónico Gmail. La versión Premium se basa en el modelo de licencia de pago por uso y nivel de almacenamiento de correo electrónico por empleado, todo ello con el pago de una tasa corporativa de 50 dólares americanos por usuario al año. La citada tarifa corporativa de Google Apps ofrece funciones de empresa como interoperabilidad, entre otros, con Blackberry y Microsoft Outlook; controles de empresa con SSL requisitos de seguridad de contraseña personalizada y otras funcionalidades; asistencia y fiabilidad para empresas con garantía de tiempo de actividad de 99,9% y asistencia 24 horas los siete días de la semana.
  • 33. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 17 Google App Engine “Es una plataforma que ofrece construcción y alojamiento de aplicaciones Web en la infraestructura de Google. Las aplicaciones App Engine son fáciles de construir, mantener y escalables (ampliables) a medida que crecen las necesidades, almacenamiento y tráfico Web. App Engine facilita la escritura y despliegue de código y su integración con otras aplicaciones Web de Google. Actualmente está soportada por los lenguajes de programación Python y Java. App Engine es gratuito hasta un cierto nivel de recursos utilizados, a partir de los cuales se carga una tasa por almacenamiento adicional, ancho de banda o ciclos de CPU requeridos para la aplicación. Las aplicaciones App Engine son fáciles de crear, de mantener y de ampliar al ir aumentando el tráfico y las necesidades de almacenamiento de datos. Con App Engine: sólo tendrá que subir su aplicación para que los usuarios puedan empezar a utilizarla. Se puede proporcionar a la aplicación su propio nombre de dominio a través de Google Apps. También es posible darle un nombre que esté disponible en el dominio appspot.com. Podrá compartir su aplicación con todo el mundo o limitar el acceso a los miembros de su organización. Con App Engine sólo se paga lo que se utiliza. No existen costes de configuración ni tarifas recurrentes. Los recursos que utiliza su aplicación como, por ejemplo, el almacenamiento y el ancho de banda, se miden por gigabytes y se facturan según tarifas, pudiéndose controlar la cantidad máxima de recursos que consume su aplicación para ajustar el presupuesto.”[9] 2.6.3 Microsoft Microsoft ofrece un gran número de servicios en la Nube para organizaciones y empresas de cualquier tamaño, muchos de los cuales son variante o actualizaciones de servicios populares de esta gran empresa. Es importante destacar que grandes empresas a nivel mundial están contratando servicios de la nube de Microsoft. Este es el caso de Ferrovial —una de las grandes empresas constructoras de España, precursora en el uso de servicios en la nube ya que a mediados de diciembre de 2009 firmó un acuerdo por cinco años con Microsoft para migrar gradualmente gran parte de sus servicios informáticos a la nube. El plan permitía que 40.000 empleados de la empresa repartidos en más de 50 países se conectasen a la nube creando una gran red colaborativa. Microsoft Azure Platform
  • 34. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 18 Azure Platform es una oferta de Microsoft que ofrece servicios y plataformas alojados en los centros de datos de Microsoft y que forma parte de su estrategia de brindar sus recursos de ofimática y gestión empresarial, fundamentalmente, como servicios Web en la nube. Esta estrategia llevará a Microsoft a ofrecer su nuevo Office en la nube incluyendo una oferta gratuita (Office Web), además de la oferta de pago. La plataforma Azure Service proporciona un sistema operativo en la nube y herramientas de desarrollo que permiten la gestión y alojamiento de aplicaciones gestionadas en los centros de datos de Microsoft. Las aplicaciones pueden ser desarrolladas con protocolos estándares de la industria. La plataforma Windows Azure se ha construido como una plataforma abierta que ofrece diferentes opciones a los desarrolladores. Permite utilizar múltiples lenguajes tales como .NET, PHP, Ruby, Python y Java y herramientas de desarrollo (Visual Studio y Eclipse). Windows Azure “Windows Azure es un sistema operativo basado en la nube que permite el desarrollo, alojamiento y entornos de gestión de servicios para la plataforma Windows Azure Platform. Windows Azure proporciona a los desarrolladores computación bajo demanda y almacenamiento para alojar, escalar (ampliar) y administrar las aplicaciones Web en Internet a través de los centros de datos de Microsoft. Windows Azure es una plataforma flexible que soporta múltiples lenguajes y se integra con sus entornos existentes. Para construir aplicaciones y servicios en Windows Azure, los desarrolladores pueden usar sus experiencias en Microsoft Visual Studio y también los protocolos estándares como SOAP, REST, XML y PHP.”[10] 2.7 Framework y lenguajes de programación en la nube En este apartado se mencionan algunos de los Framework pertenecientes a los lenguajes soportados en la nube como son: PHP, Java, Python entre otros. Cabe aclarar que es necesario que el proveedor de la plataforma en la nube proporcione la lista de lenguajes con los cuales puede trabajar. A continuación se enlistan algunos Web framework de los lenguajes soportados en la nube. 2.7.1 Python Framework “Webapp2 es un framework ligero compatible con webapp de Google App Engine: se extiende webapp para agregar mejor enrutamiento y el manejo de excepciones. También ofrece sesiones, la
  • 35. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 19 localización, la internacionalización, el dominio y el enrutamiento subdominio. Puede ser utilizado fuera de App Engine, independientemente de la App Engine SDK.” [11] 2.7.2 Java Frameworks Apache structs, structs 2 frameworks funcionan correctamente en la nube, pero requieren del soporte del proveedor del servicio. Jclouds Apache es una biblioteca de código abierto que le ayuda a empezar en la nube, y utiliza sus habilidades de desarrollo de Java o Clojure. El API jclouds le da la libertad de usar abstracciones portátiles o características en la nube específica. Jclouds pone a prueba el apoyo de los 30 proveedores de la nube y pilas de software de nube como Amazon, Azure, GoGrid, nueve veces, OpenStack, Rackspace y vCloud. 2.7.3 PHP Cloud Con Zend Developer Cloud, se obtiene acceso inmediato a un entorno PHP completa, la Compañía PHP. Incluye, un gran conjunto de extensiones de PHP, Zend Framework y mucho más, por lo que ya no tendrá que pasar tiempo en la construcción de la pila usted mismo.
  • 36. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 20
  • 37. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 21 CAPÍTULO III. ESTADO DEL ARTE “La oscuridad es la ausencia de la luz y la luz es un atributo del ser”
  • 38. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 22 A continuación se presentan los trabajos relacionados con la gestión de nómina sobre sus empleados, basados en cómputo en la nube, tanto en la industria como en la UPIITA. 3.1 Trabajos de investigación relacionados Las tecnologías de información y comunicaciones cambian constantemente y el paradigma sobre la implementación del software no es la excepción, anteriormente se ocupaba el software especializado con licencias, lo que generaba el costo de la licencia por año y este aumentaba progresivamente según el número de máquinas a utilizar. Además la mayoría de las PyMEs no solo ocupan software tradicional instalado en cada máquina, sino que también tienen bases de datos que se encargan de gestionar la información (almacenada en servidores); utilizando aplicaciones que en su mayoría son de pago o gratuitas (que no contemplan las leyes mexicanas), para realizar dicha gestión de su nómina. Por lo tanto algunas de estas PyMEs administran su propia información y cada una debe contar con su software y hardware correspondiente. Actualmente existe software que se encarga de la gestión de nómina, pero no ofrece este servicio en la nube, algunos de ellos son: (SAE, NOI, COI), Nómina Sol, Mega Nómina y Nómina Plus Suscripción Anual. “SAE: Controla el ciclo de todas las operaciones de compra-venta de la empresa como: inventarios, clientes, facturación, cuentas por cobrar, vendedores, compras, proveedores y cuentas por pagar; automatizando eficientemente los procesos administrativos y asegurando el cumplimiento de las disposiciones fiscales. Integra la operación de las sucursales conectándolas remotamente vía Internet y ofrece acceso a través de dispositivos móviles. Brinda reportes, estadísticas, gráficas y consultas de alto nivel que colaboran en la oportuna toma de decisiones y desarrollo de estrategias comerciales. Costo de licencia 1 usuario $ 9,740. Requerimientos mínimos de hardware y software. NOI: Aspel-NOI 6.0 automatiza el control de los aspectos más importantes de la nómina, su fácil manejo y versatilidad ofrecen un cálculo exacto de las percepciones y deducciones de los trabajadores atendiendo los requerimientos específicos de la empresa. Costo de licencia 1 usuario $ 5,090.
  • 39. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 23 Requerimientos mínimos de hardware y software: Procesador Intel de 32 bits (x86) a 1 GHz. o superior.*, 512 MB de RAM, recomendado 1 GB.* 320 MB. De espacio libre en disco duro, Monitor Súper VGA (800x600) o superior, Microsoft Windows® XP, 2003, Vista, 2008, 7, 2012 u 8. Tabla 1. Comparación Aspel (SAE, NOI, COI) vs Sistema de Gestión de Nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). Característica Aspel (SAE,NOI,COI) Sistema de Gestión de Nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). Número limitado de licencias de uso otorgado por Aspel (número limitado de veces que se puede instalar y costo por cada licencia) Es cómputo en la nube, el servicio es independiente del número de dispositivos que accederán al sistema, lo que genera un ahorro para las PyMEs. Al ser un software de distribución es vulnerable a ser víctima de la piratería y requiere instalación en todas las maquinas a utilizarse. El software de servicio será ejecutado desde un servidor remoto por lo que no requerirá instalación. Solo funciona en sistemas operativos Microsoft Windows, lo que requiere tener dicho sistema instalado por lo que es dependiente del sistema operativo. Será independiente del sistema operativo. Funciona solo con procesador de 32 bits Será independiente del procesador. Tiene requerimientos en hardware. No requerirá de características especiales de hardware de computadora. Se descargan versiones actualizadas Se actualizará automáticamente desde el servidor. Toda la información de (operaciones de compra-venta “SAE”, nómina “NOI”, e información contable “COI”)se encuentra en una máquina y no existen respaldos automáticos Se tiene acceso a cualquier hora en cualquier lugar a la información y el servidor generará respaldos de la información. COI: Aspel-COI 6.0 procesa, integra y mantiene actualizada la información contable y fiscal de la empresa en forma segura y confiable. Proporciona diversos reportes, documentos de trabajo y gráficas
  • 40. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 24 que permiten soportar y evaluar el estado financiero de la organización, así como generar oportunamente las diferentes declaraciones fiscales e informativas como las correspondientes a IETU, IVA, ISR y DIOT. Calcula la depreciación de los activos fijos. Mantiene interfaces con los sistemas de la línea Aspel e interactúa con hojas de cálculo, lo que contribuye a lograr una eficiente administración de la empresa. Costo de licencia 1 usuario $ 4,760” [12]. 3.2 Versiones comerciales en la nube 7all “7all.com es una empresa que proporciona soluciones para la administración, control y gestión de recursos empresariales de pequeñas y medianas empresas, profesionistas y personas físicas con actividad empresaria Ofrece planes Renta ($200/mes) Personas Físicas que renten bienes inmuebles Régimen de arrendamiento de inmuebles Profesionista y venta de servicios ($300/mes) Pymes ($500/mes) Manejo de inventarios, almacenes y categorías Punto de venta ($700/mes) Personas Físicas y Morales con manejo de inventarios, almacenes y categorías Terminal Punto de Venta” [13]
  • 41. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 25 Tabla 2 Comparativa entre el sistema de gestión de nómina Vs software en la nube comercial. 7all.com Sistema de gestión de nomina Requisitos Se necesita un dispositivo con acceso a internet y un navegador Se necesita un dispositivo con acceso a internet y un navegador Generación de reportes No Si Emite comprobante electrónico Facturación electrónica Cumple los requerimientos establecidos por las autoridades hacendarias Reportes de nómina electrónicos. Cumplirá con los requerimientos de nómina que contempla Ley federal del trabajo Seguridad Proporciona seguridad pero no especifica como Implementara SSL para seguridad de la información 3.2 Tesis o trabajos similares o relacionados Respecto a los trabajos elaborados en UPIITA no existen aquellos relacionados con la gestión de nómina en la nube, pero se consideran los siguientes ya que están enfocados a dar solución a problemáticas en el entorno empresarial. A continuación se mencionan sus características: Manejador de procesos de negocio basado en Business Intelligence. “Este trabajo terminal es un sistema modular que es capaz de mostrar estadísticas de los departamentos de recursos humanos y finanzas de una empresa bajo el concepto de arquitectura de Software SOA y que pueda desarrollar informes de la misma, así también escenarios de negocio basado en Business Intelligence. ”[14] Sistema para administrar, monitorear y controlar: unidades móviles e inventarios de artículos emplayados mediante el uso de GPS y base de datos “Este trabajo es un sistema para administrar, monitorear y controlar: unidades móviles e inventarios de artículos emplayados mediante el uso de GPS1 y base de datos, el cual está pensado para dar solución a la problemática empresarial correspondiente al control y administración del proceso:
  • 42. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 26 “emplayamiento de productos en tiendas específicas”, que realiza el equipo de trabajadores de la empresa S.C. Johnson and Son S. A. de C. V. ”[15] La principal diferencia entre los dos trabajos terminales anteriores y el sistema propuesto es su implementación en la nube, así como su diseño pues en el primero utilizaron una arquitectura de software SOA, así como un negocio basado en Business Intelligence, el segundo gestiona unidades móviles e inventarios mediante un sistema para un dispositivo móvil. A continuación se presenta en la Tabla 2 la comparativa entre los trabajos terminales en UPIITA y el sistema propuesto. Tabla 3 Comparativa con los trabajos terminales en UPIITA. Características Manejador de procesos de negocio basado en Business Intelligence. Sistema para administrar, monitorear y controlar: unidades móviles e inventarios de artículos emplayados mediante el uso de GPS y base de datos. Sistema de Gestión de Nóminas en la nube para la Micro, Pequeña y Mediana empresa (PyME). Cómputo en la nube X Acceso Remoto X X Seguridad SSL X Da solución a la problemática de una empresa X X X Da solución a la problemática de varias empresas X Recopilación de información en BD X X X Uso de minería de datos X Arquitectura de software SOA X Generación de reportes X X X El sistema de Gestión de Nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME) está orientado a ser flexible ante cualquier empresa de este tipo, satisfaciendo las nuevas tendencias y necesidades de contar con la información disponible en todo momento, con la finalidad de hacer
  • 43. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 27 una gestión de la información de una manera rápida, confiable y ofreciendo una conexión segura través del uso de Internet. Cada usuario del sistema puede modificar o consultar la información dependiendo de sus funciones asignadas, por ejemplo el empleado puede verificar su horario de entrada, cuando ya se encuentre depositado su salario, así como sus diversos descuentos y horas extras, cumpliendo con las normas vigentes establecidas por la ley federal del trabajo del gobierno mexicano.
  • 44. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 28
  • 45. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 29 CAPÍTULO IV. ANÁLISIS Y DISEÑO “No puedes conocer el significado de tu vida, hasta que estés conectado con el poder que te ha creado”
  • 46. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 30 A continuación se presenta la etapa de análisis y diseño del presente trabajo gestión de nómina sobre sus empleados, basado en cómputo en la nube. 4.1Metodología de trabajo La metodología de trabajo que se siguió en este proyecto fue la siguiente:  Analizar información correspondiente a la nómina de un empleado.  Analizar la nueva ley del trabajo.  Investigar cómputo en la nube y seleccionar modelo de servicio.  Investigar y seleccionar proveedores del servicio  Seleccionar un framework y un lenguaje de programación.  Analizar y diseñar el sistema (Diagramas UML).  Diseñar e implementar los reportes a entregar al jefe de la empresa.  Desarrollar los diagramas UML.  Investigar y seleccionar la seguridad del sistema. 4.2 Análisis de requerimientos Requerimientos generales para el sistema propuesto.  Elegir el modelo de servicio en la nube.  Elegir un proveedor de servicio en la nube que brinde una plataforma como servicio y un hardware como servicio sólido para implementar el software como servicio, que también permita el respaldo de la información.  Cumplir con los requerimientos de nómina que contempla la Ley federal del trabajo.  Analizar y diseñar el sistema (UML) junto con su base de datos.  Identificar usuarios del sistema con sus respectivas funciones.  Contar con un certificado de seguridad adecuado para la seguridad de la información.  Tener un framework (lenguaje) especial para la nube.  Elegir un gestor de base de datos soportado en la nube.  Diseñar la base de datos para SQL cloud.  Registrar la empresa en un formulario.  Ajustar la empresa según los parámetros configurables.
  • 47. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 31  Poder dar de alta 20 sucursales como máximo para cada empresa registrada.  Cada sucursal tendrá su propio departamento de recursos humanos.  El Departamento de recursos humanos debe estar capacitado para dar de alta, baja, modificar empleados.  El capturista debe estar capacitado para poder registrar faltas, tiempo extra, bonos.  Generar de reportes mensuales de nómina y de asistencia para cada trabajador.  Generar reporte mensual global de todas las sucursales para el dueño de la empresa. Requerimientos funcionales: Software:  Tener instalado un navegador web actualizado, según sea el caso en una PC de escritorio, Laptop o Tablet. Hardware:  Computadora de escritorio, Laptop o Tablet.  Personal capacitado: Departamento de recursos humanos, empleados y dueño. Entradas y salidas del sistema Requerimientos de entrada (Sesión):  Usuario  Contraseña Información previamente capturada por el departamento de RRHH  Id Empleado (Asignado automáticamente)  Sueldo base.  Datos personales (Nombre, edad, RFC, etc…)  Datos del lugar donde labora (id_sucursal)  Información de créditos (bancos, Infonavit…)  Información de descuentos (pensión alimenticia…)  Tiempo extra.  Retardos.
  • 48. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 32  Faltas. Requerimientos de salida: Desglose de la nómina por deducciones y percepciones. Ejemplos de Deducciones  Impuesto sobre la renta. (ISR- impuesto directo sobre la ganancia obtenida; es decir, por la diferencia entre el ingreso y las deducciones autorizadas)  Fondo de pensiones y prestaciones.  Inasistencias y suspensiones.  Seguro institucional. Ejemplos de percepciones  Comisiones.  Sueldos compactados.  Compensaciones por servicios.  Prima vacacional.  Estímulos al personal.  Estímulo al desempeño.  Pago por renuncia.  Gratificaciones.  Estímulo por antigüedad.  Estímulo por puntualidad.  Pago por días de descanso.  Pago por horas extra.  Aguinaldo.  Reparto de utilidades.  Estímulo por productividad.  Vacaciones.
  • 49. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 33 4.3 Módulos del sistema En la solución propuesta se contempla una visión general del funcionamiento del sistema el cual posee los siguientes módulos con las siguientes funciones. 4.3.1 Módulos  Formulario Web: El posible cliente observa el anuncio publicitario en internet (AdWords) que lo direcciona a una página web y si el posible cliente le interesa el servicio llena un formulario, este posible cliente ahora es el propietario que puede tener una o varias empresas registradas y cada empresa con una o más sucursales.  Saas: El proveedor del servicio es capaz de gestionar a los propietarios de las empresas, así como datos generales como actualizar los salarios mínimos vigentes.  Propietario: El propietario genera los periodos de nómina que tendrán sus sucursales y da de alta al encargado de Recursos Humanos de cada sucursal. Un mismo propietario puede tener una o más empresas y cada empresa puede tener una o más sucursales y cada sucursal tiene su propio departamento de Recursos Humanos.  Sucursal y Recursos Humanos: Cada sucursal da de alta sus propios empleados y gestiona su asistencia así como su nómina.  Datos Empleado: El departamento de Recursos humanos capturará los datos personales de nómina de cada empleado que se brinden en su contrato.  Asistencia: Este módulo lleva el conteo de asistencia, retardos, faltas de cada empleado, para las empresas que así lo soliciten.  Nomina: Este módulo hace todos los cálculos de nómina (percepciones y deducciones) de cada trabajador con la frecuencia de los periodos de nómina generados por el propietario de la empresa.  Reportes: En este módulo se generan los reportes de nómina y de asistencia de cada trabajador, también el dueño de la empresa podrá observar el reporte general de su empresa.  Sesiones: Se garantiza la protección de la información por medio de las funciones que tiene cada sesión y por un certificado SSL instalado con el proveedor de servicio.
  • 50. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 34 4.3.2 Diagrama de bloques del funcionamiento general del sistema Figura 3. Diagrama de bloques del funcionamiento general del sistema. 4.4 Usuarios A continuación se muestran los posibles usuarios del sistema. Tabla 4 Usuarios del sistema con sus respectivas funciones. Actor Funcionalidad en el sistema Área de RRHH Captura de datos referentes a la nómina (alta de empleados, baja de empleados, registro de sueldo base y otras remuneraciones) y puede publicar anuncios a los empleados. Empleado Podrá visualizar sus reportes correspondientes a nómina y control de asistencia. Además de los avisos emitidos por el dueño. Propietario Podrá visualizar los reportes correspondientes a sus sucursales, también podrá publicar avisos o anuncios a sus trabajadores de Recursos Humanos. SaaS En esta sesión se realizarán operaciones de mantenimiento del sistema.
  • 51. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 35 4.5 Diseño general del sistema El diseño del proyecto consta del diagramado UML el cual se encuentra completo en el anexo digital (Disco Compacto) del presente documento, dicho documento consta de 103 páginas y 109 imágenes y contiene los siguientes diagramas.  Diagramas de actividades.  Diagramas de caso de uso.  Diagramas de secuencia.  Diagrama Entidad – Relación.  Diagrama Relacional.  Diagrama de Clases. 4.6 Toma de decisiones A continuación se presenta el procedimiento y las decisiones tomadas en las elecciones del presente proyecto para su posterior desarrollo. 4.6.1 Elección del Proveedor de servicios. Tabla 5 Comparación entre proveedores del servicio. Proveedor Amazon Google Cloud Microsoft Costo del plan $0.08 per hour $0 per hour $0 per hour Categoría Infrastructure as a Service Platform as a Service Platform as a Service Interface API API API Tipo de suscripción Subscripción por planes Pagas lo que usas Pagas lo que usas Web http://aws.amaz on.com/es/ec2/# pricing https://developers.goo gle.com/appengine/pri cing?hl=es&csw= http://azure.microsoft.com /es-es/ Seguridad X X X Soporte gratis X X X Servicio de soporte Foros Foros y recursos en línea Foros y recursos en línea Lenguajes soportados Java, Php, Phyton, Ruby .net Java, Php, Phyton, Go. .NET, Java, PHP, Node.js, Python o Ruby.
  • 52. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 36 El proveedor seleccionado fue Google Cloud debido a las siguientes razones: Uno de los requerimientos principales del sistema a desarrollar es el respaldo de la información y de una plataforma sólida en el PasS (Platform as a Service) y HasS (Hardware as a Service), también un soporte seguro y fiable de su plataforma SasS, tutoriales para poder usar su plataforma, también es indispensable el uso de certificados SSL para la seguridad a implementar en la nube. Google cloud proporciona las herramientas y el soporte necesario para trabajar con la aplicación en la nube, el costo del plan base es gratuito (cuenta bronce), tiene soporte de diferentes framework en la nube. A pesar de que la nube de Microsoft cumple con los requerimientos solicitados, se eligió Google Cloud sobre los otros proveedores debido a que proporciona un mayor apoyo con tutoriales y grupos de ayuda para desarrolladores. 4.6.2 Elección de la metodología de software elegido. Comparando las metodologías de software tenemos: Tabla 6 Metodologías de software contempladas. Modelo Modelo de Cascada Modelo de Espiral Modelo incremental Fases 1.- Análisis y definición de requerimiento 2.- Diseño del sistema y del software 3.-Implementación y prueba del sistema 4.- integración y prueba del sistema 5.-Funcionamiento y mantenimiento 1.-Definición de objetivos 2.-Evaluación y reducción de riesgos 3.-Desarrollo y validación 4.- Planificación 1.-Definir esbozo de requerimientos 2.-Asignar requerimientos a los incrementos 3.- Diseñar la arquitectura del sistema 4.-Desarrollar incrementos del sistema 5.- validar incrementos 6.- validar sistema 7.- sistema final
  • 53. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 37 Elección: Modelo de Espiral: Combinación de lineal e iterativo. Debido a que es una combinación entre lineal e iterativo, tiene mucha más flexibilidad que el incremental y no es tan común como el lineal. Nos permite crecer junto con la aplicación sobre la nube. 4.6.3 Elección del tipo de seguridad en la nube El uso certificados SSL personalizados permite entregar contenido a través de HTTPS (Protocolo seguro de transferencia de hipertexto) lo que a su vez permite una comunicación autenticada y cifrada. Ya que se planea manejar la información referente a la nómina lo cual implica manejo de información personal, resulta totalmente necesario aplicar medidas de seguridad para mantener la integridad y confidencialidad de la información. Los principales proveedores en la nube cuentan con este servicio de certificados SSL como se muestran en la Tabla 7. Tabla 7 . Comparativa de proveedores que ofrecen certificados SSL y plataforma cloud. Proveedor certificados Costo USD Amazon Certificados SSL personalizados $600 (por mes) Google SNI SSL certificates SSL Virtual IPs (VIPs) $ 9.00 (por mes) $ 39.00 (por mes) Microsoft SSL SIN SSL IP $6,12 - $7,20/mes $26,52 - $31,20/mes Rackspace SSL Clusters $20 por mes Esta cotización fue extraída de las correspondientes páginas:  Amazon (http://aws.amazon.com/es/cloudfront/pricing/),  Google (https://developers.google.com/appengine/pricing),
  • 54. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 38  Microsoft (http://www.windowsazure.com/es-es/pricing/details/web-sites/#ssl-connections)  Rackspace (http://www.rackspace.com/cloud/sites/pricing/) Como se mencionó anteriormente, son proveedores que además ofrecen otros servicios como almacenamiento o base de datos para trabajar en la nube, Google cloud además de ofrecer seguridad ofrece también mejora en los servicios dependiendo el paquete (silver, gold y Premium) sin olvidar que cuenta con una versión gratuita (bronze). Tipos de servicio SSL que oferta Google App Engine (Tabla 8). Tabla 8 . Se muestran los dos tipos de servicios SSL que ofrece Google App Engine. Recurso Unidad Costo unitario SNI SSL certificates Costo del certificado por mes $ 9.00 SSL Virtual IPs (VIPs) Certificado VIP costo por mes $ 39.00 “Server Name Indication (SNI) SNI es una característica que extiende SSL. Esta extensión permite que múltiples dominios compartan la misma dirección IP. Cuando un usuario visita un sitio SNI con un cliente que no admite SNI no podrán ver la página cuando se conecta a través de HTTPS. Virtual IP (VIP) Una dirección IP dedicada se asigna para su aplicación. Esto permite ser utilizado sin la extensión SNI y, como tal, funciona en cualquier navegador o sistema operativo que soporte SSL. Cada VIP sólo admite un certificado. La dirección IP virtual puede cambiar, por lo que los registros DNS A no debe ser utilizado.” [16] Elección: Para el desarrollo del proyecto y la realización de pruebas se ha contemplado utilizar el servicio “SSL certificates” siempre que los proveedores de la nube no realicen modificaciones a la información presentada en la tablas anteriores. Ya que los certificados básicos de SSL, cumplen con nuestro requerimiento de seguridad sin elevar el costo a cambio del beneficio de mantener segura la información de nómina.
  • 55. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 39 4.6.4 Elección del Framework y lenguaje Solo algunos framework soportan trabajar en la nube y unos pocos fueron diseñados específicamente para trabajar en ella aunque esto depende también del proveedor que se haya seleccionado. Tabla 9 . Framework y lenguajes para Google App Engine. Proveedor lenguaje Framework Google App Engine (Google) Python: CherryPy, Pyramid, Flask, web2py, and webapp2. Django (requires workarounds), Java --Apache Struts 1 -Struts 2 runs with workarounds Go (Experimental) PHP (en fase experimental) De la Tabla 9 se observa que java aún presenta problemas en la utilización de framework (a excepción de Apache Struts 1) por lo que basándonos en el uso de framework la opción más viable es Python ya que cubre con los requerimientos del proyecto. App Engine ejecuta el código de aplicación Python usando un intérprete de Python pre cargado en un ambiente seguro "espacio aislado". Su aplicación recibe las peticiones Web, realiza un trabajo, y envía las respuestas mediante la interacción con este entorno. Una aplicación Web de Python interactúa con el servidor Web de App Engine mediante el protocolo WSGI (Gateway Interface Web Server es una simple especificación universal de interfaz), por lo que las aplicaciones pueden utilizar cualquier framework de aplicaciones Web compatibles con WSGI. App Engine incluye un framework de aplicación web simple, llamado Webapp2.
  • 56. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 40 Cabe mencionar que Webapp2 es un framework nativo de Google App Engine por lo que fue diseñado específicamente para funcionar en la nube. Webapp2 es un framework Web Python ligero compatible con Google App Engine. También ofrece las webapp2_extras que es un paquete con varias utilidades opcionales: sesiones, localización, internacionalización, dominio y subdominio, enrutamiento, cookies seguras. Webapp2 también se puede utilizar fuera de Google App Engine, independientemente de la App Engine SDK. El framework Webapp2 ya está instalado en el entorno de App Engine y en el SDK, por lo que no es necesario un paquete con el código de aplicación para usarlo. Webapp2 es un framework que cuenta con soporte del proveedor del servicio seleccionado además se cuenta con una mayor documentación y experiencia en la nube soportado por Google cloud. El framework Webapp2 es ligero ya que permite crear rápidamente aplicaciones web sencillas para el tiempo de ejecución de Python 2.7. Además que es un framework que cuenta con mucha documentación en Google cloud. Elección: Con base al requerimiento de framework de estar diseñado para la nube y de realizar una comparación de varios de ellos se eligió un framework de desarrollo y por consecuencia el lenguaje. El framework seleccionado es Webapp2 y como consecuencia el lenguaje seleccionado fue Python. 4.7.5 Elección del gestor de base de datos. El único gestor de base de datos en la nube ofrecido por Google cloud es “SQL Cloud” y tiene las siguientes características: “Cloud Platform Google le proporciona potentes bases de datos, para que no se quede sin espacio, almacenamiento redundante y fiable que necesita. Genere e implemente en la nube rápidamente porque SQL cloud ofrece bases de datos estándar de MySQL, la base de datos de código abierto más popular del mundo. Instancias disponibles de hasta 16 GB de RAM, 500 GB de almacenamiento.
  • 57. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 41 La opción de pago por uso hace que sea económica para empezar. Si se está ejecutando una base de datos utilizada a la ligera o de forma esporádica, se ahorrará dinero al pagar sólo por el tiempo que accede a sus datos. Seguridad, disponibilidad, durabilidad, copia de seguridad, y se cifra, por lo que es excepcionalmente seguro. Sus datos se replicarán en muchos lugares geográficos, y la conmutación por error entre ellos se maneja automáticamente. Esto significa que sus datos están seguros y su base de datos está disponible incluso en el caso de un fallo importante. También gestionamos copias de seguridad, por lo que es fácil para que usted pueda recuperar cuando sea necesario. Migración fácil; No Lock–in, Conexiones y herramientas como mySQLdump Estándar, Wire Protocol MySQL, y JDBC Maneja y accede a las instancias a través de la consola o nube API JSON. Totalmente gestionado sin tener que preocuparse acerca de la replicación, administración de parches o de gestión de base de datos. Google ofrece dos planes de facturación para el Cloud SQL: Para los desarrolladores con más tráfico, tenemos planes de paquete. Para los desarrolladores con aplicaciones ligeras, ofrecemos un esquema de precios flexible "por uso". Usted sólo paga por el tiempo que acceder a sus datos.” [17] Elección única: SQL Cloud.
  • 58. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 42
  • 59. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 43 CAPITULO V. DESARROLLO E IMPLEMENTACIÓN “Existe una luz que desafía la muerte de la noche, un resplandor brilla como alas de esperanza tomando vuelo hacia un día soleado”
  • 60. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 44 A continuación se presenta el desarrollo del sistema de gestión de nómina basado en cómputo en la nube. 5.1. Ejecución de pruebas de escritorio independientes 5.1.1. Descripción general del proyecto Todo proyecto en Google Cloud, consta de una serie de archivos base los cuales son necesarios para compilar dicho proyecto, el programa base para poder compilar los proyectos es Google App Engine, acompañado del soporte del framework seleccionado. Los archivos básicos del proyecto son: Nombre.yaml : En este archivo se coloca el nombre de la instancia (dominio) del proyecto para poder realizar la compilación y el deploy (subirlo a la nube) del proyecto Archivo.py: Se encuentra toda la información del framework con el cual se va a trabajar, aquí se implementa todo el proceso de análisis y diseño del sistema. Index.html: En este archivo se encuentra todo el código HTML y Java script que va a realizar las vistas y los cálculos correspondientes. Para poder hacer uso de un proyecto en Google Cloud es necesario contar con el siguiente software:  Google App Engine. Seleccionar el Run Time Enviroment (en este caso ocuparemos Phyton 2.7)  Si se va a ocupar SQL Cloud es necesario instalar MySQL (la versión que se ocupó en el proyecto fue MySQL 5.5)
  • 61. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 45 5.2. Programa Hola mundo en la nube Todo proyecto en Google cloud se compone principalmente de dos archivos, el primero con extensión .yaml y el segundo con extensión .py a continuación se describe el contenido de cada uno de ellos.  Nombre.yaml En este archivo en la primera línea debe de ir el nombre de tu dominio en el cual se alojará el proyecto en la nube en este caso borrar “your-app-id” y poner el nombre deseado. En la opción de Runtime es el lenguaje que se compilará con la versión correspondiente y si se desea se pueden agregar librerías que se ocuparán en la nube según el framework seleccionado. application: your-app-id version: 1 runtime: python27 api_version: 1 threadsafe: true handlers: - url: /.* script: helloworld.application Al realizar la compilación este fue el código final: application: manual-tecnico-2015 version: 1 runtime: python27 api_version: 1 threadsafe: true handlers: - url: /.* script: helloworld.application  Nombre.py Básicamente en este archivo se importa el framework seleccionado mediante una instancia de su clase y se escribe el contenido “Hola Mundo Cloud” para posteriormente hacer su correspondiente Deploy, el Deploy no es más que compilar el proyecto y subirlo a la nube. El contenido de este archivo es el siguiente: import webapp2 class MainPage(webapp2.RequestHandler): def get(self): self.response.headers['Content-Type'] = 'text/plain'
  • 62. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 46 self.response.write('Hola Mundo Cloud') application = webapp2.WSGIApplication([ ('/', MainPage), ], debug=True) Para hacer un deploy en Google Cloud y compilar en la nube, es necesario abrir el programa Google App Engine, localizar la carpeta donde se encuentra ubicado el proyecto y se le da click en el botón azul “Deploy”, posteriormente se escribe el e-mail y password de la cuenta vinculada a Google cloud y se le da click en el botón “Ok” para empezar a realizar la compilación en la figura 4 se muestra este proceso. Figura 4. Proceso para realizar el deploy de una aplicación en Google Cloud. Una vez que se ha realizado el proceso de deploy se obtiene el resumen de la compilación del proyecto, en la figura 5 se puede observar dichos resultados. Cabe notar que cuando no existe problema alguno se muestra el mensaje “Deployment Sucessful”. Para comprobar el correcto Deploy de la aplicación se puede visitar el dominio: www.manual-tecnico-2015.appspot.com y se observará la salida mostrada en la figura 6.
  • 63. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 47 Figura 5. Resultado de un Deployment exitoso. Figura 6. Resultado Final del primer hola mundo en la nube. 5.3. Primer acercamiento para almacenar datos en la nube. En la figura 7 se muestra un primer programa el cual almacena datos que ingresa el usuario. Una vez que se accesa a la página principal e inicia sesión. Figura 7. Ejemplo de libro de visitas que almacena en data store en el espacio de Gmail. Posteriormente se puede empezar a usar el mini diario que almacena los datos en el data store que proporciona gratuitamente Google cloud.
  • 64. Sistema de gestión de nóminas en la nube para la Micro, Pequeña y Mediana Empresa (PyME). 48 A continuación se muestra el código con el cual se realizó el Deploy de este proyecto application: true-kite-622 version: 1 runtime: python27 api_version: 1 threadsafe: true handlers: - url: /.* script: guestbook.application libraries: - name: webapp2 version: latest codigo.py MAIN_PAGE_FOOTER_TEMPLATE = """ <form action="/sign?%s" method="post"> <div><textarea name="content" rows="3" cols="60"></textarea></div> <div><input type="submit" value="Sign Guestbook"></div> </form> <hr> <form>Guestbook name: <input value="%s" name="guestbook_name"> <input type="submit" value="switch"> </form> <a href="%s">%s</a> </body> </html> """ DEFAULT_GUESTBOOK_NAME = 'default_guestbook' En el código se muestra el contenido del .yaml para| poder realizar el deploy del proyecto. Cabe mencionar que Google cloud datastore está totalmente administrado por Google, él se encarga automáticamente de la fragmentación y la replicación de datos. Cloud Datastore ajusta automáticamente la escala según las necesidades. Esto permite centrarse en crear la aplicación y olvidarse de la administración. Cloud Datastore proporciona transacciones ACID. La aplicación puede ejecutar varias operaciones de almacén de datos en una única transacción, que se ejecutarán correctamente o con errores en su totalidad, garantizando así la integridad de tus datos.