Logo Studenta

Easywork - Proyecto de aula - Ingeniería de software

¡Este material tiene más páginas!

Vista previa del material en texto

Ingeniería de Software
 
 
Easywork Academy
Presentado por:
Jaime Andrés Ruiz Melendres
José Daniel Muñoz Gómez
Fabian Alberto Sánchez Ruiz
Roosevelt Daniel Santos Vanegas
Sebastián Ricardo Cárdenas
 
 
Presentado a:
Oswaldo Vélez Langs
 
Universidad de Córdoba
Facultad de ingeniería
 
Montería - 2022
 
Tabla de contenido
1. Planteamiento del problema
2. Objetivos
2.1. Objetivo general
2.2. Objetivos específicos
3. Metodología
4. Cronograma
5. Especificación de requisitos software
5.1. Introducción
5.2. Propósito
5.3. Alcance
5.4. Definiciones, acrónimos y abreviaturas
5.5. Referencias
5.6. Resumen
6. Descripción global del producto
6.1. Perspectiva del producto
6.2. Funciones del producto
6.3. Características de los usuarios
6.4. Restricciones
6.5. Condiciones y dependencias
7. Requisitos específicos
7.1. Requisitos comunes de interfaces
7.1.1. Interfaces de usuario
7.1.2. Interfaces de hardware
7.1.3. Interfaces de software 
7.1.4. Interfaces de comunicación
7.2. Requisitos funcionales
7.2.1. Requisito funcional 1 
7.2.2. Requisito funcional 2 
7.2.3. Requisito funcional 3 
7.2.4. Requisito funcional 4 
7.2.5. Requisito funcional 5 
7.2.6. Requisito funcional 6 
7.2.7. Requisito funcional 7 
7.2.8. Requisito funcional 8 
7.2.9. Requisito funcional 9
7.2.10. Requisito funcional 10
7.2.11. Requisito funcional 11
7.2.12. Requisito funcional 12
7.2.13. Requisito funcional 13
7.2.14. Requisito funcional 14
7.2.15. Requisito funcional 15
7.2.16. Requisito funcional 16
7.3. Requisitos no funcionales
7.3.1. Requisitos de rendimiento
7.3.2. Seguridad
7.3.3. Fiabilidad
7.3.4. Disponibilidad
7.3.5. Mantenibilidad
7.3.6. Portabilidad
1. Planteamiento del Problema.
Es evidente que en la actualidad gran parte de los estudiantes de educación superior encuentran cierta complejidad en su formación académica debido a los constantes retos que presentan diariamente, ya sean por aspectos económicos, tecnológicos o por falta de recursos de información para realizar sus actividades. Con base a esto suelen surgir casos de deserción académica, los cuales van aumentando paulatinamente con el paso de los años. 
La Universidad de Santander (UDES) realizó un estudio en el periodo 2019-2 donde se registró una tasa de desertores del 10,4% (Gráfico 1) de lo que se puede decir que es negativo para el estudiante que atrasa su formación académica.
 
Gráfico 1
Fuente: Registro y Control académico UDES, 2020.
En Colombia, los aspectos principales que conllevan a la deserción estudiantil en la educación superior son los siguientes: socioeconómicos, individuales, académicos e institucionales.
 Desde el aspecto académico tenemos: 
