facultad de ingeniería de sistemas y...

58
Facultad de Ingeniería de Sistemas y Electrónica Carrera Profesional de Ingeniería de Sistemas e Informática Informe de Suficiencia Profesional para optar el Título Profesional de Ingeniero de Sistemas e Informática SISTEMA DE PROGRAMACIÓN DE HORARIOS DE LA UNIVERSIDAD TECNOLÓGICA DEL PERÚ” Bachiller: Salazar Rosero, Cecilia Milagros Lima Perú 2016

Upload: vuongduong

Post on 21-Sep-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

Facultad de Ingeniería de Sistemas y Electrónica

Carrera Profesional de Ingeniería de Sistemas e Informática

Informe de Suficiencia Profesional para optar el Título Profesional de Ingeniero de Sistemas

e Informática

“SISTEMA DE PROGRAMACIÓN DE HORARIOS DE LA UNIVERSIDAD

TECNOLÓGICA DEL PERÚ”

Bachiller:

Salazar Rosero, Cecilia Milagros

Lima – Perú

2016

Page 2: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

ii

Dedicatoria: Dedicado a mi madre que

siempre apoya todas mis decisiones y ni

por un minuto deja de creer en mí.

Page 3: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

iii

Agradecimiento: Mi agradecimiento eterno

al profesor Carlos Lon Kan por su infinito

apoyo y su tiempo para enseñarme todo lo

aplicado en este proyecto.

Page 4: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

iv

Page 5: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

v

RESUMEN

En el presente informe se describe la solución que se ha desarrollado para la

Universidad Tecnológica del Perú, que se encuentra ubicada en el Departamento de

Lima.

Se identificó el problema que se presentaba durante el proceso de asignación de

horarios a los docentes de la Universidad, el mismo que ha sido resuelto con el sistema

desarrollado usando software libre.

Este Informe de Suficiencia Profesional se encuentra dividido en cuatro capítulos, así

como las conclusiones del sistema desarrollado, se describe la situación encontrada y

el cambio de la situación después de la automatización de la asignación de horarios a

los docentes.

La metodología de desarrollo de programación extrema, permite un rápido desarrollo

del sistema, inicia con un análisis sencillo y básico que puede ser redactado por los

usuarios, luego se realiza el diseño de las interfaces culminando con la etapa del

desarrollo. Durante todo el tiempo se necesita del apoyo del usuario para ir identificando

los posibles errores y verificar la funcionalidad sin perder de vista el alcance de la

solución, seguir este procedimiento ayuda a enriquecer la aplicación.

Con la automatización de la asignación de cursos a los docentes se ha logrado eliminar

los errores que ocurrían durante el proceso manual, este sistema web permite a más de

un usuario pueda asignar un curso a un mismo docente, no hay posibilidad de cruce de

horario, permite controlar el número de horas que deben ser asignadas a cada uno de

ellos.

La solución ha utilizado software y gestor de base de datos libres reduciendo así el costo

de inversión como puede observarse en la etapa de la implementación de la solución,

sustentado en el análisis de retorno de la inversión.

Page 6: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

vi

Índice

CAPÍTULO 1 ASPECTOS GENERALES ..................................................................... 1

1.1 Definición del Problema ..................................................................................... 1

1.1.1 Descripción del Problema .................................................................................. 1

1.1.2 Formulación del Problema ................................................................................. 2

1.2 Definición de Objetivos ...................................................................................... 3

1.2.1 Objetivo General ............................................................................................... 3

1.2.2 Objetivos Específicos ........................................................................................ 3

1.2.3 Alcances y Limitaciones .................................................................................... 3

1.2.4 Justificación ....................................................................................................... 4

1.2.5 Estado del Arte .................................................................................................. 4

Resumen ...................................................................................................................... 8

CAPÍTULO 2 MARCO TEÓRICO ................................................................................. 9

2.1 Fundamento Teórico ............................................................................................ 9

2.1.1 Reseña histórica .................................................................................................. 9

2.1.2 Herramientas utilizadas para el desarrollo del sistema ........................................ 9

2.1.2.1 Lenguaje de desarrollo .................................................................................. 10

2.1.3 Metodología utilizada ......................................................................................... 11

2.1.3.1 Fases de la metodología XP ......................................................................... 12

2.1.3.2 Reglas y prácticas de la metodología XP ...................................................... 13

2.1.4 Gestor de Base de datos ................................................................................... 15

Resumen .................................................................................................................... 16

CAPÍTULO 3 DESARROLLO DE LA SOLUCIÓN ..................................................... 17

3.1 Breve descripción de la solución ........................................................................ 17

3.2 Modelos de Casos de Uso ................................................................................. 18

3.2.1 Actores del Sistema ........................................................................................... 18

3.4 Prototipos de Interfaces de usuario ................................................................... 22

3.5 Diseño de Base de datos ...................................................................................... 36

3.6 Implementación de la solución ........................................................................... 37

3.6.1 Requerimientos técnicos .................................................................................... 37

3.6.2 Puesta en marcha .............................................................................................. 37

CAPÍTULO 4 RESULTADOS ..................................................................................... 38

4.1 Resultados......................................................................................................... 38

4.1.1 Presupuesto ...................................................................................................... 39

4.1.2 Cronograma ....................................................................................................... 43

CONCLUSIONES ....................................................................................................... 45

Page 7: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

vii

BIBLIOGRAFÍA .......................................................................................................... 46

ANEXOS .................................................................................................................... 48

Anexo 01: Comparación de las metodologías ............................................................. 48

Page 8: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

viii

Índice de Tablas

Tabla 3 Actores del Sistema ....................................................................................... 18

Tabla 4: Requerimientos técnicos para la implementación del sistema ....................... 37

Tabla 5: Tiempo reducido en el proceso de programación horarios ............................ 38

Tabla 6: Costo de Personal......................................................................................... 39

Tabla 7: Costo de Adquisición de Equipos .................................................................. 40

Tabla 8: Costo de Software ......................................................................................... 40

Tabla 9: Costo de Servicios y suministros ................................................................... 41

Tabla 10: Costo total del proyecto............................................................................... 42

Page 9: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

ix

Índice de Figuras

Figura 1 Árbol de Problemas ........................................................................................ 2

Figura 2: Pantalla de Software ascHorarios .................................................................. 5

Figura 3: Pantalla de impresión de horarios .................................................................. 6

Figura 4: Pantalla de Planificador de Horarios .............................................................. 7

Figura 5: Características de PHP ................................................................................ 10

Figura 6. Metodología XP ........................................................................................... 15

Figura 7: Logo de My SQL .......................................................................................... 16

Figura 8 Caso de uso: Administrador del Sistema ...................................................... 19

Figura 9 Caso de uso: Planificación Curricular y Matrícula ......................................... 19

Figura 10 Caso de uso: Coordinador de Carrera ........................................................ 20

Figura 11 Caso de uso: Coordinador de Humanidades ............................................... 20

Figura 12 Caso de uso: Coordinador de Ciencias Básicas.......................................... 21

Figura 13 Reportes del sistema .................................................................................. 21

Figura 14 Ingreso al sistema ....................................................................................... 22

Figura 15 Menú del sistema ........................................................................................ 23

Figura 16 Opción Programación ................................................................................. 24

Figura 17 Asignación de docente por sección ............................................................. 25

Figura 18 Programación por curso .............................................................................. 26

Figura 19 Programación por secciones ....................................................................... 27

Figura 20 Cambio de docente ..................................................................................... 28

Figura 21 Reportes del Sistema .................................................................................. 29

Figura 22 Total de horas x docente ............................................................................. 30

Figura 23 Opciones de Currícula ................................................................................ 31

Figura 24 Registro de cursos ...................................................................................... 32

Figura 25 Plan de Estudios ......................................................................................... 33

