Está en la página 1de 45

FACULTAD DE INGENIERÍA

CARRERA DE INGENIERÍA SISTEMAS COMPUTACIONALES

TRABAJO DE CAMPO N°2

Autor:
VELIZ FERNANDEZ, CHRISTIAN CARLOS N00158631
CAMPOS MINAYA, JIMMY FERNANDO N00058853
OMAR PACOTICONA CONDORI N00227100

Curso:
SOLUCIONES WEB Y APLICACIONES DISTRIBUIDAS

Docente:
TARMEÑO JUSCAMAITA, ESTHER

Proyecto:
GESTIÓN DE ASISTENCIA –HOME OFFICE

Nombre de empresa: Fargoline S.A

Datos Generales

 Web: www.fargoline.com.pe

Página 1 de 45
CONTENIDO

1. DESCRIPCIÓN DE LA EMPRESA...........................................................................................3
2. DIAGRAMA DE PROCESO: GESTIÓN DE ASISTENCIA –HOME OFFICE...........................6
3. METODOLOGÍA RUP.....................................................................................................7
1.1. Lista de Actores............................................................................................................7
1.1. Diagrama de Actores....................................................................................................7
1.2. Diagrama de Paquetes..................................................................................................8
1.3. Lista de Caso de Uso del Sistema por Paquete.............................................................8
Paquete: P01 - Control de Asistencia...................................................................................8
Paquete: P02 - Seguimiento de Asistencia...........................................................................8
Paquete: P03 – Seguridad del Sistema.................................................................................9
1.4. Diagrama de Casos de Uso por Paquete.......................................................................9
Paquete: P01 - Control de Asistencia...................................................................................9
Paquete: P02 - Seguimiento de Asistencia...........................................................................9
Paquete: P03 – Seguridad del Sistema...............................................................................10
1.5. Diagrama General de Casos de Uso............................................................................10
1.6. Especificación de los Casos de Uso del Sistema..........................................................11
4. MODELO RELACIONAL.........................................................................................................34

Página 2 de 45
1. DESCRIPCIÓN DE LA EMPRESA

Operador logístico del grupo Ferreycorp, que cuenta con amplia experiencia en el
mercado y ofrece servicios logísticos de calidad a través de tecnología de soporte,
procesos seguros e infraestructura adecuada para cubrir la demanda del mercado
brindando soluciones eficientes. Además, contamos con servicios de comercio exterior
en alianza estratégica con proveedores especializados como agencias de carga, aduanas
y transporte

VISIÓN

Ser una empresa reconocida como líder en el manejo logístico integral de mercancías en
el mercado nacional y a nivel latinoamericano, consolidadas como socio estratégico de
los clientes por la Calidad y Seguridad de sus Servicios, que crece y se adapta a las
necesidades generadas por la globalización y el desarrollo.

MISIÓN
Brindar soluciones logísticas integrales con los mayores estándares de seguridad,
calidad y eficacia, aportando valor a las operaciones del cliente a través de nuestra
experiencia en el sector, una infraestructura moderna, personal competente y tecnología
adecuada; comprometidos con una cultura de éxito, actuando siempre con
responsabilidad social y ambiental.

PROPUESTA DE VALOR

Superamos las expectativas de nuestros clientes, brindando servicios de calidad.

Responsabilidad: Profesionalismo orientado al cumplimiento de resultados. Sus


productos entregados en el menor tiempo del mercado y tracking de su carga desde su
oficina vía online.

Página 3 de 45
Calidez: Siempre estamos dispuestos a escuchar y apoyar a nuestros clientes. Tenemos
un trato personalizado con cada uno de nuestros clientes.

Soluciones rápidas: Cada cliente es único y sus necesidades también, por tal motivo nos
esforzamos por ofrecerte la alternativa más eficiente en tiempo y lugar.

Confianza: Tenemos estrictas medidas de seguridad para que estés tranquilo mientras
tus productos son gestionados por nosotros. Además contamos con certificaciones de
seguridad y control: BASC, ISO 9001 y OHSAS 18001.

Experiencia: 33 años en el mercado y el respaldo de uno de los grupos económicos más


importantes del Perú como Ferreycorp, nos permiten brindar soluciones logísticas de
calidad.

RESPONSABILIDAD SOCIAL

Fargoline busca generar relaciones positivas con cada uno de sus grupos de interés, lo
que constituye uno de los ejes centrales de su gestión empresarial.

Fargoline cuenta con el Distintivo Empresa Socialmente Responsable (ESR), otorgado


por Perú 2021, y es socio de la Asociación de Buenos Empleadores (ABE), patrocinada
por la Cámara de Comercio Americana del Perú (AmCham).

SISTEMA DE CUMPLIMIENTO