· Falta de preparación desde la educación media en competencias generales. 
· Poca orientación profesional y vocacional antes del ingreso a la universidad. 
· Bajo rendimiento académico. 
· Métodos de estudio y metodologías de aprendizaje obsoletas. 
· Insatisfacción con el programa. 
· Estrés por la carga académica.
2. Objetivos
2.1 Objetivo general
Desarrollar un software que permita reducir la deserción que producen las dificultades académicas en los universitarios o tecnólogos.
2.2 Objetivos Específicos
· Analizar los requerimientos funcionales y no-funcionales que permita reducir las dificultades académicas en los estudiantes universitarios/tecnólogos.
· Diseñar interfaces amigables que permitan facilidad y comodidad a los estudiantes a la hora de resolver sus problemáticas.
· Ejecutar las pruebas de la aplicación web que garanticen un correcto funcionamiento.
· Lograr que los estudiantes mejoren sus notas académicas mediante el software.
· Establecer una herramienta de ayuda 24/7 de ayuda o guía.
· Disponer de una biblioteca amplia de contenido para el soporte de los estudiantes.
3. Metodología
En la metodología a utilizar en este proyecto, realizaremos un poco de prototipos y modelo Scrum con el fin de realizar un trabajo en equipo y efectivo. Con la metodología de prototipos conseguiremos ese extra de información para una retroalimentación adecuada en el proceso de desarrollo del software. 
Con “Scrum” se pretende alcanzar el mejor resultado posible en este trabajo de manera colaborativa coordinando a todo el equipo para llegar pronto al objetivo ya definido. Y con la metodología de desarrollo de prototipos conseguiremos hacer un prototipo en base a los requerimientos del cliente simple, ni terminado, incluso de forma rápida y barata, dándonos una base sólida sobre qué trabajar y cómo hacerlo.
4. Cronograma
En el siguiente cronograma se detalla el tiempo estimado para cada una de las actividades de este proyecto.
	OBJETIVO
	ACTIVIDADES POR DESARROLLAR
	TIEMPO EN SEMANAS
	
	
	1
	2
	3
	4
	5
	6
	7
	8
	9
	10
	11
	12
	13
	14
	15
	Analizar los requerimientos funcionales y no-funcionales que permita reducir las dificultades académicas en los estudiantes universitarios/tecnólogos
	Requerimientos funcionales
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Requerimientos no-funcionales
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Diseñar interfaces amigables que permitan facilidad y comodidad a los estudiantes a la hora de resolver sus problemáticas
	Diseño de la interfaz
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Realización de interfaz
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Implementación de la interfaz 
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Realizar la construcción de la aplicación web del proyecto.
	Diseño de la base de datos
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Desarrollo lógico de la aplicación y contrición (Back-end)
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Configuración de servidor y conexiones
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Optimización de los procesos de la aplicación 
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Ejecutar las pruebas de la aplicación web que garanticen un correcto funcionamiento.
	Pruebas unitarias y funcionales del back-end de la aplicación web
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Pruebas unitarias y funcionales de front-end de la aplicación web
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
5. Especificación de Requisitos Software
5.1 Introducción
Este es el documento que nos permitirá plasmar de una manera objetiva y concreta cada uno de los requisitos necesarios y fundamentados a lo largo de la elaboración del software.
5.2 Propósito
Se tiene pensado que EasyWork sea un aplicativo web que pretende ayudar a los estudiantes en el desarrollo de las asignaturas universitarias y en sus respectivas actividades académicas, por medio de tutorías privadas y explicación de temáticas concretas de las correspondientes asignaturas. Además, se analizarán las principales falencias que tienen los universitarios con respecto a la asignatura cursada, de esta forma creando un sistema de aprendizaje efectivo para cada asignatura. 
	 