Figura 26 Registro de Secciones ................................................................................ 34

Figura 27 Opción Recursos ........................................................................................ 34

Figura 28 Opción Cuentas .......................................................................................... 35

Figura 29 Diagrama de Base de Datos ....................................................................... 36

Figura 30 Curva S ....................................................................................................... 43

Figura 31 Cronograma del proyecto ............................................................................ 44

Page 10: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

x

INTRODUCCIÓN

La Universidad Tecnológica del Perú – UTP, es una institución educativa con una

población de 20 000 mil estudiantes y se debe tener horarios que permitan a los alumnos

avanzar regularmente con su plan curricular, este proceso se realizaba de forma manual

ocasionado deficiencias en el proceso de matrícula y en las áreas encargadas de esta

tarea tales como Planificación Curricular y Matrícula, Servicio de atención al estudiante

y Facultades; durante el desarrollo de este proyecto se plantea construir e implantar un

“Sistema de Programación de Horarios” que automatice esta tarea y se pueda dar

solución al problema planteado al inicio. Este proyecto será aplicado a las Facultades y

la Dirección de Ciencias y Humanidades debido a que son las áreas encargadas de

realizar la programación de los horarios a los docentes, también será aplicado en el área

de Planificación Curricular y Matrícula debido a que es el área encargada de asignar los

ambientes para los horarios, así como la responsable del proceso de matrícula de los

estudiantes. Finalmente, el área de Sistemas es la encargada de importar la

programación horaria realizada en nuestro sistema en la base de datos que maneja la

Universidad Tecnológica del Perú.

Page 11: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

CAPÍTULO 1

ASPECTOS GENERALES

En el primer capítulo revisaremos la definición del problema estudiado para el proceso

de asignación de carga horaria a los docentes de la Universidad Tecnológica del Perú.

En la segunda parte, se redacta la formulación del problema definiendo el objetivo

general y la descomposición de los objetivos específicos, que sumados lograran reducir

o eliminar el problema encontrado. También se define el alcance y las limitaciones del

proyecto de desarrollo de software a fin de establecer hasta donde se llegará, y que

procesos se atenderán o no con la propuesta de solución.

Luego se presenta la justificación de la solución, añadiendo una comparación

económica en relación al uso de herramientas de desarrollo de software libre.

En el estado del arte, se recopila información sobre la tecnología actual y conocimientos

que se usan para el desarrollo de soluciones de software, resaltando el uso de software

libre y metodologías ágiles.

1.1 Definición del Problema

En el 2013 la Universidad Tecnológica del Perú (UTP) crea el área denominada

Secretaria Académica, dando inicio a una nueva estructura en la organización,

generando nuevos procesos, entre los principales están la centralización de la

programación y registro de los horarios para los docentes.

Asimismo, la reducción de personal dedicado a estas labores hizo que la tarea de

asignación de horarios tenga un alto grado de deficiencia generando inconvenientes a

los involucrados en el proceso.

1.1.1 Descripción del Problema

Formalmente, la Universidad Tecnológica del Perú empezó a ejercer funciones en

noviembre de 1997, tiene 18 años en el mercado y es parte del grupo Intercorp; ofrece

30 carreras profesionales las mismas que se encuentran divididas en cinco facultades.

Con una innovadora propuesta educativa, la UTP reafirma su compromiso de ofrecer

una educación superior de calidad.

En Lima cuenta con 4 sedes y próximamente inaugurará dos torres tecnológicas de 14

y 12 pisos en la Avenida Arequipa, una sede en la ciudad de Chiclayo. En el año 2014

había aproximadamente 17000 estudiantes matriculados en tres turnos.

(UNIVERSIDAD TECNOLOGICA DEL PERU, 2015)

Durante el año 2013, se observó que uno de los problemas principales durante la

matrícula de los estudiantes era la deficiencia en el proceso de asignación de cursos a

los docentes, debido a que es una tarea manual y, que después debía ser transferido a

Page 12: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

2

un formato de Excel y finalmente registrado en el Módulo complementos (software de la

universidad), en cada paso del proceso se encontró errores de diferentes tipos tales

como: cambio de nombres durante el registro; error en el número de horas asignadas;

asignación de cursos diferentes a su especialidad; excesivo número de asignaturas

diferentes por docente.

Estos errores llevan a que la programación horaria de los docentes tenga cruces de

horarios, además no es posible controlar el número de horas que se les asigna

quedando muchas veces por encima de las horas establecidas por el Vicerrectorado

Académico.

Por tanto, resulta de vital importancia crear una herramienta informática que logre

reducir el tiempo en la asignación de los horarios a docentes, minimizando el costo de

hora/hombre dedicada a esta labor; optimizando el tiempo para esta tarea.

Por otro lado, tenemos el limitado tiempo para realizar todo el proceso y además los

cambios en sus disponibilidades que hacen a última hora generan más inconvenientes

en el proceso. A continuación, se detalla en la figura 1 las principales causas y efectos

del problema.

Figura 1 Árbol de Problemas

Fuente: Elaboración propia

1.1.2 Formulación del Problema

El problema que será abordado en este informe de suficiencia profesional es el

deficiente proceso de asignación de horarios a los docentes de la Universidad

Tecnológica del Perú.

Page 13: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

3

1.2 Definición de Objetivos

A continuación, se describen el objetivo general y los objetivos específicos que forman

parte del Informe de Suficiencia Profesional.

1.2.1 Objetivo General

El objetivo general del Informe de Suficiencia Profesional busca confeccionar e implantar

un sistema que controle correctamente el proceso de asignación de carga horaria a los

docentes en la Universidad Tecnológica del Perú, mediante el uso de tecnología actual.

1.2.2 Objetivos Específicos

Seguidamente se detalla los objetivos específicos del Informe de Suficiencia

Profesional.

Definir el nuevo proceso para la asignación de horarios a los docentes de la

Universidad Tecnológica del Perú, integrando todas las áreas involucradas

permitiendo un buen desarrollo de ésta tarea.

Diseñar un sistema que cumpla con los requerimientos solicitados por los

Responsables Académicos, estos son los siguientes: establecer un número

mínimo de horas por docente; número de horas de dictado por día; asignación de

cursos de acuerdo con la disponibilidad entregada. Cumplir con estos

requerimientos hará que la labor de los Responsables sea más eficiente.

Implantar un sistema online que facilite el proceso de asignación de carga horaria

para los docentes de la Universidad Tecnológica del Perú; permitirá que varias

personas puedan acceder a la vez al sistema y realizar la programación de los

cursos.

1.2.3 Alcances y Limitaciones

Es importante definir correctamente el alcance y las limitaciones porque podemos

precisar los aspectos que alcanzaremos con la creación de la herramienta, así como el

límite de nuestro proyecto, líneas abajo se encontrará el detalle del alcance y las

limitaciones.

El alcance incluye diseñar un sistema de asignación de carga horaria para docentes

contemplando que el proceso sea informatizado y eficiente impidiendo el cruce de

horarios, en la disponibilidad entregada por los docentes manteniendo el número de

horas determinadas por el Vicerrectorado Académico, éstas disponibilidades serán

entregadas por los docentes en un formato específico.

Page 14: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

4

Permitirá crear tantas secciones por curso se requieran para el proceso de matrícula,

asimismo podrá ser creados y modificados los planes de estudios de cada una de las

carreras.

Una vez terminada la asignación de horarios se creará una tabla con los datos que

requiere la base de datos del sistema de la Universidad, para que la carga horaria sea

exportada al sistema evitando así el registro manual de las secciones.

El diseño del sistema no tiene como alcance el proceso automático de generación de

horarios. Sólo podrá ser utilizado por la central de la Universidad Tecnológica del Perú,

mas no en provincias. Asimismo, no es posible realizar el registro automático de la

disponibilidad entregada por los docentes.

