PRESENTACIÓN PROYECTO FINAL

Dpto. Ingeniería de Sistemas

Universidad del Norte

Barranquilla,  2 de Junio 2015

ALFONSO MANCILLA ALVIS

  • Ingeniero Industrial.

  • Décimo semestre Ingeniería de Sistemas

  • LinkU, Untutor & Cumun.

Text

"Vida universitaria hecha simple"

Diseño e implementación de una plataforma web que le permita a los estudiantes tomar decisiones basados 

en el cumplimiento académico

¿Qué es el cumplimiento académico?

Cumplimiento Académico

El cumplimiento académico contiene la información que le permite a un estudiante conocer que tanto ha avanzado con respecto a su plan de estudio, el cual debe completar para obtener su título profesional.

Asignaturas aprobadas, matriculadas y pendientes por cursar.

¿Qué decisiones toman los estudiantes con base en el cumplimiento?

Preguntas como...

  • ¿Qué me conviene matricular?
  • ¿Qué materias puedo adelantar?
  • ¿Qué materias debo tomar para optimizar el número de créditos?
  • ¿Qué ruta debo seguir para graduarme en el menor tiempo posible?
  • ¿Qué materias tengo atrasadas?

Con base en el cumplimiento el estudiante realiza su planeación académica

Cumplimiento Académico

Lineal, sin estructura, aburrido...

Objetivo

Extraer, estructurar, presentar y poner al alcance de todos los estudiantes la información contenida en su cumplimiento a través de una plataforma web; de forma que puedan utilizar dicha información para tomar decisiones sobre su planeación académica.

Alcance y criterios para el éxito

La solución debe contemplar la extracción y organización de la información contenida en el cumplimiento en una estructura adecuada, así como la presentación de ésta en la web de forma clara y limpia.

Plataforma Web, fácil acceso, simple de utilizar y muy buena presentación visual.

Solución Propuesta

Servidor web

(API)

Cliente web

+

Servidor Web - API

(Ruby, RoR, JSON)

  • Enviar la información a los clientes web en el formato para intercambio de datos JSON.
  • Autenticar al usuario en uninorte (Mechanize).
  • Extraer la información del cumplimiento (Nokogiri).
  • Relacionar y estructurar la información utilizando estructuras de datos (Hashes y vectores)

Servidor Web - API

Estructura de la información

[
    {
         "name":"Primer Sem. Ing. Sistemas",
         "completed":true,
         "credits":"15.000",
         "grade":"4.03",
          "area_rules":
            [
                {
                    "un_id":"CAS3020",
                    "name":"COMPETENCIAS COM 1",
                    "completed":true,
                    "rule": {
                                "un_id":"CAS3020",
                                "name":"COMPETENCIAS COM I",
                                "grade":"3.7",
                                "credits":"3.000",
                                "period":"200910"
                            }
                },
                {
                    "un_id":"ELG1120",
                    "name":"ELECTIVA RZMTO.CUANTITATIVO",
                    "completed":true,
                    "rule":{
                                "un_id":"MAT1031",
                                "name":"ALGEBRA LINEAL",
                                "grade":"3.6",
                                "credits":"3.000",
                                "period":"200910"
                            }
                }
            ]
    },
    {
        "name":"Segundo Sem. Ing. Sistemas",
        "completed":true,
        "credits":"17.000",
        "grade":"4.16",
        "area_rules":
            [
                { ... },
                { ... }
            ]
    }
    { ... },
    { ... },
    { ... }
]