5.3 Alcance
Con el proyecto EasyWork se busca desarrollar un aplicativo tanto móvil como web para lidiar y tratar de apaciguar la deserción estudiantil que afecta a las universidades y/o instituciones de educación superior incluso en el aprendizaje propio.
Por medio la publicación de actividades académicas (exámenes, tareas, asistencias…) Con todos los detalles se realizará puentes entre estudiantes con necesidades con expertos, ya sean docentes o estudiantes con conocimientos avanzados, cuya finalidad es traer beneficios a ambos bandos, económicos para el mentor y de conocimientos para el emisor del post de la tarea antes solicitada.
Con la ayuda de estas actividades se busca minimizar estas deserciones antes mencionadas, estas pueden ser virtuales o presenciales dependiendo de la actividad propia, cada uno con sus limitaciones y su objetivo de aprendizaje con el fin de un buen desarrollo sin promesas vacías, justificado todo con hechos.
5.4 Definiciones, Acrónimos y abreviaturas
· Back-end: El trabajo del desarrollador en la parte de back-end es todo lo que va anclado al servidor de la aplicación, la lógica de negocio, sin este la aplicación desarrollada en el front-end no tendría una funcionalidad
· Front-end: Es todo lo que se puede observar dellado del cliente, es decir, el apartado visual de la aplicación. Por lo general se ocupan tecnologías como: HTML5, CSS3, JavaScript entre otros para la construcción de las interfaces. En este proyecto se utiliza React como herramienta de desarrollo para el Front-end.
· URL: Resource Locator (Localizador de Recursos Uniformes). Una URL no es más que una dirección que es dada a un recurso único en la Web. En teoría, cada URL válida apunta a un único recurso. Dichos recursos pueden ser páginas HTML, documentos CSS, imágenes, etc.
· JSON: Es un formato ligero de intercambio de datos. Leerlo y escribirlo es simple para humanos, mientras que para las máquinas es simple interpretarlo y generarlo. Dentro de la aplicación se utilizan este tipo de objetos para el intercambio de información entre el back-end y front-end.
· JavaScript: JavaScript es un lenguaje de desarrollo de aplicaciones enfocadas a la web. En la actualidad es muy utilizado por las funciones que permite realizar, con el paso del tiempo los navegadores han implementado nuevos motores de interpretación, haciendo así que JavaScript tenga la capacidad de alcanzar velocidades de ejecución similares a las aplicaciones de escritorio, además pueden realizar muchas tareas que antes difícilmente se conseguían, como manejar eventos un ejemplo claro de esto es controlar los clics del mouse y además se pueden realizar validaciones en el navegador.
· React: React es una biblioteca JavaScript de código abierto diseñada para crear interfaces de usuario con el objetivo de facilitar el desarrollo de aplicaciones en una sola página. Es mantenido por Facebook y la comunidad de software libre. En el proyecto hay más de mil desarrolladores libres.
· HTTP: Hypertext Transfer Protocol (HTTP) (o Protocolo de Transferencia de Hipertexto en español) es un protocolo de la capa de aplicación para la transmisión de documentos hipermedia, como HTML. Fue diseñado para la comunicación entre los navegadores y servidores web, aunque puede ser utilizado para otros propósitos también.
· API: La interfaz de programación de aplicaciones, conocida también por la sigla API, en inglés, application programming interface, ​ es un conjunto de subrutinas, funciones y procedimientos que ofrece cierta biblioteca para ser utilizada por otro software como una capa de abstracción
· HTTPS: El Protocolo seguro de transferencia de hipertexto (en inglés, Hypertext Transfer Protocol Secure o HTTPS) es un protocolo de aplicación basado en el protocolo HTTP, destinado a la transferencia segura de datos de hipertexto, es decir, es la versión segura de HTTP.
· Dart: Dart (originalmente llamado Dash) es un lenguaje de programación de código abierto, desarrollado por Google. El objetivo de Dart no es reemplazar JavaScript como el principal lenguaje de programación web en los navegadores web, sino ofrecer una alternativa más moderna. 
· Flutter: Flutter es un SDK de código fuente abierto de desarrollo de aplicaciones móviles creado por Google. Suele usarse para desarrollar interfaces de usuario para aplicaciones en Android, iOS y Web, así como método primario para crear aplicaciones para Google Fuchsia.
· Laravel: Laravel es un framework de código abierto para desarrollar aplicaciones y servicios web con PHP 5, PHP 7 y PHP 8. Su filosofía es desarrollar código PHP de forma elegante y simple, evitando el "código espagueti". Fue creado en 2011 y tiene una gran influencia de frameworks como Ruby on Rails, Sinatra y ASP.NET MVC.​
· Framework: Un entorno de trabajo​ o marco de trabajo​ es un conjunto estandarizado de conceptos, prácticas y criterios para enfocar un tipo de problemática particular que sirve como referencia, para enfrentar y resolver nuevos problemas de índole similar.
· Endpoints: En otras palabras, un endpoint es un extremo de un canal de comunicación. Cuando una API interactúa con otro sistema, los puntos de contacto de esta comunicación se consideran puntos finales. Para las API, un punto final puede incluir una URL de un servidor o servicio. Cada punto final es la ubicación desde la cual las API pueden acceder a los recursos que necesitan para llevar a cabo su función.
5.5 Referencias
· Standard IEEE 830 – 1998, IEEE.
5.6 Resumen
Este documento está constando de 3 partes, en la primera parte realizamos una breve explicación de cuál era la problemática en la que se basaba nuestro proyecto, y también explicaremos los objetivos que buscábamos al empezar este proyecto. 
En la segunda parte de este proyecto empezamos explicando las metodologías que estaremos usando, el cronograma con el que nos basaremos para empezar y finalizar el proyecto y daremos una explicación de los requisitos de software de nuestro proyecto.
Y para finalizar en la tercera parte tendremos una descripción global de nuestro producto, y también todos los requisitos específicos ya sean funcionales para funcionamiento de nuestra página o no funcionales para esta misma.
6. Descripción global del producto
6.1 Perspectiva del producto
Easywork está pensado para ser un producto independiente cuyo funcionamiento no estará condicionado por otro aplicativo. El contenido de la plataforma será generado y cargado desde la misma por los propios usuarios.
Esta subsección debe relacionar el futuro sistema (producto software) con otros productos. Si el producto es totalmente independiente de otros productos, también debe especificarse aquí. Si la ERS define un producto que es parte de un sistema mayor, esta subsección relacionará los requisitos del sistema mayor con la funcionalidad del producto descrito en la ERS, y se identificarán las interfaces entre el producto mayor y el producto aquí descrito. Se recomienda utilizar diagramas de bloques. 
6.2 Funciones del producto
EasyWork como usuario nos permitirá realizar un posteo de actividad donde se describirá la tarea en la cual el usuario necesitará ayuda de la misma manera se podrán ver las publicaciones de los diferentes usuarios que necesitan también esta ayuda, en otros apartados se tendrá disponibles otras actividades como asesoramiento presencial, trabajos, etc. Cada carta o posteo ingresado tiene su propia descripción detallada sobre la actividad y la posibilidad del contacto directo con el personal que realizará la actividad, este personal estará previamente ya certificado por la aplicación, es decir con permisos para aceptar estas actividades.
Figura 1. Funciones generales del sistema
Fuente: Elaboración propia
6.3 Características de los usuarios
Esta subsección describe las características generales de los usuarios del producto, incluyendo nivel educacional, experiencia y experiencia técnica
	Tipo de Usuario
	Administrador
	Formación Básica
	TSU en Informática o Sistemas
	Actividades
	Control y manejo del sistema en general
	Tipo de Usuario
	Mentor
	Formación Básica
	TSU y superior
	Actividades
	Facilita el proceso de aprendizaje para los estudiantes.