1.2.4 Justificación

En este Informe de Suficiencia Profesional se describe a continuación la justificación;

para la elaboración de un sistema de asignación de carga horaria para los docentes de

la UTP; así tenemos que este proyecto es muy útil y necesario para el área académica

de la Universidad Tecnológica del Perú, porque ayudará a los responsables de la

programación de horarios a realizar un trabajo eficiente en un menor tiempo, generando

satisfacción en los docentes y alumnos. El proceso de asignación será rápido, en un

entorno que sea ágil y de fácil manejo para todos los usuarios.

Además, para la Secretaría Académica porque ya no tendrá que registrar manualmente

las secciones programadas, evitando así un alto índice de errores humanos en el

proceso.

1.2.5 Estado del Arte

En la actualidad hay un alto porcentaje de instituciones de educación superior que no

cuentan con un software que permita realizar la programación de horarios de clases, así

como la asignación de carga horaria para los docentes. En la web se puede encontrar

softwares que realizan la programación de horarios, pero generalmente están

desarrollados para colegios; mayormente los horarios de los colegios son bloques

destinados para cada curso tienen el mismo número de horas, pero en la Universidad

Tecnológica del Perú los cursos pueden ser de 2 o 3 horas académicas, según sea el

requerimiento de la asignatura.

Ahora pasaremos a describir tres softwares que existen actualmente en el mercado y,

éstos son muy reconocidos porque tienen una gran demanda sobre todo por los colegios

pero que no cumplen con los requerimientos de la Universidad que es objeto de nuestro

estudio, además debemos precisar que el costo de estas herramientas es alto.

Page 15: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

5

1.2.5.1 ascHorários

Este software pertenece a la empresa ASC Applied Software Consultants, el mismo que

permite la generación de horarios de cualquier entidad educativa y ha sido vendido en

más de 173 países, cada una de sus funcionalidades se encuentran descritas en su

página web y algunas de ellas son: “la generación automática de horarios, ajustes

manuales, verificación del horario es decir comprueba rápidamente el algoritmo en

busca de algún conflicto evitando los cruces, este software se describe como una

herramienta móvil porque los docentes y estudiantes pueden acceder a él desde sus

dispositivos móviles” (aSc Applied Software Consultants, 2015); además con esta

herramienta se puede realizar la importación de datos en un formato electrónico

disponible en el sistema.

El horario generado puede ser usado como un libro de texto electrónico, los docentes

pueden iniciar sesión y llenar el silabo del curso.

En la figura 6 muestra la pantalla de la programación de los horarios de un colegio, en

las columnas se encuentra los días y en las filas muestra las secciones de cada grado

escolar.

Figura 2: Pantalla de Software ascHorarios

Fuente: (aSc Applied Software Consultants, 2015)

Page 16: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

6

1.2.5.2 Untis

Es un programa de horarios considerado como líder mundial, ha sido utilizado en más

de 20.000 centros en más de 25 idiomas. Untis Gruber & Peters refiere que “el núcleo

central está formado por un algoritmo que realiza la programación de los horarios de

forma totalmente automática de un centro de estudios. Asimismo, un asistente le ayuda

a introducir los datos iniciales y lo guía paso a paso por todo el programa hasta generar

los horarios. También se puede determinar los días de la semana en que se realizarán

las clases.

Además, se puede registrar que docente, secciones, ambientes y cursos existen en el

centro de estudios. Durante las primeras acciones que se realice en el sistema será

acompañado por un asistente de ayuda, quien será el guía durante el proceso de ingreso

de datos en el sistema.

El sistema es capaz de definir el docente y que cursos y secciones tendrá a su cargo

especificando sus horarios para cada uno de ellos; además indicará el turno y ambiente

donde realizará su clase.

El registro de los horarios se puede realizar por varias opciones como: secciones,

profesores, aulas y/o cursos. Tras finalizar la programación de los horarios existen varios

reportes generando así diversas formas de imprimirlos, en la figura 7 se puede observar

cómo se muestran los horarios en el software (Untis Gruber & Petters, s.f.).

Figura 3: Pantalla de impresión de horarios

Fuente: (Untis Gruber & Petters)

Page 17: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

7

1.2.5.3 Peñalara Software

Es una compañía española que tiene más de 20 años de experiencia en el mercado,

siendo el principal referente español en softwares de generación de horarios para

diversas instituciones educativas como colegios y universidades. Las principales

características de esta herramienta son: la fiabilidad, calidad en el producto, la mejora

continua y la actualización constante, todas ellas han permitido obtener los mejores

resultados.

Es un programa compatible que puede interactuar con otros productos de gestión

académica. Sus productos especializados han permitido que se encuentren presentes

en 25 países con más de 3000 centros de enseñanza utilizando sus productos.

El motor de cálculo es resuelve automáticamente y satisfactoriamente cualquier

problema que se presente con la disponibilidad de los docentes, ambientes, cursos y

secciones, es capaz de encontrar soluciones y optimizarlas cumpliendo con las

condiciones que se hayan ingresado en el sistema.

Cada uno de los resultados obtenidos en el sistema pueden ser vistos de diferentes

maneras, tiene opciones como reportes por docentes, secciones, cursos y aulas.

Además, los archivos pueden ser exportados en diferentes formatos como PDF, Excel.

Figura 4: Pantalla de Planificador de Horarios

Fuente: (Peñalara, 2015)

Page 18: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

8

Resumen

Al término de este capítulo se resume que la deficiencia de asignación de horarios a los

docentes de la Universidad Tecnológica, una de las razones se debe a que es un

proceso manual, teniendo como efecto problemas durante la matrícula de los alumnos.

El objetivo de implantar un sistema informático que ayude en esta tarea hará que los

responsables de la programación realicen un trabajo eficiente en un menor tiempo.

Como se observa hay varios sistemas de programación de horarios que existen en el

mercado pero que no cumplen con los requerimientos de la Universidad objeto de

nuestro estudio. Siendo imprescindible el desarrollo de un sistema a la medida que

flexibilice el trabajo de asignación de horarios.

Page 19: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

9

CAPÍTULO 2

MARCO TEÓRICO

En este capítulo se abordará el fundamento teórico del Informe de Suficiencia

Profesional.

2.1 Fundamento Teórico

El fundamento teórico se compone por los ítems que se detallan a continuación:

2.1.1 Reseña histórica

El problema de la asignación de horarios ha sido revisado y estudiado por distintos

autores, y cada uno de ellos con diferentes enfoques.

“Glassey & Mizrach (1986) desarrollaron un modelo de programación binaria para

asignar 4000 clases a 250 aulas, resolviéndose por algoritmos. Dimipoulou, M. & Miliotis

(2001) utilizaron programación entera para asignar los cursos, no considerando

docentes. Shih W., J. Sullivan (1997) aplicaron programación binaria para asignar

docentes, asignaturas y horarios, no consideraron las aulas” (LACCEI, 2008).

Los colegios o universidades enfrentan cada periodo académico el problema de

programación de horarios y la asignación de ambientes de los cursos que se dictan. De

acuerdo con la Investigación de Operaciones los problemas de programación de

horarios se centran en el área conocida como Timetabling. “Esta área consiste en la

asignación de algunos eventos a distintos horarios respetando los requerimientos y

condiciones. Dentro de estos problemas existe una rama específica, llamada Class

Scheduling, que estudia los problemas relacionados con la programación horaria para

entidades educativas” (LACCEI, 2008).

En todas las instituciones educativas existe la necesidad de asignar y coordinar los

recursos económicos, materiales y humanos en beneficio de los estudiantes, es por esto

que en este informe de suficiencia profesional se realizará un software capaz de realizar

de manera eficiente la asignación de docentes.

2.1.2 Herramientas utilizadas para el desarrollo del sistema

