Está en la página 1de 32

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

(Universidad del Perú, DECANA DE AMÉRICA)

FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA

PROYECTO

“Nombre del proyecto”


CURSO : SISTEMAS DISTRIBUIDOS

PROFESOR : SOTELO BEDON, ADOLFO MARCOS

INTEGRANTES:

● Cancho Yupanqui Evison 17200058


● Aroni Carbajal Sergio Abel 17200049
● Anton Dueñas Bryan Enrique 17200215
● Cabrera Ticliahuanca Joel Guillermo 17200141
● Carrillo Delgado Carlos Aaron 17200061

LIMA – PERÚ

2021
1. IDEANDO EL NEGOCIO
1.1. MOTIVACIÓN
Se tiene la necesidad de mejorar el sistema educativo del país, enfocándonos
principalmente en el docente y la falta de un control óptimo de asistencias,
así como la pobre gestión de actividades.

Eso es necesario por 3 razones:

1.1.1.
1.1.2. La gran diversidad y desigualdad que existe en la educación
de nuestro país.
1.1.3. La desorganización existente en las actividades de los
docentes y sus tareas.
1.1.4. La falta de control por parte del docente con el alumno.
1.2. RETO
Contar con una plataforma web que permita ayudar al docente, un mayor
seguimiento sobre el desempeño académico del alumno. Los sistemas
académicos en el país tienen un significativo déficit en cantidad y calidad.
Siguen siendo lineal, pasivo y un con un exceso de pasos y tiempo en la
generación de reportes de estadísticas sobre el desempeño de los alumnos..
Este reto aborda el marco de la Agenda 2030 y los ODS, en específico del
punto 4 de la ODS: Educaciòn de Calidad.

1.3. SEGMENTO DE CLIENTES


Se identificó un segmento de clientes para la solución que se desarrollará.
Estos son los docentes de primaria y secundaria que realizan el seguimiento
del desempeño académico de sus estudiantes. Para estos clientes es
importante la plataforma web para poder evaluar eficazmente al alumno.

1.4. PROPUESTA DE VALOR


Se tienen las siguientes propuestas de valor:
1.4.1. Principalmente se propone el desarrollo de una plataforma web que
permita ayudar al docente a realizar un buen seguimiento del
desempeño académico del estudiante de primaria y secundaria.
1.4.2. Se propone también un acceso rápido a la plataforma y evitar una
ralentización en el desarrollo de las tareas del docente en la
plataforma, como por ejemplo, obtener reportes de los alumnos
rápidamente. Para ello se implementará un chatbot. Este chatbot es
un programa informático que hace posible una conversación con un
bot usando inteligencia artificial. Para nuestro cliente, el chatbot lo
ayudará para obtener reportes de estudiantes y navegar rápido por la
plataforma.

1.5. CANALES
El canal con el que nos permite llegar a los clientes es la misma plataforma
web. La plataforma presenta distintas formas para la comunicación con los
clientes.

1.6. RELACIÓN CON LOS CLIENTES


Una de las maneras en cómo los clientes se relacionan con nosotros es
mediante el soporte técnico. Si la plataforma presenta algunas fallas, los
docentes se comunicaran con el soporte técnico. La información de contacto
se pondrá en la plataforma web.
Otra manera es mediante la comunicación con nosotros directamente, los
clientes utilizan la información de contacto publicada en la plataforma web.
Se contactan con nosotros por si se tiene alguna recomendación o duda con
respecto a la aplicación web.
Por último, se podrán relacionar con nosotros mediante el chat bot. Este
último les ayudará a los clientes si tienen dudas o si quieren realizar alguna
tarea.

1.7. FLUJO DE INGRESOS


Los ingresos se obtienen mediante la suscripción de colegios a la aplicación
web, es decir, aquellos colegios que quieran usar los servicios de la
plataforma para el seguimiento de sus alumnos, tendrán que pagar por la
suscripción. En caso de los colegios estatales, el estado pagará todo .

1.8. RECURSOS CLAVE


Los recursos clave que se necesitan son los siguientes:
1.8.1. Una base de datos
1.8.2. Analistas, programadores y recursos informáticos necesarios.
1.8.3. Watson Assistant de IBM. Este es un servicio que nos proporciona un
chatbot con inteligencia artificial.
1.9. ACTIVIDADES CLAVE
Se identificó las siguientes actividades claves correspondientes a las
propuestas de valor:

1.9.1. Gestionar asistencia