SISTEMA DE CUMPLIMIENTO DE FERREYCORP Y SUS SUBSIDIARIAS

El Sistema de Cumplimiento de Ferreycorp es importante para mantener la cultura de


integridad de nuestra Corporación y la de sus subsidiarias. Nuestra reputación es uno de
los mayores activos que tenemos, debemos protegerla. Uno de nuestros grandes Valores
es la Integridad.

Tenemos un Sistema de Cumplimiento para prevenir que nuestra empresa y sus


colaboradores se vean envueltos en casos de corrupción y en conductas deshonestas o

Página 4 de 45
ilegales, mediante normas y procedimientos que aseguren el comportamiento ético en
los negocios y el cumplimiento de la ley, evitando dañar así nuestra reputación y buena
imagen.

Nuestros socios de negocio (clientes, proveedores, socios, aliados, consorcios,


contratistas, subcontratistas, agentes, distribuidores, intermediarios) deben mantener
siempre un comportamiento ético y cumplir con las políticas, normas y procedimientos
establecidos en nuestro Sistema de Cumplimiento para la prevención de delitos de
corrupción.

Página 5 de 45
2. DIAGRAMA DE PROCESO: GESTIÓN DE ASISTENCIA –HOME OFFICE

Página 6 de 45
Página 7 de 45
3. METODOLOGÍA RUP
1.1. Lista de Actores

Actores del Sistema Descripción

Son los trabajadores de la empresa a


quienes se les realizará el control de
asistencia diariamente.

Personal Administrador del sistema, que


registra al personal Nuevo, registra a los
empleados en campo, genera reportes
consolidado y detallado.
Es el responsable de cada área y que
puede consultar la asistencia del personal
a su cargo sobre su asistencia, diaria, o
por rango de fechas de uno o varios
trabajadores.
1.1. Diagrama de Actores

Página 8 de 45
1.2. Diagrama de Paquetes

1.3. Lista de Caso de Uso del Sistema por Paquete

Paquete: P01 - Control de Asistencia

Caso de Uso del Sistema Descripción


CUS01 - Registrar Asistencia del El caso de uso permite al empleado
Empleado registrar su Asistencia.
El caso de uso permite al asistente de
CUS02 - Registrar Empleado
RRHH registrar a nuevos Empleados.

El caso de uso permite al asistente de


CUS03 – Consultar Asistencia RRHH verificar las Asistencias
registradas.
El caso de uso permite al asistente de
CUS04 - Registrar Asistencia de RRHH registrar la Asistencia de los
Empleado en Campo
Empleados de Campo.

El caso de uso permite al asistente de


CUS05 - Consultar Empleado RRHH poder consultar datos de los
empleados.
El caso de uso permite al asistente de
CUS06 - Actualizar Empleado RRHH actualizar y/o modificar datos de
los empleados.
El caso de uso permite generar el reporte
CUS07 – Generar Reporte Consolidado consolidado con las horas totales de
cada trabajador.
CUS08 –Actualizar Asistencia El caso de uso permite modificar el
registro de Asistencia

Paquete: P02 - Seguimiento de Asistencia

Página 9 de 45
Caso de Uso del Sistema Descripción
El caso de uso permite a los jefes de Área
generar reportes de asistencia de los
CUS09 - Generar Reporte Detallado trabajadores a su cargo por rangos de
fecha incluyendo sus horas ingreso y
salida diaria.

Paquete: P03 – Seguridad del Sistema

Caso de Uso del Sistema Descripción


El caso de uso permite ingresar, eliminar
CUS10- Mantener Usuario y modificar usuarios que se encuentren
en el sistema.
El caso de uso permite validar los datos
ingresados para así poder ser
CUS11- Ingresar al Sistema
redireccionado al apartado
correspondiente.

1.4. Diagrama de Casos de Uso por Paquete

Paquete: P01 - Control de Asistencia

Paquete: P02 - Seguimiento de Asistencia

Página 10 de 45
Paquete: P03 – Seguridad del Sistema

Página 11 de 45
1.5. Diagrama General de Casos de Uso

1.6. Especificación de los Casos de Uso del Sistema

CUS01 - Registrar Asistencia del Empleado

1. Actores
Empleado.

2. Propósito
Registrar la asistencia del empleado que va a laborar dentro de la empresa.

3. Breve Descripción
El Caso de Uso permite al Empleado registrar su día y hora de entrada y salida a las
instalaciones de la empresa.

4. Flujo Básico de Eventos


1. El sistema muestra la Interfaz “Registrar Asistencia del Empleado”, donde solo se
deberá llenar un cuadro de texto, que es el número de DNI del Empleado.
2. El Empleado escribe su número de DNI en la caja de texto y pulsa la tecla ENTER.
3. El sistema verifica si existe número de DNI en el cuadro de texto.