Siendo un proyecto de desarrollo de software basado en licencias de uso libre, se ha

determinado el uso del lenguaje de desarrollo y del gestor de base de datos

considerando la portabilidad de la aplicación (reducción de la dependencia al sistema

operativo) y la gestión de gran cantidad de información en un esquema cliente/servidor.

Page 20: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

10

2.1.2.1 Lenguaje de desarrollo

Se ha elegido para desarrollar la solución de asignación de carga lectiva a docentes el

lenguaje PHP es totalmente libre y abierto. Es muy fácil de aprender porque su curva de

aprendizaje es muy baja, tiene una sintaxis simple y cumple con los estándares básicos

de la programación orientada a objetos. No es necesario tener entornos complejos para

desarrollar soluciones porque se requerirá un periodo de aprendizaje. Se puede

programar en PHP sólo con el bloc de notas sin tener más ayuda, todos los IDEs

(Integrated Development Environment) disponibles son gratuitos y de fácil acceso; los

ambientes de desarrollo son rápidos y muy factibles para configurar.

Desarrollar un proyecto o software en PHP es fácil porque se puede acceder a paquetes

totalmente autoinstalables que son parte de PHP tales como: Apache y MySQL. Los dos

son fáciles de instalar y configurar, como si fuera cualquier aplicación de escritorio.

Obteniendo así un servidor local de base de datos en tu computadora personal,

quedando listo para desarrollar rápidamente cualquier proyecto propuesto. No hay

pérdida de tiempo en problemas de compatibilidades o en instalaciones de adds on

(complementos) que se pueda necesitar. Asimismo, PHP ofrece fácil acceso a bases de

datos y soporta muchas de ellas y, no únicamente MySQL.

PHP siempre evoluciona y se adapta a las nuevas necesidades del mercado, va

añadiendo cada vez más características que permitan hacer más y mejores cosas, sin

duda, tendremos PHP para rato (LanceTalent 2016, 2015).

Figura 5: Características de PHP

Fuente: https://2a1-blog.phpnuke.org/en/c388140/php-returning-values-by-reference

Page 21: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

11

Ventajas de PHP

1. Lenguaje totalmente libre y abierto

2. Curva de aprendizaje muy baja

3. Los entornos de desarrollo son de rápida y fácil configuración

4. Fácil despliegue: paquetes totalmente autoinstalables que integran PHP

5. Fácil acceso a bases de datos

6. Comunidad muy grande

2.1.3 Metodología utilizada

Para el desarrollo de la solución de software, se utilizará la metodología Programación

Extrema. Ésta metodología hace énfasis en el trabajo en equipo, siendo los integrantes

y directivos de éste equipo considerados de igual forma en el equipo de colaboración.

De ésta forma se implementa un entorno sencillo, pero altamente productivo. Para

desarrollar un proyecto con esta metodología se consideran cinco formas

fundamentales: la comunicación, la sencillez, la retroalimentación, el respecto y el valor.

Los programadores se comunican fluidamente con los clientes o usuarios y con sus

compañeros desarrolladores, se mantiene un diseño limpio y sencillo, basado en

mockups y el desarrollo recibe iteraciones que retroalimentan el software mediante las

pruebas de uso por su ejecución temprana (JOSKOWICZ, 2006).

Lo que más sorprende en la programación extrema son las reglas simples que se

utilizas. Es parecido a un rompecabezas que tiene muchas piezas pequeñas. Las piezas

individuales no significan nada, pero cuando todas están integradas, hacen una vista

completa de toda la solución.

Cuando los problemas técnicos aparecen o es difícil estimar el tiempo para implementar

la historia de un usuario, se puede utilizar pequeños programas de prueba que son

llamados “spike”, para explorar diferentes soluciones. Estos programas son únicamente

para probar o evaluar una solución, y suelen ser desechados luego de su evaluación

(JOSKOWICZ, 2006).

Hay otra práctica innovadora que se ha introducido en XP y, es que los programadores

deben trabajan en parejas para desarrollar el software, lo que hacen es sentarse juntos

en la misma estación o escritorio para desarrollar el software, promoviendo así la

propiedad del código colectivo y no sólo como el desarrollo de un programador.

(SOMERVILLE, 2011)

Page 22: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

12

2.1.3.1 Fases de la metodología XP

El ciclo de vida de un proyecto desarrollado con la metodología XP debe ser bastante

dinámico, y además puede estar separado en fases tales como: exploración,

planificación, iteraciones, y finalmente puesta en producción.

Fase de exploración

En esta fase se define el alcance general del proyecto. Aquí, el cliente puede definir lo

necesario realizando sencillas redacciones a las que llamaremos “historias de usuarios”.

En esta fase los programadores pueden estimar el tiempo de desarrollo basándose en

esta información. Es importante aclarar que las estimaciones de tiempo realizadas

durante esta etapa son primarias (porque estarán basadas en datos de muy alto nivel),

y pueden variar cuando se analice a detalle cada una de las iteraciones (JOSKOWICZ,

2006).

Generalmente esta fase tiene una duración de dos semanas, obteniendo como resultado

una visión general del sistema y un plazo estimado de la duración del proyecto.

Asimismo, podemos realizar descomposición de las historias de usuarios a tareas en

cada una de las iteraciones (SOMERVILLE, 2011).

Fase de planificación

La fase de planificación es corta porque en esta etapa el cliente, el gerente de proyecto

y los desarrolladores realizan un acuerdo del orden en el que deberían implementarse

las historias de usuario, además se agendan las fechas de los entregables.

Generalmente durante esta fase se puede dar una o varias reuniones con el personal

responsable de la planificación. Obteniendo como resultado de esta fase el Plan de

Entregas, o “Release Plan” (JOSKOWICZ, 2006).

Fase de iteraciones

La fase de iteraciones es la principal en el durante el periodo de desarrollo de la

metodología XP, porque acá se desarrollan las funcionalidades del proyecto, una vez

implementado las historias de usuarios de cada iteración deben generar un entregable

funcional. Al no presentar mayor detalle las historias de usuario, los desarrolladores

deben realizar primero un análisis para después desarrollarlo.

Es importante que en esta fase el cliente tenga una participación muy activa, porque se

realizará la recolección de la información para dar inicio al desarrollo, integración y se

pueda hacer el test de tareas o módulos correspondientes a cada una de las iteraciones

(JOSKOWICZ, 2006).

Page 23: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

13

Fase de puesta en producción

Al final de cada iteración los desarrolladores deben cumplir con entregar módulos sin

errores y que sean funcionales, pero es posible que el cliente no desee utilizar el

programa hasta que no se encuentre terminado (JOSKOWICZ, 2006).

En esta fase ya no se hacen más desarrollos funcionales, pero puede ser necesario

realizar tareas de ajuste (“fine tuning”).

2.1.3.2 Reglas y prácticas de la metodología XP

La metodología XP tiene un conjunto importante de reglas y prácticas que se describirán

a continuación:

Planificación, comprende lo siguiente:

- Las historias de usuarios van a sustituir a las especificaciones funcionales y a los

casos de uso, estas historias son redactadas por el cliente detallando cada una de

las especificaciones que el sistema debe realizar.

- En el plan de entregas se determina como se agruparán las historias de usuario para

desarrollar el entregable. El cronograma de los entregables será realizado por los

desarrolladores en base a las estimaciones de tiempo para cada uno de ellos.

- Reuniones diarias entre el equipo de trabajo para hacer el seguimiento de los

avances y mantener una comunicación efectiva compartiendo entre todos los

miembros los posibles problemas y soluciones que se presenten. Como sugerencia

se indica que estas reuniones se realicen en círculo y de pie.

Diseño, la metodología hace mucho énfasis en que los diseños de los softwares sean

simples y claros:

- Simplicidad; cuando un diseño es simple es implementado muy rápidamente