1.9.2. Gestionar tareas
1.9.3. Generar reportes académicos de los alumnos (semanal y mensual).
1.9.4. Actualización y mantenimiento de la plataforma web para su buen
funcionamiento.
1.10. SOCIOS CLAVE
Se identificó como socios clave a los siguientes:

1.10.1. Compañías que nos brindan el servicio de almacenamiento en la nube


1.10.2. Colegios privados y públicos para obtener información. Y
1.10.3. Empresas que brinden servicio de internet ya que se realizará una
aplicación web.
1.11. ESTRUCTURA DE COSTES
Los principales costos identificados son los siguientes:

1.11.1. Desarrollo y mantenimiento de la plataforma.


1.11.2. Recursos humanos (programadores).

2. MODELANDO EL NEGOCIO
3. PROTOTIPADO DE LA APLICACIÓN
3.1. SKETCH

Esta es el sketch para el login


Estas son las tablas que se tiene pensado utilizar para mostrar la información
tanto de alumnos, grados y docentes
Formularios para agregar alumnos, docentes y grados
3.2. WIREFRAMES

● Login de docente

● Lista de docentes
● Formulario para agregar docentes

● Perfil de docente
● Asistencia de alumnos

● Lista de grados
● Formulario para agregar grados

3.3. MOCKUPS

● Login
● Estado general de asistencia del alumno

● Lista de docentes
● Lista de grados

● Agregar grados
4. MODELO EMPRESARIAL

● Diagrama de componentes
● Diagrama de clases
● Diagrama de paquetes
5. RNF - CIBERSEGURIDAD
● Requisitos no funcionales

❖ Seguridad
● Contraseñas encriptadas.
● El administrador del sistema es el único que maneja toda la
información.
❖ Escalabilidad
● Estructura de archivos organizada.
● Uso de componentes.
❖ Rendimiento
● Optimizacion de codigo.
● Reducción del tiempo de respuesta del sistema.
❖ Accesibilidad
● El sistema permitirá el acceso de los docentes y el
administrador.

❖ Portabilidad
● Garantizar que pueda ser interpretado por cualquier
navegador.
❖ Usabilidad
● Manejo de errores.
● Interfaz de usuario agradable.
❖ Mantenibilidad
● Se estructurará el código de forma consistente, ordenada y
predecible.
6. PERFILES, METODOLOGÍAS Y HERRAMIENTAS
6.1. Perfiles
Se identifican los siguientes perfiles basados en las funciones y
requerimientos del proyecto. Por lo tanto las personas asignadas a dichos
perfiles tienen las competencias y conocimientos adecuados para cubrir el
perfil requerido.

6.1.1. Scrum Master


Es el facilitador de proyectos, es la figura que lidera los equipos en la
gestión ágil de proyectos. Por lo tanto este perfil es vital para el
proceso de desarrollo de la aplicación propuesta. Este perfil está
basado en la metodología ágil que se describirá posteriormente.

6.1.2. Analista de datos


El analista de datos es el perfil profesional que transforma los datos
en información para poder llevar a cabo una toma de decisiones más
completa. Será vital para generar informes que muestren información
valiosa.

6.1.3. Desarrollador
En informática, un desarrollador (al que con frecuencia también se
conoce como analista-programador), es un especialista en informática
que es capaz de concebir y elaborar sistemas informáticos. Para el
proyecto se requerirán tanto desarrolladores frontend como backend
para poder implementar la aplicación web.

6.2. Metodologías
6.2.1. Metodología Scrum
Se eligió esta metodología ágil ya que es multidisciplinar y
autoorganizado. Esto quiere decir que permitirá gestionar el trabajo
de manera eficaz y no depende de terceras partes para realizar
aquello. Por otra parte, todos los miembros del equipo scrum
mantienen una actitud colaborativa, ya que, el resultado del proyecto
es responsabilidad de todos. Además permite el desarrollo
incremental de los requisitos del proyecto en bloques temporales
cortos y fijos.
6.3. Herramientas
Se usaron las siguientes herramientas de desarrollo para elaborar la
aplicación web:
a. Backend
● PHP
● MySQL
● Apache
b. Frontend
● HTML
● CSS
● Javascript
c. Tecnologías Exponenciales
● La nube (Clever Cloud y Heroku)
● Inteligencia artificial (IBM Watson Assistant)
7. TRANSACCIONES DISTRIBUIDAS
Una transacción distribuida es un conjunto de instrucciones de una aplicación que
actualizan los datos en, al menos, dos servidores. Para prevenir la aparición de
problemas de integridad y de coherencia de datos en caso de validación incompleta,
deben implementarse medios de prevención y corrección de errores.