Página 12 de 45
4. Si existe número de DNI en el cuadro de texto, el sistema verifica si el DNI
ingresado es correcto.
5. Si el DNI es correcto se muestra el nombre completo del empleado, fecha y la hora
que se registrará en el sistema con el siguiente formato: “dd/mm/yyyy hh:MM:ss”.
Debajo hay dos botones adicionales: “Aceptar” y “Cancelar” seleccionando por
defecto el primer botón.
6. Si el usuario hace clic en el botón “Aceptar”, se debe guardar en el sistema el día y
la hora en que se realizó el registro.
7. El sistema muestra un mensaje en la pantalla con el siguiente texto: “Se ha
registrado su asistencia de forma correcta”.
8. Si el empleado hace clic en el botón “Cancelar” no se realiza el registro y se
continúa en el siguiente punto.
9. La interfaz gráfica se limpia nuevamente y muestra la caja de texto lista ser
utilizada nuevamente.

5. Sub Flujos
Ninguno.

6. Flujos Alternos
1. Si en el punto 3 del Flujo Básico no se encuentra ningún número de DNI en el
cuadro de texto, entonces el sistema mostrará un mensaje: “Debe ingresar número
de DNI”. Luego al presionar la tecla ENTER la interfaz gráfica se limpia
nuevamente y muestra la caja de texto lista ser utilizada nuevamente.
2. Si en el punto 4 del Flujo Básico el número de DNI ingresado es incorrecto,
entonces el sistema mostrará un mensaje: “El DNI ingresado es incorrecto.
Verifique y vuelva a intentarlo”. La interfaz gráfica se limpia nuevamente y
muestra la caja de texto lista ser utilizada nuevamente.

7. Precondiciones
Ninguno.

8. Pos – condiciones
El registro queda guardado en la base de datos del sistema.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

Página 13 de 45
11. Requerimientos Especiales
Ninguno

12. Prototipos

CUS02 - Registrar Empleado

1. Actores
Asistente de RRHH.

2. Propósito
Registrar en el sistema los datos de un empleado nuevo.

3. Breve Descripción
El Caso de Uso permite al Asistente de Recursos Humanos registrar un nuevo
Empleado en la empresa.

4. Flujo Básico de Eventos


1. El sistema muestra la Interfaz “Registrar Empleado” con los siguientes campos para
ingresar datos: Número de DNI, Apellidos, Nombres, Sexo, Área en donde trabaja,
Dirección del Empleado y Fecha de Nacimiento. Además, se incluyen los botones
Nuevo, Grabar y Salir.

Página 14 de 45
2. Para iniciar un nuevo registro se presiona el botón Nuevo el cual habilita los
campos para ser registrados y se pone el focus en DNI.
3. El Asistente de RRHH ingresa los datos indicados en el punto 1 y luego hace clic
sobre el botón “Grabar”.
4. El sistema verifica si la caja de texto del DNI está vacía o no.
5. Si el cuadro de texto no está vacía, el sistema verifica si el DNI ingresado existe.

6. Si el número de DNI no existe, entonces se guardan los datos del Empleado en el


sistema y se muestra el mensaje “Se ha guardado la información de forma correcta”
7. El usuario cierra la pantalla y termina el Caso de Uso.

5. Sub Flujos
Ninguno.

6. Flujos Alternos
1. En el punto 4 del Flujo Básico, si la caja de texto está vacía se mostrará el mensaje:
ingrese un numero de DNI y el focus se posará sobre la caja de texto del DNI.
2. En el punto 6 del Flujo Básico, si el número de DNI ya existe se muestra un
mensaje indicando lo siguiente: “El número de DNI ya se encuentra registrado,
registre uno nuevo.
3. El cursor se enfoca sobre la caja de texto DNI.

7. Precondiciones
El Analista de RRHH debe haber iniciado sesión en el sistema.

8. Pos – condiciones
El registro queda guardado en la base de datos del sistema.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

11. Requerimientos Especiales

Página 15 de 45
Ninguno

12. Prototipos

CUS03 – Consultar Asistencia

1. Actores
Asistente de RRHH.

2. Propósito
Consultar la asistencia de los empleados

3. Breve Descripción
El caso de uso permite al asistente de recursos humanos verificar las asistencias
registradas.

4. Flujo Básico de Eventos


1. El sistema muestra la Interfaz “Consulta Asistencia” con los siguientes campos
para ingresar datos: Número de DNI, fecha desde y fecha hasta. Y después se
selecciona el botón Buscar.
2. El sistema verifica si los campos solicitados han sido llenados.