Toma las actividades posteadas y las resuelve con el estudiante
	Tipo de Usuario
	Estudiante
	Formación Básica
	Bachiller
	Actividades
	Hace publicaciones de actividades en la plataforma
6.4 Restricciones
· Interfaz para ser usada con acceso a internet
· Los servidores deben ser capaces de atender varias consultas simultáneamente
· Lenguajes y tecnologías en uso: PHP, JavaScript, Dart, React, Flutter, Laravel
· Uso de aplicaciones intermediarias para poder realizar los pagos internos
· El sistema deberá tener un diseño e implementación sencilla, independiente de la plataforma o del lenguaje de programación
6.5 Condiciones y dependencias
· Se planea mantener en el sistema los requisitos (que se plantean a continuación) a lo largo de toda la vida útil de la aplicación. 
· Se asume que los requisitos aquí descritos son estables 
· Los equipos en los que se vaya a ejecutar el sistema deben cumplir los requisitos antes indicados para garantizar una ejecución correcta de la misma
7. Requisitos específicos
7.1 Requisitos comunes de interfaces
7.1.1 Interfaces de usuario
La interfaz con el usuario consistiráen un conjunto de ventanas con botones, listas y campos de textos. Ésta deberá ser construida específicamente para el sistema propuesto y, será visualizada desde un navegador de internet
Easywork también cuenta con un aplicativo web en el que los usuarios podrán registrarse y acceder a su cuenta. Los usuarios que quieran ser parte de la comunidad de tutores de Easywork también podrán realizar la aplicación a la posición por medio de un formulario el cual tendrán que rellenar con su información y experiencia en el ámbito en el cual quieran realizar tutorías. La plataforma también permitirá a los usuarios publicar posts para solicitar ayuda a los tutores con actividades y también podrán acceder a la zona de cursos de formato video.
La interfaz del usuario para móviles contará con varias vistas, una página de inicio de sesión para su acceso, un registro para ingresos primerizos, una vista principal con varios elementos de actividades recientes, un panel de configuraciones. Está será construida y visualizada desde un dispositivo Android
7.1.2 Interfaces de hardware
Será necesario disponer de equipos de cómputos en perfecto estado con las siguientes características: 
· Adaptadores de red.
· Procesador de 1.66GHz o superior. 
· Memoria mínima de 256Mb. 
· Mouse. 
· Teclado.
Para el aplicativo móvil se tendrá que disponer de equipos móviles en perfecto estado con las siguientes características
· Adaptadores de red.
· Procesador de 1.866 MHz o superior. 
· Memoria mínima de 6GB. 
7.1.3 Interfaces de software 
Sistema Operativo: Windows 8 o superior. 
Explorador: Mozilla, Chrome o cualquiera.
Sistema Operativo móvil: Android 6 o superior.
7.1.4 Interfaces de comunicación
Los servidores, clientes y aplicaciones se comunicarán entre sí, mediante protocolos estándares en internet, siempre que sea posible. Se utilizará y predominará el protocolo de comunicación HTTPS, dando así un transporte con archivos JSON entre el front-end y el back-end del aplicativo mediante endpoints dados en una API Rest.
7.2 Requisitos funcionales
7.2.1 Requisito funcional 1
	Identificación del Requisito
	RF01
	Nombre del Requisito
	Autenticación de Usuario.
	Características
	Los usuarios de la plataforma tendrán que usar sus credenciales (email y contraseña) para poder identificarlos en el sistema.
	Descripción
	El sistema podrá identificar de manera individual a cada usuario registrado para asignarles una cuenta única con la cual podrán interactuar con los demás usuarios.
	Prioridad del requerimiento
	Alta