En nuestro proyecto tenemos implementado este tipo de transacciones como


veremos en las siguientes imágenes.

A continuación vemos la lista de alumnos, ahora lo que haremos será crear un nuevo
alumno y para evidenciar la transacción distribuida mostraremos la lista de alumnos
con el alumno agregado desde otro usuario conectado al sistema.
Ahora en la vista de otro usuario conectado al sistema observamos lo siguiente.

8. TECNOLOGÍAS USADAS EN EL PROYECTO


8.1. INTELIGENCIA ARTIFICIAL
La Inteligencia Artificial (IA) es la combinación de algoritmos planteados con
el propósito de crear máquinas que presenten las mismas capacidades que el
ser humano. Una tecnología que todavía nos resulta lejana y misteriosa, pero
que desde hace unos años está presente en nuestro día a día a todas horas.

Pero la IA no es solo organizar una secuencia de pasos asignados, sino


también enseñarlas a solucionar problemas y a tomar decisiones. Para
lograrlo, la se basa en cuatro pilares:

● Algoritmos genéticos. Similares a la secuencia de pasos con la que se


forma el ADN.
● Redes neuronales artificiales. Con nodos de conexión que simulan el
cerebro humano.
● Razonamiento lógico. Equiparable al pensamiento abstracto.
● Búsqueda del estado solicitado. Eligiendo entre las distintas
posibilidades, algo similar a las decisiones que debe evaluar un
ajedrecista antes de hacer un movimiento.

CHATBOT
Un chatbot es un programa que usa IA para llevar interacciones con humanos
utilizando lenguaje natural en texto y/o audio. Los usuarios pueden hacer preguntas,
realizar solicitudes, dar información e interactuar de acuerdo a sus necesidades.

WATSON ASSITANT
Watson Assistant es un producto de inteligencia artificial de IBM que le permite
crear, entrenar e implementar interacciones conversacionales en cualquier
aplicación, dispositivo o canal.

Watson Assistant ofrece más. Sabe cuándo buscar una respuesta de una base de
conocimiento, cuándo pedir aclaraciones y cuándo transferir usuarios a un agente
humano. Watson Assistant se puede implementar en cualquier entorno en la nube o
local, lo que significa que la IA más inteligente finalmente está disponible en
cualquier lugar donde la necesite.

TUTORIAL
En este tutorial indicaremos cómo usar el servicio Watson Assistant de IBM para
crear un chatbot:

ANTES DE EMPEZAR
1. Vaya a la página de IBM Cloud®.

2. Regístrese para obtener una cuenta de IBM Cloud gratuita o inicie sesión.
3. Pulse crear recursos

4. Dirígete a la lista de recursos.


ABRIR WATSON ASSISTANT
Después de crear una instancia de servicio Watson Assistant, irá a la página Gestionar.
5. Pulse Iniciar Watson Assistant. Si se le solicita que inicie una sesión, proporcione
sus credenciales de IBM Cloud.

Se abre un nuevo separador o ventana de navegador y se muestra Watson Assistant


y pulsamos el botón Create assistant para crear un nuevo asistente.
● Se crea automáticamente un asistente llamado My first assistant (Mi primer
asistente). Un asistente es un chatbot. Los conocimientos se añaden a su asistente
para que pueda interactuar con sus clientes de forma útil.

CREAMOS NUESTRO CHATBOT


6. Creamos un nuevo asistente llamado ATENCION ADMIN

7. Crear un conocimiento de dialogo llamado nuevo

8. Crearemos nuestras intenciones que serán las posibles preguntas que ingresara el
usuario
9. Ahora en la parte de diálogos relacionamos cada intención con las respuestas que
dará el chatbot.

INTEGRAR EL ASISTENTE
Ahora que tiene un asistente que puede participar en un intercambio conversacional
sencillo, pruébelo.
10. Localice el asistente ATENCION ADMIN y ábralo.

11. Pruebe su asistente con una integración Enlace de vista previa.

La integración Enlace de vista previa se crea automáticamente. Crea su asistente en


un widget de conversación alojado en una página web de la marca IBM. Puede abrir
la página web y conversar con su asistente para probarlo.
8.2. La nube(Cloud)

8.2.1. Plataforma a usar para desplegar el proyecto