Página 16 de 45
3. Si los campos han sido llenados, el sistema verifica si el DNI ingresado existe.
4. Si el DNI es correcto, se muestra la consulta solicitada.

5. El usuario cierra la pantalla presionando el botón Salir, termina el Caso de Uso y


se regresa a la pantalla anterior de registro del empleado.

5. Sub Flujos
Ninguno.

6. Flujos Alternos
1. Si en el 3 del Flujo Básico no cuenta con ningún dato en el cuadro de texto,
entonces el sistema mostrará un mensaje: “Debe ingresar datos obligatorios”.
Luego al presionar la tecla ENTER la interfaz gráfica se limpia y muestra las
cajas de texto listas para ser utilizadas nuevamente.
2. Si el punto 4 del Flujo Básico, el número de DNI no existe se muestra un
mensaje indicando lo siguiente: “El número de DNI no se encuentra registrado”.
Luego al presionar la tecla ENTER la interfaz gráfica se limpia y muestra las
cajas de texto listas para ser utilizadas nuevamente.

7. Precondiciones
El Analista de RRHH debe haber iniciado sesión en el sistema.

8. Pos – condiciones
La consulta queda guardada en la base de datos del sistema.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

11. Requerimientos Especiales


Ninguno

12. Prototipos

Página 17 de 45
CUS04 - Registrar Asistencia de Empleado en Campo

1. Actores
Asistente de RRHH.

2. Propósito
Registrar la asistencia del trabajador que va a laborar directamente en las
instalaciones de un cliente y no llega a la empresa.

3. Breve Descripción
El Caso de Uso permite al Asistente de RRHH registrar el lugar, día y hora de
entrada y salida de las instalaciones de la empresa cliente.

Página 18 de 45
4. Flujo Básico de Eventos
1. El sistema muestra la Interfaz “Registrar Asistencia del Empleado en campo” con
los siguientes cuadros de texto: DNI del empleado, Apellidos y nombres, Cliente en
donde se prestó el servicio, Fecha de la asistencia y hora en que se realizó la visita,
además de 2 botones “Registrar Asistencia” y “Cancelar”.
2. El Asistente de RRHH escribe el número de DNI del empleado que va a registrar su
asistencia, luego pulsará la tecla ENTER y el sistema mostrará de forma automática
el nombre completo del empleado.
3. El Asistente de RRHH selecciona el cliente en donde se efectuó la visita y escribe
la fecha y hora en que el empleado llegó.
4. El Asistente de RRHH pulsa en el botón “Registrar Asistencia” y los datos se
graban en la Base de Datos.
5. El sistema muestra un mensaje con el siguiente texto “Se ha registrado la asistencia
de forma correcta”.

5. Sub Flujos
Ninguno.

6. Flujos Alternos
1. Si en el punto 2 del Flujo Básico no se encuentra el número de DNI ingresado,
entonces el sistema mostrará un mensaje: “El DNI ingresado es incorrecto.
Verifique y vuelva a intentarlo”.

7. Precondiciones
1. El Analista de RRHH debe haber iniciado sesión en el sistema.
2. El empleado debe estar registrado en el sistema.

8. Pos – condiciones
El registro queda guardado en la base de datos del sistema.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

11. Requerimientos Especiales


Ninguno

Página 19 de 45
12. Prototipos

CUS05-Consultar empleado

1. Actores
Asistente de RRHH.

2. Propósito
Permite la revisión los datos personales de los empleados.

3. Breve Descripción
El Caso de Uso permite al Asistente de RRHH, verificar los datos personales de los
empleados registrados en el sistema.

4. Flujo Básico de Eventos


1. El sistema muestra la Interfaz “Consultar Empleado” con los siguientes campos de
solo lectura: Número de DNI, Apellidos, Nombres, Sexo, Área en donde trabaja,
Dirección del Empleado y Fecha de Nacimiento.
2. El Asistente de RRHH ingresa el identificador del empleado cuyos datos desea
verificar.
3. El Asistente de RRHH hace clic en el botón “Consultar”. Se muestra la información
de la consulta en los campos mencionados en el punto número 1.

Página 20 de 45
4. Si los datos son correctos, el Asistente de RRHH podrá hacer una nueva consulta
haciendo clic en “Siguiente”.
5. El usuario cierra la pantalla y termina el Caso de Uso.

5. Sub Flujos
Ninguno.

6. Flujos Alternos
1. En el punto 4 del Flujo Básico, si los datos del empleado no son correctos, el
Asistente de RRHH hará clic en “Terminar” y saldrá del Caso de Uso.

7. Precondiciones
El Asistente de RRHH debe haber iniciado sesión en el sistema.

8. Pos – condiciones
Ninguno.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

11. Requerimientos Especiales


Ninguno

