PLAN DE TRABAJO DEL
ESTUDIANTE
Trabajo Final
DATOS DEL ESTUDIANTE
Apellidos y Nombres: ID:
Dirección Zonal/CFP:
Carrera: Semestre:
Curso/ Mód. Formativo:
Tema de Trabajo Final: Administrar sistemas de información Backend
1. INFORMACIÓN
Identifica la problemática del caso práctico propuesto.
TecnoSoluciones S.A. es una empresa de tecnología que se especializa en
brindar soluciones de software a pequeñas y medianas empresas.
Actualmente, la empresa se enfrenta a una limitación en su sistema interno de
gestión de clientes y proyectos, el cual carece de un acceso adecuado a través
de una plataforma web. Los empleados solo pueden acceder al sistema desde
las computadoras de la oficina, lo que limita la flexibilidad del trabajo remoto y
la gestión de datos en tiempo real.
TecnoSoluciones S.A. ha decidido desarrollar un nuevo Sistema de Gestión de
Proyectos accesible a través de la web, con el fin de optimizar la asignación de
tareas, el control de proyectos, y la gestión de clientes. Los desarrolladores han
identificado que el sistema debe contar con un login seguro para evitar accesos
no autorizados, permitir la inserción y modificación de datos de clientes y
proyectos desde una interfaz web, y generar reportes en PDF para ser
entregados a la gerencia.
Trabajo Final
Identifica propuesta de solución y evidencias.
La propuesta consiste en desarrollar un Sistema de Gestión de Proyectos web,
organizado bajo el modelo MVC, que permita administrar de manera más
ordenada y eficiente la información de clientes y tareas. La plataforma estará
disponible de forma remota, brindando seguridad y facilidad de acceso para los
usuarios autorizados.
Evidencias del Proyecto
Para demostrar que el sistema cumple con los requisitos técnicos y
funcionales, se consideran las siguientes evidencias:
Acceso Seguro al Sistema:
El sistema contará con un inicio de sesión protegido mediante PHP y PDO,
evitando el acceso de personas no autorizadas y garantizando la seguridad de
la información.
Interfaz de Gestión Intuitiva:
Se desarrollarán pantallas web amigables que permitan registrar, editar y
visualizar datos de manera sencilla dentro de la base de datos MySQL.
Conexión Segura con la Base de Datos:
La aplicación utilizará una capa de abstracción de datos que facilite una
comunicación más segura y organizada entre el sistema y la base de datos.
Generación de Reportes en PDF:
El sistema tendrá la capacidad de exportar automáticamente la información de
los proyectos en documentos PDF, facilitando la presentación y el control
gerencial.
Estructura Modular MVC:
La solución estará organizada mediante el patrón MVC, permitiendo separar la
lógica del sistema, la interfaz visual y el acceso a datos para mejorar el
mantenimiento y escalabilidad del proyecto.
Trabajo Final
Respuestas a preguntas guía
Durante el análisis y estudio del caso práctico, debes obtener las respuestas a las
interrogantes:
¿Cómo se configura un entorno de desarrollo web con un servidor
Pregunta 01:
local y base de datos MySQL?
Se utiliza un software que integre un servidor web (Apache) y un motor de base
de datos (MySQL), como XAMPP, WAMP o Laragon. La configuración implica
activar estos servicios y acceder a herramientas como phpMyAdmin para crear la
base de datos del sistema.
Pregunta 02: ¿Qué ventajas ofrece el uso del patrón de diseño MVC en el
desarrollo de aplicaciones web?
El patrón Modelo Vista Controlador separa la lógica de negocio de la interfaz de
usuario. Sus principales ventajas son:
Escalabilidad: Facilita el crecimiento del sistema sin desordenar el código.
Mantenimiento: Permite hacer cambios en la base de datos o en la vista de
forma independiente.
Reutilización: Facilita el uso de código en diferentes partes del proyecto.
Pregunta 03: ¿Cómo se implementa un sistema de autenticación seguro
utilizando PHP y PDO?
Se implementa mediante un formulario de login que envía los datos a un
controlador. La seguridad se garantiza usando PDO para realizar consultas
preparadas que evitan la inyección SQL y utilizando funciones como password
hash para encriptar contraseñas.
Pregunta 04: ¿De qué manera se pueden agregar, modificar y visualizar
registros en una base de datos MySQL desde una interfaz web?
Se realiza conectando la interfaz web a la base de datos MySQL a través de PHP:
Agregar/Modificar: Se usan formularios HTML y sentencias SQL INSERT o
UPDATE.
Visualizar: Se ejecutan consultas SELECT y los resultados se muestran en
tablas dinámicas dentro de la plataforma.
Pregunta 05: ¿Cómo se pueden generar reportes en formato PDF desde una
aplicación web desarrollada en PHP?
Se logra integrando librerías externas de PHP como FPDF, Dompdf o TCPDF.
Estas herramientas permiten capturar los datos de los proyectos y clientes desde
Trabajo Final
la base de datos para generar un archivo con formato profesional listo para
impresión o envío por correo.
Trabajo Final
2. PLANIFICACIÓN DEL TRABAJO
Cronograma de actividades:
CRONOGRAMA
N° ACTIVIDADES
Lista de recursos necesarios:
1. MÁQUINAS Y EQUIPOS
Descripción Cantidad
2. HERRAMIENTAS E INSTRUMENTOS
Descripción Cantidad
3. MATERIALES E INSUMOS
Trabajo Final
Descripción Cantidad
Trabajo Final
3. DECIDIR PROPUESTA
Describe la propuesta determinada para la solución del caso práctico
PROPUESTA DE SOLUCIÓN
Sistema de Login Seguro
El sistema contará con un módulo de autenticación segura que permitirá a los
usuarios registrarse e iniciar sesión mediante una interfaz web. Este módulo
tendrá como finalidad proteger la información del sistema y restringir el acceso
únicamente a usuarios autorizados.
Para el registro de usuarios, se solicitarán datos como nombre, correo
electrónico, usuario y contraseña. La contraseña será almacenada de forma
segura utilizando técnicas de encriptación en PHP para evitar el acceso indebido
a la información.
El inicio de sesión se realizará mediante la validación del usuario y contraseña
registrados en la base de datos MySQL. La conexión con la base de datos se
desarrollará utilizando PDO (PHP Data Objects), permitiendo una conexión más
segura y reduciendo riesgos de ataques como la inyección SQL.
Además, el sistema implementará sesiones en PHP para mantener la
autenticación del usuario mientras navega dentro de la plataforma. Si un usuario
intenta acceder a páginas restringidas sin haber iniciado sesión, el sistema
bloqueará el acceso y lo redireccionará automáticamente al formulario de login.
El sistema también contará con mecanismos de protección contra accesos no
autorizados, validando correctamente los datos ingresados y limitando el acceso
únicamente al personal registrado en la plataforma.
Funciones principales del Login Seguro
Registro de usuarios.
Inicio y cierre de sesión.
Validación de usuarios.
Protección de contraseñas.
Uso de sesiones en PHP.
Conexión segura mediante PDO.
Restricción de acceso a usuarios no autorizados.
Tecnologías utilizadas
PHP
MySQL
Trabajo Final
PDO
HTML
CSS
Arquitectura MVC
Ejemplo de funcionamiento
El usuario ingresa su usuario y contraseña.
El sistema verifica los datos en la base de datos.
Si los datos son correctos, se crea una sesión.
El usuario puede acceder al sistema.
Si los datos son incorrectos, el acceso es denegado.
Gestión de Clientes y Proyectos
El sistema permitirá administrar de manera eficiente la información de clientes y
Trabajo Final
proyectos mediante una interfaz web dinámica y accesible. Para ello, se
implementará un módulo de gestión que facilitará el registro, modificación,
visualización y eliminación de datos utilizando operaciones CRUD (Crear, Leer,
Actualizar y Eliminar).
En el módulo de clientes, los usuarios podrán registrar nuevos clientes
ingresando información como nombres, correo electrónico, número telefónico,
dirección y empresa. Asimismo, el sistema permitirá editar la información cuando
sea necesario, eliminar registros antiguos y visualizar la lista completa de clientes
registrados dentro de la plataforma.
Por otro lado, el módulo de proyectos permitirá registrar nuevos proyectos
asociados a un cliente específico, indicando datos como nombre del proyecto,
descripción, fecha de inicio, fecha de entrega y estado del proyecto. Los usuarios
también podrán actualizar la información de los proyectos, visualizar su progreso
y eliminar registros cuando corresponda.
Toda la información será almacenada en una base de datos MySQL y gestionada
mediante PHP y PDO, garantizando una conexión segura y organizada. Además,
la interfaz web permitirá una interacción sencilla y rápida para mejorar la
administración de datos dentro de la empresa.
Operaciones CRUD implementadas
Crear
Permite registrar nuevos clientes y proyectos en la base de datos.
Leer
Permite visualizar la información almacenada mediante tablas y formularios en la
interfaz web.
Actualizar
Permite modificar los datos de clientes y proyectos cuando exista algún cambio o
actualización.
Eliminar
Permite borrar registros que ya no sean necesarios en el sistema.
Funciones principales del módulo
Registro de clientes.
Edición de clientes.
Eliminación de clientes.
Visualización de clientes.
Registro de proyectos.
Modificación de proyectos.
Visualización de proyectos.
Trabajo Final
Administración de datos mediante CRUD.
Tecnologías utilizadas
PHP
MySQL
PDO
HTML
CSS
Arquitectura MVC
Ejemplo de funcionamiento
El usuario accede al módulo de clientes o proyectos.
Completa un formulario con la información requerida.
El sistema almacena los datos en MySQL.
Los registros se muestran automáticamente en la interfaz web.
El usuario puede editar o eliminar la información cuando sea necesario.
Base de Datos con MySQL y PDO
El sistema utilizará una base de datos MySQL para almacenar toda la
información relacionada con usuarios, clientes y proyectos. La conexión entre la
Trabajo Final
aplicación web y la base de datos se realizará mediante PHP utilizando PDO
(PHP Data Objects), lo cual permitirá una conexión más segura, eficiente y
compatible con distintos gestores de bases de datos.
PDO será implementado como una capa de abstracción para facilitar la ejecución
de consultas SQL y mejorar la seguridad del sistema frente a posibles ataques de
inyección SQL. Además, permitirá manejar errores de conexión de manera más
organizada y profesional.
La base de datos estará estructurada mediante tablas relacionadas entre sí para
mantener un mejor control de la información. Entre las principales tablas se
encuentran:
Tabla Usuarios
Esta tabla almacenará la información de los usuarios autorizados para acceder al
sistema.
Campos principales:
id usuario
nombre
correo
usuario
contraseña
rol
Tabla Clientes
Permitirá registrar y administrar la información de los clientes de la empresa.
Campos principales:
id cliente
nombre cliente
empresa
correo
teléfono
dirección
Tabla Proyectos
Almacenará la información de los proyectos registrados dentro del sistema.
Campos principales:
id proyecto
nombre proyecto
descripción
Trabajo Final
fecha inicio
fecha entrega
estado
id cliente
La relación entre las tablas permitirá asociar varios proyectos a un mismo cliente,
facilitando la organización y administración de la información.
La conexión mediante PDO se desarrollará utilizando sentencias preparadas
(Prepared Statements), las cuales ayudarán a proteger el sistema contra accesos
maliciosos y consultas inseguras. Asimismo, el sistema podrá realizar
operaciones CRUD de manera eficiente y segura.
Funciones principales de la base de datos
Almacenar información de usuarios.
Registrar clientes y proyectos.
Relacionar clientes con proyectos.
Permitir consultas seguras mediante PDO.
Facilitar operaciones CRUD.
Mantener la integridad y seguridad de los datos.
Tecnologías utilizadas
PHP
MySQL
PDO
SQL
Arquitectura MVC
Ejemplo de funcionamiento
El usuario registra información desde la interfaz web.
PHP envía los datos mediante PDO.
MySQL almacena la información en las tablas correspondientes.
El sistema recupera y muestra los datos cuando el usuario lo solicita.
Toda la información se mantiene organizada y segura dentro de la base de
datos.
Generación de Reportes PDF
El sistema contará con un módulo especializado en la generación de reportes en
formato PDF, permitiendo exportar información importante de clientes y
proyectos para su impresión, almacenamiento o envío digital a la gerencia de la
empresa.
Trabajo Final
La generación de reportes facilitará el control y seguimiento de la información
almacenada en el sistema, mejorando la organización y la toma de decisiones
dentro de la empresa. Los reportes serán creados automáticamente a partir de
los datos registrados en la base de datos MySQL.
El sistema permitirá generar diferentes tipos de reportes, tales como listas de
clientes, estado de proyectos, proyectos finalizados, proyectos en proceso y
reportes generales para la administración. Estos documentos serán exportados
en formato PDF utilizando librerías de PHP especializadas para la creación de
archivos PDF.
Cada reporte incluirá información organizada en tablas, encabezados, fechas y
detalles relevantes para garantizar una presentación clara y profesional. Además,
el usuario podrá visualizar el reporte antes de descargarlo o imprimirlo.
Tipos de reportes generados
Reporte de Clientes
Mostrará:
Lista de clientes registrados.
Información de contacto.
Empresa asociada.
Datos generales del cliente.
Reporte de Proyectos
Mostrará:
Nombre del proyecto.
Cliente asignado.
Fecha de inicio y entrega.
Estado del proyecto.
Descripción del proyecto.
Reportes para Gerencia
Permitirá visualizar:
Cantidad de proyectos registrados.
Proyectos finalizados y pendientes.
Información resumida para la toma de decisiones.
La exportación de reportes en PDF mejorará la administración documental de la
empresa y facilitará el acceso a información importante desde cualquier lugar.
Funciones principales del módulo PDF
Generación automática de reportes.
Trabajo Final
Exportación de información en PDF.
Visualización de reportes.
Impresión de documentos.
Organización de datos en tablas.
Reportes de clientes y proyectos.
Tecnologías utilizadas
PHP
MySQL
PDO
Librerías PDF en PHP
HTML
CSS
Arquitectura MVC
Ejemplo de funcionamiento
El usuario selecciona el tipo de reporte.
El sistema obtiene la información desde MySQL.
PHP procesa los datos y genera el documento PDF.
El reporte se muestra en pantalla.
El usuario puede descargarlo o imprimirlo.
Arquitectura MVC
El sistema será desarrollado utilizando la arquitectura MVC (Modelo – Vista –
Controlador), la cual permite organizar el proyecto de manera estructurada y
eficiente. Este patrón de diseño facilita la separación de responsabilidades dentro
de la aplicación, mejorando el mantenimiento, la escalabilidad y la organización
del código.
La arquitectura MVC divide el sistema en tres componentes principales: Modelo,
Trabajo Final
Vista y Controlador. Cada uno cumple una función específica dentro del
desarrollo de la aplicación web.
Modelo
El modelo es el encargado de gestionar ’a información y la lógica relacionada con
la base de datos. En esta capa se realizan las consultas SQL, conexiones
mediante PDO y operaciones CRUD sobre las tablas del sistema.
Funciones principales del Modelo:
Conexión con MySQL.
Consultas SQL.
Registro de datos.
Actualización de información.
Eliminación de registros.
Validación de datos.
Ejemplo:
Clase Usuario Modelo
Clase Cliente Modelo
Clase Proyecto Modelo
Vista
La vista corresponde a la interfaz gráfica del sistema, es decir, las páginas y
formularios que interactúan con el usuario. Aquí se mostrará toda la información
proveniente del sistema de manera organizada y visual.
Funciones principales de la Vista:
Mostrar formularios.
Visualizar tablas de datos.
Mostrar mensajes del sistema.
Permitir interacción del usuario.
Ejemplo:
Formulario de login.
Página de clientes.
Página de proyectos.
Reportes PDF visuales.
Controlador
El controlador actúa como intermediario entre el Modelo y la Vista. Se encarga de
recibir las acciones del usuario, procesar la lógica del sistema y enviar la
Trabajo Final
información correspondiente a la vista.
Funciones principales del Controlador:
Procesar solicitudes del usuario.
Validar información.
Coordinar Modelo y Vista.
Gestionar sesiones.
Controlar el flujo del sistema.
Ejemplo:
Usuario Controlar.
Cliente Controlar.
Proyecto Controlar.
Funcionamiento de la arquitectura MVC
El usuario interactúa con la interfaz web.
La solicitud es enviada al Controlador.
El Controlador procesa la información.
El Modelo consulta la base de datos.
Los resultados regresan al Controlador.
El Controlador envía la información a la Vista.
La Vista muestra los datos al usuario.
Ventajas de utilizar MVC
Mejor organización del proyecto.
Separación de responsabilidades.
Código más limpio y ordenado.
Facilidad para realizar mantenimiento.
Mayor seguridad y escalabilidad.
Desarrollo más profesional y eficiente.
Tecnologías utilizadas
PHP
MySQL
PDO
HTML
CSS
Trabajo Final
Arquitectura MVC
Programación Orientada a Objetos
Ejemplo práctico
Cuando un usuario registra un nuevo cliente:
La Vista muestra el formulario.
El Controlador recibe los datos enviados.
El Modelo guarda la información en MySQL mediante PDO.
Finalmente, la Vista muestra el registro actualizado al usuario.
Trabajo Final
Trabajo Final
4. EJECUTAR
Resolver el caso práctico, utilizando como referencia el problema propuesto y
las preguntas guía proporcionadas para orientar el desarrollo.
Fundamentar sus propuestas en los conocimientos adquiridos a lo largo del
curso, aplicando lo aprendido en las tareas y operaciones descritas en los
contenidos curriculares.
INSTRUCCIONES: Ser lo más explícito posible. Los gráficos ayudan a transmitir mejor
las ideas. Tomar en cuenta los aspectos de calidad, medio ambiente y SHI.
NORMAS TÉCNICAS -
OPERACIONES / PASOS / SUBPASOS ESTANDARES / SEGURIDAD /
MEDIO AMBIENTE
Norma de Calidad:
1. Configuración del entorno de desarrollo: Asegurar que las
Instalar y activar Apache y MySQL en el versiones de software
servidor local (XAMPP). sean compatibles con el
proyecto.
Seguridad de la
Información: Aplicar
2. Diseño y creación de la base de datos: Crear las
restricciones de integridad
tablas de clientes y proyectos en MySQL.
para evitar pérdida de
datos.
Estándar Técnico: Seguir
3. Implementación de la arquitectura MVC: Crear el patrón de diseño para
carpetas para Modelos, Vistas y Controladores. asegurar un código
escalable y ordenado.
Seguridad informática:
Proteger contra
4. Programación del CRUD: Crear formularios web
inyecciones SQL y
para insertar, modificar y listar datos de clientes.
encriptar contraseñas de
acceso.
Usabilidad: Diseñar
5. Generación de Reportes PDF: Integrar la librería interfaces claras para
para extraer datos y generar documentos para reducir errores humanos
gerencia. durante el ingreso de
datos.
Medio Ambiente:
6. Pruebas y despliegue local: Verificar que todas las Promover el uso de
funciones operen correctamente antes de la reportes digitales para
entrega. reducir el consumo
innecesario de papel.
Salud y Seguridad (SHI):
7. Generación de Reportes PDF: Integrar la librería Mantener una postura
para extraer datos y generar documentos para ergonómica adecuada
gerencia. durante las horas de
programación.
Trabajo Final
[NOMBRE DEL TEMA DEL TRABAJO FINAL]
[APELLIDOS Y NOMBRES] [ESCALA]
DIBUJO / ESQUEMA / DIAGRAMA DE PROPUESTA
(Adicionar las páginas que sean necesarias)
Trabajo Final
5. CONTROLAR
Verificar el cumplimiento de los procesos desarrollados en la propuesta de solución
del caso práctico.
NO
EVIDENCIAS CUMPLE
CUMPLE
¿Se identificó claramente la problemática del caso ☐ ☐
práctico?
¿Se desarrolló las condiciones de los requerimientos ☐ ☐
solicitados?
¿Se formularon respuestas claras y fundamentadas a ☐ ☐
todas las preguntas guía?
¿Se elaboró un cronograma claro de actividades a ☐ ☐
ejecutar?
¿Se identificaron y listaron los recursos (máquinas, ☐ ☐
equipos, herramientas, materiales) necesarios para
ejecutar la propuesta?
¿Se ejecutó la propuesta de acuerdo con la planificación ☐ ☐
y cronograma establecidos?
¿Se describieron todas las operaciones y pasos ☐ ☐
seguidos para garantizar la correcta ejecución?
¿Se consideran las normativas técnicas, de seguridad y ☐ ☐
medio ambiente en la propuesta de solución?
¿La propuesta es pertinente con los requerimientos ☐ ☐
solicitados?
¿Se evaluó la viabilidad de la propuesta para un ☐ ☐
contexto real?
Trabajo Final
6. VALORAR
Califica el impacto que representa la propuesta de solución ante la situación
planteada en el caso práctico.
PUNTAJE
CRITERIO DE DESCRIPCIÓN DEL PUNTUACIÓN CALIFICADO
EVALUACIÓN CRITERIO MÁXIMA POR EL
ESTUDIANTE
Claridad en la
Identificación del
identificación del 3
problema
problema planteado.
La propuesta
responde
Relevancia de la adecuadamente al
propuesta de problema planteado 8
solución y es relevante para
el contexto del caso
práctico.
La solución es
técnicamente
factible, tomando en
Viabilidad técnica 6
cuenta los recursos
y conocimientos
disponibles.
La solución cumple
con todas las
Cumplimiento de
normas técnicas de 3
Normas
seguridad, higiene y
medio ambiente.
PUNTAJE TOTAL 20
Trabajo Final