HEROKU
El hecho de que sea una plataforma en la nube significa que como
desarrolladores no nos tenemos que preocupar por la infraestructura,
sino que solamente nos tenemos que centrar en el desarrollo de la
aplicación, lo que nos evita todos los problemas que puede suponer
llevar nuestra idea a la URL.

Heroku a diferencia de otras plataformas permite desarrollar


prácticamente cualquier lenguaje de programación: Ruby, Java, PHP,
NodeJS…

También permite desplegar versiones, hacer rollback, gestionar


dependencias…

Heroku dispone los denominados add ons, gracias a los que podemos
añadir funcionalidad extra a nuestras aplicaciones de forma
realmente sencilla, por ejemplo, memcached, redis, postgres,
mongolab etc.
REGISTRO Y COSTE
Para la utilización de la aplicación es necesario registrarse.
En el caso del coste tenemos dos opciones:
● Registro gratuito: mediante el registro gratuito podemos
acceder a las prestaciones básicas, pero no podremos disfrutar
de todas las posibilidades que ofrece esta plataforma.
● Registro con pago: el registro pagando nos permite acceder a
todas las prestaciones de HEROKU.
● También cabe la posibilidad de registrarse de forma gratuita y
pagar por aquellas prestaciones que nos sean necesarias.

PRINCIPALES VENTAJAS
● Heroku es gratuito para aplicaciones de poco consumo.
● Permite el uso de diferentes lenguajes de programación.
● Es una plataforma fácil de usar.
● Integra varios servicios dentro de su estructura.
● Las actualizaciones en Heroku no afectan a nuestra plataforma
informática.
● Se puede tener acceso desde cualquier lugar y dispositivo
compatible con la computación en la nube.
PRINCIPALES DESVENTAJAS
● Es necesario contratar un servicio de base de datos externo y
un hosting.
● Poca personalización y mínima optimización cuando se
requiere más infraestructura (Gratis).
● La disponibilidad de las aplicaciones está limitada a la
disponibilidad del acceso a internet.

PEQUEÑA GUÍA PARA DESPLEGAR NUESTRO PROYECTO EN HEROKU


1. En la pantalla inicial de heroku le damos a create a new app
2. Digitamos el nombre de nuestra app y hacemos click en create
app

3. Luego de instalar el heroku CLI, accedemos al git bash y nos


logueamos en heroku con el comando:

$ heroku login

4. Luego de haberse logueado en heroku, nos movemos hasta la


carpeta de nuestro proyecto, inicializamos.

5. Por último agregamos todos los cambios del código y


desplegamos el proyecto en la nube:
$ git add .
$ git commit -am "make it better"
$ git push heroku master

6. Abrimos la app desde la página de heroku y obtenemos este


link:
https://asistenciaytareas.herokuapp.com/login.php
9. TRANSFORMACIÓN DIGITAL

Para poder aplicar la transformación digital en la educación en el Perú, primero se


debe identificar la audiencia. Los alumnos que van a recibir el apoyo del gobierno. Se
toma los datos de la audiencia de la RENIEC, con esto se evalúa para poder realizar
una categorización sobre quiénes serán los de mayor prioridad según los resultados
de la evaluación de los datos.
Con los resultados obtenidos se procede a realizar un plan para poder llegar a ellos
de una manera eficiente, tomando en cuenta la situación actual que ocurre en el país
y en el mundo. El plan debe considerar, también, la ubicación de los beneficiarios, los
posibles problemas climáticos, problemas de comunicación y nivel socioeconómico
de cada uno de los alumnos. Luego de definir el plan, realizar la estrategia para
poder realizar la ayuda a la audiencia. Se tiene que considerar los aparatos
tecnológicos (tablets, celulares y chips con un plan fijo de Internet y acceso a redes
sociales) que se les brindará, una guía de cómo se debería utilizar y cómo
comunicarse con alguna entidad del Estado que proporcione soluciones sobre
tecnología y el manejo de los dispositivos.
Después de implementar la estrategia, se tiene que informar a todos los ciudadanos
sobre el plan que se realizó para poder llegar a los alumnos, cómo se realizó la
repartición e informar medios por donde los alumnos beneficiarios se puedan
comunicar con las entidades del estado para poder obtener una retroalimentación
del proceso realizado o alguna ayuda sobre el uso de las herramientas entregadas.
Para ello se tiene que publicitar a través de las radios, diferentes canales de
televisión, redes sociales y otros medios que permitan llegar a la mayor cantidad
posible de personas.

También podría gustarte