12. Prototipos

Página 21 de 45
CUS06 - Actualizar empleado

1. Actores
Asistente de RRHH.

2. Propósito
Actualizar y/o modificar Los datos de los empleados ya se por algún error o por que
se registre a uno nuevo.

3. Breve Descripción
El Caso de Uso permite al Asistente de RRHH Actualizar los datos de los
empleados o agregar a uno nuevo

4. Flujo Básico de Eventos

Página 22 de 45
1. El sistema muestra la Interfaz “Actualizar Empleado” con solo un cuadro de texto
que solicitará el número de DNI del Empleado de quien se actualizará los datos si
tuviera algún error.
2. El Asistente de RRHH, escribe el número de DNI del empleado en la caja de texto
y pulsa la tecla Enter.
3. Si el empleado existe se muestran los datos de nombre del empleado, cargo y área
donde labora
4. De encontrarse algún error, se procede a modificar las cajas de texto y luego se
presiona el botón Actualizar.
5. El sistema muestra un mensaje en la pantalla con el siguiente texto: “Se ha
Actualizado de forma correcta”.
6. Después de la Actualización el promt aparece sobre la casilla de texto del DNI para
continuar con la siguiente actualización.
7. Si el Asistente de RRHH hace clic en el botón “Cancelar” no se realiza la
Actualización

5. Sub Flujos
Ninguno.

6. Flujos Alternos
1. Si en el punto 3 del Flujo Básico no se encuentra el número de DNI ingresado,
entonces el sistema mostrará un mensaje: “El DNI ingresado no existe. Verifique y
vuelva a intentarlo”.

7. Precondiciones
Ninguno.

8. Pos – condiciones
La actualización queda guardada en la base de datos del sistema.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

11. Requerimientos Especiales


Ninguno

12. Prototipos

Página 23 de 45
CUS07 – Generar Reporte Consolidado

1. Actores
Asistente de RRHH.

2. Propósito
Permite obtener el total de horas que han trabajado los empleados en el mes
indicado.

3. Breve Descripción
El Caso de Uso permite al Asistente de RRHH obtener la cantidad de horas que
cada trabajador ha trabajado de manera que se pueda mostrar las horas que deben
cada trabajador.

Página 24 de 45
4. Flujo Básico de Eventos
1. El sistema muestra la Interfaz “Generar Reporte Consolidado” con los siguientes
controles para escoger: Mes, Informe Total, Horas Pendientes y una grilla en la
parte inferior en donde se mostrarán los resultados, además se tendrán los botones:
“Mostrar resultados”, “Exportar a Excel” y “Exportar a PDF”.
2. El Asistente de RRHH escoge el mes que desea mostrar y luego elige entre ver
todos los resultados o solo ver los trabajadores que deben horas en el trabajo.
3. El Asistente de RRHH hace clic en el botón “Mostrar resultados” y se muestra la
información de la consulta en la parte inferior de la pantalla en la grilla de
resultados.

5. Sub Flujos
1. Al hacer clic en el botón “Exportar a Excel” el sistema descarga una copia del
reporte en formato xlsx para que pueda ser visualizado en Excel.
2. Al hacer clic en el botón “Exportar a PDF” el sistema descarga una copia del
reporte en formato PDF para que pueda ser enviado sin que se modifique la
información.

6. Flujos Alternos
Ninguno.

7. Precondiciones
El Analista de RRHH debe haber iniciado sesión en el sistema.

8. Pos – condiciones
Ninguno.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

11. Requerimientos Especiales


Ninguno

12. Prototipos

Página 25 de 45
CUS08 – Actualizar Asistencia

1. Actores
Asistente de RRHH.

2. Propósito
Actualizar y/o modificar la lista de Asistencia cuando se genere algún error ya sea
del sistema o por falta de fluido eléctrico.

3. Breve Descripción
El Caso de Uso permite al Asistente de RRHH Actualizar la Asistencia del Personal
que reporto problema en el registro a la hora de ingreso o salida.

4. Flujo Básico de Eventos


Página 26 de 45
1. El sistema muestra la Interfaz “Actualizar Asistencia” donde se mostrará un cuadro
de texto que solicitará el número de DNI del Empleado de quien se actualizará la
asistencia.
2. El Asistente de RRHH, escribe su número de DNI en la caja de texto y pulsa la
tecla Consultar.
3. El sistema muestra los datos de nombre del empleado, fecha y hora de Ingreso con
la caja de textos habilitadas.
4. De encontrarse algún error, se procede a modificar las cajas de texto y luego se
presiona el botón Actualizar.
5. El sistema muestra un mensaje en la pantalla con el siguiente texto: “Se ha
Actualizado de forma correcta”.
6. Después de la Actualización el promt aparece sobre la casilla de texto del DNI para
continuar con la siguiente actualización.
7. Si el Asistente de RRHH hace clic en el botón “Cancelar” no se realiza la
Actualización