Autenticación de Usuario: Este requerimiento ayudará al sistema a identificar a cada usuario de forma individual. Para poder identificar a un usuario, este ya debe estar registrado en la base de datos de usuarios, por lo que el usuario ya se debió de haber registrado previamente. Cuando el usuario se haya identificado, este tendrá acceso a su cuenta personal, con la cual podrá acceder a todas las funcionalidades disponibles según su rol, que por defecto será “Estudiante”.
7.2.2 Requisito funcional 2
	Identificación del Requisito
	RF02
	Nombre del Requisito
	 Registro de Estudiante
	Características
	Los usuarios de la plataforma que sean estudiantes tendrán que registrarse usando un usuario, correo y contraseña únicos, (entre otros datos), para agregarlos a la base de datos del sistema
	Descripción
	El sistema guardará todas las credenciales del usuario para que le asigne una cuenta personal y con esta iniciar sesión a la página para empezar a navegar. 
	Prioridad del requerimiento
	Alta
Registro de Estudiante: Este requerimiento es de una alta prioridad ya que si no se registra la cuenta en la base de datos no podrán acceder con la cuenta asignada al registro y no podrán usar la página debidamente. Luego que el usuario se registre, podrá iniciar sesión con las credenciales que usaste que deben ser únicas y disfrutar de todo el material propuesto en nuestro sistema.
7.2.3 Requisito funcional 3
	Identificación del Requisito
	RF03
	Nombre del Requisito
	Registro de Mentor
	Características
	Los usuarios que aún no sean mentores podrán acceder al proceso de verificación de mentoría para poder verificar si son aptos para el rol.
	Descripción
	El sistema someterá a los usuarios a un proceso de verificación, en el cual se les mostrará un formulario para que ingresen información sobre sus conocimientos, y posteriormente preguntas técnicas y evaluaciones.
	Prioridad del requerimiento
	Alta
Registro de Mentor: El registro de mentores es un requisito de alta prioridad, puesto que es un rol de usuario primordial para el correcto funcionamiento de Easywork, ya que estos serán los encargados de dar mentorías a los estudiantes a cambio de dinero. Sin embargo, los usuarios que quieran acceder al rol de mentor deberán realizar una prueba técnica de calidad enfocada a su campo de especialidad para saber si son aptos para desempeñar el rol. La prueba técnica contará con varias fases, siendo la primera de estas completar un formulario con información general del aspirante a mentor y su campo de estudio, para posteriormente pasar a segunda y tercera fase que serán fuera de la plataforma y se realizará por medio de actividades propuestas por correo y reuniones virtuales.
7.2.4 Requisito funcional 4
	Identificación del Requisito
	RF04
	Nombre del Requisito
	Validación de Mentor
	Características
	Esta consta de varias fases en la que el estudiante va a ser valorado por expertos para ver si es apto para ser un mentor en nuestra página.
	Descripción
	Esta validación consta de varias fases la cual la primera es completar un formulario y de ahí si el cumple consta de 2 fases más que ya se realizan fuera de la plataforma.
	Prioridad del requerimiento
	Alta
Validación del mentor: Este es un requisito de prioridad alta debido a que es necesario para poder convertirse en mentor en nuestro sistema, debido a que para mantener toda la información y ayudas prestadas a los estudiantes tienen que ser confiables, se realizarán varias fases para validar a alguien para ser mentor, siendo la primera un formulario con información general y luego de eso procederán a suceder la segunda y tercera fase que serán fuera de nuestra plataforma que serán entre actividades que se enviaran a sus correos y reuniones virtuales entre nosotros y el aspirante.
7.2.5 Requisito funcional 5
	Identificación del Requisito
	RF05
	Nombre del Requisito
	Registro de actividades
	Características
	Los usuarios tendrán la posibilidad de enviar sus propias actividades en la plataforma.
	Descripción
	Se podrá subir actividades varias de cualquier tema en nuestro sistema. Estas quedarán guardadas en el perfil de los usuarios, y los demás usuarios, incluidos mentores, podrán comentar dichas actividades.
	Prioridad del requerimiento
	Alta
Registro de Actividades: Este requerimiento es muy apreciado por los usuarios con el rol “estudiantes” ya que cualquier trabajo que ellos necesiten algunas dudas puedan subirlo y llevar un registro de sus actividades y están quedaran guardadas en su perfil y podrá acceder a ellas y sus comentarios en cualquier momento. 
7.2.6 Requisito funcional 6
	Identificación del Requisito
	RF06
	Nombre del Requisito
	Consulta de actividades
	Características
	Los usuarios tendrán la posibilidad de ver e interactuar con las actividades publicadas por los demás usuarios en la plataforma.
	Descripción
	Se podrá consultar actividades relacionadas al campo de interés de un usuario en una sección que mostrar las actividades organizadas por fecha de publicación, en el que se podrá navegar por ellas. También se podrá consultar las actividades publicadas por un usuario específico entrando a su perfil.
	Prioridad del requerimiento
	Alta