mientras que uno complejo toma mucho más tiempo, por ello esta metodología

propone que se desarrolle sistemas simples que funcione.

- Soluciones de prueba; los problemas técnicos aparecen, o es difícil de estimar el

tiempo que se necesita para implementar una historia de usuario, entonces se puede

utilizar los pequeños programas de prueba (llamados “spike”), para testear las

diferentes soluciones.

- Recodificación; consiste en escribir una parte de las líneas de código de un software,

sin hacer ningún cambio en su funcionalidad para que se pueda leer fácilmente y

entendible.

Page 24: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

14

- Metáfora; sirve para que se entienda algo sin necesidad de explicar con detalle. La

metodología XP nos sugiere que podemos usar este concepto como una manera fácil

de explicar cuál es el propósito de nuestro proyecto.

Desarrollo del código, la metodología XP se enfoca mucho en la disponibilidad de los

involucrados, pues esta deber ser de calidad:

- Disponibilidad del cliente; el cliente es la principal fuente de conocimiento por ello

siempre debe estar presente, en cada una de las fases del proyecto, así como el

personal a cargo del desarrollo debe involucrarse para conocer al detalle las historias

de usuario para se cumpla con los requerimientos.

- Uso de estándares; cuando los programadores trabajan en pareja pueden

intercambiar parte del código con el propósito de generar estándares en la

codificación y sea de fácil lectura para otros.

- Programación dirigida por pruebas; es importante hacer una relación con las pruebas

que se realizará para validar que el código esté correcto, para después desarrollar lo

que se requiere.

- Programación en pares; cuando se realiza en pareja la programación hace más

factible la corrección y puede ser revisado continuamente. Esto facilita la propiedad

colectiva del código en el equipo de desarrollo.

- Ritmo sostenido; las tareas se realizan a un mismo ritmo cumpliendo con el

calendario, tiene que ser constante porque cuando se trabaja horas extras no siempre

es bien aceptado por el personal y esto termina perjudicando al proyecto.

Pruebas, debe tener reglas para que realicen las pruebas unitarias, además detección

de errores y pruebas de aceptación:

- Pruebas unitarias; estas pruebas son primordiales, cada módulo debe pasar por

estas pruebas antes de que estos sean publicados o entregados al cliente.

- Detección y corrección de errores; si hay errores deben ser corregidos

inmediatamente y además tomar las precauciones para que los de este tipo no

ocurran nuevamente.

- Las pruebas de aceptación, se realizan tomando como base las historias de usuarios,

en cada fase; es importante que el cliente indique uno o más alternativas para

comprobar que se ha implementado correctamente la historia.

Page 25: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

15

Figura 6. “Típicamente un proyecto con XP lleva 10 a 15 ciclos o iteraciones. La

siguiente figura esquematiza los ciclos de desarrollo en cascada e

iterativos tradicionales (por ejemplo, incremental o espiral), comparados con el de XP”

(MAMANI, CASTRO, & MARCELO, 2012)

Fuente: https://sistemacademicoescolaravemaria.wordpress.com/about/pagina-3/

2.1.4 Gestor de Base de datos

Como gestor de base de datos se ha elegido el MySQL debido a que es de uso libre y

se puede hacer ajustes en el código para maximizar su funcionamiento, anexando

mejoras a la base de datos. Es ideal para la creación de bases de datos con acceso

desde páginas web dinámicas, así como para la creación de cualquier otra solución que

implique el almacenamiento de datos, posibilitando realizar múltiples y rápidas

consultas. A continuación, se presenta algunas características del MySQL.

Características de MySQL

El principal objetivo de MySQL es la velocidad y la robustez.

Soporta gran cantidad de diversos tipos de datos para las columnas.

Gran portabilidad entre los sistemas, se puede trabajar en distintas plataformas y

sistemas operativos.

Cada base de datos cuenta con 3 archivos: Uno de estructura, uno de datos y uno

de índice y soporta hasta 32 índices por tabla.

Aprovecha la potencia de sistemas multiproceso, gracias a su implementación

multihilo.

Flexible sistema de contraseñas (passwords) y gestión de usuarios, con un muy buen

nivel de seguridad en los datos.

Page 26: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

16

Figura 7: Logo de My SQL

Fuente: http://www.keyword-suggestions.com/bXlzcWwgbG9nbw/

Resumen

En este capítulo se muestra el marco teórico donde se define que utilizaremos el

lenguaje de programación PHP por ser software libre y portable, creando independencia

en el sistema operativo a utilizar en el computador a operar. Se utilizará la metodología

de desarrollo de software ágil, Programación Extrema, con el propósito de obtener

entregables funcionales en corto tiempo que puedan iterar e incrementar su

funcionalidad.

El gestor de base de datos a utilizar será MySQL que brinda el soporte adecuado para

las transacciones que realizará en el sistema de asignación de carga horaria para

docentes.

Page 27: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

17

CAPÍTULO 3

DESARROLLO DE LA SOLUCIÓN

En éste capítulo se describirá la solución de software para realizar la asignación de

carga horaria a los docentes de la Universidad Tecnológica del Perú, detallando la

recopilación de la información a través de las historias de usuarios y el resultado de los

prototipos de interfaces en base a la participación de los usuarios en diversas

iteraciones.

3.1 Breve descripción de la solución

El sistema de programación de horarios, se basa en la rápida asignación de cursos a

los docentes de la Universidad Tecnológica del Perú respetando la disponibilidad

entregada por los docentes a la Facultad.

Como primer paso se activa los planes de estudios que estarán activos para cada

carrera, después se crea el número de secciones por asignatura para cada carrera de

acuerdo a la proyección entregada por el área de Planificación y Matrícula, luego

deberán registrar los horarios disponibles de cada docente asignando los cursos que

puede dictar de acuerdo a su especialidad académica siendo determinada por la

Facultad; al concluir con éstas tareas se informa a todas las áreas encargadas de la

programación de horarios para proceder con la asignación de cursos y secciones a los

docentes.

Una vez concluida con la asignación de horarios se procederá con la asignación de

ambientes tarea realizada por Planificación curricular y matrícula; luego el administrador

del sistema exportará la data registrada y será entregada en un formato de Ms Excel

previamente acordado con el área de Sistemas de la Universidad para su importación

en el Módulo de Complementos.

Es importante precisar que el sistema no acepta cruce de horarios para los docentes, y

sólo podrá ser modificado o eliminado un registro por el usuario que lo realizó. Además,

no permite programar más horas de lo establecido por Vicerrectorado Académico.

Page 28: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

18

3.2 Modelos de Casos de Uso

3.2.1 Actores del Sistema

Los actores representan a los usuarios que interactúan con el Sistema de Programación

Horaria en la Universidad Tecnológica del Perú.

Tabla 1 Actores del Sistema

ACTOR DESCRIPCIÓN

Es la persona responsable de la asignación de carga horaria a los docentes. Decide los cursos que deben dictar los docentes de acuerdo a su especialidad. Establece el número de horas que debe dictar en función a lo dispuesto por el Vicerrectorado. Existe un coordinador por cada escuela.

Área responsable de configurar las opciones iniciales de los horarios, como número de secciones por curso, planes curriculares (habilitación de cursos), asignación de aulas, registro de la disponibilidad horaria de los docentes.

Persona responsable del mantenimiento de los usuarios y encargado de coordinar con el área de sistemas para la importación de la data.

Persona responsable de la designación de cursos de formación general en el área de Ciencias. Concluida su programación de horarios pasa a las facultades para concluir con la programación del periodo lectivo.

Persona responsable de la designación de cursos de formación general en el área de Humanidades. Concluida su programación de horarios pasa a las facultades para concluir con la programación del periodo lectivo.

Fuente: Elaboración propia

Page 29: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

19

