FC-FISC-1-8-2020
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE PROGRAMACIÓN DE COMPUTADORAS
PROYECTO
Facilitador: Ing. Marlina Sánchez Asignatura: Desarrollo WEB
Estudiante: _________________________ Fecha: __________________ Grupo: ___________
A. TÍTULO DE LA EXPERIENCIA Proyecto desarrollo Web
B. TEMAS: PHP+MariaDB+CSS+HTML
C. OBJETIVO(S):
• Diseñar, desarrollar y asegurar una aplicación web en PHP, siguiendo las mejores
prácticas de seguridad desde el inicio.
• Configurar y asegurar servidores de aplicación y la base de datos, aplicando medidas de
hardening para protegerlos contra amenazas. (opcional)
• Realizar análisis de seguridad, incluyendo escaneo de vulnerabilidades y análisis estático
de código, para identificar y corregir vulnerabilidades críticas.
D. METODOLOGÍA:
1. Trabajo en grupo
2. Diseñar una propuesta en Figma
3. Debe desarrollar una aplicación de WEB empleando PHP+ MariaDB +CSS+HTML y
proteger su sitio. (Cifrado en la conexión de la BD)
4. Implementar el Certificado de la conexión del Servidor Web https-TLS/SSL – utilizando
OpenSSL(opcional)
5. Desarrollar Stored Procedure a la hora de realizar consultas e inserciones a la base datos
6. Todo proyecto copiado será 0/100 la nota. No preste su proyecto.
E. ENUNCIADOS:
Desarrolle una aplicación de tema presentado en Figma donde emplee el lenguaje PHP
(Backend), los datos almacenados en la base datos MySQL, el Frontend en Html+CSS y la
aplicación de ciertas medidas de seguridad descritas en el documento.
F. PROCEDIMIENTO:
Para el éxito de este proyecto semestral de desarrollo web, les recomiendo encarecidamente que
tomen en consideración los siguientes pasos. Estos pasos han sido diseñados para guiarlos de
manera efectiva a lo largo del proceso y asegurarse de que aborden todas las áreas clave del
proyecto.
FC-FISC-1-8-2020
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE PROGRAMACIÓN DE COMPUTADORAS
PROYECTO
Fase 1: Planificación:
a. Definición de Objetivos: Establecer los objetivos y alcance del proyecto,
incluyendo la aplicación web a desarrollar y los servidores a configurar.
(son 2 uno para la BD y el otro para la aplicación).
b. Requisitos del Proyecto: Identificar y documentar los requisitos funcionales y no
funcionales de la aplicación web y los servidores.
c. Diseño Inicial: Crear un diseño inicial de la arquitectura de la aplicación web y la
configuración de los servidores.
d. Planificación del Proyecto: Elaborar un plan de proyecto que incluya un (objetivo,
Recursos(personal, equipo, tecnología), cronograma, asignación de
responsabilidades, seguimiento o control).
Fase 2: Desarrollo de Aplicación:
a. Entorno de Desarrollo: Configurar un entorno de desarrollo local que incluya un
servidor web, servidor de aplicaciones y base de datos.
b. Desarrollo Seguro: Desarrollar la aplicación web en PHP siguiendo buenas prácticas
de seguridad, como la validación de entradas y la prevención de vulnerabilidades
conocidas.
c. Pruebas de Desarrollo: Realizar pruebas unitarias para garantizar el funcionamiento
correcto de la aplicación.
Fase 3: Configuración de Servidores:
a. Servidor de Aplicación: Configurar el servidor de aplicación (Apache).
b. Servidor de Base de Datos: Configurar el servidor de base de datos MariaDB y
aplicar medidas de seguridad, como la restricción de accesos y la encriptación de
datos.(HASH).
Hay que recordar que debe poder tener acceso un admin y un usuario regular, para
cada uno se muestran ciertas opciones.
Fase 4: Seguridad, pruebas y soluciones
a. Escaneo de Vulnerabilidades: Utilizar herramientas de escaneo de vulnerabilidades
para identificar posibles problemas de seguridad en la aplicación web y los servidores.
b. Realice un posible ataque: implemente un comando o herramienta que ataque un sitio
web. (Revisar archivo de Excel de posibles casos). Recuerden las películas.
c. Corrección de Vulnerabilidades: Dialogue, diseñe una propuesta de solución al recibir
el informe de del escaneo o del ataque.
FC-FISC-1-8-2020
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE PROGRAMACIÓN DE COMPUTADORAS
PROYECTO
Fase 5: Presentación:
1. Documentación Completa: Crear documentación detallada que incluya el diseño de la
aplicación, la configuración de los servidores, los resultados de las pruebas y las medidas
de mitigación implementadas. (Cómo podría resolver una vulnerabilidad).
2. Presentación y Demostración: Preparar una presentación para el comité evaluador,
demostrando la aplicación y discutiendo las medidas de seguridad implementadas.
Fase 6: Informe Final:
1. Informe de Seguridad: Preparar un informe final que resuma el proyecto, destacando las
lecciones aprendidas y las recomendaciones de seguridad
Arquitectura cliente/servidor
FC-FISC-1-8-2020
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE PROGRAMACIÓN DE COMPUTADORAS
PROYECTO
G. RECURSOS:
Visual Studio Code, Xammp->MariaDB , Apache PHP, Videos o tutoriales de YouTube
H. RESULTADOS ( DE ACUERDO CON LA ACTIVIDAD):
Debe entregar un informe el cual debe contener hoja de presentación, introducción, índice,
Imágenes de las pantallas, conclusión, además de entregar en un zip el proyecto, con un respaldo
de la base datos utilizada el proyecto.
I. BIBLIOGRAFIA:
✓ Lemay, L., & Colburn, R. (2010). Sams Teach Yourself Web Publishing With HTML and CSS
in One Hour a Day (6.a ed.). Sams.
✓ Lozano, G. F. J. C. G. (2017). Desarrollo web con PHP y MySQL. Edición 2018 (1.a ed.).
ANAYA MULTIMEDIA.
✓ Pollock, J. (2019). Javascript: A Beginner’s Guide, Fifth Edition (5th ed.). McGraw-Hill
Companies.
✓ Puertas, J. P. (2006). Creación de un portal con PHP y MySQL. Alfaomega.
✓ Thomson, L. W. (2017). Desarrollo Web con PHP y MySQL. Quinta Edición (1.a ed.). ANAYA
MULTIMEDIA.
Sitios Web
✓ [Link]
funcionales/
✓ [Link] (Pruebas Unitarias)
✓ [Link] (SSL)
FC-FISC-1-8-2020
UNIVERSIDAD TECNOLÓGICA DE PANAMÁ
FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES
DEPARTAMENTO DE PROGRAMACIÓN DE COMPUTADORAS
PROYECTO
J. RÚBRICAS:
Aspectos para Evaluar Puntaje Máximo
1. Figma 10
• Objetivos, alcance, servidores, diseños.
2. Desarrollo de la Aplicación Web. 30
Inserción, buscar, eliminar o actualizar.
Protección de sus páginas.
3. Inserción de una vulnerabilidad que podría sufrir una 20
página y ejecución de ataque a otra página.
Escaneo
1. Exposición (Charla por el estudiante) 10
2. Informe 20
3. Vestimenta -Formal 10
Total 100
Fecha de entrega límite: 5 días después de semestral.