Project

General

Profile

Acerca del proyecto » History » Version 2

Pedro Araya, 10/04/2021 06:22 PM

1 1 Pedro Araya
h1. Acerca del proyecto
2 1 Pedro Araya
3 1 Pedro Araya
h1. Problemática
4 1 Pedro Araya
5 1 Pedro Araya
Actualmente existen múltiples problemas de los alumnos y docentes a la hora de poner en práctica la programación, el proyecto aborda principalmente:
6 1 Pedro Araya
7 1 Pedro Araya
* Accesibilidad, tanto alumnos como profesores requieren de instalar Software en sus equipos personales o prestados por la universidad, tanto compiladores, editores de texto, dependencias requeridas para el uso de cierto lenguaje de programación, etc. Este aspecto toma varios factores, principalmente la falta de prestación hardware, inexperiencia instalando ambientes de programación, tiempo para la preparación del ambiente, factores económicos, factores temporales como problemas con el equipo, etc.
8 1 Pedro Araya
9 1 Pedro Araya
* Vías de comunicación, no existe una vía rápida de comunicación para poder discutir sobre código de programación, tanto entre alumnos en caso de dudas, y entre alumno profesor para realizar consultas. Todo esto se realiza enviando mensajes o correos con el archivo adjunto, o simplemente de forma sincrónica en un entorno específico.
10 1 Pedro Araya
11 1 Pedro Araya
* Entorno, al programar en algunos lenguajes de programación, hay veces que sucede que el código de programación funciona con ciertas dependencias o versiones que no necesariamente las cumplen sus pares o el docente, por lo cual habrá problemas de ejecución recurrentes en ambientes con diferentes parámetros de ejecución. Para un docente, el poder evaluar este tipo de problemas puede ser una gran pérdida de tiempo.
12 1 Pedro Araya
13 1 Pedro Araya
* Trabajo en equipo, considerando que no todos los alumnos y principalmente los de primeros años conocen como utilizar repositorios Git para el versionado de un proyecto, usualmente recurren a que solo algunos integrantes tengan el código principal y si uno de los alumnos del equipo desea arreglar algún error, este tiene que ponerse de acuerdo con el alumno correspondiente. Lo definido anteriormente, definitivamente no permite la programación en equipo, y esto puede causar problemas en las bases del conocimiento, al tener encargados del código del proyecto, los otros colaboradores no pueden participar activamente, siendo posible causarles deficiencias futuras en sus capacidades de programación.
14 1 Pedro Araya
15 1 Pedro Araya
h1. Solución propuesta
16 1 Pedro Araya
17 1 Pedro Araya
El proyecto consiste en una plataforma web orientada al aprendizaje de programación básica e intermedia, la cual será implementada dentro del departamento de Ingeniería Civil en Computación e Informática de la Universidad de Tarapacá. Debido a que los usuarios principales son los alumnos y docentes, se explicarán las funcionalidades principales de cada uno.
18 1 Pedro Araya
19 1 Pedro Araya
La idea principal, es que los alumnos tengan un lugar en donde poder aprender a programar o experimentar con algún lenguaje de programación sin la necesidad de tener el hardware o software adecuado (compiladores, editores de texto, IDEs, etc) y en cualquier lugar con conexión a internet. Esto funcionará a través de repositorios personales de los alumnos en donde podrán compartir carpetas o archivos con sus compañeros y poder trabajar programando colaborativamente, además de poder probar el código a través de un compilador embebido en la aplicación. Otra funcionalidad será el poder realizar talleres o evaluaciones que serán definidas por el docente, en donde se trabajará en conjunto en tiempo real.
20 1 Pedro Araya
21 1 Pedro Araya
Los docentes que requieran utilizar esta aplicación web para la realizar la enseñanza a sus alumnos, podrán inscribir a los alumnos a un curso virtual correspondiente a la asignatura dentro de la aplicación. Dentro del curso virtual, se podrán crear recursos de aprendizaje en los cuales los alumnos podrán acceder en cualquier momento, además de poder crear talleres en donde los alumnos puedan participar tanto individualmente como en grupos (definido por el docente), y trabajar con respecto a un enunciado que él defina pertinente, mientras los alumnos trabajan en el taller, el profesor podrá monitorizar el avance de cada uno de los grupos. Luego, una vez finalizado el taller, el docente tendrá acceso al desarrollo de los alumnos de la actividad para realizar la respectiva evaluación.
22 1 Pedro Araya
23 2 Pedro Araya
h1. Propósito y justificación del proyecto
24 2 Pedro Araya
25 2 Pedro Araya
El proyecto surge de la necesidad de mejorar el estado actual de la enseñanza y aprendizaje de programación y trabajo en equipo de los estudiantes del Departamento de Ingeniería Civil en Computación e Informática de la Universidad de Tarapacá, mediante un sistema que contenga las herramientas necesarias para este fin, permitiendo que sea accesible para todos los involucrados. Si consideramos un ambiente de desarrollo de software actual, se requieren de habilidades y hábitos, tales como; buen manejo al explicar código de programación, utilizar lenguaje técnico, realizar una buena documentación, conocimiento amplio en diversos lenguajes de programación y experiencia en el trabajo en equipo.
26 2 Pedro Araya
27 2 Pedro Araya
El propósito principal del proyecto es, hacer más accesible las condiciones de trabajo mencionadas a los estudiantes, de manera que estos tengan un aprendizaje temprano significativo de cómo funciona el desarrollo de software en la actualidad. Además, de que estos puedan desarrollarse como futuros profesionales, en cualquier lugar, sin importar las condiciones, simplemente con un navegador web y acceso a internet.
28 2 Pedro Araya
29 2 Pedro Araya
Otro punto importante, son las evaluaciones, actualmente se realizan de forma independiente por cada alumno que curse la asignatura, cada uno en un entorno de trabajo diferente, por lo cual el docente al finalizar la evaluación, tiene que recolectar y organizar el conjunto de evaluaciones realizadas para luego revisarlas una a una. Es por esto, que el sistema propuesto va a permitir mejorar el tiempo de revisión al ser centralizado, con las herramientas necesarias para llevarlo a cabo.
30 2 Pedro Araya
31 2 Pedro Araya
Como referencia a este proyecto, existen herramientas de trabajo colaborativo, tales como Google Drive con sus herramientas de ofimática o GitHub para alojar proyectos utilizando un sistema de control de versiones.
32 2 Pedro Araya
33 2 Pedro Araya
h1. Alcance
34 2 Pedro Araya
* Los lenguajes de programación considerados para la compilación en consola virtual de la plataforma, son; Python, C, C + +, Java y JavaScript.
35 2 Pedro Araya
* La compilación online tendrá limitaciones funcionales, en cuanto a librerías utilizables, las entradas posibles, salidas que serán limitadas a resultados de consola y un tiempo límite de espera por una respuesta, además de un límite de uso de memoria RAM y CPU.
36 2 Pedro Araya
* El usuario va a tener la posibilidad de instalar librerías a través de comandos en la consola.
37 2 Pedro Araya
* El diseño de experiencia de usuario (UX) tendrá un nivel inferior al actual en el mercado, además no será orientado a móviles.
38 2 Pedro Araya
39 2 Pedro Araya
40 1 Pedro Araya
h1. Requerimientos
41 1 Pedro Araya
42 1 Pedro Araya
* Las cuentas serán creadas por los usuarios administradores del sistema, las cuales serán de alumnos o docentes.
43 1 Pedro Araya
* Solo los usuarios registrados tendrán acceso a la plataforma.
44 1 Pedro Araya
* Los usuarios podrán crear repositorios, los cuales permitirán gestionarlos a partir de carpetas y archivos. 
45 1 Pedro Araya
* Los repositorios podrán ser compartidos a otros usuarios, los cuales podrán verlos o editarlos.
46 1 Pedro Araya
* Los usuarios podrán programar en un ambiente con un texto colaborativo, además podrán compilar o ejecutar código de programación en una consola embebida en la plataforma web del sistema.
47 1 Pedro Araya
* Todos los cambios ocurridos en el sistema tienen que ser guardados de forma automática y tiene que tener un registro de cambios realizados.
48 1 Pedro Araya
* Las cuentas de los docentes pueden crear repositorios de tipo aula virtual, los cuales vienen con funcionalidades extras, como carpeta para los recursos de las clases, gestión de estudiantes y realizar evaluaciones o talleres en tiempo real.
49 1 Pedro Araya
* El sistema debe ser montado en el servidor del departamento de la carrera.