5. Sub Flujos
Ninguno.

6. Flujos Alternos
1. Si en el punto 3 del Flujo Básico no se encuentra el número de DNI ingresado,
entonces el sistema mostrará un mensaje: “El DNI ingresado es incorrecto.
Verifique y vuelva a intentarlo”.

7. Precondiciones
Ninguno.

8. Pos – condiciones
La actualización queda guardada en la base de datos del sistema.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

11. Requerimientos Especiales


Ninguno

12. Prototipos

Página 27 de 45
CUS09 – Generar reporte detallado

1. Actores
El Analista de RRHH y jefe de área.

2. Propósito
Generar reportes de asistencia de los empleados.

3. Breve Descripción
El caso de uso permite a los jefes de Área generar reportes de asistencia de los
trabajadores a su cargo por rangos de fecha incluyendo sus horas ingreso y salida
diaria.

4. Flujo Básico de Eventos


1. El sistema muestra la Interfaz “Reporte de Asistencia” con los siguientes campos
para ingresar datos: Fecha desde y fecha hasta. Además, se incluyen los combobox,
Seleccionar empleado y Seleccionar Área, las cajas de check Todos, los botones
Exportar en Excel, exportar en PDF, Generar y Salir.

Página 28 de 45
2. El Asistente de RRHH selecciona el rango de fecha del reporte que desea
colocando la fecha desde y la fecha hasta.
3. El Asistente de RRHH puede filtrar el reporte por DNI del empleado al seleccionar
uno de ellos del combobox DNI y luego presionar en generar o seleccionar todos
del check para obtener un reporte de todos los empleados
4. El Asistente de RRHH puede filtrar el reporte por Área al seleccionar uno de ellos
del combobox Area y luego presionar en generar o seleccionar todos del check para
obtener un reporte de todos los empleados de una determinada área.
5. El sistema muestra en un data grid view el reporte solicitado.
6. El sistema espera 30 segundos para que se pueda exportar el reporte en el formato
Excel o PDF, si se pasa de este tiempo muestra el mensaje “desea salir del sistema”
con dos botones SI, y NO.
7. De presionar SI, se sale del sistema, de lo contrario te da otros 30 segundos y te
vuelve a mostrar el mismo mensaje.
8. El Asistente de RRHH exporta el reporte en uno de los formatos deseados
9. El usuario cierra la pantalla y termina el Caso de Uso.

5. Sub Flujos
Ninguno.

6. Flujos Alternos
1. Al hacer clic en el botón “Exportar a Excel” el sistema descarga una copia del
reporte en formato xlsx para que pueda ser visualizado en Excel.
2. Al hacer clic en el botón “Exportar a PDF” el sistema descarga una copia del
reporte en formato PDF para que pueda ser enviado sin que se modifique la
información.
3. Si el usuario hace clic en el botón “Salir”, se regresa a la pantalla anterior de
registro de empleado.

7. Precondiciones
El Analista de RRHH y jefe de área debe haber iniciado sesión en el sistema.

8. Pos – condiciones
El reporte queda guardado en la base de datos del sistema.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

Página 29 de 45
11. Requerimientos Especiales
Ninguno

12. Prototipos

CUS10 – Mantener Usuario

1. Actores

Página 30 de 45
Asistente de RRHH.

2. Propósito
Actualizar los datos de los usuarios.

3. Breve Descripción
El Caso de Uso permite al Asistente de Recursos Humanos registrar los datos de
los usuarios del sistema y actualizar su información.

4. Flujo Básico de Eventos