Consulta de actividades: Este requerimiento será mucho más apreciado para aquellos usuarios con el rol de “Mentor”, ya que ellos son los que más se interesan por las actividades disponibles, además deben ver con mucha más frecuencia actividades relacionadas a su campo de especialidad. Losusuarios de rol “Estudiante” también podrán ver las actividades propuestas e interactuar en ellas (comentar, votar), ya que es posible que encuentren una actividad parecida o relacionada con una que ellos necesiten. Los estudiantes también podrán ver sus actividades en su perfil para tener constancia de cuanto han participado.
7.2.7 Requisito funcional 7
	Identificación del Requisito
	RF07
	Nombre del Requisito
	Interacción entre usuarios
	Características
	Permitirá a estudiante tener contacto directo (chat) con un mentor con el que haya quedado de acuerdo en hacer su trabajo
	Descripción
	Cuando se haga match (se hizo acuerdo entre estudiante y mentor) habrá la opción de que pueda haber una comunicación dentro de la aplicación
	Prioridad del requerimiento
	Alta
Interacción entre usuarios: Esto implica un apartado de mensajería directa entre usuarios, quienes son el estudiante y el mentor quienes llegarán a un acuerdo para la realización la actividad propuesta, ya sea un trabajo, parcial o una enseñanza
· Enviar y recibir mensajes textuales.
· Enviar y recibir contenido multimedia: Esto les permitirá ser más específicos con la actividad designada, enviando así, fotos, videos, audios y documentos para apoyarse
7.2.8 Requisito funcional 8 
	Identificación del Requisito
	RF08
	Nombre del Requisito
	Puntuaciones para mentores
	Características
	Permita la opción de escoger una puntuación en estrellas como reseña al mentor que brindó el servicio, esta puntuación la realizará el estudiante seleccionando la cantidad de estrellas que le desea puntuar, pueden ser desde 0 hasta 5 estrellas incluyendo la mitad de una, por ejemplo, 1.5 estrellas
	Descripción
	Después de que el estudiante recibe el servicio por parte del mentor, éste realizará su valoración correspondiente del mentor.
	Prioridad del requerimiento
	Media
Puntuaciones para mentores: Esto resulta en una medida de catalogar los diferentes mentores según la confianza, responsabilidad e incluso sus habilidades, con el fin de darles un historial por el cual los diferentes estudiantes podrán guiarse para escoger dichos mentores en sus diferentes actividades.
7.2.9 Requisito funcional 9
	Identificación del Requisito
	RF09
	Nombre del Requisito
	Notificación de actividades relacionadas.
	Características
	Permitir al usuario conocer los procesos relacionados a los que pertenece.
	Descripción
	Notificar al usuario sobre los procesos que puede realizar o ha realizado en la aplicación, (Realización de tareas, actividades aceptadas, contactar usuario).
	Prioridad del requerimiento
	Alta
Notificación de actividades relacionadas: Esto resulta en una medida de notificar a todo usuario dependiendo el rol que emplea en la aplicación, siendo que si es un usuario estándar se le notificará de promociones o de actividades que él haya creado para los usuarios con rol de profesor, de esta forma también los profesores podrán recibir notificaciones de las actividades que se relaciones con su perfil.
7.2.10 Requisito funcional 10
	Identificación del Requisito
	RF010
	Nombre del Requisito
	Sistema de notificación de estado y procesos de las tareas en realización, aceptación y finalización.
	Características
	Permite una notificación del estado de la actividad, dependiendo de lo que suceda con ésta
	Descripción
	Un estudiante publica una actividad, al salir de ésta cuando alguien acepte la actividad o la solicite, esta le mandará una notificación avisando este cambio de estado
	Prioridad del requerimiento
	Media
Sistema de notificación de estado y procesos de las tareas en realización, aceptación y finalización: Una notificación con los cambios de las actividades ya sea posteadas por parte de los estudiantes o una donde muestre los cambios de las actividades cuando un mentor la acepto para saber el estado en que se encuentre dicha actividad.
7.2.11 Requisito funcional 11
	Identificación del Requisito
	RF011
	Nombre del Requisito
	Gestión del perfil
	Características
	Permitir al usuario actualizar sus datos de su perfil en la plataforma.
	Descripción
	El usuario puede cambiar la mayoría de los datos personales que tiene en la plataforma (foto, descripción, nombres, etc.)
	Prioridad del requerimiento
	Alta
