Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introducción
El propósito del documento es dar un preámbulo narrativo de los requerimientos para la realización de
Curriculum vitae: creación, modificación, acceso a bolsas de trabajo
Proyecto va dirigido a todos los estudiantes egresados a nivel medio superior y superior que estén en busca de
tener una forma de realizar un Curriculum vitae actualizado
General
Construir una página que se defina por tener un formato de uso simple que le permita a cualquier persona
realizar un C.V actualizado.
Específicos
Contar con formularios de instrucciones simples
Ser capaz de generar vistas previas
Tener la exportación de documento en formato PDF
A
Actor: Se le denominará así a la persona o sistema que interactúa con el sistema para realizar un caso de uso
Admin (Administrador): Se hace referencia a quien administra el sitio.
C
Curriculum vitae (CV): Se refiere a la carrera de vida
Cursos: se refiere a la formación que se hayan hecho o que están sólo relacionadas al puesto
Cliente: Se hace referencia al usuario final
Caso de uso: Artefacto que define una secuencia de acciones que da lugar a un resultado de valor observable
D
Datos de contacto: La forma en que puede ser localizado, formato profesional
E
Experiencias laborales: Historial con formato: cargo, nombre de la empresa (máximo 3), fecha inicio, fecha fin
(solo mes y año), 5 actividades como máximo.
Encabezado: Conformado por Nombre completo del aspirante, puesto solicitado
F
Formación académica: Con formato: Título obtenido, especialidad (si se tiene), nombre de la institución y fecha
inicio, fecha fin (solo mes y año) nota: solo el último grado académico
H
Habilidades personales: Destrezas humanas referentes al puesto
Habilidades informáticas: Programas de los que tiene conocimiento y experiencia de uso
I
Idiomas: Los idiomas que maneja y el nivel de conocimiento
P
Perfil profesional /sobre mi: Descripción sobre el enfoque de la carrera que desarrolla, proyectos realizados,
intereses, logros. Área de trabajo que se busca
Permiso: Es un parámetro que especifica si un usuario puede o no hacer uso
de alguna funcionalidad del sistema
1.4. Referencias
Mundo laboral: ¿Cómo hacer una hoja de vida? (s. f.). GCFGlobal.org. Recuperado 3 de octubre de 2022, de
https://edu.gcfglobal.org/es/mundo-laboral/como-hacer-una-hoja-de-vida/1/
¿Cómo hacer un currículum vitae perfecto en 2022? Consejos y ejemplos. (s. f.). Currículum y Trabajo.
Recuperado 3 de octubre de 2022, de https://curriculumytrabajo.com/hacer-un-curriculum/
2. Representación de la arquitectura.
Se utilizará la arquitectura MVC (Model - View - Controller o Modelo - Vista - Controlador). Se separa en 3
estratos que son:
Vista: Es la representación del modelo en forma gráfica disponible para la interacción con el usuario
Controlador: Es la capa encargada de manejar y responder las solicitudes del usuario, procesando la
información necesaria y modificando el Modelo en caso de ser necesario. Sirve de enlace entre las vistas y
los modelos, respondiendo a los mecanismos que puedan requerirse para implementar las necesidades de
aplicación.
2.2 Reutilización
Se utilizará PHP.
● Es un lenguaje de programación multiparadigma.
● Es un lenguaje de programación web
● Es un lenguaje interpretado
● No es un lenguaje tipado
● No es necesario tener un motor web instalado para crear aplicaciones
● Es un lenguaje que funciona de lado del servidor
Se pueden utilizar con varios frameworks como Laravel, así mismo es compatible con variados
patrones de diseño.
3. Vista lógica
Modelo: Es la representación de la información con la cual el sistema opera, por lo tanto gestiona todos
los accesos a dicha información, tanto consultas como actualizaciones, implementando también los
privilegios de acceso que se hayan descrito en las especificaciones de la aplicación (lógica de negocio).
Controlador: Responde a eventos (usualmente acciones del usuario) e invoca peticiones al 'modelo'
cuando se hace alguna solicitud sobre la información (por ejemplo, editar un documento o un registro en
una base de datos). También puede enviar comandos a su 'vista' asociada si se solicita un cambio en la
forma en que se presenta el 'modelo' (por ejemplo, desplazamiento o scroll por un documento o por los
diferentes registros de una base de datos), por tanto se podría decir que el 'controlador' hace de
intermediario entre la 'vista' y el 'modelo'.
Vista: Presenta el 'modelo' (información y lógica de negocio) en un formato adecuado para interactuar
(usualmente la interfaz de usuario), por tanto requiere de dicho 'modelo' la información que debe
representar como salida.
3.2 Diagrama de Clases del diseño
4.1.2 Exportar CV
4.1.3 Mostrar Ofertas
5. Vista de datos
cat_habilidades_informaticas
habilidad_nombre varchar(60) No
habilidad_descripcion varchar(60) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
cat_habilidades_personales
habilidad_nombre varchar(60) No
habilidad_descripcion varchar(60) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
cat_idioma
clv_idioma varchar(45) No
nombre_idioma varchar(45) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
contacto
Columna Tipo Nulo Predeterminado Enlaces a Comentarios Tipo de medio
cont_num_tel varchar(45) No
cont_mail varchar(45) No
cont_linkedin varchar(45) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
curriculum
id_usuario int(11) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
curriculum_detalle
id (Primaria) int(11) No
id_cv int(11) No
Nombre de la
Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
clave
id 0 A No
Encabezado_id_encabezado 0 A No
Formacion_academica_id_facademica 0 A No
Experiencia_laboral_id_exp_lab 0 A No
Idiomas_id_idioma 0 A No
PRIMARY BTREE Sí No
Habilidades_personales_id_habilidad 0 A No
Habilidades_informaticas_id_habilidad 0 A No
Contacto_id_contacto 0 A No
Curso_id_curso 0 A No
Curriculum_id_cv 0 A No
id_UNIQUE BTREE Sí No id 0 A No
curso
curso_nombre varchar(60) No
curso_institucion varchar(60) No
curso_fecha date No
curso_ciudad varchar(45) No
curso_num_cert varchar(60) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
encabezado
encabezado_nombre varchar(45) No
Columna Tipo Nulo Predeterminado Enlaces a Comentarios Tipo de medio
encabezado_apellidp varchar(60) No
encabezado_apellidom varchar(60) No
encabezado_puesto varchar(60) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
experiencia_laboral
trabajo_nombre varchar(45) No
trabajo_fecha_ini date No
trabajo_fecha_fin date No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
formacion_academica
fa_titulo varchar(60) No
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
habilidades_informaticas
hi_nivel varchar(60) No
id_chabilad int(11) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
habilidades_personales
id_chabilidad int(11) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
idiomas
id_cat_idioma int(11) No
idioma_nivel varchar(45) No
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
menu
menu_nombre varchar(45) No
menu_descripcion varchar(45) No
menu_vista varchar(255) No
menu_status int(11) No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
rol
Índices
Nombre de la
Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
clave
id_rol 0 A No
PRIMARY BTREE Sí No
Rol_permiso_id_rol_permiso 0 A No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
id_rol_permiso 0 A No
PRIMARY BTREE Sí No
Menu_id_menu 0 A No
usuario
Índices
Nombre de la clave
Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
idusuario 0 A No
Rol_id_rol 0 A No
PRIMARY BTREE Sí No
Rol_Rol_permiso_id_rol_permiso 0 A No
usuario_detalle_id_detalle_usuario 0 A No
Índices
Nombre de la clave Tipo Único Empaquetado Columna Cardinalidad Cotejamiento Nulo Comentario
6. Vista de Interacción
Consultar
Modificar
Vista Previa
Eliminar
Catálogos
Usuarios
Exportar a PDF
Breve descripción: El proceso consta de poder consultar datos del usuario y modificar roles.
Descripción paso a
paso: Consultar usuarios
1.1 El Admin teclea usuario y contraseña
1.2 La página valida rol
1.3 La página muestra la opción de ver la información de los usuarios
1.4 El Admin selecciona la información que desea consultar
1.5 La pagina retorna la consulta selecionada
Modificar Rol
2.1 Admin teclea los datos del usuario en especifico
Breve descripción: El proceso constará de la creación que estará conformada por módulos
(partes) del Curriculum vitae
Descripción paso a
paso: 1. Crear Nuevo
1.1 El usuario selecciona crear nuevo CV
1.2 La pagina muestra un formulario vacío
1.3 Usuario selecciona la información
1.4 Pagina valida información
1.5 Pagina guarda los cambios
2. Modificar
2.1 Pagina muestra CV guardados
2.2 Usuario selecciona CV a modificar
2.3 Pagina abre platilla
2.4 Usuario modifica campos
2.5 Pagina guarda cambios
3. Consultar
3.1 Pagina muestra CV guardados
3.2 Usuario selecciona CV
3.3 Pagina muestra CV
4. Eliminar
4.1 Pagina muestra CV guardados
4.2 Usuario selecciona CV a eliminar
4.3 Pagina abre platilla
4.4 Usuario selecciona borrar CV
4.5 Pagina guarda cambios
Ilustración 4 Diagrama de caso Exportar CV
Breve descripción: El proceso constará de mostrar posibles ofertas laborales de posibles a las
que podría aplicar de acuerdo con la información recabada
Descripción paso a 1. La página muestra ofertas de empleo a las que el usuario puede aplicar
paso: 2. Usuario selecciona una y este link redirige a la página originaria donde
está la información
Ilustración 6 Diagrama de caso Formato mail
Caso de uso: Formato mail
Breve descripción: El proceso constará de Da un formato para enviar el Curriculum vitae por
mail
Descripción paso a 1. Usuario selecciona la opción formato para envío de CV por mail
paso: 2. Pagina Genera texto
3. Pagina muestra texto listo para ser copiado
7. Vista de seguridad
El sistema CVitae cuenta con varios elementos de seguridad para su alojamiento y
operación, estos elementos son los siguientes:
Acceso:
Dependiendo del tipo de usuario es el nivel de acceso, vistas y opciones que
el usuario podrá ver.
Tipo de rol, CVitae distingue entre 2 tipos de acceso, el acceso de
administrador y el acceso de usuario
Lista de permisos, dependiendo del tipo de rol, este tendrá una lista de
permisos que le podrá permitir ver o no diferentes opciones.
Certificado ssl proporcionado por AWS para el uso del protocolo SSH
Usuario y contraseña de acceso, la contraseña viaja cifrada con sha1
La información es enviada por método post con encriptación md5, que
después el controlador de php descifra.
El login del sistema pide un usuario y contraseña que se envían para vereificar
si existen o no, viajan encriptados con la propiedad enctype de los form de
html.
Todas las vistas verifican si existe un usuario logueado, en caso contrario se
muestra un error 404.
Alojamiento:
Instancia EC2 de AWS(Amazon Web Services), esta instancia es
un servidor privado virtual, para acceder al servidor es necesario
de un usuario, contraseña y una clave ppk para autenticación por
ssh.
Para alojar archivos de imagen se usa una carpeta en la misma
instancia EC2 o se puede utilizar el servicio de buckets S3 pero
se tendrá que configurar una política para que los archivos solo
sean visibles por usuarios registrados.
La conexión a la instancia ec2 es por ssh y se restringe el acceso
por ip(publica).
8. Vista de Implementación
8.2 Componentes
8.3 Despliegue
Para tener una instalación propia del software se debe contar con lo
siguiente:
● Servidor físico o virtual con al menos 500 GB en disco duro, 8 GB de
memoria RAM, procesador AMD Epyc o Intel Xeon.
● Motor web, puede ser Apache, NGINX o IIS de Windows
● Conexión de internet de al menos 20 mb/s
8.4 Vista de Administración
Modificación: En caso de requerir alguna modificación o agregar alguna
funcionalidad el sistema está preparado para agregar dicho modulo ya
que el patrón de diseño lo permite.
Las acciones que puede ejecutar un usuario dependiendo del rol son:
1. Crear curriculum
2. Consultar curriculums
3. Eliminar curriculums
4. Modificar curriculums
5. Agregar usuarios
6. Modificar usuarios
7. Eliminar usuarios
8. Enviar email con curriculum
9. Exportar curriculum a PDF
10. Modificar los diferentes catálogos