Easy Code
Easy Code
PROFESOR GUÍA:
AUTOR:
Página 2 de 165
3.9 ESTRATEGIAS DE PROMOCIÓN .................................................................................... 75
CAPÍTULO IV- DESARROLLO E IMPLEMENTACIÓN ............................................................ 77
4.1 MAPAS CONCEPTUALES................................................................................................ 77
4.1.1 MAPA CONCEPTUAL DEL PROBLEMA ........................................................................ 77
4.1.2 MAPA CONCEPTUAL DE LA SOLUCIÓN...................................................................... 78
4.2 MODELO DEL PROCESO DE NEGOCIO ......................................................................... 79
4.2.1 REGLAS DEL NEGOCIO ............................................................................................... 79
4.2.2 DIAGRAMAS BPMN ...................................................................................................... 80
4.2.3 DIAGRAMACIÓN UML ................................................................................................... 83
4.3 PROTOTIPO ..................................................................................................................... 89
4.4 BASE DE DATOS ............................................................................................................. 91
4.4.1 ARQUITECTURA DE BASE DE DATOS ........................................................................ 91
4.4.2 MODELO FÍSICO ........................................................................................................... 92
4.4.3 ELECCIÓN Y JUSTIFICACIÓN DEL SGBD SELECCIONADO ....................................... 93
4.4.4 TIEMPO DE RESPUESTA ............................................................................................. 94
4.5 MONITORIZACIÓN Y AFINAMIENTO ............................................................................... 97
CAPÍTULO V- IMPLEMENTACIÓN DE SOLUCIÓN ................................................................ 98
5.1 ARQUITECTURA DEL PROYECTO................................................................................. 98
5.1.1 DEFINICIÓN DE LA ARQUITECTURA ........................................................................... 98
5.1.2 APLICACIÓN DE LA ARQUITECTURA ........................................................................ 100
5.1.3 ARQUITECTURA DEL HARDWARE ............................................................................ 104
............................................................................................................................................. 106
5.1.4 ARQUITECTURA DEL SOFTWARE............................................................................. 108
5.2 PRUEBAS MODULARES................................................................................................ 110
5.2.1 UNITARIAS .................................................................................................................. 110
5.2.2 FUNCIONALES............................................................................................................ 113
5.3 PRUEBAS INTEGRALES................................................................................................ 116
5.3.1 ESTILO Y GUI.............................................................................................................. 116
5.3.2 DESEMPEÑO .............................................................................................................. 119
5.3.3 CARGA ........................................................................................................................ 120
5.3.4 RECUPERACIÓN Y TOLERANCIA A FALLAS............................................................. 121
5.3.5 COMPATIBILIDAD ....................................................................................................... 123
5.3.6 INTEGRIDAD DE DATOS Y SEGURIDAD / CONTROL DE ACCESO .......................... 124
5.3.7 INSTALACIÓN ............................................................................................................. 125
5.3.8 BETA ........................................................................................................................... 127
5.4 AUDITORIAS .................................................................................................................. 128
5.5 CALIDAD ........................................................................................................................ 131
5.5.1 SISTEMA ..................................................................................................................... 131
5.5.2 USABILIDAD................................................................................................................ 134
5.5.3 ACEPTACIÓN.............................................................................................................. 136
5.6 RESPALDOS .................................................................................................................. 139
5.7 INSTALACIÓN Y PUESTA EN MARCHA ........................................................................ 144
5.8 CAPACITACIÓN ............................................................................................................. 149
5.9 MANUALES .................................................................................................................... 151
5.9.1 INSTALACIÓN ............................................................................................................. 151
5.9.1 USUARIO .................................................................................................................... 153
CAPÍTULO VI- CONCLUSIONES ......................................................................................... 158
CAPÍTULO VII- BIBLIOGRAFÍA ............................................................................................ 159
CAPÍTULO VIII- ANEXOS ..................................................................................................... 160
Página 3 de 165
Introducción-EasyCode
Para comenzar, se da a conocer uno de los grandes problemas que existen en las
universidades, la reprobación de las asignaturas base de las carreras impartidas. En
este caso se toma con mayor atención el área de informática, las asignaturas
Introducción a la Programación y/o Análisis y Diseño Orientado a Objetos y Base de
Datos
Para poder dar solución a este problema y dar una mejora a los alumnos de las
universidades se plantea el diseño y la implementación de una aplicación para el
aprendizaje didáctico y que pueda desarrollar la lógica de la Programación.
La mayor parte de los alumnos no comprende con facilidad los libros, les aburre y
prefiere algo más armonioso y entretenido para poder aprender por eso se pretende
el aprendizaje didáctico que tiene como objeto de estudio los procesos y elementos
existentes en la enseñanza.
Es relevante tener en cuenta un planteamiento de ayuda a los alumnos para así tener
logros mejores conocimientos y beneficios a futuro.
Los alumnos ponen más atención y logran entender mejor la materia si esta se
muestra de una manera divertida, para así volver el proceso de aprendizaje algo
menos tedioso, en donde sea el mismo alumno el que tenga deseos de continuar
aprendiendo, y comprendiendo.
Además si el alumno puede ejercitar diariamente con la ayuda de una aplicación web
sin tener que esperar cada clase, ya que en éstas el tiempo es demasiado limitado,
las posibilidades de aprobar aumentan.
Página 4 de 165
Capítulo I – Perfil del Proyecto
1.1 Resumen ejecutivo
La mayor parte de los alumnos no comprende con facilidad los libros, les aburre y
prefiere algo más armonioso y entretenido para poder aprender por eso se pretende
el aprendizaje didáctico que tiene como objeto de estudio los procesos y elementos
existentes en la enseñanza. En consecuencia la Pedagogía estudia a la educación
como fenómeno complejo y multirreferencial, lo que indica que existen conocimientos
provenientes de otras ciencias y disciplinas que le pueden ayudar a comprender lo
que es la educación.
Es relevante tener en cuenta un planteamiento de ayuda a los alumnos para así lograr
mejores conocimientos y beneficios a futuro. Los alumnos prestan más atención y
logran un mejor entendimiento de la materia si esta se muestra de una manera
divertida y llamativa, para así volver el proceso de aprendizaje algo menos tedioso, en
donde sea el mismo alumno el que tenga deseos de continuar aprendiendo, y
comprendiendo.
Página 5 de 165
1.2 Antecedentes Generales
Al analizar con detalles los problemas a los que se enfrentan los alumnos cuando comienzan
una carrera o incluso durante ella, se puede revelar el alto porcentaje de reprobación de las
asignaturas, se toma como referencia en las carreras de ingeniería en informática o analista
programador de la Universidad Tecnológica de Chile Inacap, la cual como ramo base tiene:
Introducción a la programación y/o Análisis y Diseño Orientado a Objetos y Base de Datos.
Según datos de la misma institución, alrededor del 60% de los alumnos que cursan esta
carrera reprueban este ramo, cifra alarmante que lleva a la pregunta.
Por esto al buscar en la web alguna página o aplicación que ayude a los alumnos con este
ramo, solo se encontró código y aplicaciones para aprender a programar.
Codecademy (cursos para aprender a programar), CodeSpells (video juego que préndete
enseñar java) son las dos aplicación más convincentes y de más ayuda, pero solo enseñan el
código de la programación y no la lógica que se requiere para encontrar la solución de los
problemas.
Página 6 de 165
1.5 Resultados y logros esperados
La Meta es mejorar el rendimiento académico de los alumnos entregando una
herramienta útil y práctica para su desempeño.
Reducir la tasa de desaprobación del ramo.
Además se espera que el proyecto se expanda y tome todas las bases de las carreras
y los ramos con más índice de reprobación.
Expandir EasyCode a todas las universidades o institutos que imparten estas carreras
para mejorar el aprendizaje en los alumnos.
1.4 Descripción y delimitación del problema, se reconocen los principales afectados por el
problema y la posible solución a este.
1.6 Alcances y limitaciones del proyecto, quien será beneficiado y quienes podrán usar la
aplicación, además de las restricciones.
Página 8 de 165
Capítulo II – Definición del Proyecto
2.1 Nombre del proyecto
La mayor parte de los alumnos no comprende con facilidad los libros, les aburre y prefiere
algo más armonioso y entretenido para poder aprender por eso se pretende el aprendizaje
didáctico que tiene como objeto de estudio los procesos y elementos existentes en
la enseñanza.
Es relevante tener en cuenta un planteamiento de ayuda a los alumnos para así tener lograr
mejores conocimientos y beneficios a futuro.
Los alumnos ponen más atención y logran entender mejor la materia si esta se muestra de
una manera divertida, para así volver el proceso de aprendizaje algo menos tedioso, en donde
sea el mismo alumno el que tenga deseos de continuar aprendiendo, y comprendiendo.
Además si el alumno puede ejercitar diariamente con la ayuda de una aplicación web sin
tener que esperar cada clase, ya que en éstas el tiempo es demasiado limitado, las
posibilidades de aprobar aumentan.
Página 9 de 165
2.3 Unidades afectadas
A quienes afecta:
El problema afecta en general los alumnos que a lo largo de su proceso de educación pierden
interés en sus estudios por no poder entender o comprender las materias planteadas por los
profesores.
Como los afecta:
En muchos de los casos estos alumnos abandonan el ramo dejándolo para más adelante o
de manera extrema prefieres retirarse de la carrera por que pierden la motivación vocacional
a verse enfrentados al problema de no poder entender sus materias
Táctica
Operacional
Figura II.1”Clasificación de los SI”
Administración estratégica: Tienen una visión global del negocio. Aquí se realiza el
planeamiento estratégico y las tareas de dirección. El tipo de decisiones que se toman, en
general, son no programadas.
Una vez planteado los niveles de la pirámide organizacional de los sistemas de información
pasamos a clasificar nuestro proyecto. Bueno nuestro proyecto se encuentra en el nivel
estratégico ya que estamos dando un nivel de visión general del proyecto ejecutando
investigaciones y analizando cual es la mejor forma de llevarlo a cabo para poder insértalo
de manera inmediata.
2.7.2 Específicos
El proyecto EasyCode pretende llegar a diseña y e implementar una aplicación web
para los alumnos de la aérea de informática u otras aéreas, esto es para que aprendan
la lógica de la programación con el fin de poder ser en un futuro unos excelentes
programadores y resolver cualquier problema que se presente.
Esta aplicación web será amigable y didáctica para los alumnos ya que posee un
aprendizaje en niveles, proporcionando metas para estos.
Constará un seguimiento del aprendizaje esperado, siendo así una herramienta para
saber sus debilidades y fortalezas.
Página 11 de 165
2.10 Beneficios esperados del Proyecto
Página 12 de 165
2.12 Supuestos del proyecto
EasyCode es una aplicación web para el aprendizaje del aérea de informática esta
herramienta será de gran apoyo para los alumnos que no le gusta aprender mediante
manuales o libros de programación, para lo cual la aplicación se mostrara de forma
amigable y didáctica para lograr el aprendizaje.
Para los docentes esta aplicación será de gran apoyo para el rendimientos de los
alumnos, además este podrá entregar fácilmente el material de estudio logrando una
disminución en la reprobación de las asignaturas.
Para las instituciones que tengan esta aplicación, servirá como material de apoyo
para el aprendizaje.
Página 13 de 165
2.15 Producto a entregar
Se hará entrega de un sistema de aprendizaje a la lógica de la programación alojado en un
hosting. Donde los alumnos y docentes podrán ingresar mediante una página web con
conexión a internet.
Página 14 de 165
2.16 Metodología
El Scrum es un proceso Ágil que se usa para minimizar los riesgos durante la realización de
un proyecto, pero de manera colaborativa.
Entre las ventajas se encuentra la productividad, calidad y que se realiza un seguimiento diario
de los avances del proyecto, logrando que los integrantes estén unidos, comunicados y que
el cliente vaya viendo los avances.
Se basa en construir primero la funcionalidad de mayor valor para el cliente y en los principios
de inspección continua, adaptación, auto-gestión e innovación.
Scrum gestiona estas iteraciones a través de reuniones diarias, uno de los elementos
fundamentales de esta metodología.
Scrum se puede dividir de forma general en 3 fases, que podemos entender como reuniones.
Las reuniones forman parte de los artefactos de esta metodología junto con los roles y los
elementos que lo forman.
Página 15 de 165
Reuniones:
Revisión del Sprint: Cuando se finaliza el Sprint se realiza una revisión del incremento
que se ha generado. Se presentarán los resultados finales y una demo o versión, esto
ayudará a mejorar el FeedBack con el cliente.
Roles:
ScrumMaster(Victoria Banda):
o Encargada de eliminar los obstáculos que impiden que el equipo alcance el
objetivo del sprint.
o Actúa como una protección entre el equipo y cualquier influencia que le
distraiga.
o Se asegura de que el proceso Scrum se utiliza como es debido.
o Hace que las reglas se cumplan.
Equipo de Desarrollo(Gabriel Carrasco-Cristopher Valencia-Juan Cerpa)
o El equipo tiene la responsabilidad de entregar el producto.
o Un pequeño equipo de 3 personas con las habilidades transversales
necesarias para realizar el trabajo análisis, diseño, desarrollo, pruebas,
documentación.
Stakeholders (Alumnos, Docentes, Universidades y/o Instituciones)
o Se refiere a la gente que hace posible el proyecto y para quienes el proyecto
producirán el beneficio acordado que justifica su producción. Sólo participan
directamente durante las revisiones del sprint.
Administradores (Gabriel Carrasco- Victoria Banda)
o Establecen el ambiente para el desarrollo del producto
Página 16 de 165
Esquema de la Metodología Scrum al proyecto EasyCode
Reunión diaria con el equipo no más de 15 minutos, preguntas claves: ¿Qué trabajo
se realizó desde la reunión anterior?, ¿Qué trabajo se hará hasta una nueva reunión?,
¿Inconvenientes que han surgido y qué hay que solucionar para poder continuar?
El Sprint revisa el desarrollo del proyecto donde el Scrum Master asegura que el
proceso Scrum se utiliza como es debido.
Una vez hayan sido desarrolladas todas las tareas, se muestra el trabajo al cliente,
quien es el encargado de aprobar o no el Sprint.
Página 17 de 165
Para el desarrollo de la fase de aprobación de EasyCode se utilizará el uso de metodologías
agiles que son seis fases definidas en función de los recursos necesarios.
Página 18 de 165
Cuadro Comparativo de la Metodología a elección:
Tipo Metodología Metodología Metodología Metodología
Ágil Ágil Empresariales Empresariales
Nombre Metodología Metodología XP Metodología Metodología
Scrum Evolutivo Incremental
Descripción Se basa en Se basa en el Busca Es una unión de
Breve construir primero trabajo reemplazar el las mejores
la funcionalidad orientado viejo sistema que funcionalidades
de mayor valor directamente al tendría la del modelo de
para el cliente y objeto, propiedad de cascada y del
en los principios basándose para satisfacer los modelo de
de inspección esto en la nuevos prototipo.
continua, velocidad de requerimientos
adaptación, reacción para la más rápido
Auto-gestión e implementación posible.
innovación.
Relación Trabaja Trabaja Trabaja con el Trabaja con el
Cliente- estrechamente estrechamente usuario a medida usuario a
Desarrollador con los clientes. con los clientes. que avanza en el medida que
Con revisiones proyecto. avanza en el
periódicas de proyecto.
avanzases.
Tipo de Aplicaciones Aplicación Empresarial Empresarial.
Software Web y Móviles Móviles
Página 19 de 165
2.17 Ciclo de Vida
Para lo cual se consideró no más 3 semanas para la entrega de versiones del proyecto al
cliente y realizar las modificaciones según los requisitos que él estime, además se
contemplarán reuniones diarias de no más de 15 minutos, para conocer los avances del
proyecto, los problemas que se vayan presentando y las posibles soluciones, también se
consideró realizar un Sprint para cada etapa del proyecto y su respectivo entregable, es decir
las nuevas versiones del proyecto EasyCode.
Página 20 de 165
1. Especificación de los Requerimientos Sprint 1
FeedBack Requerimientos
En este Sprint se realiza toma de requerimientos en las reuniones con el cliente y se genera
la lista de requerimientos según su nivel de importancia y se desarrolla un prototipo de sistema
aprendizaje EasyCode, del cual se espera tomar nuevos requerimientos para realizar las
modificaciones que considere el cliente, para el próximo entregable.
Requerimientos considerados para esta versión 0: se considera una versión 0 ya que aquí se
entrega un prototipo del sistema basado en el diseño.
FeedBack Requerimientos
Página 21 de 165
Requerimientos considerados para la versión 2.0:
1. Inicio de sesión.
2. Registro de alumnos y docentes.
3. Revisión de contenido.
4. Diseño del juego.
5. Tipos de juegos según contenido.
3. Ejecución del Software Sprint 3
FeedBack Requerimientos
Como se aplica al proyecto: La ISO 9004; Se cumple con las reuniones diarias que tiene el
equipo de desarrollo, ya que el objetivo de estas reuniones es analizar las tareas que tiene
cada uno para determinadas fechas, evaluando si se está en presencia de alguna
complicación en las tareas solicitadas, además se dan ideas de solución a los problemas que
se presenten entre todos los integrantes del equipo de trabajo, de esta forma se fortalece la
comunicación del grupo.
3. Guía ISO 9000-3: guía para aplicar ISO 9001 al desarrollo, suministro y mantenimiento
de software.
4. La ISO 17799
Página 23 de 165
Existen también estándares para otras actividades relacionadas con la calidad como
pruebas, verificación y validación, revisiones, etc. Los principales se recogen en lo siguiente:
Como aplican al proyecto: Los estándares IEEE se cumplen con las distintas metódicas de
trabajo, siendo estas canalizadas a cumplir calidad con las contantes retroalimentaciones con
el cliente y con el control de versiones, para lo cual se consideró documentar todas las
actividades de desarrollo, se estimó encriptar la base de datos, generar contraseñas por
defecto que deberán ser modificadas en el primer inicio de sesión.Por otra parte se consideran
planes de seguridad, mediante constantes respaldos y documentación del sistema según los
protocolos de desarrollo que se adoptaron para este proyecto.
Página 24 de 165
2.20 Políticas de Desarrollo.
Para el manejo y comprensión del software se muestran las diferentes políticas a utilizar.
1. Políticas de Documentación
Los documentos generados serán guardados con la siguiente sigla:
EasyCode.Nombre_Fecha_Versión_Creador.formato
o Ejemplo:
EasyCode.DiagramaUML_14-06-15_v2_Carrasco.doc
1. Nombre: Nombre del Documento.
2. Fecha: Fecha de Creación del documento.
3. Versión: Versión del documento en caso de existir copias.
4. Creador: Nombre del Creador del documento (Apellido).
5. Formato: Formato de los documentos estos pueden ser Adobe Reader (.pdf)
Microsoft Word (.doc) Microsoft Excel (.xls).
2. Políticas de Codificación
Debe generarse documentación de cada clase explicando de manera sencilla
que realiza o cuál es su función.
Las funciones deben de estar comentadas explicando que es lo que realiza en
una sola línea.
La declaración de variables debe ser clara y con un nombre según lo determine
o Ejemplo:
Int Suma;
La asignación de las clases serán escritas con la primera letra en mayúscula y
si tiene más de una palabra se separa con un guion bajo.
o Ejemplo:
Docente.
Inventario_Docente.
El software debe ser realizado de manera ordenada creando carpetas para los
diferentes niveles ya sea estas como (Imágenes, Alumnos, etc.)
o Ejemplo:
/Formulario
/Inventarios
/Docentes
/Alumnos.
Para cada trabajo de desarrollo o modificación del software el programador
deberá documentar estos eventos dejando en claro el área que modifico y la
fecha exacta de este acto, también debe realizar un respaldo previo del
software y de la base de datos
Página 25 de 165
Se documentará cada tabla con su respectivo nombre y sus atributos con sus
nombres, extensiones y longitudes.
La creación de nuevas tablas deberá regiré por este formato planteado.
4. Políticas de Pruebas
Plantilla Prueba
Encargado
Versión Software
Fecha
Nombre
Propósito
Prerrequisitos
Entrada
Resultado
Módulos Asociados
Página 26 de 165
5. Políticas de Calidad
EasyCode compromete cumplir los estándares y las expectativas de los
clientes de manera de cumplir con aquella satisfacción hacia ellos, por lo cual
se deberá cumplir lo siguiente:
o Los clientes serán notificados cuando se realicen modificaciones del
software.
o Se mantendrá una comunicación directa con el cliente para mantener
el contenido de los cursos actualizados y que este cumpla sus
requerimientos y estándares.
o Los datos de los clientes, usuarios o todo aquel que ocupe nuestro
sistema se respetara la confiabilidad de sus antecedentes y datos
personales.
Plantilla Calidad
Encargado
Versión Software
Fecha
Nombre
Propósito
Prerrequisitos
Módulos Asociados
Página 27 de 165
8. Políticas de Control de Versiones
9. Políticas de Comunicación
Página 28 de 165
2.21 Marco Teórico
2.21.1 Marco Referencial
Existe una amplia gama de software educativo, desde aplicaciones WEB hasta aplicaciones
de escritorio.
Se pueden encontrar software educativos gratuitos o de pago, la mayoría son de tipo
específico, es decir que tratan una temática concreta (matemáticas, inglés, lenguaje, etc.).
Cuentan con un gran nivel en las materias tratadas, pero no son personalizables por lo que
el docente no puede alcanzar otros objetivos que no sean los ya definido por los creadores
del software. Con el avance de las tecnologías se crearon aplicaciones que almacenan
resultados, para luego ser vista por el docente.
Para esto se necesita una computadora por alumno para realizar las actividades propuestas
del juego.
Por lo tanto el software educativo es un conjunto de actividades, juegos, entornos,
herramientas de creación. Un software "educativo" que, en determinadas edades y momentos
del aula, puede constituir un recurso importante tanto para el acercamiento al uso de las Tics
y la adquisición de competencias digitales como para el aprendizaje, repaso o refuerzo de
determinados contenidos.
Entre las que se destacan las siguientes:
Conjunto de Actividades
Nombre Logo Descripción
Es un conjunto de más de 100
actividades educativas. Entre
ellas:
Descubriendo la computadora:
teclado, ratón, diferentes
movimientos del ratón.
Álgebra: tabla de memoria,
enumeración, tabla de doble
entrada (balance), imagen
espejo.
Ciencia: El canal, El ciclo del
GCompris agua, El submarino.
Geografía: Coloca los países
en el mapa.
Juegos: ajedrez, memoria,
sonidos, colores.
Lectura: práctica de lectura
Otros: Aprende a decir la hora,
Rompecabezas de pinturas
famosas, dibujos por vectores
Página 29 de 165
ChildsPlay Actividades variadas de
memoria, lenguaje, números,
sonidos, laberintos
Jclic
Un entorno para la
creación, realización y
evaluación de
actividades educativas
multimedia,
desarrollado en la
plataforma Java.
HotPotatoes Herramienta para la
creación de preguntas y
respuestas interactivas.
Página 30 de 165
Matemáticas
Nombre Descripción
TuxMath Cálculo básico para primaria.
MathWan Cálculos simples para final de primaria y
secundaria.
Kitsune Cálculo matemático. Con un conjunto de
números hay que pensar que operaciones
tenemos que hacer para encontrar un resultado
dado. Como uno de los juegos del programa
"Cifras y Letras".
Máxima y wxMaxima Álgebra computacional.
GeoGebra Software de matemáticas, libre, para enseñar y
aprender. Gráficos interactivos, álgebra y
planillas dinámicas para todos los niveles, desde
el básico escolar al universitario.
DrGeo Geometría interactiva
Ciencias en General
Nombre Descripción
SciLab Una plataforma de computación numérica.
Atomix Un juego para ordenar moléculas.
PHUN Un increíble, divertido e interactivo simulador de
física
Lenguaje
Nombre Descripción
Jumping Letters Es un ambicioso plan que pretende la
internalización de Cantaletras
Cantaletras Es un sistema multimedial para la enseñanza de
la lectura y escritura de niños ciegos cuya
característica fundamental es que se sustenta en
un modelo de triple mediación.
SueñaLetras Es un software diseñado para el apoyo del
aprendizaje de la lectura y la escritura de niños
con déficit auditivo parcial.
RoboBraille RoboBraille es una herramienta que permite
convertir documentos escritos a formatos de
audio, facilitando el acceso a información escrita
para personas con Discapacidad Visual
Página 31 de 165
La mayoría de los software de programación se basan solo en la misma programación ya sea
enseñando lenguaje mediante programas ya hechos. Por ende con esto e requiere que
aprendan desde el comienzo de la programación así los resultados esperados mejoraran
mediante la utilización del juego.
Según los estudios, un 60% de los alumnos que cursan por primera vez alguna asignatura
de programación, reprueban la asignatura por falta de desarrollo de la lógica esencial para
esta asignatura.
Estas ves este proyecto se enfocará en la carrera de ingeniería en informática, con los ramos
de Análisis y diseño orientado a objetos y Programación. Al analizar con mucho más detalle
este problema se llegó a la conclusión de que los alumnos reprueban la asignatura por falta
de desarrollo de la lógica esencial para esta asignatura, ya que ellos eran capases de
aprender el código en su totalidad pero no eran capaces de implementarlos a la hora de
programar.
Se determinó entonces que el gran fallo no era el código, sino, el fallo era la forma de
implementarlo. En otras palabras, el problema de los alumnos es la falta de la lógica de
programación.
Página 32 de 165
Para una mejor relevancia se verán las ventajas y desventajas del uso de las tics en el
aprendizaje educacional.
Tabla Comparativa
Aspectos Positivos Aspectos Negativos
Aprendizaje cooperativo: Los instrumentos que Dado que el aprendizaje cooperativo: está
proporcionan las Tics facilitan el trabajo en grupo y sustentado en las actitudes sociales, una
el cultivo de actitudes sociales ya que propician el sociedad perezosa puede influir en el
intercambio de ideas y la cooperación. aprendizaje efectivo.
Tipos de aprendizaje
Según Gómez (1996) clasifica tipos de aprendizaje más comunes citados por la literatura
de pedagogía:
Aprendizaje receptivo: en este tipo de aprendizaje el sujeto sólo necesita comprender
el contenido para poder reproducirlo, pero no descubre nada.
o Ejemplo: Leer un libro y sabes el tema del que habla pero no sabes en sí de
que trata.
Página 33 de 165
Aprendizaje por descubrimiento: el sujeto no recibe los contenidos de forma pasiva;
descubre los conceptos y sus relaciones y los reordena para adaptarlos a su esquema
cognitivo.
o Ejemplo: Un niño de 4 años tiene una cantidad ilimitada de cubos lo que el
descubre es como se usa y empieza a jugar ordenándolos o creando algo.
Aprendizaje repetitivo: En el cual el sujeto relaciona sus conocimientos previos con los
nuevos, dotándose así de coherencia respecto a sus estructuras cognitivas.
o Ejemplo: se produce cuando el alumno memoriza contenidos sin
comprenderlos o relacionarlos con sus conocimientos previos, no encuentra
significado a los contenidos estudiados.
Aprendizaje Visual: Las personas que utilizan el sistema de representación visual ven
las cosas como imágenes ya que representar las cosas como imágenes o gráficos les
ayuda a recordar y aprender.
o Ejemplo: Necesita una imagen o un ejemplo para hacer las cosas.
Didáctica
Mientras que la didáctica es definida por el Diccionario de la Academia de la Lengua, como el
arte de enseñar, algunos autores consideran la didáctica como la ciencia que trata la práctica
docente, analizando la metodología de la enseñanza y no la metodología general educativa.
Tipos de didáctica
Cabe distinguir:
Didáctica general: aplicable a cualquier individuo. Sin importar el ámbito o materia.
Didáctica diferencial: que tiene en cuenta la evolución y características del individuo.
Didáctica especial o específica: que estudia los métodos específicos de cada materia.
Página 34 de 165
Lógica Matemática
Según Agazzi (1986) lo define como: “el estudio de los sistemas formales en relación con
el modo en el que codifican conceptos intuitivos de objetos matemáticos como conjuntos,
números, demostraciones y computación. La lógica estudia las reglas de deducción formales,
las capacidades expresivas de los diferentes lenguajes formales y las propiedades
metalógicas de los mismos.”
Plataforma e-learning
En español se ha denominado como Plataforma de e-learning (en inglés LMS: Learning
Management System) a un programa de ordenador que se utiliza para la creación, gestión y
distribución de actividades formativas a través de la Web: Son aplicaciones que facilitan la
creación de entornos de enseñanza-aprendizaje, integrando materiales didácticos y
herramientas de comunicación, colaboración y gestión educativa.
Las plataformas de e-learning ofrecen ambientes de aprendizaje ya diseñados e integrados.
A ellos acceden los alumnos a través de una clave personal. Por ello, se trata de un espacio
privado, dotado de las herramientas necesarias para aprender (comunicación,
documentación, contenidos, interacción, etc.) Además, las plataformas permiten hacer un
mejor seguimiento del progreso de los alumnos.
Aplicación
"Una aplicación (también llamada app) es simplemente un programa informático creado para
llevar a cabo o facilitar una tarea en un dispositivo informático. Cabe destacar que aunque
todas las aplicaciones son programas, no todos los programas son aplicaciones. Existe
multitud de software en el mercado, pero sólo se denomina así a aquel que ha sido creado
con un fin determinado, para realizar tareas concretas"
Aplicación Web
"Una aplicación web es un programa informático que en lugar de ejecutarse en un ordenador
personal (en adelante, una aplicación de escritorio), se ejecuta parcialmente en un servidor
remoto, al que se accede a través de Internet por medio de un navegador web"(McCarkl, 2003:
384)
Información
Se define Información como: “es un conjunto de datos con un significado, o sea, que reduce
la incertidumbre o que aumenta el conocimiento de algo. En verdad, la información es un
mensaje con significado en un determinado contexto, disponible para uso inmediato y que
proporciona orientación a las acciones por el hecho de reducir el margen de incertidumbre
con respecto a nuestras decisiones” (Idalberto, 2006: 110)
Tecnología
Se define Tecnología como : “un conjunto de conocimientos técnicos, ordenados
científicamente, que permiten diseñar y crear bienes y servicios que facilitan la adaptación al
medio ambiente y satisfacer tanto las necesidades esenciales como los deseos de la
humanidad”
Tecnologías de Información
Kofi Annan, discurso inaugural de la primera fase de la WSIS (Ginebra, 2003):”Las tecnologías
de la información y la comunicación no son ninguna panacea ni fórmula mágica, pero pueden
mejorar la vida de todos los habitantes del planeta. Se dispone de herramientas para llegar a
los Objetivos de Desarrollo del Milenio, de instrumentos que harán avanzar la causa de la
libertad y la democracia y de los medios necesarios para propagar los conocimientos y facilitar
la comprensión mutua”
Página 35 de 165
Reprobación de Alumnos
Reprobar
Según el Diccionario de la Academia de la Lengua “es no obtener una calificación satisfactoria;
en otras palabras, no alcanzar el nivel necesario para considerar que una determinada prueba
haya sido superada con éxito.”
Fracaso
Según el Diccionario de la Real Academia Española (RAE) es: “un suceso lastimoso,
inopinado y funesto, según describe. Por otra parte, el concepto permite nombrar a la caída o
ruina de algo con estrépito y rompimiento”.
Procesos cognitivos: Los procesos cognitivos, por lo tanto, son los procedimientos que lleva
a cabo el ser humano para incorporar conocimientos. En dichos procesos intervienen
facultades muy diversas, como la inteligencia, la atención, la memoria y el lenguaje
Materiales didácticos: Los materiales didácticos son todos aquellos auxiliares que facilitan
el proceso de enseñanza-aprendizaje, dentro de un contexto educativo global, y estimulan la
función de los sentidos para que los alumnos accedan con mayor facilidad a la información,
adquisición de habilidades y destrezas, y a la formación de actitudes y valores. (Fernández
Editoriales 2013)
Página 36 de 165
Lenguajes Imperativos procedurales: es la aplicación quien controla qué porciones
de código se ejecuta, y la secuencia en que este se ejecuta. La ejecución de la
aplicación se inicia con la primera línea de código, y sigue una ruta predefinida a través
de la aplicación, llamando procedimientos según sea necesario.
o Ejemplo:Ada,C++,C#,VB.NET,Clarion,Delphi,Eiffel,Jave,Lexico,Objective-
C,Ocaml,Oz,PHP,PowerBuilder,Pitón,Ruby,Smalltalk.
Software: El software es una palabra que proviene del idioma inglés, pero que gracias a la
masificación de uso, ha sido aceptada por la Real Academia Española. Según la RAE, el
software es un conjunto de programas, instrucciones y reglas informáticas que permiten
ejecutar distintas tareas en una computadora.
Página 37 de 165
Internet: Internet es una red internacional de redes: International Network, es un método de
interconexión descentralizada de redes de computadoras implementado en un conjunto de
protocolos TCP/IP y garantiza que redes físicas heterogéneas funcionen como una red lógica
única, de alcance mundial.
Los algoritmos: son procedimientos específicos que señalan paso a paso la solución de un
problema y que garantizan el logro de una solución.
Existen métodos bien definidos y desarrollados para lograr una resolución efectiva de
problemas .Desarrollada por George Polya destacado Doctor en Matemática.
Las sugerencias de Polya para responder a las pregunta ¿Cómo plantear y resolver
problemas?
Entender el problema (reconociendo qué se pregunta)
Idear un plan (respondiendo a lo que se pide)
Realizar un plan (desarrollando el resultado de la respuesta)
Mirar hacia atrás (controlando qué hace y dice el resultado)
Página 38 de 165
Método de Johnson y Johnson: Metodología de Aprendizaje Cooperativo
Con el fin de exponer en forma clara el procedimiento para diseñar el texto de autoenseñanza,
es recomendable guiarse por los siguientes pasos:
a. Formulación de objetivos.
b. Elaboración del post test.
c. Elaboración de la unidad.
d. Prueba de material.
e. Perfeccionamiento de la unidad.
Página 39 de 165
2.21.3 Estudio de Mercado
Entre los softwares similares se encuentran los siguientes:
Codecademy:
Codecademy es un software de inscripción gratuita que pretende enseñar al común de las
persona el arte de la programación.
Este Software enseña de manera muy sencilla el lenguaje que se desea aprender.
La persona natural puede acceder a este software web mediante una inscripción previa que
requiero un correo y una contraseña.
Algunas de las debilidades de este software es que muchos de los curso se encuentra en
inglés y solamente parte del curso de java está en castellano y/o español, dificultando de
manera gradual a toda persona de habla hispana que desee aprender por medio de estar
plataforma.
Codecademy Funcionalidades
Restricciones
Plataforma completamente en
Inglés, lo que dificulta el
comprender manuales o
explicaciones.
Página 40 de 165
CodeSpells:
La dinámica de juego de CodeSpells convierte al jugador en un mago que llega a una lejana
tierra, cuya particularidad es que sus habitantes son gnomos.
La misión consiste en ayudar a que estos pequeños seres recuperen su magia. Como buen
mago, el jugador tendrá que aprender a leer y escribir hechizos, que esconden los
fundamentos del código Java.
Página 41 de 165
Udacity:
En la organización Udacity se emplean lecciones con tres profesionales que cometan algún
tema en específico para que los alumnos puedan comprender de manera fácil lo que se desea
aprender.
Código Facilito:
Es una aplicación donde se enseña a programar en JAVA, y C++. Además aprender Ruby,
Python, Objective-C. Aplicaciones Web: HTML5, CSS, JavaScript y jQuery, PHP además de
Ruby on Rails
Código Facilito es una aplicación en donde cualquier persona puede aprender solo
registrándose en la página web <http://codigofacilito.com/>, enseña desde la instalación de
un programa y su programación como tal mediante video tutoriales.
Es totalmente gratuita cualquier persona natural que pueda acceder a internet pueda entrar a
la página.
Página 42 de 165
Para comenzar se debe tener una cuenta o crear una y a les da opciones para poder a comer
programar.
Para que uno pueda comenzar debe elegir qué tipo de lenguaje desean aprender y seleccionar
el curso que este consta alrededor de 12 a 20 videos dependiendo del lenguaje elegido.
Donde una persona explica mostrando un video de como se hace desde el inicio a fin del
curso que se está realizando .
Página 43 de 165
Estadísticas
Esta muestra fue realizada en la Universidad Tecnológica de Chile Inacap-Santiago
Sur; Año 2012
Reprobación de Asignaturas: Cantidad de Alumnos (400):
1-Para la creación de esta aplicación web se tomó en cuenta la cantidad de alumnos que
imparten la asignatura Introducción a la Programación y/o Análisis y Diseño Orientado a
Objetos para ello se realizó un cuestionario donde refleja, si han aprobado o reprobado la
asignatura.
La gráfica nos muestra que más de la mitad de alumnos reprueban estas asignaturas siendo
así una de las asignaturas más importante en la carrera de ingeniera en informática y/o
analista programador, además con lleva a que los alumnos se atrasen en la malla curricular.
2-Para que los alumnos se integren más en lo que es la programación se realizó la siguiente
pregunta para aprender la lógica y/o programación ¿Qué es lo que prefiere para aprender a
programar?
1-Aplicación Web
2-Manuales
3-Otros: Especifique: ____________
Página 44 de 165
El 75% de los alumnos respondieron que les gustaría tener una aplicación web para aprender,
ya que así además de aprender se entretendrán con las actividades que se les presenten.
Aunque un porcentaje de alumnos aun prefiere aprender de manuales o libros ya que para
ellos es más fácil aprender.
3-¿Por qué razón cree que ha fallado en estas asignaturas de Introducción a la Programación
y/o Análisis y Diseño Orientado a Objetos?
Página 45 de 165
4-¿Cuántas veces ha cursado las asignaturas de Introducción a la Programación y/o Análisis
y Diseño Orientado a Objetos?
5-¿Cree que sería de gran apoyo del aprendizaje una aplicación web?
La gran mayoría de los alumnos prefieren una aplicación web para mejorar el aprendizaje de
la programación.
Página 46 de 165
Para obtener con mejor precisión se realizará un estudio de cuantas instituciones impartes la
carreras ya se ingeniería en informática y/o analista programador.
Gráfico N°1:Analista
Programador/Computacional/Analisis de
Sistema/Programación / Técnico en
Computación Sistemas
12
10
Cantidad de Instituciones
10 9
8
6
4 3
2
0
Universidades Instituto Profesional Centro de Formación
Técnica
Tipos de Instituciones
Página 47 de 165
2- Carreras de Ingeniería en Informática, Civil o en ejecución en informática
16
14
12 10
10
8
6
4
2
0
Universidades Instituto Profesional
Tipos de Instituciones
Página 48 de 165
Conclusión:
Para elaborar el proyecto se tomó en cuenta las necesidades de los alumnos, los problemas
que con lleva estudiar esta carrera, siendo así uno de los grandes fallas la reprobación de
asignaturas, para lo cual se tomó en consideración la asignatura que más acompleja a los
alumnos al inicio de la carrera Introducción a la Programación y/o Análisis y Diseño Orientado
a Objetos.
EasyCode es una aplicación web de aprendizaje que mediante pequeñas actividades en
diferentes etapas, el alumno podrá aprender y mejorar considerablemente en las asignaturas
teniendo en cuenta también su progreso de las actividades realizadas.
El apoyo que EasyCode quiere ofrecer es que mediante a esto cualquier persona pueda
aprender, siendo un gran herramienta para el aprendizaje.
Para la realización del proyecto EasyCode, se tomará en cuenta las siguientes características
importantes de la competencia, relevantes para la educación, las cuales se potenciarán
durante el desarrollo del proyecto:
EasyCode pretende de manera sencilla orientar al alumno a desarrollar una lógica para que
este sea capaz de poder tener una habilidad de desarrollar y solucionar problemas de manera
rápida y sencilla.
Una vez desarrollado esto en teoría se procederá a enseñar el código con enseñanzas fáciles
pero efectivas y abarcaremos muchos tipos de lenguajes y enseñanzas procurando a un futuro
poder realizar cursos de distinto tipo, materia, etc.
El lenguaje base de EasyCode será el castellano y/o español abarcando con esto toda el área
hispana que no tiene un gran conocimiento del inglés y desean aprender a programar.
Página 49 de 165
2.21.5 Metodología Empleada
Entrevistas
Se realizaron entrevistas a los docentes encargas de impartir Introducción a las Programación
y /o Análisis y Diseño Orientado a Objeto y ha pedagogo, en los cuales se preguntaron por
los métodos de enseñanzas y los contenidos para el aprendizaje.
Nombre:
Años de Experiencia:
Institución de Egreso:
Título de Egreso:
¿Cuáles son los métodos de enseñanzas?
¿Cómo motivar a los alumnos a aprender?
¿Cuáles serían las estrategias para aprender?
¿Cuáles son los contenidos de las asignaturas de Introducción a la programación y/o Análisis
y Diseño Orientado a Objeto?
¿Sera de gran utilidad un aplicación web como acompañamiento para el aprendizaje?
Encuesta
Anexo N°2 Encuesta
La presente encuesta tiene como objetivo dar a conocer como los alumnos prefieren estudiar,
cuáles son sus fallas entre otros.
Por lo tanto este material podrá ocuparse para mejorar al aprendizaje esperado por los
alumnos
Página 50 de 165
Capítulo III – Análisis de la Solución del Proyecto
Una herramienta para el uso del aprendizaje donde será de gran apoyo para
acompañar lo estudiado en clases.
Página 51 de 165
3.4 Estudio de Factibilidad de la alternativa seleccionada
3.4.1 Económica
Se considera que para el diseño, desarrollo, pruebas, implementación y puesta en
marcha del proyecto se necesita emplear un tiempo de 6 meses con jornada laboral
normal de 9 horas diarias de lunes a viernes
Activos Fijos
Activos Valor Vida Deprecia
Descripción Unidades Subtotal
Fijos Unitario Útil ción
Lenovo® Notebook
G4070 Core i3-
Notebook 4005U 4GB 500GB $309,990 2 $619,980 5 $123,996
14" Windows 8.1
Silver
Genius® Teclado MM
Teclado $5,990 2 $11,980 5 $2,396
KB-M200 Black USB
Genius® Mouse
Mouse $3,990 2 $7,980 5 $1,596
NetScroll 120 / PS2
Toshiba® Disco
Disco Duro Externo 1TB 2.5"
$59,990 2 $119,980 6 $19,997
Externo USB 3.0 Canvio Slim
II Black
Spektra® Base
Ventilador
Notebook c/ Hub $5,990 2 $11,980 4 $2,995
Externo
USB 2 Puertos
Alargador Bticino
múltiple con
Alargador $12,990 2 $25,980 8 $3,248
protección.
Total:
$1,178,780
Total
Depreci $181,708
ación:
Página 52 de 165
Actividad por Valor Sub
Horas Responsable
etapa horas Total
I.- Especificación de requerimientos.
I.I.- Reunión con Victoria
2 3 6000
el cliente Banda
I.II.- Toma de Victoria
3 3 9000
requerimientos Banda
I.III.-
Victoria
Modelamiento 2 3 6000
Banda
del proyecto
I.IV.- Diseño de Victoria
2 3 6000
propuesta Banda
II.IV.-
Gabriel
Reestructuración 8 3 24000
Carrasco
del modelo Web.
Página 53 de 165
III.- Ejecución del software Web
III.II.-
Modelamiento Victoria
120 3 410000
de la base de Banda
datos
III.I.- Desarrollo
Gabriel
de software 1350 3 1780000
Carrasco
Web
Costos Fijos Administrativos
III.III.- Índice de Gabriel
16 3 41000
errores Carrasco Pagos
III.IV- Costos Freelance Año 1
Gabriel
Corrección de 16 3 41000 por Mes
Carrasco
errores
Iniciación de
III.V- Puesta en Victoria $105,980 $105,980
90 3 120000 Actividades
Marcha Banda
Contador $50,000 $600,000
IV.- Mantenimiento Personal de
IV.I.- $25,000 $300,000
Gabriel Aseo
Verificación de 1 3 6000 Total: $180,980 $1,005,980
Carrasco
servicios
IV.II.-
Gabriel
Respaldos de 1 3 6000
Carrasco
información.
IV.III.- Soporte e Gabriel
2 3 6000
Instalación Carrasco
IV.IV.- Victoria
6 3 6000
Capacitación Banda
TOTAL 1656 15006 $2,564,000
Publicidad Subtotal
Mailing $98,900
Google AdWords $600,000
Publicar en el Diario La Tercera $667,983
Total $1,366,883
Total
Costos Fijos Administrativos $1,005,980
Ver Anexo N°3 Flujo de Caja
Publicidad $1,366,883
Costos Variables de Producción $2,189,380
Mano de Obra $2,564,000
Total $7,126,243
Página 54 de 165
3.4.2 Técnica
EasyCode es una herramienta de fácil utilización tanto para docentes como para
alumnos, con un diseño animado y una técnica de enseñanza abalada por docentes
licenciados. Así, el proyecto es factible operacionalmente.
Página 55 de 165
3.5 Análisis FODA
Fortalezas Oportunidades
Uso de Nuevas y Novedosas Tecnologías Gran apoyo de aprendizaje para los
Unity. alumnos.
Nuevo Sistema de Aprendizaje para alumnos Baja tasa de reprobación para las
cursando la carrera de informática. instituciones implementando el sistema.
Nuevas propuestas de juego para los Gran cantidad de instituciones que imparten
alumnos. la carrera de analista programador e
ingeniería en informática.
Página atractiva y novedosa.
Contenidos actualizados para el medio de
Mejoras en introducción de Metodologías de aprendizaje.
Aprendizaje.
Debilidades Amenazas
Actualización de Juegos de Programación. Se encuentre información relevante o similar
para el estudio de los juego.
Implementación de Juegos Similares al
EasyCode. Distracción y poca concentración para
aprender y estudiar los contenidos expuestos
Poco uso del juego por parte de los alumnos. en el juego.
1. Docentes y Alumnos contarán con una plataforma virtual donde el docente inscribirá a
los alumnos, para que estos puedan ingresar a los cursos disponibles.
2. Todos los contenidos están explicados de una manera sencilla, y enseñados de una
manera didáctica, para su fácil entendimiento.
4. El sistema actuará como un docente virtual con el cual los alumnos externos podrán
inscribirse para poder acceder a partes del software.
5. El sistema proveerá de un módulo de gestión de proyecto, que son los ejercicios que
los profesores colocarán para que los alumnos los visualicen y analicen.
3.6.2 No Funcionales
Este proyecto se realizará en una plataforma web, con el lenguaje de programación
PHP.
En lo que respecta a la infraestructura, el principal requerimiento es tener un
computador de escritorio y/o portátil o móviles con sistema Android con conexión a
internet.
El sistema trabajará adjunto a una base de datos de origen MySQL ya que este motor
de base de datos es el más amigable y estable para poder trabajar PHP.
Debe ser navegable en exploradores tales como Internet Explorer, Mozilla Firefox,
Chrome entre otros.
Página 57 de 165
3.7 Planificación del proyecto
3.7.1 Carta Gantt
Listado de tareas que contempla el proyecto, desde el inicio a fin, considerando que el desarrollo de las tareas, están basadas en el ciclo de vida Sprint,
en función de la metodología Scrum. El listado de tareas a través de una carta Gantt.
Parte1:
Página 58 de 165
Parte2:
Página 59 de 165
3.8 Matriz de Riesgos
Ingreso y Actividad del Proyecto: Parte 1
Página 60 de 165
Ingreso y Actividad del Proyecto: Parte 2
Página 61 de 165
Ingreso y Actividad del Proyecto: Parte 3
No poder El administrador se
ingresar al sitio encargará de tener un
por una caída servidor de respaldo No No
del servidor frente a estos
Oc Cr Ma 2 Regular 8.0 8.0
Aceptable Aceptable
principal o por problemas de
una saturación registro.
Integridad ya sea
Que el curso exactitud y
creado este completitud de los
erróneo o no datos entregados así Pe Cr At 5 Optimo Menor 1.8 Menor 1.8
existente para el como su validez,
alumnado. concordancia para la
creación de curso.
Menor 1.8
Que no exista Que al momento de
actividad en el cada actividad se
curso tenga un control de
correspondiente disponibilidad para
Pe Cr At 5 Optimo Menor 1.8 Menor 1.8
al contenido poder realizar dicha
expuesto. actividad.
Página 62 de 165
Actividad del Proyecto: Parte 1
Actividad
Eliminación de actividad
Que no exista actividad
no existente o no
Eliminar Actividad correspondiente al Improbable 2 Insignificante 1 Bajo 2
correspondiente al
alumnado.
contenido expuesto.
Modificación de
actividad por Que no exista el curso
Modificar
contenidos erróneos correspondiente al Improbable 2 Insignificante 1 Bajo 2
Actividad
correspondiente al alumnado.
contenido expuesto.
Página 63 de 165
Actividad del Proyecto: Parte 2
Que el material no
Bloquear Material corresponda a los Que no exista el material
Moderado 3 Menores 2 Moderado 6
Adicional contenidos asignados al correspondiente al curso.
curso correspondiente.
Que el material no
Eliminar Material corresponda a los Que no exista el material
Moderado 3 Menores 2 Moderado 6
Adicional contenidos asignados al correspondiente al curso.
curso correspondiente.
Página 64 de 165
Actividad del Proyecto: Parte 3
Página 65 de 165
Actividad del Proyecto: Parte 4
Página 66 de 165
Actividad del Proyecto: Parte 4
Mediante a la
implementación de la
norma ISO 9000:
Sistemas de Gestión de
Que no exista el Calidad
curso para subir Fundamentos, Pd Pr Sa 4 Bueno Mayor 4.0 Mayor 4.0
el material. vocabulario, requisitos,
elementos del sistema
de calidad al momento
de subir los materiales
adicionales.
Norma ISO 9001;
Que no exista el gestionando los
material contenidos y Más que
correspondiente fundamentos de
Pd Cr At 3 Menor 0.7 Menor 2.0
regular
al curso. bloquear el material
adicional.
Norma ISO 9001;
Que no exista el gestionando los
Media 3
material contenidos y Más que
correspondiente fundamentos de
Pd Cr At 3 Menor 0.7 Menor 2.0
regular
al curso. eliminar el material
adicional.
Norma ISO 9001;
Que no exista el gestionando los
material contenidos y Más que
correspondiente fundamentos de
Pd Cr At 3 Menor 0.7 Menor 2.0
regular
al curso. actualizar el material
adicional.
ISO 9004:2000, que se
refieren a
Que no está la recomendaciones para
actividad llevar a cabo las mejoras Pe Pr Sa 5 Optimo Mayor 5.0 Mayor 5.0
habilitada de calidad al momento
de iniciar las
actividades.
Página 67 de 165
Actividad del Proyecto: Parte 5
ISO 9004:2000, se
requiere al control que
Que no está la
re realizará al momento Más que
actividad
de la implementación
Pe Cr At 3 Mayor 4.0 Mayor 4.0
habilitada regular
del material
correspondiente.
ISO 9004:2000, que se
refieren a
Que el recomendaciones para
rendimiento no llevar a cabo las mejoras Más que
este actualizado de calidad al momento
Pe Cr At 3 Mayor 4.0 Mayor 4.0
regular
o este erróneo. de iniciar ver el
rendimiento de las Mayor 4
actividades.
Página 68 de 165
Diseño del Proyecto
Riesgos específicos
PROCESOS SUBPROCESOS ETAPAS Objetivos especificados Probabilidad Impacto
Severidad Valor
Clasificación Valor Clasificación Valor
Realizar el diseño del modelo Mayores
Diseñar modelo físico de la base de datos Moderado 3 4 12 Extremo
físico
Generar cambios necesarios para Moderadas 3
Creación Corrección del la corrección del modelo físico Probable 4 12 Alto
modelo físico modelo físico
Resguardar el modelo físico de la Moderado Insignificantes 1
Respaldo diseño base de datos 3 3 Bajo
físico
Diseñar el modelo lógico de la Moderado Mayores 4
Diseñar modelo base de datos
lógico
3 12 Extremo
Página 69 de 165
Programación
Riesgos específicos
PROCESOS SUBPROCESOS ETAPAS Objetivos especificados Probabilidad Impacto
Severidad Valor
Clasificación Valor Clasificación Valor
Se configuran los servicios para el 4
Puesta en marcha de funcionamiento del proyecto Improbable 2 Mayores 8 Alto
servidores
Servidores
Se configura y levanta la base de 4
Puesta en marcha de datos en el servidor correspondiente
BD
Improbable 2 Mayores 8 Alto
para el levantamiento del software
Programación de las clases y 2
Programación básica variables Probable 4 Menores 8 Alto
Página 70 de 165
Instalación: Parte 1
OBJETIVOS DESCRIPCION
PROCESOS SUBPROCESOS ETAPAS PROBABILIDAD IMPACTO SEVERIDAD
ESPECIFICOS DEL RIESGO VALOR
CLASIFICACION VALOR CLASIFIC. VALOR DEL RIESGO
Surgimiento de no
Que la página web
Revisión de conexión a la red
se pueda cargar
conexión a para el Moderado 3 Moderadas 3 Alto 9
en óptimas
internet funcionamiento de
condiciones
la página web.
Que el navegador
utilizado funcione
Preparación de Compatibilidad Que el navegador
en óptimas
ambiente de de navegador con no este apto para la Improbable 2 Menores 2 Bajo 4
condiciones al
Navegador página web página web.
utilizar la página
web.
Que la mantención
Realizar pruebas
no funcione
Mantención de la de
correctamente, Improbable 2 Menores 2 Bajo 4
página web funcionamiento a
dando daños a la
la página web.
página web.
Mantención de
Que las
página web
Realizar actualizaciones no
Actualización de actualizaciones estén de acuerdo a
la página web para la mejora de las fechas indicadas
Moderado 3 Moderadas 3 Alto 9
la página web. y a los parámetros
correspondiente.
Página 71 de 165
Instalación: Parte 2
CONTROLES CLAVES EXISTENTES VALOR Y CLASIFICACIÓN DE LA EXPOSICIÓN AL RIESGO
RIESGOS NIVEL Por riesgo Por
DESCRIPCION DEL
ESPECIFICOS EFICIENCIA VALOR CLASIFICACIÓN especifico Por etapa subproceso Por proceso
CONTROL
PD O A Nivel Valor Nivel Valor Nivel Valor Nivel Valor
Surgimiento de
no conexión a la Se empleará Norma ISO 9002:
red para el Aplicable para suministrar Más que
funcionamiento durante la producción y la
Pd Dt Ma 3 Media 4.0 Media 3.0
regular
de la página instalación.
web.
Para que la página web no
Que el
tenga deficiencias al
navegador no Más que
esté apto para la
momento de utilizarla se Pd Dt Ma 3 Menor 1.3 Menor 1.3 Mayor 4.967
empleara la norma ISO regular
página web.
9004:2000.
Se utilizará la norma ISO 9000
Que la página la cual se utilizará para
no esté administrar la calidad de la Más que
funcionando producción así la página web
Pd Dt Ma 3 Menor 2.0 Menor 2.0
regular
para el cliente. se encontrara en óptimas Media 3.3833
condiciones para el cliente.
Refinamiento
Pruebas en Realizar pruebas de
software funcionamiento al software Mal funcionamiento del software Moderado 3 Mayores 4 Extremo 12
terminado final
Página 73 de 165
Implementación y Marketing: Parte 2
CONTROLES CLAVES EXISTENTES VALOR Y CLASIFICACIÓN DE LA EXPOSICIÓN AL RIESGO
RIESGOS NIVEL Por riesgo Por
DESCRIPCION DEL
ESPECIFICOS EFICIENCIA VALOR CLASIFICACIÓN especifico Por etapa subproceso Por proceso
CONTROL
PD O A Nivel Valor Nivel Valor Nivel Valor Nivel Valor
Surgimiento de Se resguarda el proyecto
nuevos errores sin la incorporación de la
por la planilla para tener el
incorporación de respaldo en caso de Oc Dt Sa 2 Regular Mayor 4.5 Mayor 4.5
la plantilla al errores, se implementa la
programa planilla. Mayor 4.9
Los desarrolladores
El programa no realizan la revisión de la
Más que
se conecta a la conexión en busca de Pd Cr Ma 3 Mayor 5.3 Mayor 5.3
base de datos errores, se hacen respaldos regular
y se realizan correcciones
Mayor 7.05
Los desarrolladores
No se encuentra
realizan la revisión de la No No
el error en la
conexión, se programa Oc Cr Ma 2 Regular 8.0 8.0
conexión Aceptable Aceptable
nuevamente la conexión
El desarrollador genera No
nuevas pruebas para el 9.2
Aceptable
Mal software. Se utilizará la
funcionamiento norma iso 9001:2015 la Pe Cr Sa 5 Optimo Menor 2.4 Menor 2.4
del software cual consiste en la
aprobación del cliente de
la página web.
El software será expuesto
El software no es
con anterioridad y se
aceptado por el
resolverán dudas en Pe Pv Ma 5 Optimo Menor 1.6 Menor 1.6
cliente
conjunto con el cliente
Se realizan reiteradas
Devolución del pruebas en el
Menor 2.4 Menor 2.4
software por funcionamiento del
errores no software con gente anexa Pe Pv Ma 5 Optimo Menor 1.6 Menor 1.6
descubiertos al proyecto para encontrar
y corregir errores
Página 74 de 165
3.9 Estrategias de Promoción
Comercialización:
Este proyecto consiste en resolver el problema por la gran cantidad de reprobaciones en los
alumnos de informática en el primer año. Al analizar el problema con detenimiento se pudo
apreciar que los alumnos tenían y tienen un gran problema con entender y aprender en
totalidad la lógica de la programación que se necesita para resolver problemas informáticos a
lo largo de la carrera y en el terreno laboral.
Es por esto que con este software pedagógico se busca el desarrollar en los alumnos la lógica
de la programación de una manera fácil, didáctica y divertida.
Lo que se busca en el futuro es implementar esta plataforma de ayuda a las diferentes carreras
que existen. Esto quiere decir que el software se ampliara abarcando los ramos bases de las
diferentes carreras y siendo un recurso único para la institución educativa, resultando
finalmente en una estrategia competitiva frente al mercado.
La manera de presentar y vender este software a las instituciones educativas será de tipo
presencial inicialmente, se ofrecerá el producto con una presentación de este producto,
anexando un informe detallado entregado al encargado de la institución. Este informe
contendrá los procesos y actividades, además del contenido total del software.
La presentación presencial permitirá ofrecer el producto de una manera más cercana al
cliente, respondiendo a dudas que puedan surgir, también consiste en la explicación detallada
del informe entregado.
El software totalmente amigable para el cliente y los usuarios finales tendrá la facultad de
personalizarse con el logo o colores de la institución a la cual sea vendida.
Esta negociación procura dejar al cliente satisfecho con el producto, es por esto que la venta
debe ser lo más trasparente posible.
Objetivos.
1.- Convertir a EasyCode en una necesidad para las instituciones que imparten la carrera de
informática.
2.- Ser un agente de innovación y valor agregado para las instituciones.
3.- Lograr un alto nivel de tráfico en el sitio web, masificando el sistema web.
4.- Posicionamiento en Google.
Página 75 de 165
Para lograr los objetivos de la promoción, se realizarán las siguientes estrategias:
Página 76 de 165
Capítulo IV- Desarrollo e Implementación
4.1 Mapas Conceptuales
4.1.1 Mapa Conceptual del Problema
Problema:
El docente enseña y explica el funcionamiento de la lógica y la programación donde el alumno
se enfrentara a complejas dudas referentes a la materia explicada por el docente, el alumno
tiene grandes dificultades de aprendizaje por los distintos lenguajes de programación
propuestos y problemas que se plantean, esto causa frustración y aburrimiento por no poder
rendir lo suficiente en sus calificaciones, llevándolo a reprobar las asignaturas bases de la
ingeniería en informática.
Página 77 de 165
4.1.2 Mapa Conceptual de la Solución
Solución:
Por consiguiente la solución propuesta es que al momento de que el docente enseñe y
explique el funcionamiento de la lógica y la programación con sus diversos lenguajes,
entregando problemas de la vida cotidiana para que el alumno pueda comprender con más
facilidad. El alumno tendrá como complemento el Software EasyCode donde aplicara los
contenidos ya expuesto por el docente y así práctica y aprenderá de forma didáctica los
problemas planteados. Al tener alguna duda el alumno se dirigirá al docente para
complementar las enseñanzas. El sistema tiene como objetivo enseñar la lógica de la
programación que es lo que más les cuesta a los alumnos de primer semestre.
Si el alumno es perseverante mediante este modo de enseñanza tendrá grandes cambios en
lo que respecto a sus calificaciones y conocimientos relevantes, llevándolo a la aprobación
del ramo.
Página 78 de 165
4.2 Modelo del Proceso de Negocio
4.2.1 Reglas del Negocio
Este proyecto se enfoca en la educación universitaria, con una gran problemática en el área
de informática y se refiere a la gran cantidad de reprobación en los ramos bases de esta
carrera. La solución de crear, diseñar e implementar una aplicación que ayude a los alumnos
a entender de una manera más fácil la lógica de la programación y después implementar lo
aprendido en cualquiera de los lenguajes existentes.
Para poder implementar esta aplicación se debe encontrar y comprender como se trabaja
hasta el momento en este establecimiento. Es por eso que se dictan las siguientes Reglas del
Negocio:
Existen dos ramos bases en la carrera de Ingeniería en Informática, primero Análisis y Diseño
Orientado a Objetos, y Fundamentos de Programación.
En lo que respecta al Análisis y Diseño Orienta a Objetos, se enfoca como bien dice su nombre
en el análisis de los sistemas, las metodologías, todo sobre la toma de requerimiento para el
diseño de las soluciones, y modelamiento UML.
Por otra parte, Fundamentos de la Programación está enfocado a la programación propiamente
tal, en lenguaje Java.
Por esto, esta aplicación se centrará en enseñar la lógica para programar y se enfocará en la
codificación del lenguaje java para probar las soluciones, donde la aplicación sea una
complementación de las clases que se imparten en la universidad.
La instituciones universitarias, cuenta con una intranet donde solo los alumnos autenticados
pueden entrar, así el sistema es mucho más personalizado. Esta aplicación construida para
esta institución contará con un Login tanto para alumnos, como para docentes. Así los
beneficiados serán los clientes (alumnos) de la institución. Esto crea una ventaja frente a otras
instituciones.
La institución tiene metodologías de enseñanza-aprendizaje inductivas en donde los alumnos
son sometidos a problemas reales para prepararlos, es por eso que la aplicación tomará estas
mismas metodologías para su implementación.
Se les enseña de una manera presencial, en cada clase el docente plantea un problema y lo
resuelve en pantalla, el problema cada semana o cada clase trae una nueva dificultad, nuevo
código del lenguaje que se está enseñando. Los alumno entonces deben resolver un problema
que el docente les presente, el cual contiene los mismos pasos del problema que se resolvió
en clases.
Es importante destacar que los docentes son fundamentales para la enseñanza y formación de
los alumnos.
La aplicación pretende ser un complemento para la enseñanza del alumno, enseñar la lógica
que se necesita para resolver los problemas, no enseñar un código en particular. Está
aplicación estará disponible para el alumno siempre, mientras esté inscrito en el curso. Así el
alumno puede estudiar y resolver actividades en cualquier lugar y momento, mientras cuente
con un computador con internet.
La aplicación entonces otorgará también un seguimiento para cada alumno, que permitirá a
los docentes saber en qué necesitan más ayuda sus alumnos, o en que tiene que enfocarse
más en sus clases. La técnica de enseñanza en la aplicación se conoce como cognitiva, y se
refiere a que en cada contenido, se da una definición de lo que se quiere enseñar y se presenta
un problema el cual es resuelto paso a paso, el alumno resuelve exactamente el mismo
problema para ayudarlo a entender mejor la técnica de resolución. Después se le presenta un
problema diferente, el cual si es resuelto de manera correcta, proporciona felicitaciones para el
alumno y lo ínsita a seguir adelante. Sí el problema es resulto de manera incorrecta, se ínsita
a volver a intentarlo para poder seguir adelante.
Página 79 de 165
4.2.2 Diagramas BPMn
General:
Página 80 de 165
Curso del Alumnado:
Página 81 de 165
Avance de Curso por el Docente:
Página 82 de 165
4.2.3 Diagramación UML
Caso de Uso General Funcionamiento General
Página 83 de 165
Diagrama de General:
Página 84 de 165
Caso de Uso N°1 Actividades Alumno
Página 85 de 165
Diagrama de Secuencia 1:
Página 86 de 165
Caso de Uso N°2 Actividades de Docente
Descriptor
Nombre: Actividades Docente
Actor: Docente
Descripción: Se describen todas las actividades que puede realizar el docente
Flujo Principal: 1.Inicia Sesión
2. Elige un curso
3. Elige a un alumno
4. Ve el historial del alumno
5. Sube material adicional al sistema
Página 87 de 165
Diagrama de Secuencia 2.
Página 88 de 165
4.3 Prototipo
Web
Inicio
Iniciar Sección
Docente y Alumno
Página 89 de 165
Actividad
Página 90 de 165
4.4 Base de Datos
4.4.1 Arquitectura de Base de Datos Descripción:
Por último se encuentra el nivel externo, el cual contiene la interfaz del usuario, esto es lo
que el usuario puede ver de la base de datos, las pantallas del software, y lo que cada usuario
puede hacer en este.
Podemos observar tres tipos de usuarios, el administrador, quien puede administrar a los
docentes de la institución educacional, existen los usuario docentes, quien son los
encargados de crear cursos y registrar a sus alumnos. Los docentes también tienen la
posibilidad de subir material complementario y adicional al de la plataforma que los alumnos
pueden revisar. Está incluido en el sistema también el seguimiento que el docente puede
realizar a cada uno de sus alumnos, para ver el avance de estos, y cuál es el contenido en
el que tienen mayor dificultad. El usuario más importante y para quien va dirigido el sistemas
es el usuario alumno, quien es el que realizaras las actividades del sistema para lograr el
aprendizaje. Este usuario puede ver su propio rendimiento e historial, para concluir en que
contenido debe poner más atención o pedir ayuda a su docente.
Estos tres niveles componen la arquitectura de la base de datos empresarial y nos ayuda a
entender todo sobre esto.
Página 91 de 165
4.4.2 Modelo Físico
Página 92 de 165
4.4.3 Elección y justificación del SGBD seleccionado
SQL Oracle
Características PostgrSql MySQL Firebird
Server Express
PostgrSql
Oracle Oracle
Global Firebird
Compañía Corporatio Microsoft Corporatio
Developme Foundation
n n
nt Group.
Versión 9.2.3 5.6.31 2012 11g 2.5.2
API,GUI y
Interface GUI y SQL GUI y SQL GUI y SQL SQL
SQL
Licencia
Gratuita
Sistema Operativo
Windows
Linux X
Unix X
BSD X X
Android X X X X
Características Fundamentales
ACID
Integridad Parcial
Transacciones
Unicode
Capacidades
Unión
Consultas
X ? ?
Paralelas
Trigger X
Hash X X
Funciones X
Procedimientos X
Acceso
Protección
X X X
Fuerza Bruto
Complejidad
X X X
Contraseñas
Ejecutar sin
Privilegios
Recursos
X X
Limitado
Red Cifrada (SSL) X X
Página 93 de 165
Conclusión del motor de base de datos:
Para este proyecto se ha decidido trabajar con el motor de base de datos MySQL. Las razones
que llevaron a tomar esta decisión se resumen a que este motor corre en la mayoría de los
sistemas operativos como se muestra en el cuadro comparativo, además consta con una
interface GUI y SQL que lo hace más amigable, la licencia es completamente gratuita y
pertenece a una compañía de prestigio, por lo que refleja confianza en su uso.
Como otra característica fundamental podemos observar que permite la creación de Trigger,
hash, funciones y procedimientos.
Página 94 de 165
4.4.5 Estimación tamaño de base de datos
alumnos profesores administradores
500 13 2
Semestre
Nombre de la tabla Tamaño inicial cantidad columnas tamaño en byte 1 2 3 4 5
actividades 48 5 450 1125048 2250048 3375048 4500048 5625048
actividades_log 48 6 600 4500048 9000048 13500048 18000048 22500048
administrador 16 4 300 616 1216 1816 2416 3016
alumnos 16 5 450 225016 450016 675016 900016 1125016
asignatura 16 2 150 466 916 1366 1816 2266
contenido 32 4 300 4532 9032 13532 18032 22532
curso 64 4 300 12064 24064 36064 48064 60064
curso_docente_alumno 64 4 300 180064 360064 540064 720064 900064
docente 16 5 450 5866 6766 7666 8566 9466
inicio_sesion_alumno 32 5 450 22500032 45000032 67500032 90000032 112500032
inicio_sesion_docente 32 4 300 390032 450032 510032 570032 576032
material 32 4 300 11732 13532 15332 17132 18932
12 tablas 416 KB 28955516 57565766 86176016 114786266 143342516
Total en Megabyte 27,61 MB 54,90 MB 82,18 MB 109,47 MB 136,70 MB
Para hacer la estimación de tamaño en la base de datos, se tomó una de 4 columnas, con 1 dato en entero (11) y 3 de texto (2 de 50 y 1 de 100) lo cual dio como
resultado de 75 byte aproximadamente por columna.
Para esta estimación se tomaron 500 alumnos y 13 profesores para el área de informática, se da por entendido que estos 500 son participantes de 1 o 2 asignaturas.
La estimación está realizada semestralmente, por lo que cada semestre aumentaran en 500 alumnos y se cambiaran 5 profesores.
Para lograr una estimación a una institución más grande es necesario hacer un incremento proporcional en la cantidad de alumnos y profesores
Las tablas que tienen más carga son inicio_sesion_alumno, inicio_sesion_docente y actividades_log, ya que son registros de auditoria, en el caso de los inicio de sesión
registra cuando los usuarios inician sesión en el sistema y el de actividades_log registra cada vez que el alumno realiza una actividad, ya sea satisfactoriamente o no.
Página 95 de 165
Vistas
Administrador:
o Crea y Registra Docentes
Docente:
o Crear y registrar curso y alumnos
o Ver cursos a cargo
o Hacer seguimiento de alumnos a cargo
o Subir a la plataforma material adicional
o Insertar nuevos cursos, alumnos y material
o Editar sus cursos, alumnos.
o Seleccionar sus cursos y alumnos
Alumno:
o Ver y realizar actividades del curso escogido
o Ver material adicional
o Realizar evaluaciones en cada etapa del curso
o Ver avance propio
o Ver y realizar evaluaciones realizadas anteriormente
o Seleccionar la actividad para realizar
o Selecciona lenguaje de programación que desee aprender
o Selecciona material que desea revisar
o Selecciona evaluación que desea realizar
Administrador:
o Registra en el sistema a los Docentes
o Editar docentes
o Eliminar docentes
Accesos:
DBA:
o Todos los permisos y accesos (será utilizado solo para soporte)
o Crea a los demás usuarios y los permisos que tiene cada uno (Administrador,
docente y alumno)
Procedimientos:
Cuando se inserte un alumno o una auditoria, las fechas serán ingresadas por
procedimientos, esto para utilizar solo la hora y fechas del servidor.
Trigger:
Cada acción que se realice en las tablas será auditado, con el fin de que el
administrador vea los cambios y se entere quien los llevo a cabo.
Permisos y roles en la base de datos por usuario
No ocuparemos privilegios, roles ni perfiles de usuario, ya que no se usarán los
usuarios que permite usar MySQL, si no que se validarán los ingresos con los registros
que se encuentran en la tabla de usuarios. En función al tipo de usuario que el sistema
valide, se mostrará el entorno de trabajo.
Procedimientos almacenados
En el caso de los procedimientos, los procedimientos necesarios son de inserción de
recetas en la web, y sincronización de la base de datos
Página 96 de 165
4.5 Monitorización y afinamiento
Encargar: DBA Administrador
Herramienta: SQL management studio (versiones 2008 -2012)
Página 97 de 165
Capítulo V- Implementación de Solución
5.1 Arquitectura del Proyecto
5.1.1 Definición de la Arquitectura
La Arquitectura SOA establece un marco de diseño para la integración de aplicaciones
independientes de manera que desde la red pueda accederse a sus funcionalidades, las
cuales se ofrecen como servicios. La forma más habitual de implementarla es mediante
Servicios Web, una tecnología basada en estándares e independiente de la plataforma, con
la que SOA puede descomponer aplicaciones monolíticas en un conjunto de servicios e
implementar esta funcionalidad en forma modular.
Servicios Web
La adopción de una solución de diseño basada en SOA no exige implantar servicios Web. No
obstante, como ya comentamos anteriormente, los servicios Web son la forma más habitual
de implementar SOA. Los servicios Web son aplicaciones que utilizan estándares para el
transporte, codificación y protocolo de intercambio de información. Los servicios Web permiten
la intercomunicación entre sistemas de cualquier plataforma y se utilizan en una gran variedad
de escenarios de integración, tanto dentro de las organizaciones como con socios del negocio.
Los servicios Web se basan en un conjunto de estándares de comunicación, como son XML
para la representación de datos, SOAP (Simple Object Access Protocol) para el intercambio
de datos y el lenguaje WSDL (Web Services Description Language) para describir las
funcionalidades de un servicio Web.
Página 98 de 165
Diagrama de SOA
Página 99 de 165
5.1.2 Aplicación de la Arquitectura
En base a lo expuesto en el punto anterior, a continuación se expone la arquitectura aplicada.
Los alumnos solo deben acceder a un computador en el cual con su rut y contraseña
accederán al juego.
También se contempla contratar un hosting para alojar el sistema web, el cual debe asegurar
la seguridad de las aplicaciones a través de un firewall potente, para responder a posibles
ataques de aficionados. En función de que el sistema estará alojado en la nube, se debe
contemplar contratar servicios de internet, y equipos computacionales Intel Core i5 (para los
desarrolladores) para administrar de forma eficiente el sitio web.
Al aplicar SOA que es un estilo arquitectónico para crear servicios de negocio independiente,
discreto y reutilizables, algunos beneficios que SOA trae al utilizarlo son:
Flexibilidad para reducir los tiempos y costos de implantación, y para contar con una
arquitectura ágil que permita la evolución, cambio y crecimiento del negocio.
Para poder acceder a EasyCode los alumnos lo harán mediante un navegador ya sea
(Chrome, Internet Explorer, etc.) mediante la aplicación de Unity en este navegaran mediante
el protocolo web en el puerto 80.
Al igual que los docentes y el administrador por el protocolo web en el puerto 80.
Modelo Vista Controlador (MVC) es un estilo de arquitectura de software que separa los datos
de una aplicación, la interfaz de usuario, y la lógica de control en tres componentes distintos.
Se trata de un modelo muy maduro y que ha demostrado su validez a lo largo de los años en
todo tipo de aplicaciones, y sobre multitud de lenguajes y plataformas de desarrollo.
En esta arquitectura la computadora de cada uno de los usuarios, llamada cliente, produce
una demanda de información a cualquiera de las computadoras que proporcionan
información, conocidas como servidores, estos últimos responden a la demanda del cliente
que la produjo.
Se utiliza esta arquitectura, ya que facilita la integración entre sistemas diferentes y comparte
información de una manera centralizada, lo que evita redundancias e inconsistencias en los
datos. Además, esta arquitectura permite conectar clientes y servidores independientemente
de sus plataformas y su escalabilidad es tanto horizontal como vertical.
Computador AIO C260 Celeron J1800 4GB 500GB 19,5" Windows 8.1
Características
Marca: Lenovo
Modelo: C260
Sistema operativo: Windows 8.1
Procesador: Intel® Celeron® J1800 2,41 GHz (1MB Caché - Turbo Máx. 2,58 GHz)
Número de núcleos: Dual Core
Memoria: 4 GB DDR3L 1333 MHz, (1 x 4GB)
Almacenamiento: 500 GB
Pantalla: 19.5" LED HD+ (1600 x 900)
Lector Tarjetas: Lector de tarjetas 6-in-1 Media Card Reader
Dispositivos de Comunicaciones.
Lan: 10/100/1000 BASE-T
WiFi: 802.11a/b/g/n
Adaptador de Poder: 80 W
Seguridad: Ranura para candado de seguridad
Tipo de Conexión: La conexión que se requiere en los docentes no requiere de una gran
infraestructura de red, por lo que puede tener cualquier tipo de conexión, ya sea por cable o
inalámbrico, para lo cual se comprobó con un módem de hogar a través del proveedor de
internet movistar el cual tiene las siguientes características:
DIR-905L para un entorno de red seguro y protegido - ideal para las familias. Las funciones
del servicio MyDlink del Cloud Router DIR-905L le permiten controlar su red desde cualquier
lugar.
Características
Modelo: DIR-905L
Interfaces:Wireless LAN 802.11n/g/b 2.4 a 2.4835 GHz LAN ports Puertos LAN
10/100Base –TX,WAN port 1 Puerto 10/100Base –TX
Antena: 2 Antenas externas fijas 5 dBi
Seguridad: WPA & WPA2 (Wi-Fi Protected Access): Si
Wi-Fi Protected setup (WPS): Si
Firewall: Network address translation (NAT)
Stateful Packet inspection (SPI)
Características de la nube D-Link
Administración remota:
o Push Notifications:
Wireless intrusion
Online user Notice
New firmware upgrade
User Control:
o Access Control
o Real-time Browsing records
Soporte de APP móvil: "Mydlink app" para disopsitivos iOS y Android
Requerimientos mínimos del sistema:
Cable o modem DSL con puerto Ethernet
Página 104 de 165
Se contempla contratar un hosting para alojar el sistema web.
Para los Desarrolladores
Tipo de conexión: La conexión que se requiere el equipo EasyCode, no requiere de una gran
infraestructura de red, por lo que puede tener cualquier tipo de conexión, ya sea por cable o
inalámbrico, para lo cual se comprobó con un módem de hogar a través del proveedor de
internet movistar. Actualmente con un modem MyDlink como el que se describió en el tipo de
conexión del docente, en el principio de este punto.
La topología estrella es una de las topologías más populares de un LAN (Local Área Network).
Es implementada conectando cada computadora central en el caso de EasyCode en un
Servidor.
Se denomina red estrella en la cual están conectados los dispositivos directamente a un punto
central y todas las comunicaciones se han de hacer necesariamente a través de este (Router).
Los dispositivos no están directamente conectados entre sí, además de que no se permite
tanto tráfico de información.
Debido a que la topología estrella utiliza un cable de conexión para cada computadora, es
muy fácil de expandir, sólo dependerá del número de puertos disponibles en el Hub o Switch
(aunque se pueden conectar Hub o switch en cadena para así incrementar el número de
puertos).
En una red estrella típica, la señal pasa de la tarjeta de red (NIC) de la computadora que está
enviando el mensaje al Hub y este se encarga de enviar el mensaje a todos los puertos. La
topología estrella es similar a la Bus, todas las computadoras reciben el mensaje pero solo la
computadora con la dirección, igual a la dirección del mensaje puede leerlo.
DETALLE
Ítem 1 Router WiFi
Función Crea una red local privada.
Hardware Requisitos:
WiFi
Conexión Ethernet
Velocidad de 10/100 Mb/s.
Asignación de IP de manera manual y DHCP.
IP del Router 192.168.0.1
Ítem 2 Servidor
Función Encargado de responder las solicitudes de EasyCode
Software Sistema operativo: Windows 2008 Standard Edition
Xampp: De código abierto, permite instalar de manera rápida y
transparente los paquete necesarios para la funcionalidad del servidor:
o Apache: responde a las solicitudes web realizadas a través del
puerto 80.
o MySQL: servidor de base de datos encargado de almacenar toda la
información generada por Edukingar.
o PHP: servidor que permite la utilización de este conocido lenguaje.
Desarrolladores:
Nodos:13
Aristas:16
CC:16-13+2
CC:4
Valor: Nivel 4 ,programa simple sin
mucho riesgo
Tabla de Resultados:
Valor Valor Valor Obtenido Observació
Ingresado Esperado n
Usuario: Rodolfo Mostrar que Mientras que
Pérez pueden el alumno
Notas: 5.5 realizar la tenga
Curso:2°Semestr actividad con conocimiento
e tener ya s puede ya
conocimiento realizar la
s del tema. actividad sin
problemas.
Tabla de Resultados:
Valor Ingresado Valor Valor Obtenido Observación
Esperado
Tabla de Resultados:
Valor Valor Valor Obtenido Observación
Ingresado Esperado
Docente: Mostrar las Se da el pase
Rodrigo actividades a la siguiente
Opazo realizadas y actividad si
Ingresa al evaluarlos esta 100%
sistema para así dar completada
para el pase a la
observar el siguiente
rendimiento actividad.
del curso.
Ingresa
Parámetro
de
búsqueda
:Rodolfo
Pérez
Alumno
Curso:
2°semestre
Objetivo de la prueba:
Subir Material adicional
adecuadamente para que los
alumnos puedan repasar sus
materias.
Descripción de la prueba:
El docente sube material a los
alumnos dependiendo del contenido
que se dificulte más para el alumnado
y así pretender que estudien a
profundidad los temas expuestos.
Proceso de control de
contenido que realiza
en el juego
Objetivo de la prueba:
Que los contenidos
concuerden con los se
exponen en las clases.
Descripción de la
prueba:
Seleccionar el juego y
ver que metodología
van aprender
dependiendo de los
contenidos expuestos.
Objetivo de la
prueba:
Eliminar a un
alumno
correctamente sin
tener problemas en
el sistema y sin
interrumpir el
progreso del curso.
Descripción de la
prueba:
El docente entra a
la intranet y busca
el alumno que se
eliminará y no debe
tener interrumpir
en el sistema.
Nombre de la prueba:
Comportamiento del sistema al tener una cierta cantidad de alumnos conectados.
Objetivo de la prueba:
Conocer el tiempo de respuesta de alumnos ejecutando el sistema a la vez.
Descripción de la prueba:
Se realiza pruebas para observar la cantidad de alumnos conectados ejecutando el sistema
a la vez, estos alumnos representan las computadoras del curso que podrían están
conectados a la vez.
Imagen de la Prueba:
Según la interpretación:
El sistema soporta un máximo de 50 usuarios en ese momento cae el sistema y solo deja a
20 usuarios lo cual se recomienda que al momento de que se ejecute el juego, se deberá
verificar la conexión a internet ya que si puede mejorar si los alumnos tienen una mayor
velocidad de navegación.
Nombre de la prueba:
Comportamiento del sistema.
Objetivo de la prueba:
Conocer el tiempo de respuesta de los procesos del sistema.
Descripción de la prueba:
Se realizan las pruebas de carga un listado de usuarios conectados.
Imágenes de la prueba:
Según la interpretación:
Al momento de que los usuarios están conectados en el transcurso de 10 minutos
aproximadamente el sistema tiene interrupciones y colapsa.
Descripción Técnica:
Se deben utilizar las pruebas creadas para la Funcionalidad del sistema y Procesos de
Negocios para crear una serie de transacciones, con pruebas de desempeño.
Una vez se alcanza el punto inicial de las pruebas de recuperación, se deben realizar simular
las siguientes acciones:
Interrupción de electricidad en el cliente.
Interrupción de electricidad en el servidor: simular o iniciar procedimientos de pérdida
de energía para el servidor.
Interrupción de la comunicación en la red. (Desconectar físicamente los cables).
Todas las acciones de prueba deberán ser ejecutadas fuera del horario de trabajo del
cliente.
Resultados
Al momento de que cada usuario se conecte este será verificado en el sistema que se
encontrará alojado en el hosting, por ende si hay alguna interrupción ya sea eléctrica el
mismo sistema del hosting respaldara dicha información.
Los pasos para la instalación se encontrarán en el ítem 5.6 y 5.7 del informe.
Datos Requeridos: Se establece que una columna tenga un valor no NULL. Se define
efectuando la declaración de una columna es NOT NULL cuando la tabla que contiene las
columnas se crea por primera vez, como parte de la sentencia CREATE-TABLE.
Chequeo de Validez:
Cuando se crea una tabla cada columna tiene un tipo de datos y el DBMS asegura que
solamente los datos del tipo especificado sean ingresados en la tabla.
Integridad de entidad:
Se establece que la clave primaria de una tabla debe tener un valor único para cada fila de la
tabla, sino la base de datos perderá su integridad.
Seguridad:
La seguridad física: Como la ubicación de los centros de procesos, las protecciones físicas,
el control físico de accesos, los vigilantes, las medidas contra el fuego y el agua, y otras
similares.
En la siguiente figura se muestra donde hay que hacer click y luego seleccionar la
carpeta comprimida en Zip que se entregó con el sistema.
Luego de subir la carpeta comprimida en Zip es necesario descomprimir por que se tiene que
seleccionar la opción de volver (en el caso de no ver la carpeta recargar la página), para
descomprimir hay que seleccionar la carpeta y luego presionar descomprimir como indica la
siguiente imagen:
Usuarios Software
Pros:
Juegos llamativos y corresponde con
los contenidos que se exponen en
Curso:1°Semestre clases.
(28 alumnos) Letra legible.
Colores extravagantes.
Contras:
Se requiere una explicación de cada
juego.
No es muy agradable el color
amarillo de la página
Usuarios Software
Pros:
Docentes Muestra información completa de los cursos
asignados.
Contras:
Se requiere opción de búsqueda de alumno.
Generación de contenido: Actualizar la web cada cierto tiempo cada vez está siendo
un factor más relevante para la red y usuarios además que el contenido fresco, original
y compartible.
La arquitectura del sitio: Hace referencia a cómo están organizadas las diferentes
páginas y secciones del mismo, y cómo están entrelazadas unas a otras. Esto permitirá
optimizar la forma en que se presenta la información y multimedia en general y con
ello la navegación del usuario en el sitio, aumentando así la permanencia de las visitas
recibidas.
Desempeño del sitio: Finalmente, saber qué tan rápido y consistente es el sitio, así
como qué tan útil, fácil y entretenido es para el usuario, dará una idea de qué tan
bien encaminada está la página web.
Analítica de publicidad
o Aproveche al máximo su publicidad gracias a la información sobre el
rendimiento de sus anuncios en redes sociales, para móviles, de la red de
búsqueda
Analítica de contenido
o Los informes de contenido le muestran qué partes de su sitio web tienen un
buen rendimiento y qué páginas son más populares para poder crear una
mejor experiencia para sus clientes.
Analítica de redes sociales
o La Web es un lugar social, y Google Analytics mide el éxito de sus programas
publicitarios para redes sociales.
Por ende se implementan juegos interactivos donde es la parte más importante del sistema
ya que es donde se dará solución al problema de aprendizaje de algunos alumnos en el área
de programación y base de datos, también es la principal fuente de información de los alumnos
al sistema por lo que se podrá obtener el resultado de cada alumno luego de cada juego.
Para poder acceder al juego se necesita una cuenta de alumno:
El sistema muestra una pantalla de ingreso y luego una de selección del juego en el cuál
marcará en celeste los disponibles.
En el cuál se tienen que deslizar los textos del lado izquierdo hacia el derecho para hacer
términos pareados de la descripción con el tipo de dato.
Para poder dar con terminado el juego es obligatorio completar todos los términos pareados
y una vez terminado se marcarán todas las malas con una cruz roja y se habilitará un botón
para reiniciar.
Como podemos ver en los juegos se mantiene una interfaz gráfica para el alumno permitiendo
tener otro punto de vista para el alumno , en el área de la educación la velocidad y la
capacidad de aprender de una persona depende netamente de sus habilidades cognitivas por
ejemplo , algunas personas dicen ser más “visuales” , por lo que se les hace más fácil recordar
información de algún tipo de dibujo o algo más gráfico como es en este caso , algunos otros
dicen recordar cosas por su audición , estos recuerdan las palabras por el tono de voz de
quien lo dicta , por lo tanto las palabras más marcadas son las que recuerda y así se pueden
ver muchas formas más de formas de enseñar y/o aprender
Por ende el sistema permitirá ver a los alumnos que no tienen un rendimiento óptimo de la
forma actual en las aulas.
Metodología de Autoaprendizaje:
Al tener una enseñanza interactiva esta causará un mayor interés de los alumnos, ya que son
ejemplos prácticos y rápidos, los cuales pueden ser realizados por el alumno en cualquier
momento del día, esto también permite a los docentes tener un seguimiento y saber quién va
acorde a la pauta propuesta a la fecha
Para potenciar los pros del software y mejorar las contras se realizará lo siguiente:
Usuarios Software
Pros: Se realizarán en su
Juegos llamativos y totalidad a lo más 8
corresponde con los juegos interactivos
contenidos que se por los contenidos de
exponen en clases. cada institución.
Letra legible.
Colores Cambiarán mediante
Alumno: Javier extravagantes. la programación de la
Torres(Alumno de malla curricular
1°Semestre de la carrera)
Se pondrá en cada
Contras: juego una explicación
Se requiere una que esta
explicación de cada corresponderá a
juego. materia para mejor
No es muy agradable retención.
el color amarillo de la
página
Usuarios Software
Se incluirá mejoras ya
sea tanto como el
Contras: diseño y la estructura
Se requiere opción de de la página.
búsqueda de alumno.
ADMINISTRADOR:
Para realizar los respaldos es necesario tomar en cuenta que el proyecto está y debe estar
alojado en un Servidor con cPanel Accelerated 2.
Otro punto muy importante antes de realizar los respaldos es tener todos los archivos y
configuraciones de la instalación realizados antes de configurar los respaldos.
Respaldos automáticos
Para generar los respaldos automáticos es necesario seguir una serie de pasos el cuál se
detallarán a continuación.
Donde lo que está marcado con color rojo es el archivo necesario para los respaldos y el azul
es el directorio principal.
Es necesario recordar el directorio porque se usará, en este caso específico el directorio es:
/home/ourecono
En el objeto marcado de color rojo apretar clic segundario y presionar editar.
Para configurar es necesario cambiar los datos sin borrar las comillas.
/usr/bin/php -q /home/ourecono/public_html/respaldo.php
Respaldo manual
En respaldo manual se tiene 2 opciones en las cuáles la primera es para guardar un respaldo
del computador y la otra una copia que se guardará en el servidor (no se recomienda esta
última).
Resumen de Respaldo:
correspondiente al software.
Lo primero es crear un usuario en la base de datos, para lo cual hay que dirigirse a la página
principal del CPanel y seleccionar MySQL Bases de datos.
Después se tiene que asignar el usuario a la base de datos creada para ello buscar en el área
de MySQL usuarios.
Donde es necesario marcar todos los privilegios y luego presionar Hacer cambios.
Como cuarto paso se enfocará en subir y configurar los archivos del sistema para eso hay
que dirigiré al inicio del CPanel y seleccionar Administrador de archivos.
En el cual aparecerá una ventana como la siguiente en la cual es necesario hacer click en
cargar.
Luego de subir la carpeta comprimida en Zip es necesario descomprimir por que se tiene que
seleccionar la opción de volver (en el caso de no ver la carpeta recargar la página), para
descomprimir hay que seleccionar la carpeta y luego presionar descomprimir como indica la
siguiente imagen:
Día N°1 :
Día N°2
Además facilitar el uso del sistema, se han creado y gestionado videos tutoriales
donde habrá uno para los usuarios: especialistas y otro para el usuario: alumnos. Los
cuales estarán disponibles en la parte inferior de la página de inicio.
Para los Docentes que ocupen EasyCode solo deben iniciar sesión.
Para que los alumnos accedan a EasyCode Juego deben tener en su equipo el complemento
de Unity, el cual es el siguiente:
Este complemento se realizará la 1 vez para ser usado y luego no se necesitará volver
a instalarlo.
1 2
3 4
Para agregar un nuevo docente se necesita hacer clic en la parte izquierda superior donde
dice add record o nuevo registro, luego de hacer clic ahí se pasa a una nueva ventana
similar a la de la imagen 2.
Donde se tienen que registrar todos los datos del docente que se está registrando, si el rut ya
se encuentra ingresado no se permitirá ingresarlo dos veces por lo que se recomienda
modificar.
Siguiendo el flujo y luego de tener registrado al docente se le agregará un curso, para esto es
necesario ir a el menú cursos donde se mostrará todos los cursos, al igual que agregar
docente para asignar un nuevo curso a un docente se dirige a la esquina superior izquierda y
clic en nuevo registro o add record y aparecerá una pantalla similar a la de la imagen 4.
En la imagen 4 se tendrán que completar los datos para un nuevo curso, con el nombre del
curso, asignatura del curso y docente encargado del curso.
Lo primero que tiene que realizar el docente es agregar alumnos a su curso para esto se dirige
a la pestaña cursos, en donde se mostrarán todos sus cursos y las opciones de los cursos
algo similar a la imagen 1.
Para subir alumnos al curso hay que seleccionar el curso al que se desea “agregar” alumnos
se recalca la palabra agregar ya que si faltan alumnos esta es la forma de agregar alumnos,
para ello se selecciona la opción +alumnos la cual nos llevara a una pantalla similar a la
imagen 2.
El siguiente paso es subir el Excel con los datos de los alumnos y este insertara
automáticamente todos los alumnos el formato del Excel es el siguiente
4
1
2
3 4
EasyCode ha logrado que sea un apoyo para los alumnos con sus juegos ya que han
mostrado que los alumnos además de aprender se entretienen jugando así logrando
mayor aprendizaje y mejores resultados al momento de realizar una evaluación.
También cabe decir que los beneficios de las pruebas de calidad del software pueden
llegar a ser inmensos al realizar un adecuado proceso de pruebas en el desarrollo de
software. Por lo tanto estas pruebas sirven para guiar y corregir las desviaciones que
puedan ocurrir, ya que el objetivo del proyecto es el desarrollo de un software a medida
del cliente.
Para mejor resguardo del software todo esto se resguardara en un servidor donde a
través del CPanel alojaremos la información para que cada institución tenga acceso
inmediato a ella por ende se necesita hacer respaldos que serán automáticos para no
preocupare de pérdidas de información así mismo se realizarán capacitaciones
presenciales y online para cualquier duda con los clientes.
Por otro lado, entregar un software que el usuario encuentre fácil de usar, sin defectos
y errores, al tener funcionalidades que validen los requerimientos ya establecidos,
producirá que los clientes confíen en el desarrollo de software de calidad, en un
sistema sin defectos, en el cual se pueda trabajar a gusto de forma eficaz y
eficientemente.
Por último se hace hincapié que se cumplieron los objetivos que se definieron al
principio de este documento, desde el punto de vista del negocio como el de la
funcionalidad del sistema.
http://www.bases-de-datos.cl/
http://www.mysql.com/
Competencias: (12/03/2015-16:00)
http://www.codecademy.com/?locale_code=es
http://codespells.org/
https://codigofacilito.com/
https://www.udacity.com/
https://adwords.google.com/cm/CampaignMgmt?authuser=0&__u=8430831237&__c
=5762830437#r.ONLINE&app=cm
https://unity3d.com/es
https://www.geometrix.com/
http://loadimpact.com/test/view/1811146
http://www.dt.gob.cl/consultas/1613/w3-article-60253.html
http://www.ati.es/spip.php?article434
Para vivir, aprender y trabajar con éxito en una sociedad cada vez más compleja y
más rica en información, los estudiantes y los maestros deben utilizar las tecnologías
de la Información y las Comunicaciones (TIC) eficazmente.
En un ambiente educativo sólido, las TIC pueden capacitar a los estudiantes para que
se conviertan en:
Usuarios competentes de las tecnologías de información y la comunicación
(TIC).
La presente encuesta tiene como objetivo dar a conocer como los alumnos prefieren
estudiar, cuáles son sus fallas entre otros...
Por lo tanto este material podrá ocuparse para mejorar al aprendizaje esperado por
los alumnos
Preguntas de Identificación:
Sexo:
Masculino.
Femenino.
Edad: ____
Ingeniería en Informática.
Analista Programador.
Semestre cursando
1°
2°
3°
4°
5°
6°
7°
8°
Más de 8°
0 a 1 veces
2 a 3 veces
3 a 5 veces
5 veces o más.
5. ¿Usted cree que sería de gran apoyo del aprendizaje una aplicación web?
Si
No
Prestamo 8,500,000
Cuotas 5
Años 5
Interes 0.02
Cuotas $1,803,346