Gestión del perfil: Este emplea diversas secciones donde el usuario podrá modificar los datos de su perfil, sea la foto, el número de teléfono, nombres, apellidos, carrera afín, entre otras opciones que se podrán permitir al usuario su modificación. 
7.2.12 Requisito funcional 12
	Identificación del Requisito
	RF012
	Nombre del Requisito
	Biblioteca de recursos de estudio
	Características
	Permitirá un espacio para estudiantes y mentores para la existencia de sus materiales de estudio aportados por ellos
	Descripción
	Existencia de una biblioteca donde habrá materiales para el fortalecimiento del conocimiento
	Prioridad del requerimiento
	Medio
Biblioteca de recursos de estudio: Existencia y alojamiento de material académico de libre uso aportado por los estudiantes y mentores para ser compartido a otros usuarios de la plataforma
7.2.13 Requisito funcional 13
	Identificación del Requisito
	RF013
	Nombre del Requisito
	Gestión de recursos de estudio de usuarios
	Características
	Permiso de acceso a diversos recursos de estudio o guía sobre temas relacionados
	Descripción
	Sistema de gestión sobre los recursos de la aplicación donde se tendrá acceso no total por parte de los estudiantes
	Prioridad del requerimiento
	Medio
Gestión de recursos de estudio de usuarios: Estos les permitirá a los usuarios consultar recursos, visualizarlos e incluso subir archivos. Teniendo en cuenta que a los usuarios no se les permite la eliminación de estos.
Los mentores podrán subir, editar, eliminar y consultar estos recursos con el fin de proporcionarles estos contenidos a los estudiantes para un aprendizaje mucho más exitoso.
7.2.14 Requisito funcional 14
	Identificación del Requisito
	RF014
	Nombre del Requisito
	Comentar las actividades
	Características
	Los usuarios de cualquier rol podrán hacer comentarios sobre las actividades publicadas.
	Descripción
	Sistema de comentarios al pie de cada publicación para que los usuarios puedan recibir retroalimentación y debatir acerca del tema de la publicación.
	Prioridad del requerimiento
	Baja
Comentar las actividades: Dado que las actividades están destinadas a ser asignadas a un único mentor, la posibilidad de comentar actividades no es de tan alta prioridad como otros requisitos. Sin embargo, la posibilidad de poder recibir pequeños comentarios de una publicación puede ayudar a los usuarios a formular la publicación de mejor manera, aportar más información e incluso debatir sobre el tema para generar más conocimiento alrededor del tema de la tarea publicada.
7.2.15 Requisito funcional 15
	Identificación del Requisito
	RF015
	Nombre del Requisito
	Pasarela de pago
	Características
	Permitir a los usuarios poder realizar pagos por medio de la plataforma.
	Descripción
	Los usuarios podrán pagar por los servicios utilizados en la plataforma de manera segura. 
	Prioridad del requerimiento
	Alta
Pasarela de pago: Se emplea un sistema donde los usuarios podrán pagar por el contenido y las clases que se reciban en la plataforma, teniendo control del flujo de dinero que se transfiere a cada usuario y seguridad de que el dinero estará bien asegurado.
7.2.16 Requisito funcional 16
	Identificación del Requisito
	RF016
	Nombre del Requisito
	Existencia de etiquetas para guía
	Características
	Permitirá que los temas tengan una etiqueta para la distinción de temáticas
	Descripción
	Creación de etiquetas sobre las diferentes asignaturas o temas para su fácil clasificación y acceso
	Prioridad del requerimiento
	Medio
Existencia de etiquetas para guía: Esto será más aprovechado por los usuarios Mentores, ya que al tener ellos una etiqueta de temática relacionada podrá ser mejor clasificada la lista de actividades para que sea óptimo el emparejamiento entre mentores y estudiantes7.3 Requisitos no funcionales
7.3.1 Requisitos de rendimiento
	Identificación del Requisito
	RN01
	Nombre del Requisito
	Rendimiento
	Características
	El sistema garantizará a los usuarios un desempeño en cuanto a los datos almacenados en el sistema ofreciéndole una confiabilidad a esta misma.
	Descripción
	Garantizar el desempeño del sistema informático a los diferentes usuarios. En este sentido la información almacenada o registros realizados podrán ser consultados y actualizados permanente y simultáneamente, sin que se afecte el tiempo de respuesta
	Prioridad del requerimiento
	Alta