1) El sistema muestra la Interfaz “Mantenimiento de Usuarios” con los
siguientes campos: DNI, Apellidos, Nombres, Contraseña, Rol del
Usuario, Estado del Usuario.
2) Debajo se encontrarán cuatro botones que servirán para la navegación
entre los diferentes usuarios del sistema.
3) Al hacer clic en el botón |< se mostrarán los datos del primer usuario.
4) Al hacer clic en el botón < se mostrarán los datos del usuario anterior al
usuario actual. Si se encuentra visualizando el primer usuario el sistema
mostrará un mensaje emergente con el texto “Se está visualizando el
primer registro”.
5) Al hacer clic en el botón >| se mostrarán los datos del último usuario.
6) Al hacer clic en el botón > se mostrarán los datos del usuario siguiente al
usuario actual. Si se encuentra visualizando el primer usuario el sistema
mostrará un mensaje emergente con el texto “Se está visualizando el
primer registro”.
7) Si el usuario hace clic en el botón “Nuevo”, se limpiarán las cajas te
texto y demás controles.
8) El usuario escribe un DNI en la caja de texto correspondiente y al pulsar
la tecla ENTER se deben mostrar los Apellidos y Nombres del
trabajador.
9) La contraseña inicial por defecto es el mismo número de DNI del
empleado.
10) El usuario selecciona un rol del combo box.
11) La casilla de verificación se debe encontrar activada por defecto.
12) Al hacer clic en el botón “Grabar”, los datos se guardarán en la BD y se
mostrará un mensaje que indique que el proceso fue “satisfactorio”.
13) Si el usuario modifica los datos de un usuario del sistema y hace clic en
el botón Grabar, los nuevos datos se modifican y se guardan en la BD, el
campo DNI no se modifica en esta oportunidad.
14) El botón Cancelar devuelve los datos a como estaban inicialmente en la
pantalla si se han modificado.
15) El botón “Eliminar” muestra un cuadro de consulta emergente que
pegunta “¿Realmente desea eliminar el registro seleccionado?” y dos

Página 31 de 45
botones “Aceptar” y “Cancelar”, si el usuario hace clic en el botón
Aceptar, el registro actual se elimina de la BD y se muestra un mensaje
emergente que dice “El registro a sido eliminado de forma correcta”.

5. Sub Flujos
Ninguno.

6. Flujos Alternos
Ninguno.

7. Precondiciones
El Asistente de RRHH debe haber iniciado sesión en el sistema.

8. Pos – condiciones
El registro queda guardado en la base de datos del sistema.

9. Puntos de Extensión
Ninguno.

10. Requisitos Funcionales asociados


Ninguno.

11. Requerimientos Especiales


Ninguno

12. Prototipos

Página 32 de 45
CUS0 11 –Ingresar al Sistema

1. Actores
El Analista de RRHH

2. Propósito
Logearse al Sistema.

3. Breve Descripción
El caso de uso permite al asistente de RHH logearse al Sistema.

4. Flujo Básico de Eventos


1. El sistema muestra la Interfaz con el campo ingrese usuario y contraseña.
2. El Asistente de RRHH ingresa su usuario y contraseña y luego presiona el botón
ingresar.

Página 33 de 45
3. De ser validado los datos muestra el mensaje: “Bienvenido usuario al sistema” y
muestra la pantalla principal.
4. El usuario cierra la pantalla y termina el Caso de Uso.

5. Sub Flujos
Ninguno.

6. Flujos Alternos
1. Del punto 2 el sistema valida el usuario y contraseña, de no existir alguno de ellos,
muestra el mensaje “El usuario no existe”.
2. Limpia las casillas de usuario y contraseña y solicita ingreso de datos.

3. Precondiciones
El Analista de RRHH debe tener su usuario y contraseña

4. Pos – condiciones
Ninguno.

5. Puntos de Extensión
Ninguno.

6. Requisitos Funcionales asociados


Ninguno.

7. Requerimientos Especiales
Ninguno

8. Prototipos

Página 34 de 45
Página 35 de 45
4. MODELO RELACIONAL

Página 36 de 45
GUI de Acceso:

Código LOGIN:

package Login;

import ConexionMySQL.ConexionMySQL;

import com.mysql.jdbc.Connection;

import com.mysql.jdbc.Statement;

import java.sql.ResultSet;

import javax.swing.JOptionPane;