Figura 8 Caso de uso: Administrador del Sistema

Fuente: Elaboración propia

Figura 9 Caso de uso: Planificación Curricular y Matrícula

Fuente: Elaboración propia

ADMINISTRADOR

Mantenimiento deUsuarios

Exportar Datos alAS400

Agrega Usuarios

Actualización deDatos

Deshabilitaciónde Usuarios

<<extend>>

<<extend>>

<<extend>>

PLANIFICACIÓNCURRICULAR Y

MATRÍCULA

Crea secciones porasignatura

Mantenimiento dePlanes

Asignación de aulas

Registro deDisponibilidades

Page 30: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

20

Figura 10 Caso de uso: Coordinador de Carrera

Fuente: Elaboración propia

Figura 11 Caso de uso: Coordinador de Humanidades

Fuente: Elaboración propia

COORDINADOR

AdministrarDocentes

AgregarDocente

ActualizarDocente

EliminarDocente

Cursos que enseñael Docente

AdministraDisponibilidad

Docente

SeguimientoDocente

<<extend>>

<<extend>>

<<extend>>

COORDINADORDE

HUMANIDADES

AdministrarDocentes

AgregarDocente

ActualizarDocente

EliminarDocente

Cursos que enseñael Docente

AdministraDisponibilidad

Docente

SeguimientoDocente

<<extend>>

<<extend>>

<<extend>>

Page 31: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

21

Figura 12 Caso de uso: Coordinador de Ciencias Básicas

Fuente: Elaboración propia

Figura 13 Reportes del sistema

Fuente: Elaboración propia

COORDINADORDE CIENCIAS

BÁSICAS

AdministrarDocentes

AgregarDocente

ActualizarDocente

EliminarDocente

Cursos que enseñael Docente

AdministraDisponibilidad

Docente

SeguimientoDocente

<<extend>>

<<extend>>

<<extend>>

GESTOR DEHORARIOS

Generar Reporte deHoras por Docente

Generar Reporte deHorarios por Sección

Generar Reporte deHorarios por Aula

Generar Reporte deHorario por Carrera,

Plan y Sección

Page 32: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

22

3.4 Prototipos de Interfaces de usuario

A continuación, se muestra las pantallas con la que el Sistema de Programación de

Horarios (SAPRHO) cuenta.

En la figura 14 muestra la pantalla de ingreso al sistema debiendo registrar su usuario y

clave y presionar entrar.

Figura 14 Ingreso al sistema

Fuente: Elaboración propia.

Page 33: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

23

En la figura 15 se muestra la barra de menú del sistema, mostrando todas las opciones

disponibles que el usuario tiene para interactuar con el sistema.

Figura 15 Menú del sistema

Fuente: Elaboración propia.

Page 34: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

24

En la figura 16 se muestra las modalidades en las que se puede programar con la opción

“Programación”

Figura 16 Opción Programación

Fuente: Elaboración propia.

Page 35: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

25

En la figura 17 se muestra como asignar un docente, seleccionando primero la

sección, después los cursos finalmente aparecen los docentes disponibles para el

curso y el turno.

Figura 17 Asignación de docente por sección

Fuente: Elaboración propia.

Page 36: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

26

En la figura 18 se muestra la programación por cursos, se debe elegir el curso y

aparecerá las carreras en las que se dicta el curso, debiendo escoger una para

asignar al curso.

Figura 18 Programación por curso

Fuente: Elaboración propia.

Page 37: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

27

En la figura 19 se visualiza la opción para programar por secciones mostrando todos los

cursos por ciclo de acuerdo al plan curricular de la carrera.

Figura 19 Programación por secciones

Fuente: Elaboración propia.

Page 38: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

28

En la figura 20 se muestra la opción de cambiar de docente a un curso, te mostrará los

docentes disponibles para el curso.

Figura 20 Cambio de docente

Fuente: Elaboración propia.

Page 39: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

29

En la figura 21 se muestra la opción reportes que se encuentran disponibles en el

sistema. Los reportes “Detalle Programación”, “Secciones Programadas” y “Plan de

Estudios” son archivos que se exportan en Ms Excel.

Figura 21 Reportes del Sistema

Fuente: Elaboración propia.

Page 40: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

30

En la figura 22 se muestra los cursos asignados al docente, indicando las horas y días

programados.

Figura 22 Total de horas x docente

Fuente: Elaboración propia

Page 41: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

31

En la figura 23 se muestra las opciones disponibles que se encuentra dentro de

Currícula.

Figura 23 Opciones de Currícula

Fuente: Elaboración propia.

Page 42: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

32

En la figura 24 se muestra como registrar, editar, eliminar los cursos o cambiar el

estado de Activo o Inactivo.

Figura 24 Registro de cursos

Fuente: Elaboración propia

Page 43: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

33

En la figura 25 se muestra la opción Plan de Estudios, se debe buscar por facultad y

escuela una vez encontrado se puede registrar, eliminar, modificar y activar o

deshabilitar un plan de estudios.

Figura 25 Plan de Estudios

Fuente: Elaboración propia.

Page 44: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

34

En la figura 26 muestra Registro de Secciones se pueden crear, modificar, eliminar

alguna sección creada.

Figura 26 Registro de Secciones

Fuente: Elaboración propia.

En la figura 27 se muestra las opciones para realizar el registro y la búsqueda del

docente y también se puede registrar el ambiente.

Figura 27 Opción Recursos

Fuente: Elaboración propia.

Page 45: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

35

En la figura 28 muestra la opción Cuentas, nos muestra la lista de usuarios que tienen

acceso al sistema con el perfil asignado, así como el registro de usuarios que pueden

ingresar al sistema.

Figura 28 Opción Cuentas

Fuente: Elaboración propia.

Page 46: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

36

3.5 Diseño de Base de datos

Después del análisis realizado con los usuarios y las interfaces presentadas, se muestra

la base de datos diseñada en la figura 30 que soportará el sistema.

Figura 29 Diagrama de Base de Datos

CARRERAS

IDCarreraCP

Descripción

getCarrera()updateCarrera()inactivateCarrera()searchCarrera()filterCarrera()

CURSOS

IDCursoCP

DescripciónTipoEstadoCréditosHoras TeoríaHoras Práctica

getCurso()updateCurso()inactivateCurso()searchCurso()filterCurso()

SECCION

IDSeccionCP

CursoPlanCurricFecna InicioFecha FinEstadoCantAlumnosInscritos

getSeccion()updateSeccion()inactivateSecccion()searchSeccion()filterSeccion()

PLANCURRIC

IDPlanCP

CarreraCursoCreditosHora TeoriaHora Practica

getPlan()updatePlan()inactivatePlan()searchPlan()filterPlan()

DOCENTE

IDDocenteCP

ApellidosNombresDNIEspecialidadTelefonoemail

getDocente()updateDocente()inactivateDocente()searchDocente()filterDocente()

SECCION DOCENTE

IDSecDocCP

TurnoDiaFechaInicioFechaFinHoraInicioHorafin

getSecDoc()updateSecDoc()inactivateSecDoc()searchSecDoc()filterSecDon()

AULA

IDAulaCP

LocalDescripcionCapacidad

getAula()updateAula()inactivateAula()searchAula()filterAula()

ESTADO

IDEstadoCP

Descripcion

getEstado()

updateEstado()

Fuente: Elaboración Propia

Page 47: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

37

3.6 Implementación de la solución

Para la implementación del sistema es preciso considerar los requerimientos técnicos

necesarios para efectuar la instalación y establecer la comunicación con la Universidad

Tecnológica del Perú.

3.6.1 Requerimientos técnicos

Para la implementación de la solución se requiere contar con el hardware, software y la

plataforma de comunicaciones para su funcionamiento.

Tabla 2: Requerimientos técnicos para la implementación del sistema

Característica Descripción Observación