Rendimiento: El rendimiento debe ser un requisito primordial para el correcto funcionamiento de la plataforma por diferentes factores. Se planea que el sistema sea multiplataforma y que pueda correr en dispositivos con recursos no tan altos, por lo tanto, la aplicación debe tener un alto rendimiento usando técnicas de optimización para las distintas plataformas, y aplicando buenas prácticas en el código fuente.
7.3.2 Seguridad
	Identificación del Requisito
	RN02
	Nombre del Requisito
	Seguridad en información
	Características
	El sistema garantizará a los usuarios una seguridad en cuanto a la información que se procede en el sistema. 
	Descripción
	Garantizar la seguridad del sistema con respecto a la información y datos que se manejan tales sean documentos, archivos y contraseñas.
	Prioridad del requerimiento
	Alta
Seguridad en información: Este requisito es demasiado importante debido a que es el que asegurará toda tu información y todo lo que agregues a la página tendrás el respaldo de que esa información no se usará para ningún fin y tampoco terceros podrán acceder a esta.
7.3.3 Fiabilidad
	Identificación del Requisito
	RN03
	Nombre del Requisito
	Fiabilidad continúa del sistema
	Características
	El sistema al tener pasarelas de pago se debe buscar la completa fiabilidad del sistema en cuanto a la protección de su pago
	Descripción
	Los pagos que se realicen a cualquier hora del día en los 7 días de la semana deben estar protegida y regulada
	Prioridad del requerimiento
	Alta
Fiabilidad continua del sistema: Este requisito está ligado a cómo usamos los medios de pago para nuestro sistema, este garantizara que todos los pagos que se hagan en cualquier plataforma de pago, se guardará la información del pago y se asegurará que sus credenciales no se filtren en ningún programa de terceros, además los pagos estarán regulados.
7.3.4 Disponibilidad
	Identificación del Requisito
	RN04
	Nombre del Requisito
	Disponibilidad
	Características
	El sistema tendrá que estar en funcionamiento las 24 horas los 7 días de la semana. Ya que es una página web y una aplicación móvil diseñada para la carga de datos y comunicación entre usuarios
	Descripción
	La disponibilidad del sistema debe ser continua con un nivel de servicio para los usuarios de 7 días por 24 horas, garantizando un esquema adecuado que permita la posible falla en cualquiera de sus componentes, contar con una contingencia, generación de alarmas. 
	Prioridad del requerimiento
	Alta
Disponibilidad: Nuestro sistema contara con disponibilidad de acceso a él los 7 días de la semana 24 horas para lo que necesites, ya que como es una página web y aplicativo móvil, esta está diseñada para que se realicen carga de datos y comunicación entre usuarios continuamente, entonces necesitamos una página que garantice que los usuarios se conecten en cualquier momento y que por algún motivo la página falle nosotros tengamos un plan de contingencia para que siga funcionando mientras arreglamos el error.
7.3.5 Mantenibilidad
	Identificación del Requisito
	RN05
	Nombre del Requisito
	Mantenibilidad
	Características
	El sistema deberá de tener un manual de instalación y manual de usuario para facilitar los mantenimientos que serán realizados por el administrador. 
	Descripción
	El sistema debe disponer de una documentación fácilmente actualizable que permita realizar operaciones de mantenimiento con el menor esfuerzo posible. 
	Prioridad del requerimiento
	Alta
Mantenibilidad: Desarrollar el sistema para que sea mantenible reducirá costos a largo plazo, reduciendo las correcciones, errores y parches de seguridad. Además, con una buena documentación, intuitiva y directa, se ahorrará dinero en capacitación de los administradores, ya que en la propia documentación dispondrán de las herramientas necesarias para mantener y usar el sistema de forma correcta y como fue pensado por los desarrolladores y diseñadores. Por lo tanto, la mantenibilidad del sistema es un requisito con alta prioridad.
7.3.6 Portabilidad
	Identificación del Requisito
	RN06
	Nombre del Requisito
	Portabilidad
	Características
	El sistema podrá ejecutarse en cualquier plataforma, la cualquier versión y sin previa configuración.
	Descripción
	La portabilidad de Easywork no es primordial para todas las partes del sistema (por ejemplo, el servidor), pero sin embargo es una característica que facilita a los usuarios poder usar las aplicaciones del cliente en varios dispositivos y sin previa configuración.
	Prioridad del requerimiento
	
Portabilidad: Para que el sistema pueda ser portable, el software debe correr en cualquier dispositivo sin previa configuración. Es importante que las aplicaciones del lado del cliente implementen este requerimiento, para facilitar a los usuarios la instalación de estas. Sin embargo, para la parte del servidor no es primordial, puesto que la aplicación back-end funcionará siempre en un dispositivo del lado del servidor, posiblemente en la nube. Es por esto por lo que este requerimiento presenta una prioridad media.

Otros materiales