public class login extends javax.swing.JFrame {

ConexionMySQL cc=new ConexionMySQL();

Connection con=cc.conexion();

Página 37 de 45
public login() {

initComponents();

this.setLocationRelativeTo(null);

this.setTitle("LOGIN");

public void ValidarAcceso(){

int resultado=0;

try {

String usuario=txtUsuario.getText();

String pass=String.valueOf(txtPass.getPassword());

String sql="select * from usuarios where usuario='"+usuario+"' and


contraseña='"+pass+"'";

java.sql.Statement st=con.createStatement();

ResultSet rs=st.executeQuery(sql);

if(rs.next()){

resultado=1;

if(resultado==1){

Sistema form=new Sistema();

form.setVisible(true);

this.dispose();

}else{

JOptionPane.showMessageDialog(null, "Error en el acceso, vuelva a intentarlo");

} catch (Exception e) {

JOptionPane.showMessageDialog(null, "Error en el acceso, vuelva a intentarlo" +


e.getMessage());

Página 38 de 45
}

/**

* This method is called from within the constructor to initialize the form.

* WARNING: Do NOT modify this code. The content of this method is always

* regenerated by the Form Editor.

*/

@SuppressWarnings("unchecked")

// <editor-fold defaultstate="collapsed" desc="Generated Code">

private void initComponents() {

jPanel1 = new javax.swing.JPanel();

jLabel1 = new javax.swing.JLabel();

jLabel2 = new javax.swing.JLabel();

txtUsuario = new javax.swing.JTextField();

txtPass = new javax.swing.JPasswordField();

jLabel3 = new javax.swing.JLabel();

jButton1 = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

jPanel1.setBackground(new java.awt.Color(0, 51, 153));

jLabel1.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N

jLabel1.setForeground(new java.awt.Color(255, 255, 255));

jLabel1.setText("Usuario:");

jLabel2.setFont(new java.awt.Font("Tahoma", 1, 12)); // NOI18N

jLabel2.setForeground(new java.awt.Color(255, 255, 255));

Página 39 de 45
jLabel2.setText("Contraseña:");

jLabel3.setIcon(new
javax.swing.ImageIcon(getClass().getResource("/imagenes/user_1.png"))); // NOI18N

jButton1.setText("INGRESAR");

jButton1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jButton1ActionPerformed(evt);

});

javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);

jPanel1.setLayout(jPanel1Layout);

jPanel1Layout.setHorizontalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()

.addContainerGap(119, Short.MAX_VALUE)

.addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 137,


javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(156, 156, 156))

.addGroup(jPanel1Layout.createSequentialGroup()

.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel1Layout.createSequentialGroup()

.addGap(93, 93, 93)

.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)

.addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 80,


javax.swing.GroupLayout.PREFERRED_SIZE)

.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 80,


javax.swing.GroupLayout.PREFERRED_SIZE)

Página 40 de 45
.addComponent(txtUsuario)

.addComponent(txtPass, javax.swing.GroupLayout.PREFERRED_SIZE, 182,


javax.swing.GroupLayout.PREFERRED_SIZE)))

.addGroup(jPanel1Layout.createSequentialGroup()

.addGap(143, 143, 143)

.addComponent(jButton1)))

.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))

);

jPanel1Layout.setVerticalGroup(

jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addGroup(jPanel1Layout.createSequentialGroup()

.addGap(16, 16, 16)

.addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 168,


javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(18, 18, 18)

.addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 25,


javax.swing.GroupLayout.PREFERRED_SIZE)

.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)

.addComponent(txtUsuario, javax.swing.GroupLayout.PREFERRED_SIZE, 31,


javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(36, 36, 36)

.addComponent(jLabel2, javax.swing.GroupLayout.PREFERRED_SIZE, 25,


javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(18, 18, 18)

.addComponent(txtPass, javax.swing.GroupLayout.PREFERRED_SIZE, 32,


javax.swing.GroupLayout.PREFERRED_SIZE)

.addGap(18, 18, 18)

.addComponent(jButton1)

.addContainerGap(27, Short.MAX_VALUE))

);

javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());

getContentPane().setLayout(layout);

Página 41 de 45
layout.setHorizontalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)

);

layout.setVerticalGroup(

layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)

.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)

);

pack();

}// </editor-fold>

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {

ValidarAcceso();

/**

* @param args the command line arguments

*/

public static void main(String args[]) {

/* Set the Nimbus look and feel */

//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">

/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.

* For details see


http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

*/

try {

for (javax.swing.UIManager.LookAndFeelInfo info :


javax.swing.UIManager.getInstalledLookAndFeels()) {

if ("Nimbus".equals(info.getName())) {

Página 42 de 45
javax.swing.UIManager.setLookAndFeel(info.getClassName());

break;

} catch (ClassNotFoundException ex) {

java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (InstantiationException ex) {

java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (IllegalAccessException ex) {

java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

} catch (javax.swing.UnsupportedLookAndFeelException ex) {

java.util.logging.Logger.getLogger(login.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);

//</editor-fold>

/* Create and display the form */

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

new login().setVisible(true);

});

// Variables declaration - do not modify

private javax.swing.JButton jButton1;

private javax.swing.JLabel jLabel1;

Página 43 de 45
private javax.swing.JLabel jLabel2;

private javax.swing.JLabel jLabel3;

private javax.swing.JPanel jPanel1;

private javax.swing.JPasswordField txtPass;

private javax.swing.JTextField txtUsuario;

// End of variables declaration

Página 44 de 45
Conexión a BASE DE DATOS

public class ConexionMySQL {

Connection conectar=null;

public Connection conexion(){

try{

Class.forName("com.mysql.jdbc.Driver");

conectar=(Connection)
DriverManager.getConnection("jdbc:mysql://localhost/bd_java","root","");

JOptionPane.showMessageDialog(null, "Conexión Exitosa");

}catch(Exception e){

JOptionPane.showMessageDialog(null, "Conexión Fallida" + e.getMessage());

return conectar;

Página 45 de 45

También podría gustarte