[{"name":"Primer Sem. Ing. Sistemas","completed":true,"credits":"15.000","grade":"4.03","area_rules":[{"un_id":"CAS3020","name":"COMPETENCIAS COM
 1","completed":true,"rule":{"un_id":"CAS3020","name":"COMPETENCIAS COM I","grade":"3.7","credits":"3.000","period":"200910"}},
{"un_id":"ELG1120","name":"ELECTIVA RZMTO.CUANTITATIVO","completed":true,"rule":{"un_id":"MAT1031","name":"ALGEBRA 
LINEAL","grade":"3.6","credits":"3.000","period":"200910"}},{"un_id":"IST0010","name":"INTROD. A LA ING. DE SISTEMAS","completed":true,"rule":
{"un_id":"IIN0010","name":"INT A LA ING. INDUSTRIAL","grade":"4.4","credits":"1.000","period":"200910"}},{"un_id":"IST2088","name":"ALGORITMIA Y 
PROGRAMACION 1","completed":true,"rule":{"un_id":"IST2088","name":"ALGORITMIA Y PROGRAMACIÓN I","grade":"4.9","credits":"3.000","period":"200910"}},
{"un_id":"MAT1101","name":"CALCULO 1","completed":true,"rule":{"un_id":"MAT1101","name":"CALCULO 
I","grade":"3.9","credits":"5.000","period":"200910"}},{"un_id":"IGL1010","name":"EXIGENCIA IDIOMAS I","completed":true,"rule":
{"un_id":"IGL1010","name":"EXIGENCIA IDIOMAS I","grade":"NV","credits":"0.000","period":"200910"}}]},{"name":"Segundo Sem. Ing. 
Sistemas","completed":true,"credits":"17.000","grade":"4.16","area_rules":[{"un_id":"CAS3030","name":"COMPETENCIAS COM 2","completed":true,"rule":
{"un_id":"CAS3030","name":"COMPETENCIAS COM II","grade":"4.2","credits":"3.000","period":"200930"}},{"un_id":"ELG1140","name":"ELECTIVA EN 
HISTORIA","completed":true,"rule":{"un_id":"ADM2021","name":"HRIA DESARROLLO EMPRESARIAL-4","grade":"4.5","credits":"3.000","period":"201010"}},
{"un_id":"FIS1023","name":"FISICA MECANICA","completed":true,"rule":{"un_id":"FIS1023","name":"FÍSICA 
MECANICA","grade":"3.4","credits":"4.000","period":"200920"}},{"un_id":"IST2089","name":"ALGORITMIA Y PROGRAMACIÓN 2","completed":true,"rule":
{"un_id":"IST2089","name":"ALGORITMIA Y PROGRAMACIÓN II","grade":"4.5","credits":"3.000","period":"201010"}},{"un_id":"MAT1111","name":"CALCULO 
2","completed":true,"rule":{"un_id":"MAT1111","name":"CALCULO II","grade":"4.4","credits":"4.000","period":"200930"}},
{"un_id":"IGL1020","name":"EXIGENCIA IDIOMAS II","completed":true,"rule":{"un_id":"IGL1020","name":"EXIGENCIA IDIOMAS
 II","grade":"NV","credits":"0.000","period":"200910"}}]},{"name":"Tercer Sem. Ing 
Sistemas","completed":true,"credits":"17.000","grade":"3.89","area_rules":[{"un_id":"ELG1130","name":"ELECTIVA HUMANIDADES","completed":true,"rule":
{"un_id":"HUM4060","name":"ARTES ESCENICAS: TRAGEDIA","grade":"3.3","credits":"3.000","period":"200930"}},{"un_id":"FIS1043","name":"FISICA CALOR 
ONDAS","completed":true,"rule":{"un_id":"FIS1043","name":"FÍSICA CALOR ONDAS","grade":"3.7","credits":"4.000","period":"201010"}},
{"un_id":"IST2110","name":"PROGRAMACION ORIENTADA OBJETO","completed":true,"rule":{"un_id":"IST2110","name":"PROGRAMACION ORIENTADA 
OBJETOS","grade":"4.2","credits":"3.000","period":"201030"}},{"un_id":"IST4021","name":"ESTRUCTURAS DE DATOS 1","completed":true,"rule":
{"un_id":"IST4021","name":"ESTRUCTURA DE DATOS I-IS","grade":"4.7","credits":"3.000","period":"201030"}},{"un_id":"MAT1121","name":"CALCULO 
3","completed":true,"rule":{"un_id":"MAT1121","name":"CALCULO 3","grade":"3.7","credits":"4.000","period":"201010"}},
{"un_id":"IGL1030","name":"EXIGENCIA IDIOMAS III","completed":true,"rule":{"un_id":"IGL1030","name":"EXIGENCIA IDIOMAS 
III","grade":"NV","credits":"0.000","period":"200910"}}]},{"name":"Cuarto Sem. Ing. 
Sistemas","completed":true,"credits":"16.000","grade":"4.18","area_rules":[{"un_id":"ELG1150","name":"ELECTIVA CIENCIAS DE LA 
VIDA","completed":true,"rule":{"un_id":"BIO7055","name":"INTRODUCC A LA BIOTECNOLOGIA","grade":"4.2","credits":"3.000","period":"201010"}},
{"un_id":"FIS1033","name":"FISICA ELECTRICIDAD","completed":true,"rule":{"un_id":"FIS1033","name":"FÍSICA 
ELECTRICIDAD","grade":"3.7","credits":"4.000","period":"201020"}},{"un_id":"IST4031","name":"ESTRUCTURAS DE DATOS 2","completed":true,"rule":
{"un_id":"IST4031","name":"ESTRUCTURA DE DATOS II-IS","grade":"4.4","credits":"3.000","period":"201110"}},{"un_id":"MAT4011","name":"ECUACIONES 
DIFERENCIALES","completed":true,"rule":{"un_id":"MAT4011","name":"ECUACIONES DIFERENCIALES","grade":"4.5","credits":"3.000","period":"201010"}},
{"un_id":"MAT4021","name":"MATEMATICAS DISCRETAS","completed":true,"rule":{"un_id":"MAT4021","name":"MATEMATICAS 
DISCRETAS","grade":"4.3","credits":"3.000","period":"201110"}},{"un_id":"IGL1040","name":"EXIGENCIA IDIOMAS IV","completed":true,"rule":
{"un_id":"IGL1040","name":"EXIGENCIA IDIOMAS IV","grade":"NV","credits":"0.000","period":"200910"}}]},{"name":"Quinto Sem. Ing. 
Sistemas","completed":true,"credits":"16.000","grade":"3.88","area_rules":[{"un_id":"ELG0007","name":"ELECTIVA EN CIENCIAS 
BASICAS","completed":true,"rule":{"un_id":"MAT4215","name":"TEORIA DE CODIGOS","grade":"3.6","credits":"3.000","period":"201330"}},
{"un_id":"EST7042","name":"ANALISIS DE DATOS EN ING 1","completed":true,"rule":{"un_id":"EST7042","name":"ANÁLISIS DE DATOS EN INGEN 
I","grade":"3.6","credits":"4.000","period":"201030"}},{"un_id":"IIN4310","name":"EXAMEN COMPREHENSIVO 1","completed":true,"rule":
{"un_id":"IIN4310","name":"EXAMEN COMPREHENSIVO I","grade":"AP","credits":"0.000","period":"201030"}},{"un_id":"IST4310","name":"ALGORITMO Y 
COMPLEJIDAD","completed":true,"rule":{"un_id":"IST4310","name":"ALGORITMOS Y COMPLEJIDAD","grade":"3.5","credits":"3.000","period":"201310"}},
{"un_id":"IST4330","name":"ESTRUCTURAS DISCRETAS","completed":true,"rule":{"un_id":"IST4330","name":"ESTRUCTURAS 
DISCRETAS","grade":"4.5","credits":"3.000","period":"201310"}},{"un_id":"IST7072","name":"DISEÑO DIGITAL","completed":true,"rule":
{"un_id":"IST7072","name":"DISEÑO DIGITAL","grade":"4.3","credits":"3.000","period":"201130"}},{"un_id":"IGL4010","name":"EXIGENCIA IDIOMAS 
V","completed":true,"rule":{"un_id":"IGL4010","name":"EXIGENCIA IDIOMAS V","grade":"NV","credits":"0.000","period":"200910"}}]},{"name":"Sexto Sem.
 Ing. Sistemas","completed":true,"credits":"18.000","grade":"4.20","area_rules":[{"un_id":"ELG0008","name":"ELECTIVA BASICA 
DISCIPLINAR","completed":true,"rule":{"un_id":"ELP8495","name":"FUNDAMENTOS DE SISTEMAS DE INF","grade":"4.3","credits":"3.000","period":"201410"}},
{"un_id":"ELG1190","name":"ELECTIVA EN CIENCIAS SOCIALES","completed":true,"rule":{"un_id":"CSO7020","name":"PROB.SOCIEDAD CONTEMPORANEA-
9","grade":"4.7","credits":"3.000","period":"201130"}},{"un_id":"IST4012","name":"ESTRUCTURA DEL COMPUTADOR 1","completed":true,"rule":
{"un_id":"IST4012","name":"ESTRUCTURA DEL COMPUTADOR I","grade":"5.0","credits":"3.000","period":"201330"}},{"un_id":"IST4360","name":"SOLUC COMPUT 
PROBLEM EN ING","completed":true,"rule":{"un_id":"IST4360","name":"SOLUCIONES COMP. A PROB.EN ING","grade":"3.8","credits":"3.000","period":"201030"}},
{"un_id":"IST7111","name":"BASES DE DATOS","completed":true,"rule":{"un_id":"IST7111","name":"BASES DE 
DATOS","grade":"4.0","credits":"3.000","period":"201330"}},{"un_id":"IST7191","name":"REDES DE COMPUTACION","completed":true,"rule":
{"un_id":"IST7191","name":"REDES DE COMPUTACION","grade":"3.4","credits":"3.000","period":"201330"}},{"un_id":"IGL4040","name":"EXIGENCIA IDIOMAS
 VI","completed":true,"rule":{"un_id":"IGL4040","name":"EXIGENCIA IDIOMAS VI","grade":"B+","credits":"0.000","period":"200910"}}]},{"name":"Séptimo 
Sem. Ing. Sistemas","completed":true,"credits":"15.000","grade":"3.80","area_rules":[{"un_id":"ELG1301","name":"ELECTIVA PROFESIONAL 
I","completed":true,"rule":{"un_id":"IIN7071","name":"INVESTIGACION DE OPERAC 2","grade":"4.0","credits":"3.000","period":"201210"}},
{"un_id":"IST7081","name":"SISTEMAS OPERACIONALES","completed":true,"rule":{"un_id":"IST7081","name":"SISTEMAS 
OPERACIONALES","grade":"3.8","credits":"3.000","period":"201410"}},{"un_id":"IST7102","name":"ESTRUCTURA DEL COMPUTADOR 2","completed":true,"rule":
{"un_id":"IST7102","name":"ESTRUCTURA DEL COMPUTADOR II","grade":"3.1","credits":"3.000","period":"201410"}},{"un_id":"IST7121","name":"DISEÑO DE 
SOFTWARE 1","completed":true,"rule":{"un_id":"IST7121","name":"DISEÑO DE SOFTWARE I","grade":"4.0","credits":"3.000","period":"201410"}},
{"un_id":"IST7420","name":"OPTIMIZACION","completed":true,"rule":{"un_id":"IIN7061","name":"INVESTIGACION DE OPERACIONES 
I","grade":"4.1","credits":"3.000","period":"201130"}},{"un_id":"IGL7030","name":"EXIGENCIA IDIOMAS VII","completed":true,"rule":
{"un_id":"IGL7030","name":"EXIGENCIA IDIOMAS VII","grade":"B+","credits":"0.000","period":"201230"}}]},{"name":"Octavo Sem. Ing. 
Sistemas","completed":true,"credits":"14.000","grade":"4.19","area_rules":[{"un_id":"ELG1170","name":"ELECTIVA EN ETICA","completed":true,"rule":
{"un_id":"ETI8070","name":"ETICA-7","grade":"4.0","credits":"3.000","period":"201210"}},{"un_id":"ELG1302","name":"ELECTIVA EN 
REDES","completed":true,"rule":{"un_id":"ELP7196","name":"NETWORKING CON LINUX","grade":"4.0","credits":"2.000","period":"201410"}},
{"un_id":"ELG8400","name":"ELECTIVA INNOVACION DLLO Y SOC","completed":true,"rule":{"un_id":"ADM4300","name":"DLLO ESPIRITU 
EMPRENDEDOR","grade":"4.7","credits":"3.000","period":"201230"}},{"un_id":"IST7122","name":"DISEÑO DE SOFTWARE 2","completed":true,"rule":
{"un_id":"IST7122","name":"DISEÑO DEL SOFTWARE II","grade":"4.5","credits":"3.000","period":"201430"}},{"un_id":"IST7410","name":"COMPILADORES","completed":true,"rule":
{"un_id":"IST7410","name":"COMPILADORES","grade":"3.7","credits":"3.000","period":"201330"}},{"un_id":"IGL7080","name":"EXIGENCIA IDIOMAS 
VIII","completed":true,"rule":{"un_id":"IGL7080","name":"EXIGENCIA IDIOMAS VIII","grade":"B+","credits":"0.000","period":"201240"}}]},{"name":"Noveno 
Sem. Ing Sistemas","completed":true,"credits":"15","grade":"3.70","area_rules":[{"un_id":"ELP4030","name":"FORMACION COMPL LIBRE 
1","completed":true,"rule":{"un_id":"IIN4300","name":"ESTUDIO DEL TRABAJO","grade":"3.7","credits":"3.000","period":"201110"}},
{"un_id":"ELG1160","name":"ELECTIVA EN FILOSOFIA","completed":true,"rule":{"un_id":"FIL4010","name":"FILOSOFIA-
6","grade":"4.9","credits":"3.000","period":"201310"}},{"un_id":"ELG1303","name":"ELECTIVA CS DE LA COMPUTACION","completed":true,"rule":
{"un_id":"IIN7081","name":"SIMULACIÓN","grade":"3.7","credits":"3.000","period":"201230"}},{"un_id":"ELG1304","name":"ELECTIVA DE GESTION 
INFORMATIC","completed":false,"rule":{"un_id":"ELP8480","name":"GESTIÓN INTEGRADA EN T.I.","grade":"","credits":"3.000","period":"201510"}},
{"un_id":"ELG1305","name":"ELECTIVA PROFESIONAL II","completed":true,"rule":{"un_id":"ELP8041","name":"CONSTRUCCION SOFTWARE BAJO 
WEB","grade":"3.9","credits":"3.000","period":"201330"}},{"un_id":"IIN4315","name":"EXAMEN COMPREHENSIVO 2","completed":true,"rule":
{"un_id":"IIN4315","name":"EXAMEN COMPREHENSIVO II","grade":"AP","credits":"0.000","period":"201210"}}]},{"name":"Décimo Sem Ing 
Sistemas","completed":true,"credits":"12","grade":"3.40","area_rules":[{"un_id":"ELP8090","name":"FORMACION COMPL LIBRE 2","completed":true,"rule":
{"un_id":"IIN7021","name":"COSTOS DE PRODUCCION","grade":"3.4","credits":"3.000","period":"201110"}},{"un_id":"ELG1180","name":"ELECTIVA EN ESTUDIO DEL 
CARIBE","completed":true,"rule":{"un_id":"ECA1030","name":"GEOG URB GRAN CUENCA DEL CARIB","grade":"4.4","credits":"3.000","period":"201310"}},
{"un_id":"ELG1306","name":"ELECTIVA PROFESIONAL III","completed":true,"rule":{"un_id":"ELP8510","name":"PROGRAMACIÓN 
MÓVIL","grade":"3.7","credits":"3.000","period":"201410"}},{"un_id":"INV7363","name":"PROYECTO FINAL","completed":false,"rule":
{"un_id":"INV7363","name":"PROYECTO FINAL","grade":"","credits":"3.000","period":"201510"}}]}]

Cliente Web

(HTML5, CSS3, JavaScript)

  • Dinámicamente dibujar y presentar al usuario la información de su cumplimiento en el nuevo formato.
  • Enviar las credenciales de autenticación del usuario a través del protocolo HTTP.
  • Convertir la información recibida de formato JSON a objetos JavaScript.

Arquitectura de la Solución

CUMUN

El cumplimiento académico, como debe ser.

PRUEBAS Y RESULTADOS

Usabilidad.
Presentación.
Utilidad.

Usabilidad

"En primer lugar en la app de la norte no se ni como llegar a esto. Por otro lado es bastante sencilla."

Presentación

"Súper, al ver el cumplimiento de esta forma, puedo organizarme de mejor manera para comenzar mi semestre."

Utilidad

"Cuando uno va al departamento a que tu coordinador te diga como organizarte o que ver el siguiente semestre, toma como 10 minutos llenado un pensum con lo que ya pase, con esta herramienta, es tan simple como poner las credenciales, y ya tengo en 5 seg. lo que a tu coordinador le toma 10 minutos."

Conclusiones

  • La información contenida en el cumplimiento académico tiene un valor significativo para los estudiantes.
  • La plataforma web es sencilla, de fácil acceso y presenta la infomación de forma adecuada.
  • La plataforma le permite a los estudiantes tomar decisiones basados en la información de su cumplimiento.

¿PREGUNTAS?

¡MUCHAS GRACIAS!

Proyecto Final Uninorte 2015

By ammancilla

Proyecto Final Uninorte 2015

  • 1,696