Académique Documents
Professionnel Documents
Culture Documents
ASIGNATURA
Arquitectura de Desarrollo Web
GRUPO
9J7A
HORA
09:00-10:00
ALUMNO
PÉREZ DÍAZ JORGE ALBERTO
MAESTRO
ESTUDILLO RAMÍREZ JORGE
INTRODUCCIÓN __________________________________________________________________ 4
CRONOGRAMA DE ACTIVIDADES __________________________________________________ 5
DISEÑO DEL FRONTEND ___________________________________________________________ 5
Diseño del login y registro _____________________________________________________________ 8
Diseño página de usuario y administrador ______________________________________________ 9
Usuario _______________________________________________________________________________________ 9
Administrador _______________________________________________________________________________ 10
CONCLUSIÓN ___________________________________________________________________ 23
2
ÍNDICE DE TABLAS Y FIGURAS
3
INTRODUCCIÓN
4
CRONOGRAMA DE ACTIVIDADES
5
Imagen 2. Landing page
En esta primera parte del landing page, tiene Login por si el usuario ya tiene una
cuenta, o si no lo tiene y desea registrarse, puede crearla entrando a Singup.
6
Imagen 4. Tercera parte del landing page
7
A partir de la imagen 3 hasta la última, es el diseño general del landing page.
La imagen anterior, es el diseño del login que tendrá el usuario una vez que tenga
creada su cuenta, en el cual, para acceder, tendrá que ingresar su email y su
contraseña.
8
En caso de no tener una cuenta, se puede registrar en esta vista, el cual para poder
crearla se necesita ingresar su nombre, correo y contraseña.
Una vez registrados y logueados, esta será la página que verá el usuario. En la sección
de dashboard, es una vista general de sus tareas, donde tiene cuántas tareas por
hacer tiene el usuario, cuántas están hechas, tareas retrasadas y el total de tareas.
Y tiene tres tablas las cuales están divididas, por las tareas por hacer, las hechas y las
que tienen retraso. Solo para poder observarlas mejor.
9
Imagen 9. Manage tasks del usuario.
Aquí es donde los usuarios pueden crear, eliminar y editar sus tareas, para
posteriormente si desean exportar sus tareas en una hoja de cálculo.
Si se desea salir de su cuenta puede el usuario dar clic sobre el siguiente botón el cual
se encuentra en la parte superior derecha de la página.
Administrador
El administrador tendrá las mismas vistas que un usuario normal, como se muestra a
continuación:
10
Imagen 11. Diseño de página del administrador
Como se aprecia también tiene conteo de tareas por hacer, tareas con retraso, tareas
hechas, y total de tareas, además se agrega el conteo de número de usuarios
registrados.
El administrador solo tendrá en esa página una tabla de las tareas por hacer. Al
administrador se le agregó la sección de Manage Users.
11
En esta sección el administrador podrá ver qué usuarios están registrados, y tiene el
control sobre ellos. Puede eliminar, editar y crear usuarios. Además, también tiene la
funcionalidad de hacerse pasar por ellos.
El administrador puede crear, eliminar y actualizar sus tareas. También puede exportar
esas tareas a una hoja de cálculo. El administrador puede salirse de su cuenta
oprimiendo sobre el siguiente botón:
12
FUNCIONAMIENTO EN EL BACKEND
users
Nombre Tipo
id BIGINT(20)
name VARCHAR(255)
email VARCHAR(255)
email_verified_at TIMESTAMP
password VARCHAR(255)
remember_token VARCHAR(100)
created_at TIMESTAMP
updated_at TIMESTAMP
Tabla 1. Tabla users
Esta tabla es usada para poder hacer el registro de los usuarios, tanto usuarios
normales como administradores.
roles
Nombre Tipo
id BIGINT(20)
name VARCHAR(255)
created_at TIMESTAMP
updated_at TIMESTAMP
Tabla 2. Tabla roles
13
role_user
Nombre Tipo
id BIGINT(20)
role_id INT(10)
user_id INT(10)
created_at TIMESTAMP
updated_at TIMESTAMP
Tabla 3. Tabla role_user
Esta tabla es llenada cuando se crean los usuarios y además se les asigna un rol de
usuario. Entonces esta tabla es llenada a partir de la tabla users y la tabla role_user.
tasks
Nombre Tipo
id BIGINT(20)
user_id BIGINT(20)
name VARCHAR(255)
notes VARCHAR(255)
schedule DATE
status TINYINT(1)
created_at TIMESTAMP
updated_at TIMESTAMP
Tabla 4. Tabla tasks
Tabla utilizada para poder crear nuestras tareas en la página, se utiliza el nombre del
campo user_id ya que necesitamos el id del usuario para poder crear dicha tarea. Es
decir que ese campo es una llave foránea.
Sistema de login
Administrador
Se implementó un sistema de login, el cual existen administradores y usuarios normales.
Esto para poder llevar un mejor control de la página. Para su correcto funcionamiento
se realizó el diseño de la base de datos de acuerdo a las tablas 1, 2 y 3. El cuál la
diferencia que hay entre el administrador y el usuario, es que el administrador puede
crear usuarios, editarlos y eliminarlos. Como se muestra a continuación:
14
Imagen 15. Administrando usuarios.
15
Al crear el usuario, también el administrador puede darle un rol, ya sea de admin o
user.
16
En este caso solo se edita el nombre del usuario, dejando todos los campos como lo
tenía antes.
17
Personificar usuario
El administrador puede hacerse pasar por otro usuario dando clic sobre el último botón
de color verde.
El administrador puede ver todas las tareas que este usuario tenga, y si quiere detener
la personificación puede detenerlo oprimiendo sobre el botón de color amarillo de
lado derecho superior de la página.
18
Imagen 25. Usuario eliminado
Usuario
Aunque la funcionalidad de crear tareas la puede hacer tanto administrador como
usuario, lo haremos desde la perspectiva del usuario.
En el botón de “NEW TASK”, el usuario podrá crear una nueva tarea. Y tendrá que
llenar los siguientes campos:
19
Imagen 27. Creando tarea.
Dicha tarea se puede editar, dando clic sobre el botón morado con un lápiz de ícono.
20
Imagen 29. Editando tarea.
21
Al tener las tareas creadas en nuestra página, tendrán tres estados:
Exportar tareas
22
Para el administrador el nombre del archivo será tasksAdmin.csv.
CONCLUSIÓN
Para poder realizar de una forma mas ordenada y sin tener que regresar a hacer
alguna parte del proyecto, fue de mucha utilidad hacer antes un plan de cómo iba
a realizar el proyecto, para el cual se realizó un cronograma de actividades de
acuerdo a las necesidades y características que tiene el proyecto. Al final, el proyecto
se finalizó antes de lo esperado, dando a entender que el cronograma de actividades
hizo que el proyecto se pudiera desarrollar de una manera continua y sin dar pasos
hacia atrás sin tener que modificar algún o arreglar alguna parte del proyecto. Al final
del curso obtuve bastantes conocimientos acerca de cómo desarrollar páginas web
con Laravel, y me pareció bastante agradable aprenderlo y utilizarlo, ya que no tuvo
demasiada dificultad.
23