SlideShare una empresa de Scribd logo
1 de 18
Indice
1. Introducción…………………………………………………………………………………………..
2. Propósito……………………………………………………………………………………………….
3. Alcance………………………………………………………………………………………………….
4. Especificaciones Técnicas………………………………………………………………………
5. Documentos de Referencia……………………………………………………………………
6. Diccionario de Datos……………………………………………………………………………..
7. Instalación…………………………………………………………………………………………….
8. Desplegar la aplicación………………………………………………………………………….
9. Estructura del Proyecto…………………………………………………………………………
10.Módulos del Sistema……………………………………………………………………………..
11.Paquetes de Laravelincluidos al Sistema………………………………………………
Manual Técnico
1.Introducción
El presente manual técnico tiene como finalidad mostrar las tecnologías que fueron usadas
para desarrollar el Sistema Umatest (Sistema de Evaluación de Exámenes En línea), breve
manual para preparar los ambientes de desarrollo del proyectos, así como también
referencias y documentación de paquetes de Laravel 5.1 que se usan actualmente en el
proyecto.
La implementación de UMATEST en ambientes web se basa en el framework Laravel, una
plataforma para crear aplicaciones web en tiempo real construida sobre PHP. Laravel se
localiza entre la base de datos de la aplicación y su interfaz de usuario y se encarga que las
dos partes estén sincronizadas. Como Laravel usa PHP, El resultado es una plataforma muy
potente y muy sencilla ya que Laravel abstrae muchas de las molestias y dificultades que
nos encontramos habitualmente en el desarrollo de aplicaciones web.
Como mención especial, podemos decir que utiliza Eloquent, que es una base de datos
orientada a Objetos. Esto quiere decir Que la manipulación de datos se lo realiza bajo este
paradigma.
2.Propósito
El propósito del presente es dar a conocer todas las tecnologías que fueron usadas para
implementar el sistema UMATEST.
3.Alcance
El alcance del presente documento es de proveer información importante acerca del
Sistema SAETIS (Sistema de Apoyo a la Empresa TIS), como ser tecnologías usadas, pasos
para la instalación de un ambiente de desarrollo, además de referencias a la documentación
de las tecnologías que fueron usadas para implementar dicho sistema.
4.Especificaciones Técnicas
Sistema Operativo: Windows 7, 8.1, 10 o GNU/Linux 16.04 o versiones superiores
Base de datos: MySQL
Leguaje de Programación: PHP 5.6, HTML5, CSS3, Framework (Laravel 5.1), JavaScript,
Jquery
Navegador Web: Google Chrome, IE, Firefox, Opera
IDE: Sublime Text 3
5.Documentación de referencia
Laravel: http://docs.laravel.com/#/basic/
Trello: https://trello.com/
GIT: http://git-scm.com/documentation/
6.Diccionario de Datos
A continuación se detallan todas las colecciones del sistema Umatest.
Colección 1. Variables del sistema
CAMPO TIPO OBSERVACIONES
_id String
Identificador autogenerado
por Laravel
num Number
variable autogenerado por
Laravel
state Number
Solo permite los valores [0,
1,2] que representan ['No
iniciada', 'En progreso',
'Finalizado'] respectivamente.
role_id Int
Representa el rol que
desempeña dentro del sistema
el usuario
Colección 2. Administrador
CAMPO TIPO OBSERVACIONES
nombre_user String Nombre del usuario
apellido_user String
genero_user String
password_user String
Colección 3. Registro
CAMPO TIPO OBSERVACIONES
Id_user
String _id del usuario
nombre_user
String
apellido_user
String
email_user
String
telefono_user
Number
Dirección_user
String
Id_acceso
String _id que se encarga del
acceso del administrador
Id_student
[String] _id’s de los estudiantes que
están registrados en la
materia
Enabled
Boolean Indica si la materia ha sido
habilitada o no
adviser
String _id del docente habilitado
por el administrador
task
String _id de la tarea asignada en el
grupo del docente
Colección 4. backups
CAMPO TIPO OBSERVACIONES
num
Number
description
String
check
Boolean
activityId
String _id de la Actividad a la que
pertenece este entregable
weekId
String _id de la Semana a la que
pertenece este entregable
Colección 5. Examenes
CAMPO TIPO OBSERVACIONES
collection
String Nombre de la colección de
datos a la que perteneceria
el Examen(ProjectDocument,
GlobalDocument)
key
String Id llave para relacionar con
colección correspondiente
access
String Tipo de acceso del
documento(publico, privado)
documentId
String Id del documento fisico al
cual va relacionado
Num_preg
String Colección de preguntas
insertadas al examen
entregado
Boolean Muestra si el examen fue
enviado o no al grupo de la
materia
Verificado
Boolean Muestra si el examen fue
verificado por el docente
Colección 6. Preguntas
CAMPO TIPO OBSERVACIONES
name
String
questions
String
place
String
date
String
time
String
observations
[Object]
company
String
project
String
createdAt
Date
toDocs
[String]
Colección 7. Registros
CAMPO TIPO OBSERVACIONES
user
String
date
Date
Colección 8. Verificaciones
CAMPO TIPO OBSERVACIONES
num
Number
description
String
check
Boolean
activityId
String
weekId
String
Colección 9. Estado-envio
CAMPO TIPO OBSERVACIONES
startDate
Date
endDate
Date
name
String
Colección 10. foros
CAMPO TIPO OBSERVACIONES
publicationDate
Date
summary
String
extraText
String
publisherName
String
publisherId
String
Colección 11. notas
CAMPO TIPO OBSERVACIONES
userId
String Id del usuario docente que
crea la nota
managementId
String Id de la gestion actual
name
String
description
String
associateCall
String
initialDate
Date
finishDAte
Date
access
String Publico, privado
startDateInscription
Date
endDateInscription
Date
Colección 12. envioDocumentos
CAMPO TIPO(Javascript) OBSERVACIONES
userId
String Id del usuario asesor que
envia los documentos
requeridos para la tarea o
examen
projectId
String Id del proyecto
name
String
description
String
initialPresentationDate
Date
initialPresentationTime
String
finishPresentationDate
Date
finishPresentationTime
String
delayPresentationTime
Number Tiempo de retraso permitido
para la entrega en horas
Colección 13. estudiante
CAMPO TIPO OBSERVACIONES
Nombre_id
String
Apellido_id
String
roI_id
String
legalAgent
Boolean
Colección 14. Usuarios
CAMPO TIPO OBSERVACIONES
username
String
email
String
password
String
7.Estructura Del Proyecto
El proyecto Umatest (Sistema de Evaluaciones en linea) presenta la siguiente estructura de
folders y archivos:
7.1. archivo .ENV
Es la definición de las variables de entorno. Podemos tener varios entornos donde vamos a mantener la
ejecución de la aplicación con varias variables que tengan valores diferentes. Temas como si estamos
trabajando con el debug activado, datos de conexión con la base de datos, servidores de envío de
correo, caché, etc. Datos de conexión con la base de datos, servidores de envío de correo, caché, etc.
7.2. archivo composer json
Que contiene información para Composer. Además en la raíz hay una serie de archivos que
tienen que ver con Git, el readme, o del lado frontend el package.json o incluso un gulpfile.js
que no vendria muy al caso comentar aquí porque no son cosas específicas de Laravel.
7.3. Carpeta Vendor
Esta carpeta contiene una cantidad de librerías externas, creadas por diversos desarrolladores
que son dependencias de Laravel. La carpeta vendor no la debemos tocar para nada, porque la
gestiona Composer, que es nuestro gestor de dependencias. Si nosotros tuviésemos que usar
una librería que no estuviera en la carpeta vendor la tendríamos que especificar en el archivo
composer.json en el campo require. Luego hacer un "composer update" para que la nueva
dependencia se instale.
7.4. Carpeta Storage
Es el sistema de almacenamiento automático del framework, donde se guardan cosas como la
caché, las sesiones o las vistas, logs, etc. Esta carpeta tampoco la vamos a tocar directamente,
salvo que tengamos que vaciarla para que todos esos archivos se tengan que generar de nuevo.
También podemos configurar Laravel para que use otros sistemas de almacenamiento para
elementos como la caché o las sesiones. En cuanto a las vistas cabe aclarar que no son las vistas
que vamos a programar nosotros, sino las vistas una vez compiladas, algo que genera Laravel
automáticamente en función de nuestras vistas que meteremos en otro lugar.
Esta carpeta contiene una cantidad de librerías externas, creadas por diversos desarrolladores
que son dependencias de Laravel. La carpeta vendor no la debemos tocar para nada, porque la
gestiona Composer, que es nuestro gestor de dependencias. Si nosotros tuviésemos que usar
una librería que no estuviera en la carpeta vendor la tendríamos que especificar en el archivo
composer.json en el campo require. Luego hacer un "composer update" para que la nueva
dependencia se instale.
7.5. Carpeta Resources
En Laravel 5 han creado esta carpeta, englobando distintos tipos de recursos, que antes
estaban dentro de la carpeta app. En resumen, en esta carpeta se guardan assets, archivos de
idioma (lang) y vistas.
Dentro de views tienes las vistas que crearás tú para el desarrollo de tu aplicación. En la
instalación básica encontrarás una serie de subcarpetas con diversos tipos de vistas que
durante el desarrollo podrias crear, vistas de emails, errores, de autenticación. Nosotros
podremos crear nuevas subcarpetas para organizar nuestras vistas. A propósito, en Laravel se
usa el motor de plantillas Blade.
7.6. Carpeta Public
Es el denominado "document root" del servidor web. Es el único subdirectorio que estará
accesible desde fuera mediante el servidor web. Dentro encontrarás ya varios archivos:
.htaccess
En el caso de Apache, este es el archivo que genera las URL amigables a buscadores. <7p>
favicon.ico
Es el icono de nuestra aplicación, que usará el navegador para el título de la página o al agregar
la página a favoritos.
index.php
Este es un archivo muy importante, que hace de embudo por el cual pasan todas las solicitudes
a archivos dentro del dominio donde se está usando Laravel. Estaría bien que abrieras ese
index.php para observar lo que tiene dentro. Para el que conozca el patrón "controlador
frontal" o "front controller" cabe decir que este index.php forma parte de él.
robots.txt
Que es algo que indica las cosas que puede y no puede hacer a la araña de Google y la de otros
motores de búsqueda. En la carpeta public podrás crear todas las subcarpetas que necesites en
tu sitio web para contener archivos con código Javascript, CSS, imágenes, etc.
7.7. Carpeta Database
Contiene las alimentaciones y migraciones de la base de datos que veremos más adelante.
7.8. Carpeta Bootstrap
Permite el sistema de arranque de Laravel, es otra carpeta que en principio no necesitamos
tocar.
7.9. Carpeta Config
Esta carpeta contiene toda una serie de archivos de configuración. La configuración de los
componentes del framework se hace por separado, por lo que encontraremos muchos archivos
PHP con configuraciones específicas de varios elementos que seguramente reconoceremos
fácilmente. La configuración principal está en app.php y luego hay archivos aparte para
configurar la base de datos, las sesiones, vistas, caché, mail, etc.
8.Modulos Del Sistema
8.1. Módulo autoform
Es el modulo encargado de la creación de formularios, este módulo se
caracteriza por generar un formulario de manera automática a partir del
Esquema de una colección. Su uso en la aplicación es de la siguiente manera:
Solo se necesita definir el template “autoform” y adicionar algunos parámetros
necesarios como ser:
 onSubmit: Es una función que se llamara cuando en el formulario se haga click