Sistemas operativo Windows 10 Instalado y actualizado

Entorno de ejecución PHP Instalado y actualizado

Base de datos MySQL versión 9.3 Tomar nota de la clave de la

BD.

Fuente: Elaboración propia

3.6.2 Puesta en marcha

Una vez que se terminó con las interfaces y la codificación, el sistema fue implantado

finalmente en agosto del 2014, mostrándose a todas las áreas encargadas de la

programación de horarios. Actualmente continúa en operación.

Page 48: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

38

CAPÍTULO 4

RESULTADOS

En este capítulo se describirá los resultados de la solución y el impacto obtenido

después de implantado el sistema en la Universidad Tecnológica del Perú.

4.1 Resultados

El sistema de programación de horarios, redujo el tiempo y el número de personas que

se dedicaban a esta tarea; antes de la implantación del sistema llevaba 06 semanas

realizar la programación después de la implantación logró reducir a 01 semana sin

errores de cruce de horarios y nombres de docentes.

Tabla 3: Tiempo reducido en el proceso de programación horarios

Tiempos Proceso de creación de secciones

Proceso de asignación de

horarios realizado por las carreras

Registro de los horarios en el

módulo complementos - UTP

Con sistema 01 día 05 días 01 día

Sin sistema 04 días 25 días 07 días

Beneficio 03 días 20 días 06 días

Fuente: Elaboración propia.

Adicionalmente se redujo el número de personas dedicadas a este proceso,

reasignándolos en nuevas tareas. El registro de los horarios en el módulo complementos

se automatizó minimizando los errores en la asignación de docentes, optimizando el

tiempo de registro de las secciones.

El control de la disponibilidad de las horas de cada docente logró evitar el cruce de

horarios o programarlos en horas y/o días que no correspondían, este tipo de errores

eran muy comunes cuando la programación era manual.

Con el sistema de programación de horarios implantado se ha logrado que las áreas

académicas y administrativas dedicadas a esta labor trabajen ordenadamente en un

menor tiempo sin errores para beneficio de los docentes y alumnos de la Universidad

Tecnológica del Perú.

Page 49: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

39

4.1.1 Presupuesto

El costo total del proyecto incluye adquisición de equipos, software, servicios y

suministros. El costo de ésta solución considera también el costo del personal.

El costo del proyecto incluye los costos del personal del equipo del proyecto, formado

por un programador, un analista programador, analista de control de calidad, analista de

procesos, analista de sistemas y un líder del proyecto. Además del personal de la

Universidad Tecnológica del Perú, quienes participaron activamente en el desarrollo del

sistema brindandonos información así como ejecutando el sistema durante la etapa de

realización de las pruebas. En la tabla 6 se detalla el costo de cada persona.

Tabla 4: Costo de Personal

RECURSOS HUMANOS

Sueldo Sueldo x

hora N° de Horas

Días %

Asignación

Monto por Días %

Asignado (S/.)

Líder del Proyecto S/. 3.500,00 S/. 14,58 8 30 100% S/. 3.500,00

Analista de Sistemas

S/. 3.000,00 S/. 12,50 8 15 50% S/. 1.500,00

Analista de Control de Calidad

S/. 2.500,00 S/. 10,42 8 15 50% S/. 1.250,00

Analista de Procesos

S/. 2.500,00 S/. 10,42 8 15 50% S/. 1.250,00

Programador en PHP

S/. 2.000,00 S/. 8,33 8 30 100% S/. 2.000,00

Especialista en Seguridad

S/. 2.000,00 S/. 8,33 8 15 50% S/. 1.000,00

TOTAL S/. 10.500,00

Fuente: Elaboración propia

Page 50: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

40

Los equipos han sido considerados en el presupuesto incluye las pc, laptop, impresora

y demás equipos necesarios para el desarrollo del sistema, tal como se detalla en la

Tabla 7.

Tabla 5: Costo de Adquisición de Equipos

Equipo Unidad de

medida Cantida

d Precio

Unitario $ Precio

Unitario S/. Total

Computadoras Unid. 3 $ 500,00

S/. 1.700,00 S/. 5.100,00

Epson L355 All in One Wifi Printer

Unid. 1 $ 250,00

S/. 850,00 S/. 850,00

Router Unid. 2 $ 30,00

S/. 102,00 S/. 204,00

Switch DLNK (16 puertos)

Unid. 1 $ 60,00

S/. 204,00 S/. 204,00

Estabilizador solido Unid. 5 $ 24,00

S/. 81,60 S/. 408,00

Cableado estructurado

Unid. 8 $ 200,00

S/. 680,00 S/. 5.440,00

Laptop Unid. 2 $ 600,00

S/. 2.040,00 S/. 4.080,00

TOTAL S/. 16.286,00

Fuente: Elaboración propia.

En la tabla 8 se detalla el costo de algunos softwares utilizados, el lenguaje utilizado

para el desarrollo del sistema es un software libre y es el PHP.

Tabla 6: Costo de Software

Software Unidad

de medida

Cantidad Precio

Unitario $ Precio

Unitario S/. Total

Windows 7 Unidad 5 $ 70,00 S/. 238,00 S/. 1.190,00

Ms Office 2013 Unidad 2 $ 220,00 S/. 748,00 S/. 1.496,00

Antivirus AVG Unidad 5 $ 25,00 S/. 85,00 S/. 425,00

Rational Rose Unidad 1 $ 800,00 S/. 2.720,00 S/. 2.720,00

TOTAL S/. 5.831,00

Fuente: Elaboración propia.

Page 51: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

41

El costo del proyecto incluye los costos de servicios como alquiler de oficina, servicios

de luz, agua, teléfono, internet y materiales de escritorio , tal com se detalla en la Tabla

9.

Tabla 7: Costo de Servicios y suministros

Servicios y suministros

Tiempo en

meses Cantidad Costo $ Costo S/. Costo Total

Alquiler de Oficina 3 - $ 500,00 S/. 1.700,00 S/. 5.100,00

Luz 3 - $ 30,00 S/. 102,00 S/. 306,00

Agua 3 - $ 15,00 S/. 51,00 S/. 153,00

Limpieza 3 - $ 100,00 S/. 340,00 S/. 1.020,00

Teléfono 3 - $ 50,00 S/. 170,00 S/. 510,00

Internet 3 - $ 50,00 S/. 170,00 S/. 510,00

Papel bond A4 (Paq. 1/2 millar)

- 2 $ 10,00 S/. 34,00 S/. 68,00

Cuaderno - 5 $ 1,00 S/. 3,40 S/. 17,00

Lapicero - 10 $ 0,25 S/. 0,85 S/. 8,50

Memorias USB - 8 Gb

5 $ 10,00 S/. 34,00 S/. 170,00

Movilidad 10 $ 50,00 S/. 170,00 S/. 1.700,00

Toner para Impresora

- 1 $ 70,00 S/. 238,00 S/. 238,00

TOTAL S/. 9.800,50

Fuente: Elaboración propia.

Page 52: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

42

El costo total del proyecto se consolida en los egresos del presupuesto, que incluye

todos los costos descritos anteriormente, a coontinuación en la Tabla 10 se detalla el

costo total del proyecto.

Tabla 8: Costo total del proyecto

EGRESO DEL PRESUPUESTO DEL PROYECTO

MES

1 2 3

Ingresos

Ventas/Beneficios

Egresos

Inversión

Adquisición de Equipos S/. 16.286,00

Costo de Software S/. 5.831,00

Gastos Generales

Servicios y suministros S/. 9.800,50

Recursos Humanos

Líder del Proyecto S/. 3.500,00 S/. 3.500,00 S/. 3.500,00

Analista de Sistemas S/. 1.500,00 S/. 1.500,00 S/. 1.500,00