en el botón de submit.
 customValidation: Es una función que nos permite adicionar una validacion a
los campos del formulario.
 Title: El titulo del formulario
 submitButtonLabel: El nombre del botón de submit.
 cancelButtonLabel: El nombre del botón cancelar
 icon: Algun Icono necesario para el titulo
 showLabel: Si se desea que se muestren los nombres de los campos
8.2. Módulo Auntentificacion
Es encargado de validar el ingreso del usuario al sistema
 Auth: recibe los parámetros de acceso al Sistema
8.3. Módulo NuevoExamen
Modulo Encargado de la creación de un nuevo examen:
Primero ira llamando a la función validate , para corroborar los datos.
Luego se ira introduciendo los datos a los campos correspondientes, como ser:
• nombre_examen: es un campo donde se pondrá el nombre del Examen
• fecha_examen: En este campo se pondrá la fecha del nuevo examen
• puntaje_totalm: la cantidad de puntaje que valdrá el nuevo examen
8.4. Módulo EnviarExamen
Este módulo trabaja con la información que genera la creación de un nuevo
examen, ya que trabaja cuando existe creado un nuevo examen
Otra de la utilidades que realiza es que verifica que el examen fue enviado a los
estudiantes inscritos en el curso.
9.Paquetes Laravel Incluidos Al Proyecto
 adminLTE(https://almsaeedstudio.com/themes/AdminLTE/index2.html)
AdminLTE es una plantilla open source para paneles de control o dashboards
desarrollada con Bootstrap 3 , la cual nos brinda vistas reusables y responsive de
muchos componentes comunes para la parte administrativa de un proyecto.
 Crud-generator(https://packagist.org/packages/appzcoder/crud-generator)
La mayoría de nuestros proyectos utilizan modelos, vistas, controladores, entre
otros archivos comunes. Este paquete nos facilita en tiempo de creado de
módulos para manipular eventos de tipo CRUD (Create, Read, Update y Delete).
 Collective(https://laravelcollective.com)
Este paquete nos ayuda para utilizar las etiquetas dinámicas de Form y HTML
como por ejemplo: Html::style() y Form::text(), que fueron eliminados del
núcleo del framework (Illuminate.

Más contenido relacionado

La actualidad más candente

Curso Formacion Apache Solr
Curso Formacion Apache SolrCurso Formacion Apache Solr
Curso Formacion Apache SolrEmpathyBroker
 
Laboratorio de integración JFlex y CUP
Laboratorio de integración JFlex y CUPLaboratorio de integración JFlex y CUP
Laboratorio de integración JFlex y CUPEgdares Futch H.
 
Grupo#4 trabajo colaborativo1
Grupo#4 trabajo colaborativo1Grupo#4 trabajo colaborativo1
Grupo#4 trabajo colaborativo1ddiego7
 
Sistema de gestión de base de datos SQL UC
Sistema de gestión de base de datos SQL UCSistema de gestión de base de datos SQL UC
Sistema de gestión de base de datos SQL UCDaniel Gomez Jaramillo
 
Trabajo de ofimática ll 2º a Neri,Esperanza,Janet,Dulce,Guadalupe
Trabajo de ofimática ll 2º a Neri,Esperanza,Janet,Dulce,GuadalupeTrabajo de ofimática ll 2º a Neri,Esperanza,Janet,Dulce,Guadalupe
Trabajo de ofimática ll 2º a Neri,Esperanza,Janet,Dulce,GuadalupeEsperanza Briones
 
Archivos java
Archivos javaArchivos java
Archivos javatazmania2
 

La actualidad más candente (10)

Curso Formacion Apache Solr
Curso Formacion Apache SolrCurso Formacion Apache Solr
Curso Formacion Apache Solr
 
ATIX07
ATIX07ATIX07
ATIX07
 
Laboratorio de integración JFlex y CUP
Laboratorio de integración JFlex y CUPLaboratorio de integración JFlex y CUP
Laboratorio de integración JFlex y CUP
 
Selenium ff
Selenium ffSelenium ff
Selenium ff
 
Eclipse 1 3
Eclipse 1 3Eclipse 1 3
Eclipse 1 3
 
Grupo#4 trabajo colaborativo1
Grupo#4 trabajo colaborativo1Grupo#4 trabajo colaborativo1
Grupo#4 trabajo colaborativo1
 
Sistema de gestión de base de datos SQL UC
Sistema de gestión de base de datos SQL UCSistema de gestión de base de datos SQL UC
Sistema de gestión de base de datos SQL UC
 
Trabajo de ofimática ll 2º a Neri,Esperanza,Janet,Dulce,Guadalupe
Trabajo de ofimática ll 2º a Neri,Esperanza,Janet,Dulce,GuadalupeTrabajo de ofimática ll 2º a Neri,Esperanza,Janet,Dulce,Guadalupe
Trabajo de ofimática ll 2º a Neri,Esperanza,Janet,Dulce,Guadalupe
 
Archivos java
Archivos javaArchivos java
Archivos java
 
Eclipse
EclipseEclipse
Eclipse
 

Destacado (15)

Comply Global
Comply GlobalComply Global
Comply Global
 
HIET FULL
HIET FULLHIET FULL
HIET FULL
 
slideshare. antonio
 slideshare. antonio slideshare. antonio
slideshare. antonio
 
Medidas de dispersión
Medidas de dispersiónMedidas de dispersión
Medidas de dispersión
 
2. Introducción al parendizaje por libre elección
2. Introducción al parendizaje por libre elección2. Introducción al parendizaje por libre elección
2. Introducción al parendizaje por libre elección
 
What if
What ifWhat if
What if
 
Pinerolo ottobre
Pinerolo ottobrePinerolo ottobre
Pinerolo ottobre
 
EER Modeling
EER ModelingEER Modeling
EER Modeling
 
Mod2 lectura1
Mod2 lectura1Mod2 lectura1
Mod2 lectura1
 
Unidade 1
Unidade 1Unidade 1
Unidade 1
 
1 vascular anomalies
1 vascular anomalies1 vascular anomalies
1 vascular anomalies
 
My clil powerpoint
My clil powerpointMy clil powerpoint
My clil powerpoint
 
Feasibility study for Tourist Destination and Attraction
Feasibility study for Tourist Destination and AttractionFeasibility study for Tourist Destination and Attraction
Feasibility study for Tourist Destination and Attraction
 
информация зонова
информация зоноваинформация зонова
информация зонова
 
7
77
7
 

Similar a Manual tecnico umasoft

Django - Plataforma de sitios web
Django - Plataforma de sitios webDjango - Plataforma de sitios web
Django - Plataforma de sitios webjcarazo
 
[ES] Fundamentos esenciales de la plataforma java
[ES] Fundamentos esenciales de la plataforma java[ES] Fundamentos esenciales de la plataforma java
[ES] Fundamentos esenciales de la plataforma javaEudris Cabrera
 
Workshop iOS 3: Testing, protocolos y extensiones
Workshop iOS 3: Testing, protocolos y extensionesWorkshop iOS 3: Testing, protocolos y extensiones
Workshop iOS 3: Testing, protocolos y extensionesVisual Engineering
 
04 taller-django
04 taller-django04 taller-django
04 taller-djangosamerscd
 
Tutorial de eclipsee
Tutorial de eclipseeTutorial de eclipsee
Tutorial de eclipseejavierot99
 
La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2ralphkui
 
Principios de estandares abiertos s13
Principios de estandares abiertos s13Principios de estandares abiertos s13
Principios de estandares abiertos s13Maestros en Linea MX
 
Principios de estandares abiertos s13
Principios de estandares abiertos s13Principios de estandares abiertos s13
Principios de estandares abiertos s13Maestros Online
 
Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Edgar Dueñas
 
Pleased to meet you, Laravel
Pleased to meet you, LaravelPleased to meet you, Laravel
Pleased to meet you, LaravelRolando Caldas
 
Compilando un programa manualmente Java, C++, Visual Basic
Compilando un programa manualmente Java, C++, Visual BasicCompilando un programa manualmente Java, C++, Visual Basic
Compilando un programa manualmente Java, C++, Visual BasicRubnPilca
 
Seminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring InsightSeminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring InsightParadigma Digital
 
Ejercicio compiladores
Ejercicio compiladoresEjercicio compiladores
Ejercicio compiladoresSheyli Patiño
 
4035426 ejercicios-resueltos-en-pascal
4035426 ejercicios-resueltos-en-pascal4035426 ejercicios-resueltos-en-pascal
4035426 ejercicios-resueltos-en-pascalLuis Fernando Jimenez
 
ejercicios-resueltos-en-pascal
ejercicios-resueltos-en-pascalejercicios-resueltos-en-pascal
ejercicios-resueltos-en-pascalkurt9123
 

Similar a Manual tecnico umasoft (20)

Django - Plataforma de sitios web
Django - Plataforma de sitios webDjango - Plataforma de sitios web
Django - Plataforma de sitios web
 
[ES] Fundamentos esenciales de la plataforma java
[ES] Fundamentos esenciales de la plataforma java[ES] Fundamentos esenciales de la plataforma java
[ES] Fundamentos esenciales de la plataforma java
 
Tutorial de eclipse terminado yarker
Tutorial de eclipse terminado yarkerTutorial de eclipse terminado yarker
Tutorial de eclipse terminado yarker
 
Workshop iOS 3: Testing, protocolos y extensiones
Workshop iOS 3: Testing, protocolos y extensionesWorkshop iOS 3: Testing, protocolos y extensiones
Workshop iOS 3: Testing, protocolos y extensiones
 
04 taller-django
04 taller-django04 taller-django
04 taller-django
 
Atix20
Atix20Atix20
Atix20
 
Tutorial de eclipsee
Tutorial de eclipseeTutorial de eclipsee
Tutorial de eclipsee
 
Curso introductorio a Raptor.js con Node.js
Curso introductorio a Raptor.js con Node.jsCurso introductorio a Raptor.js con Node.js
Curso introductorio a Raptor.js con Node.js
 
La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2La Arquitectura De Netbeans V2
La Arquitectura De Netbeans V2
 
Maven Overview
Maven OverviewMaven Overview
Maven Overview
 
Principios de estandares abiertos s13
Principios de estandares abiertos s13Principios de estandares abiertos s13
Principios de estandares abiertos s13
 
Principios de estandares abiertos s13
Principios de estandares abiertos s13Principios de estandares abiertos s13
Principios de estandares abiertos s13
 
Deploy
DeployDeploy
Deploy
 
Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2Mis primeros pasos con Symfony 2
Mis primeros pasos con Symfony 2
 
Pleased to meet you, Laravel
Pleased to meet you, LaravelPleased to meet you, Laravel
Pleased to meet you, Laravel
 
Compilando un programa manualmente Java, C++, Visual Basic
Compilando un programa manualmente Java, C++, Visual BasicCompilando un programa manualmente Java, C++, Visual Basic
Compilando un programa manualmente Java, C++, Visual Basic
 
Seminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring InsightSeminario Spring Roo. Monitorización con Spring Insight
Seminario Spring Roo. Monitorización con Spring Insight
 
Ejercicio compiladores
Ejercicio compiladoresEjercicio compiladores
Ejercicio compiladores
 
4035426 ejercicios-resueltos-en-pascal
4035426 ejercicios-resueltos-en-pascal4035426 ejercicios-resueltos-en-pascal
4035426 ejercicios-resueltos-en-pascal
 
ejercicios-resueltos-en-pascal
ejercicios-resueltos-en-pascalejercicios-resueltos-en-pascal
ejercicios-resueltos-en-pascal
 

Último

REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfIrapuatoCmovamos
 
Los artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdfLos artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdfJC Díaz Herrera
 
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdfCritica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdfRodrigoBenitez38
 
bases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria debases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria deCalet Cáceres Vergara
 
obras-hidraulicas.docxfffffffffffffffffff
obras-hidraulicas.docxfffffffffffffffffffobras-hidraulicas.docxfffffffffffffffffff
obras-hidraulicas.docxfffffffffffffffffffJefersonBazalloCarri1
 
triptico-de-las-drogas en la adolescencia
triptico-de-las-drogas en la adolescenciatriptico-de-las-drogas en la adolescencia
triptico-de-las-drogas en la adolescenciaferg6120
 
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticAnálisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticJamithGarcia1
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitariachayananazcosimeon
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfIrapuatoCmovamos
 
El Teatro musical (qué es, cuál es su historia y trayectoria...)
El Teatro musical (qué es, cuál es su historia y trayectoria...)El Teatro musical (qué es, cuál es su historia y trayectoria...)
El Teatro musical (qué es, cuál es su historia y trayectoria...)estebancitoherrera
 
tipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicacióntipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicaciónJonathanAntonioMaldo
 
Qué es un Histograma estadístico teoria y problema
Qué es un Histograma estadístico teoria y problemaQué es un Histograma estadístico teoria y problema
Qué es un Histograma estadístico teoria y problemaJoellyAlejandraRodrg
 
LA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derechoLA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derechojuliosabino1
 
Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosssuser948499
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresamerca6
 
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdfPREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdfluisccollana
 
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,juberrodasflores
 
Técnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dentalTécnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dentalIngrid459352
 
Unidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y químicaUnidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y químicaSilvia García
 
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdfAnaBelindaArmellonHi
 

Último (20)

REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
 
Los artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdfLos artistas mexicanos con más ventas de discos en la historia (2024).pdf
Los artistas mexicanos con más ventas de discos en la historia (2024).pdf
 
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdfCritica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
Critica 1 Grupo 10 RodrigoBenitez_GinaGadea_AlexisGonzález.pdf
 
bases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria debases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria de
 
obras-hidraulicas.docxfffffffffffffffffff
obras-hidraulicas.docxfffffffffffffffffffobras-hidraulicas.docxfffffffffffffffffff
obras-hidraulicas.docxfffffffffffffffffff
 
triptico-de-las-drogas en la adolescencia
triptico-de-las-drogas en la adolescenciatriptico-de-las-drogas en la adolescencia
triptico-de-las-drogas en la adolescencia
 
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de CyclisticAnálisis de datos en acción: Optimizando el crecimiento de Cyclistic
Análisis de datos en acción: Optimizando el crecimiento de Cyclistic
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
 
El Teatro musical (qué es, cuál es su historia y trayectoria...)
El Teatro musical (qué es, cuál es su historia y trayectoria...)El Teatro musical (qué es, cuál es su historia y trayectoria...)
El Teatro musical (qué es, cuál es su historia y trayectoria...)
 
tipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicacióntipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicación
 
Qué es un Histograma estadístico teoria y problema
Qué es un Histograma estadístico teoria y problemaQué es un Histograma estadístico teoria y problema
Qué es un Histograma estadístico teoria y problema
 
LA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derechoLA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derecho
 
Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datos
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresa
 
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdfPREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
 
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
 
Técnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dentalTécnica palatina baja, anestesiología dental
Técnica palatina baja, anestesiología dental
 
Unidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y químicaUnidad 3 Elementos y compuestos. Física y química
Unidad 3 Elementos y compuestos. Física y química
 
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
2 PROCESO ESTADISTICO PARA LA INVESTIGACION.pdf
 

Manual tecnico umasoft

  • 1. Indice 1. Introducción………………………………………………………………………………………….. 2. Propósito………………………………………………………………………………………………. 3. Alcance…………………………………………………………………………………………………. 4. Especificaciones Técnicas……………………………………………………………………… 5. Documentos de Referencia…………………………………………………………………… 6. Diccionario de Datos…………………………………………………………………………….. 7. Instalación……………………………………………………………………………………………. 8. Desplegar la aplicación…………………………………………………………………………. 9. Estructura del Proyecto………………………………………………………………………… 10.Módulos del Sistema…………………………………………………………………………….. 11.Paquetes de Laravelincluidos al Sistema………………………………………………
  • 2. Manual Técnico 1.Introducción El presente manual técnico tiene como finalidad mostrar las tecnologías que fueron usadas para desarrollar el Sistema Umatest (Sistema de Evaluación de Exámenes En línea), breve manual para preparar los ambientes de desarrollo del proyectos, así como también referencias y documentación de paquetes de Laravel 5.1 que se usan actualmente en el proyecto. La implementación de UMATEST en ambientes web se basa en el framework Laravel, una plataforma para crear aplicaciones web en tiempo real construida sobre PHP. Laravel se localiza entre la base de datos de la aplicación y su interfaz de usuario y se encarga que las dos partes estén sincronizadas. Como Laravel usa PHP, El resultado es una plataforma muy potente y muy sencilla ya que Laravel abstrae muchas de las molestias y dificultades que nos encontramos habitualmente en el desarrollo de aplicaciones web. Como mención especial, podemos decir que utiliza Eloquent, que es una base de datos orientada a Objetos. Esto quiere decir Que la manipulación de datos se lo realiza bajo este paradigma. 2.Propósito El propósito del presente es dar a conocer todas las tecnologías que fueron usadas para implementar el sistema UMATEST.
  • 3. 3.Alcance El alcance del presente documento es de proveer información importante acerca del Sistema SAETIS (Sistema de Apoyo a la Empresa TIS), como ser tecnologías usadas, pasos para la instalación de un ambiente de desarrollo, además de referencias a la documentación de las tecnologías que fueron usadas para implementar dicho sistema. 4.Especificaciones Técnicas Sistema Operativo: Windows 7, 8.1, 10 o GNU/Linux 16.04 o versiones superiores Base de datos: MySQL Leguaje de Programación: PHP 5.6, HTML5, CSS3, Framework (Laravel 5.1), JavaScript, Jquery Navegador Web: Google Chrome, IE, Firefox, Opera IDE: Sublime Text 3 5.Documentación de referencia Laravel: http://docs.laravel.com/#/basic/ Trello: https://trello.com/ GIT: http://git-scm.com/documentation/ 6.Diccionario de Datos A continuación se detallan todas las colecciones del sistema Umatest.
  • 4. Colección 1. Variables del sistema CAMPO TIPO OBSERVACIONES _id String Identificador autogenerado por Laravel num Number variable autogenerado por Laravel state Number Solo permite los valores [0, 1,2] que representan ['No iniciada', 'En progreso', 'Finalizado'] respectivamente. role_id Int Representa el rol que desempeña dentro del sistema el usuario Colección 2. Administrador CAMPO TIPO OBSERVACIONES nombre_user String Nombre del usuario apellido_user String genero_user String password_user String
  • 5. Colección 3. Registro CAMPO TIPO OBSERVACIONES Id_user String _id del usuario nombre_user String apellido_user String email_user String telefono_user Number Dirección_user String Id_acceso String _id que se encarga del acceso del administrador Id_student [String] _id’s de los estudiantes que están registrados en la materia Enabled Boolean Indica si la materia ha sido habilitada o no adviser String _id del docente habilitado por el administrador task String _id de la tarea asignada en el grupo del docente Colección 4. backups CAMPO TIPO OBSERVACIONES num Number description String
  • 6. check Boolean activityId String _id de la Actividad a la que pertenece este entregable weekId String _id de la Semana a la que pertenece este entregable Colección 5. Examenes CAMPO TIPO OBSERVACIONES collection String Nombre de la colección de datos a la que perteneceria el Examen(ProjectDocument, GlobalDocument) key String Id llave para relacionar con colección correspondiente access String Tipo de acceso del documento(publico, privado) documentId String Id del documento fisico al cual va relacionado Num_preg String Colección de preguntas insertadas al examen entregado Boolean Muestra si el examen fue enviado o no al grupo de la materia Verificado Boolean Muestra si el examen fue verificado por el docente Colección 6. Preguntas CAMPO TIPO OBSERVACIONES
  • 7. name String questions String place String date String time String observations [Object] company String project String createdAt Date toDocs [String] Colección 7. Registros CAMPO TIPO OBSERVACIONES user String date Date Colección 8. Verificaciones CAMPO TIPO OBSERVACIONES num Number description String check Boolean
  • 8. activityId String weekId String Colección 9. Estado-envio CAMPO TIPO OBSERVACIONES startDate Date endDate Date name String Colección 10. foros CAMPO TIPO OBSERVACIONES publicationDate Date summary String extraText String publisherName String publisherId String Colección 11. notas CAMPO TIPO OBSERVACIONES userId String Id del usuario docente que crea la nota managementId String Id de la gestion actual name String
  • 9. description String associateCall String initialDate Date finishDAte Date access String Publico, privado startDateInscription Date endDateInscription Date Colección 12. envioDocumentos CAMPO TIPO(Javascript) OBSERVACIONES userId String Id del usuario asesor que envia los documentos requeridos para la tarea o examen projectId String Id del proyecto name String description String initialPresentationDate Date initialPresentationTime String finishPresentationDate Date
  • 10. finishPresentationTime String delayPresentationTime Number Tiempo de retraso permitido para la entrega en horas Colección 13. estudiante CAMPO TIPO OBSERVACIONES Nombre_id String Apellido_id String roI_id String legalAgent Boolean Colección 14. Usuarios CAMPO TIPO OBSERVACIONES username String email String password String 7.Estructura Del Proyecto El proyecto Umatest (Sistema de Evaluaciones en linea) presenta la siguiente estructura de folders y archivos:
  • 11. 7.1. archivo .ENV Es la definición de las variables de entorno. Podemos tener varios entornos donde vamos a mantener la ejecución de la aplicación con varias variables que tengan valores diferentes. Temas como si estamos trabajando con el debug activado, datos de conexión con la base de datos, servidores de envío de correo, caché, etc. Datos de conexión con la base de datos, servidores de envío de correo, caché, etc. 7.2. archivo composer json Que contiene información para Composer. Además en la raíz hay una serie de archivos que tienen que ver con Git, el readme, o del lado frontend el package.json o incluso un gulpfile.js que no vendria muy al caso comentar aquí porque no son cosas específicas de Laravel. 7.3. Carpeta Vendor
  • 12. Esta carpeta contiene una cantidad de librerías externas, creadas por diversos desarrolladores que son dependencias de Laravel. La carpeta vendor no la debemos tocar para nada, porque la gestiona Composer, que es nuestro gestor de dependencias. Si nosotros tuviésemos que usar una librería que no estuviera en la carpeta vendor la tendríamos que especificar en el archivo composer.json en el campo require. Luego hacer un "composer update" para que la nueva dependencia se instale. 7.4. Carpeta Storage Es el sistema de almacenamiento automático del framework, donde se guardan cosas como la caché, las sesiones o las vistas, logs, etc. Esta carpeta tampoco la vamos a tocar directamente, salvo que tengamos que vaciarla para que todos esos archivos se tengan que generar de nuevo. También podemos configurar Laravel para que use otros sistemas de almacenamiento para elementos como la caché o las sesiones. En cuanto a las vistas cabe aclarar que no son las vistas que vamos a programar nosotros, sino las vistas una vez compiladas, algo que genera Laravel automáticamente en función de nuestras vistas que meteremos en otro lugar. Esta carpeta contiene una cantidad de librerías externas, creadas por diversos desarrolladores que son dependencias de Laravel. La carpeta vendor no la debemos tocar para nada, porque la gestiona Composer, que es nuestro gestor de dependencias. Si nosotros tuviésemos que usar una librería que no estuviera en la carpeta vendor la tendríamos que especificar en el archivo composer.json en el campo require. Luego hacer un "composer update" para que la nueva dependencia se instale. 7.5. Carpeta Resources En Laravel 5 han creado esta carpeta, englobando distintos tipos de recursos, que antes estaban dentro de la carpeta app. En resumen, en esta carpeta se guardan assets, archivos de idioma (lang) y vistas. Dentro de views tienes las vistas que crearás tú para el desarrollo de tu aplicación. En la instalación básica encontrarás una serie de subcarpetas con diversos tipos de vistas que
  • 13. durante el desarrollo podrias crear, vistas de emails, errores, de autenticación. Nosotros podremos crear nuevas subcarpetas para organizar nuestras vistas. A propósito, en Laravel se usa el motor de plantillas Blade. 7.6. Carpeta Public Es el denominado "document root" del servidor web. Es el único subdirectorio que estará accesible desde fuera mediante el servidor web. Dentro encontrarás ya varios archivos: .htaccess En el caso de Apache, este es el archivo que genera las URL amigables a buscadores. <7p> favicon.ico Es el icono de nuestra aplicación, que usará el navegador para el título de la página o al agregar la página a favoritos. index.php Este es un archivo muy importante, que hace de embudo por el cual pasan todas las solicitudes a archivos dentro del dominio donde se está usando Laravel. Estaría bien que abrieras ese index.php para observar lo que tiene dentro. Para el que conozca el patrón "controlador frontal" o "front controller" cabe decir que este index.php forma parte de él. robots.txt Que es algo que indica las cosas que puede y no puede hacer a la araña de Google y la de otros motores de búsqueda. En la carpeta public podrás crear todas las subcarpetas que necesites en tu sitio web para contener archivos con código Javascript, CSS, imágenes, etc. 7.7. Carpeta Database
  • 14. Contiene las alimentaciones y migraciones de la base de datos que veremos más adelante. 7.8. Carpeta Bootstrap Permite el sistema de arranque de Laravel, es otra carpeta que en principio no necesitamos tocar. 7.9. Carpeta Config Esta carpeta contiene toda una serie de archivos de configuración. La configuración de los componentes del framework se hace por separado, por lo que encontraremos muchos archivos PHP con configuraciones específicas de varios elementos que seguramente reconoceremos fácilmente. La configuración principal está en app.php y luego hay archivos aparte para configurar la base de datos, las sesiones, vistas, caché, mail, etc. 8.Modulos Del Sistema 8.1. Módulo autoform Es el modulo encargado de la creación de formularios, este módulo se caracteriza por generar un formulario de manera automática a partir del Esquema de una colección. Su uso en la aplicación es de la siguiente manera:
  • 15. Solo se necesita definir el template “autoform” y adicionar algunos parámetros necesarios como ser:  onSubmit: Es una función que se llamara cuando en el formulario se haga click en el botón de submit.  customValidation: Es una función que nos permite adicionar una validacion a los campos del formulario.  Title: El titulo del formulario  submitButtonLabel: El nombre del botón de submit.  cancelButtonLabel: El nombre del botón cancelar  icon: Algun Icono necesario para el titulo  showLabel: Si se desea que se muestren los nombres de los campos 8.2. Módulo Auntentificacion Es encargado de validar el ingreso del usuario al sistema
  • 16.  Auth: recibe los parámetros de acceso al Sistema 8.3. Módulo NuevoExamen Modulo Encargado de la creación de un nuevo examen:
  • 17. Primero ira llamando a la función validate , para corroborar los datos. Luego se ira introduciendo los datos a los campos correspondientes, como ser: • nombre_examen: es un campo donde se pondrá el nombre del Examen • fecha_examen: En este campo se pondrá la fecha del nuevo examen • puntaje_totalm: la cantidad de puntaje que valdrá el nuevo examen 8.4. Módulo EnviarExamen Este módulo trabaja con la información que genera la creación de un nuevo examen, ya que trabaja cuando existe creado un nuevo examen Otra de la utilidades que realiza es que verifica que el examen fue enviado a los estudiantes inscritos en el curso.
  • 18. 9.Paquetes Laravel Incluidos Al Proyecto  adminLTE(https://almsaeedstudio.com/themes/AdminLTE/index2.html) AdminLTE es una plantilla open source para paneles de control o dashboards desarrollada con Bootstrap 3 , la cual nos brinda vistas reusables y responsive de muchos componentes comunes para la parte administrativa de un proyecto.  Crud-generator(https://packagist.org/packages/appzcoder/crud-generator) La mayoría de nuestros proyectos utilizan modelos, vistas, controladores, entre otros archivos comunes. Este paquete nos facilita en tiempo de creado de módulos para manipular eventos de tipo CRUD (Create, Read, Update y Delete).  Collective(https://laravelcollective.com) Este paquete nos ayuda para utilizar las etiquetas dinámicas de Form y HTML como por ejemplo: Html::style() y Form::text(), que fueron eliminados del núcleo del framework (Illuminate.