Analista de Control de Calidad S/. 1.250,00 S/. 1.250,00 S/. 1.250,00

Analista de Procesos S/. 1.250,00 S/. 1.250,00 S/. 1.250,00

Programador en PHP S/. 2.000,00 S/. 2.000,00 S/. 2.000,00

Especialista en Seguridad S/. 1.000,00 S/. 1.000,00 S/. 1.000,00

Total de Presupuesto del proyecto S/. 42.417,50 S/.

10.500,00 S/. 10.500,00

TOTAL ACUMULADO S/. 42.417,50 S/. 52.917,50 S/. 63.417,50

Page 53: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

43

Durante el periodo de ejecución del proyecto, se efectuaron desembolsos semanales

generando la curva S de egresos, tal como se muestra en la figura 31

Figura 30 Curva S

Fuente: Elaboración propia.

4.1.2 Cronograma

El cronograma proyectado y ejecutado en 97 días con un equipo formado por 06

colaboradores, entre los que se incluye un líder del proyecto, un analista programador,

programador.

Tal como la metodología Programación Extrema lo específica, la codificación se realizó

en parejas.

Page 54: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

44

Figura 31 Cronograma del proyecto

Fuente: Elaboración propia

Page 55: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

45

CONCLUSIONES

El desarrollo del presente proyecto soluciona la deficiencia en la asignación de

horarios de la Universidad Tecnológica del Perú.

- La definición clara del alcance con la participación de todos los usuarios

involucrados permitirá que el sistema implantado solucione todos los

requerimientos funcionales y no funcionales de la Universidad Tecnológica del

Perú.

- El uso de la metodología extrema para el proceso del desarrollo de software

permitió que el sistema producido para la asignación de carga horaria de los

docentes de la Universidad Tecnológica del Perú sea construido ordenadamente

siguiendo todas las fases establecidas por la metodología.

Page 56: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

46

BIBLIOGRAFÍA

2009-2013 Eressea Solutions. (09 de Octubre de 2015). Eressea Solutions. Obtenido de

Eressea Solutions: http://www.eresseasolutions.com

APRENDER A PROGRAMAR. (28 de Diciembre de 2015). APRENDER A PROGRAMAR.

Obtenido de

http://www.aprenderaprogramar.com/index.php?option=com_content&id=492:ique-

es-php-y-ipara-que-sirve-un-potente-lenguaje-de-programacion-para-crear-paginas-

web-cu00803b&Itemid=193

aSc Applied Software Consultants. (2015). ascHorarios. Recuperado el 11 de Marzo de

2015, de ascHorarios: http://www.asctimetables.com/timetables_es.html

GRID MORELOS. (28 de Diciembre de 2015). GRID MORELOS. Obtenido de

http://www.gridmorelos.uaem.mx/~mcruz//cursos/miic/MySQL.pdf

LanceTalent 2016. (11 de Enero de 2015). LanceTalent. Obtenido de LanceTalent:

https://www.lancetalent.com/blog/6-buenos-motivos-para-trabajar-con-php/

Latin American Caribbean Consortium of Engineering Institutions. (06 de 06 de 2016).

www.laccei.org. Obtenido de http://www.laccei.org/LACCEI2008-

Honduras/Papers/PO131_Fiallos.pdf

Lopez, C., & Salmeron, J. (28 de Diciembre de 2015). http://phpwebquest.org/.

Obtenido de

http://phpwebquest.org/cursocep/webquest/soporte_tabbed_w.php?id_actividad=18

518&id_pagina=1

MAMANI, C., CASTRO, G., & MARCELO, R. (JUNIO de 2012). WORD PRESS. Obtenido de

https://sistemacademicoescolaravemaria.wordpress.com/author/inf162grupo13sistac

ademicoescolar/

Peñalara. (27 de Setiembre de 2015). Peñalara. Obtenido de www.penalara.com

Plantilla Dynamic Views. (s.f.). METODOLOGIA RUP. Recuperado el 23 de Febrero de

2015, de http://rupmetodologia.blogspot.com/

Procesos de Software. (15 de Octubre de 2015). Procesos de Software. Obtenido de

https://procesosdesoftware.wikispaces.com/METODOLOGIA+XP

Proyectos ágiles. (15 de octubre de 2015). Proyectos ágiles. Obtenido de

http://proyectosagiles.org/que-es-scrum/

SARCO, J. P. (24 de MARZO de 2012). ISTQB – CAP 2 – TESTING A TRAVÉS DEL CICLO DE

VIDA DEL SOFTWARE – I. Obtenido de ISTQB – CAP 2 – TESTING A TRAVÉS DEL CICLO

DE VIDA DEL SOFTWARE – I: https://josepablosarco.wordpress.com

Scrib Inc. (28 de Diciembre de 2015). Scrib. Obtenido de

https://es.scribd.com/doc/50288837/Caracteristicas-de-PHP

UNIVERSIDAD TECNOLOGICA DEL PERU. (20 de SETIEMBRE de 2015). UTP. Obtenido de

UTP: www.utp.edu.pe

Page 57: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

47

Untis Gruber & Petters. (s.f.). Untis Programa de Horarios. Recuperado el 12 de Marzo

de 2015, de Untis Programa de Horarios: http://www.grupet.at/home_es.php

Urquiza, R. (07 de 2015). phpnuke.org. Obtenido de https://2a1-

blog.phpnuke.org/en/c388140/php-returning-values-by-reference

Wikibooks. (28 de Diciembre de 2015). Wikilibros. Obtenido de

https://es.wikibooks.org/wiki/Programaci%C3%B3n_en_Java/Caracter%C3%ADsticas_

del_lenguaje

Wikipedia. (28 de Diciembre de 2015). Obtenido de

https://es.wikipedia.org/wiki/Lenguaje_unificado_de_modelado

WIKIPEDIA. (09 de Octubre de 2015). es.wikipedia.org. Obtenido de es.wikipedia.org:

https://es.wikipedia.org/wiki/

Wordpress.com. (09 de Octubre de 2015). FREAKINGENIERIA DE SOFTWARE. Obtenido

de FREAKINGENIERIA DE SOFTWARE: https://ingsoft2euh.wordpress.com

Page 58: Facultad de Ingeniería de Sistemas y Electrónicarepositorio.utp.edu.pe/bitstream/UTP/256/1/9720018.pdf · realizar la programación de los horarios a los docentes, también será

48

ANEXOS

Anexo 01: Comparación de las metodologías

METODOLOGÍA VENTAJAS DESVENTAJAS

SCRUM

Entrega de un producto funcional al finalizar cada Sprint.

Posibilidad de ajustar la funcionalidad en base a la necesidad de negocio del cliente.

Visualización del proyecto día a día. Alcance acotado y viable. Equipos integrados y

comprometidos con el proyecto, toda vez que ellos definieron el alcance y se auto administran.

Flexibilidad a los cambios. Mayor calidad y productividad de

software. Cumplimiento de las expectativas. Reducción de riesgos.

No genera toda la evidencia o documentación de otras metodologías.

El equipo puede estar tentado para tomar el camino más corto y sumar más puntos sprint.

Tu cliente necesita las fechas exactas de entrega con mucha antelación.

El equipo debe ser auto-organizado, entonces ¿qué pasa si no tenemos un equipo así?

XP Programación organizada. Menor taza de errores. Satisfacción del programador.

Es recomendable emplearlo solo en proyectos a corto plazo.

Altas comisiones en caso de fallar.

RUP

Proceso de software hecho a la medida para ser publicado y hacerlo accesible a todo el equipo del proyecto.

Proceso de software configurable, para satisfacer necesidades específicas de un proyecto.

Requiere conocimientos de UML. Por el grado de complejidad puede

ser no muy adecuado en proyectos pequeños, es posible que no se puedan cubrir los costos de dedicación del equipo de profesionales necesarios