“Marta Abreu” de Las Villas
Transcript of “Marta Abreu” de Las Villas
Universidad Central “Marta Abreu” de Las Villas
Facultad Matemática, Física y Computación
Trabajo de Diploma
Título: Sistema de Gestión y Estadística
Docente para la Universidad Central
“Marta Abreu” de Las Villas
Autores: Dustin Dayam Duménigo Benítez
Ricardo Espinosa Manzo
Tutor: Ing. Ernesto Miguel Rodríguez Rodríguez
Santa Clara, 2013
“Año 55 de la Revolución”
DICTAMEN
Hacemos constar que el presente trabajo de diploma fue realizado en la
Universidad Central “Marta Abreu” de las Villas como parte de la culminación de
estudios de la especialidad de Ingeniería en Informática, y se autoriza a que el
mismo sea utilizado por la Institución para los fines que estime conveniente, tanto
de forma parcial como total y que además no podrá ser presentado en eventos, ni
publicados sin autorización de la Universidad.
______________________ _______________________
Ricardo Espinosa Manzo Dustin Dayam Duménigo Benítez
Los abajo firmantes certificamos que el presente trabajo ha sido realizado según
acuerdo de la dirección de nuestro centro y el mismo cumple con los requisitos
que debe tener un trabajo de esta envergadura referido a la temática señalada.
_________________________ _________________________
Ricardo Espinosa Manzo Dustin Dayam Duménigo Benítez
____________________________
Firma del Jefe de Departamento
donde se defiende el trabajo
Firma del Responsable de
Información Científico-Técnica
PENSAMIENTO
El logro más impresionante de la industria del software es su continua anulación
de los constantes y asombrosos logros de la industria del hardware.
Henry Petrosky
DEDICATORIA
Le dedico este trabajo a mi familia por su constante preocupación y apoyo no solo
durante mi etapa como estudiante sino a lo largo de toda mi vida. A todos mis
amigos de la UCI, la UCLV, Santa Clara, El Mejunje y el parque.
Ricardo Espinosa Manzo.
DEDICATORIA
Quiero dedicar especialmente este trabajo a mis padres y a mi hermano por su
paciencia interminable y preocupación a lo largo de todos estos años.
A mi mulata por su apoyo durante todo este tiempo juntos.
A los amigos que siempre han estado presentes aunque ya no estudien aquí en la
UCLV.
Dustin Dayam Duménigo Benítez
AGRADECIMIENTOS
Quiero agradecerle a todos lo que de una u otra forma me guiaron a lo que soy
hoy, a mis padres y a mi hermano Danny que es como un faro a seguir.
A mi amigo Ricardo por tanto “vicio” y sueño compartido.
A mi tutor por asesorarme todo este tiempo.
A mis amigos del curso 2011-2012, por mantenerse ahí en los buenos y en los
malos momentos y a los del curso 2012-2013 por ayudarme en todo lo que
necesité.
A BLIZZARD por las interminables madrugadas frente a la computadora, a mis
amigos del Mejunje por las innumerables copas que tomamos juntos.
Dustin Dayam Duménigo Benítez
AGRADECIMIENTOS
Quiero agradecer a todos los que influyeron en que estos períodos de estudios,
tanto secundaria, politécnico como universidad se haya convertido en el mejor de
mi vida hasta el momento.
A mis padres y mi hermana por aguantar mis despreocupaciones y mi música alta.
A mi Pitu por apoyarme en este tiempo de estrés y por sentir tantas cosas lindas.
A todos los profesores que me guiaron y enseñaron todo lo que sé: Abey, Carlos,
Matilde, Jorge, Victoria, Teresita, Teresín, Alberto, Néstor, Daniel, Yazmín,
Mariano, Abelito, Lianny, Alcides, Maykel, Yailén y Ernesto.
A los Adictox por ayudarme a hacer realidad algunos sueños y estar ahí siempre
que los necesito para analizar documentos “DECANO”, “Villa Clara”, unos pipazos,
etc.
A Betty por hacernos más amenas las clases en la UCLV con lo que nos sobraba
de la noche anterior.
A mis amigos del WOW, tan verdaderos en el mundo virtual como el real: Leo
(Roca), David (Arindre), Andrés (Hetfield), Felix (XHunter), Marlon, Zaramoth, Neli
y Yasmany (Kamikaze).
Ricardo Espinosa Manzo.
TABLA DE CONTENIDOS
I
TABLA DE CONTENIDOS
Resumen ........................................................................................................................ IV
ABSTRACT ..................................................................................................................... V
CAPÍTULO 1. CONCEPTOS TEÓRICOS ................................................................. 1
1.1 ¿Qué es un sistema de información? ............................................................ 1
1.3 Descripción de la entidad .................................................................................... 2
1.4 Tendencias y/o tecnologías empleadas ............................................................. 2
1.4.1 Tecnologías web .................................................................................................. 2
1.4.2 Tecnologías del lado del cliente. ........................................................................ 3
1.4.3 Tecnologías del lado del servidor .................................................................. 5
1.4.4 Frameworks a utilizar ...................................................................................... 6
1.4.5 CodeIgniter ....................................................................................................... 6
1.4.6 JQuery .............................................................................................................. 7
1.4.7 Sistema gestor de bases de datos (SGBD) .................................................. 7
1.5 Metodología de desarrollo empleada ................................................................. 9
1.5.1 Metodología de desarrollo del software RUP ............................................... 9
El Lenguaje Unificado de Modelado ............................................................................ 10
Conclusiones parciales ................................................................................................. 11
CAPÍTULO 2. ANALISIS Y DISEÑO DE LA APLICACIÓN ................................... 12
2.1 Modelo del Dominio ................................................................................................ 12
2.2 Requisitos del Sistema ........................................................................................... 13
2.2.1 Requisitos Funcionales ....................................................................................... 13
2.2.2 Requisitos no Funcionales .................................................................................. 15
TABLA DE CONTENIDOS
II
2.3 Actores del sistema ................................................................................................. 16
2.4 Diagrama de casos de uso..................................................................................... 17
2.5 Descripción de los casos de uso del sistema ....................................................... 18
2.6 Diagramas de clases del análisis .......................................................................... 21
2.7 Diagramas de colaboración ................................................................................... 23
2.8 Diagrama de despliegue ......................................................................................... 25
2.9 Conclusiones parciales ........................................................................................... 25
CAPÍTULO 3. CAPITULO 3: DESCRIPCION DEL TRABAJO CON LA
APLICACION 26
3.1 Mapa de navegación............................................................................................... 26
3.2 Interfaz de Acceso .................................................................................................. 27
3.2.1 Ambiente del Sistema para el usuario Administrador ...................................... 28
3.3 Ambiente del Sistema para el Usuario Gestor ..................................................... 30
3.3.1Gestionar Grupos por Carrera ............................................................................. 31
3.3.2 Gestionar Horario Docente ................................................................................. 32
3.3.3 Gestionar Plan de Estudio .................................................................................. 33
3.3.4 Gestionar Tipos de Turnos de Clases ............................................................... 34
3.3.5 Gestionar Profesores por Asignatura ................................................................. 35
3.4 Ambiente del Sistema para el usuario Profesor ................................................... 36
3.5 Ambiente del Sistema para el usuario Consultor ................................................. 42
3.6 Ambiente del Sistema para el usuario Estudiante ............................................... 44
Conclusiones .................................................................................................................. 46
Recomendaciones ......................................................................................................... 47
Referencias Bibliográficas: ........................................................................................... 48
TABLA DE CONTENIDOS
III
Anexos: ........................................................................................................................... 49
Anexo #1: Descripción de casos de uso ..................................................................... 49
Anexo #2: Diagrama de clases del análisis ................................................................ 50
RESUMEN
IV
Resumen
El presente trabajo incluye nuevas Tecnologías de la Información y las
Comunicaciones (TIC) para la creación y desarrollo de un nuevo Sistema para la
Gestión y Estadística Docente en la Universidad Central ¨Marta Abreu¨ de Las
Villas. Se llevó a cabo una modelación a través de diferentes diagramas UML, la
implementación se acometió para cualquier tipo de plataforma ya que está basado
en la tecnología de software libre y se usó el SGBD MySQL para el manejo de la
información de los estudiantes y profesores vinculados. Se usó como lenguaje de
programación PHP, JavaScript y CSS. La aplicación Web esta implementada y
constituye un resultado del proyecto de investigación ¨Sistema de Gestión y
Estadística Docente¨.
Palabras Claves: aplicación Web, Tecnologías de la Información y las
Comunicaciones, tecnología de software libre.
ABSTRACT
V
ABSTRACT
The present paper includes new information and communications technology (ICT)
to create and develop a new management and educational statistics system in the
Central University “Marta Abreu” de Las Villas. A modelling was implemented by
different UML diagrams; the implementation was carried out for any type of
platform as it is based on the free software technology and the SGBD MySQL was
used to manage the students and system-related professors’ information. The
programming language used was PHP, JavaScript y CSS. The Web application is
implemented and constitutes a result of the research project “Management and
Educational Statistics System”.
Key words: Web application, Information and Communications technology, free
software technology.
INTRODUCCION
VI
INTRODUCCIÓN
A nivel mundial la información ha adquirido gran importancia para el correcto
funcionamiento de los diferentes procesos de una entidad, a medida que esta
crece se hace necesario gestionarla llegando incluso a crear disciplinas
estrictamente destinadas al estudio de la misma. Es de vital importancia el
conocimiento de lo que es Información y el papel que esta juega en la actualidad.
Información se puede traducir como un conjunto de datos organizados de tal
manera que adquieren valor adicional más allá del que poseen por sí mismos. Así
mismo no se puede confundir “información” con “datos” pues son diferentes, estos
últimos representan hechos reales y poseen un escaso valor más allá del que
poseen por sí mismo. A raíz de la necesidad de gestionar esta información surgen
los Sistemas de Información (SI) , estos han adquirido gran importancia a nivel
global ya que poseen herramientas que facilitan en gran medida el trabajo, para
comprender mejor que es un SI se puede resumir en un “conjunto de
componentes interrelacionados que reúne (u obtiene), procesa, almacena y
distribuye información para la toma de decisiones y el control de la
organización”(Laudon, 2006), la necesidad de informatizar los diferentes procesos
de una entidad para una ágil y correcta gestión de la información son de suma
importancia el óptimo desempeño de estas. Teniendo en cuenta esta tendencia
general para el almacenamiento y gestión de la información y las ventajas que
esta ofrece se hace imprescindible su uso.
En los centros educativos de nuestro país, es de principal importancia llevar un
control sobre el rendimiento académico de los estudiantes, ya sea haciendo cortes
evaluativos en cada trimestre o semestre del año o llevando un registro
exhaustivo de las notas, asistencia y desarrollo de los estudiantes en las
diferentes asignaturas durante el curso escolar.
Tras la necesidad del país de automatizar todos los procesos posibles en los
centros de trabajo para agilizar el tiempo de gestión de la información, surge la
idea de centralizar la información que los profesores brindan sobre sus
INTRODUCCION
VII
estudiantes, así como la publicación de algunas informaciones que los estudiantes
deberían recibir, para que puedan consultarlas en el tiempo que tengan disponible.
También es necesario que los directivos puedan tener un control sobre el
desarrollo del curso escolar, para poder contar con criterios sobre algunos
estudiantes, profesores, asignaturas y controlar el cumplimiento de los objetivos
escolares de cada asignatura.
La Universidad Central “Marta Abreu” de Las Villas (UCLV) como centro
educacional de alto prestigio comprende la necesidad del desarrollo de un SI
soportado sobre las nuevas tecnologías de información y las comunicaciones para
así recopilar de una manera más eficiente la información generada a partir de un
estudio profundo de los procesos a automatizar.
Se requiere de centralizar la información referente a los estudiantes en cuanto a
su trayectoria por la universidad, ya sea calificaciones en cursos anteriores,
referencias de algunos profesores o los resultados que han ido obteniendo durante
el curso actual, así como el registro e asistencia de los estudiantes a clases. Esta
información sería utilizada por los directivos del centro para los cortes evaluativos
(teniendo una idea de cómo se ha desempeñado el estudiante en el presente
curso), los profesores en años venideros (para trazarse metas específicas con
algunos estudiantes rezagados o adelantados en algunas asignaturas) y por los
propios estudiantes (teniendo un sistema de consulta de sus resultados y
recordatorio de los próximos exámenes, evaluaciones, laboratorios, materiales de
consulta dejados por los profesores de las asignaturas).
Se hace necesaria la publicación del horario docente de cada grupo para que
pueda ser consultado por los estudiantes y profesores por medio de la red de la
universidad, ya que esta información está disponible solamente en los murales de
las facultades o en carpetas de la red donde las direcciones son en muchas
ocasiones difíciles de recordar, por ejemplo:
“\\10.12.1.64\docs\MFC\Docencia\Cursos\Curso 2012-2013\Horarios primer
semestre\II\5to II\Horario Docente Ingeniería Informática (2012-2013).doc”
INTRODUCCION
VIII
Con la publicación de estas informaciones se busca que los estudiantes no tengan
una única manera de acceder a estas, agilizando gradualmente la rapidez con que
los estudiantes pueden mantenerse informados. Es de vital importancia que los
profesores compartan en todo momento los objetivos de las asignaturas que
imparten. Teniendo en cuenta que los estudiantes no tienen acceso a las carpetas
donde se publican los objeticos de los planes de clases para consultoría de los
directivos docentes. Se hace necesario que esta información esté de alguna
manera disponible para el conocimiento de los estudiantes de la UCLV, mostrando
información que solamente sea de la incumbencia de los mismos y no todos los
datos que contienen estos documentos.
En la UCLV los avisos de cambios y notificaciones de evaluaciones se realizan de
manera engorrosa por medio de la entrevista presencial con el estudiante, por lo
que se hace necesario que algunos cambios referentes a evaluaciones, cambios
de última hora en los horarios, notificaciones de fechas de entrega de proyectos o
fechas de trabajos de control se también se notifiquen por e-mail a los estudiantes,
mejorando así las vías de comunicación entre los docentes y los estudiantes,
haciendo uso de las tecnologías con que cuenta la universidad.
Es de gran necesidad realizar reportes académicos referentes al desarrollo de los
estudiantes en diferentes asignaturas. Estos sirven en un futuro para el estudio de
métodos de enseñanza en las diferentes especialidades. Actualmente estos
reportes se generan de manera engorrosa por medio de documentos Excel, Word,
listados de notas y apuntes personales de algunos profesores. Por lo que se hace
necesaria la gestión de esta información y la organización de la misma para
obtener resultados prometedores en cuanto a las estadísticas docentes.
Todo esto nos lleva a la siguiente problemática de investigación: Existe una
falta de centralización de los datos necesarios para llevar un control de las
estadísticas docentes en la Universidad Central “Marta Abreu” de Las Villas,
teniendo en cuenta que mucha de esta información no está disponible en todo
momento para aquellos que la necesitan o está dispersa en distintos servidores
INTRODUCCION
IX
con caminos de acceso difíciles de recordar para algunos usuarios, como por
ejemplo:
“\\10.12.1.64\docs\MFC\Docencia\Cursos\Curso 2012-2013\Corte semana 7\II\2do
II\Copy of 1er Corte C1 2do II.docx”
Objetivo General:
Diseñar e implementar un sistema que permita el control y centralización de la
información docente en la Universidad “Marta Abreu” de Las Villas para asegurar
la consultoría, gestión y análisis estadísticos de la misma por parte de los
profesores, estudiantes y personal del centro.
Objetivos específicos:
1. Diseñar una Base de Datos para almacenar los datos referentes a la
trayectoria de los estudiantes en la UCLV
2. Publicar el horario docente de cada grupo.
3. Crear un módulo de administración de usuarios y roles del sistema, para
controlar la seguridad de los datos y el nivel de acceso a los mismos.
4. Crear un módulo para la gestión de las actividades docentes.
5. Conformar un sistema a partir de la integración de los módulos anteriores,
que permita la centralización de los datos.
INTRODUCCION
X
Organización del informe
El presente documento está estructurado en 3 capítulos, además de los anexos y
referencias bibliográficas.
Capítulo I. Conceptos teóricos
En este capítulo se hace referencia a conceptos y principios generales a tener en
cuenta cuando se desarrolla una aplicación con ambiente web y con la gestión de
una base de datos. Se recoge una breve descripción de la problemática actual del
centro en cuanto a nuestro trabajo se refiere, así como una reseña de otros
sistemas que existen en el mundo que podrían utilizarse como base para la idea
de diseño de la solución al problema.
Capítulo II. Modelación del negocio
En este capítulo se hace una descripción del análisis y la construcción de la
solución, incluyendo en esta descripción todo lo referente a la Ingeniería de
Software, la metodología de desarrollo a seguir, la modelación de los casos de uso
y casos de uso de negocio, los requisitos funcionales y no funcionales del sistema,
definición de los actores del sistema y explicación del papel de cada uno de los
mismos.
Capítulo III. Evaluación de la solución obtenida
Este capítulo contiene el estudio de la factibilidad y la validación de la solución. La
demostración de que los problemas existentes sin el uso del sistema son
solucionados o al menos una gran parte de ellos. Se hace referencia a las pruebas
de rendimiento del producto terminado y prueba de despliegue del mismo.
CAPITULO I
1
CAPÍTULO 1. CONCEPTOS TEÓRICOS
Este capítulo recoge los principales conceptos teóricos sobre los Sistemas de
Información y las tecnologías a utilizar en pos de dar solución a la problemática
presentada, tales como: tecnologías web (diseño y lenguajes de programación),
tecnologías de bases de datos (estructuras y facilidades de los gestores, manejo
de los mismos, compatibilidad de los datos).
1.1 ¿Qué es un sistema de información?
Un Sistema de Información se puede catalogar como: “(…) un conjunto de
componentes interrelacionados que capturan, almacenan, procesan y distribuyen
la información para apoyar la toma de decisiones, el control, análisis y visión de
una organización”. (Laudon, 2006).En su esencia es aquel sistema que centraliza
y relaciona los datos convirtiéndolos para algunos usuarios en información valiosa
y necesaria para trabajar y controlar sus acciones.
1.2 Sistemas de Información existentes aplicados a la gestión
estadística docente
En el mundo existen diferentes tipos de sistemas de información aplicados a la
gestión y estadística docente, algunos de ellos muy completos y que comparten
muchas similitudes con los métodos de diferentes centros de estudios. Aunque no
en todos sus aspectos, se pueden tomar las similitudes de algunos y adaptar a
nuestra universidad varios módulos existentes en estos sistemas.
1.2.1 OpenSIS
Es un SIS (acrónimo del inglés: Student Information System = Sistema de
Información de Estudiantes) con licencia de tipo “código abierto”. Funciona sobre
una plataforma 100% web, esto quiere decir que para acceder a él solo se
necesita una conexión a internet con su respectivo usuario y contraseña.
CAPITULO I
2
Se trata de una herramienta de administración centralizada que permite la
administración de estudiantes, clases, tareas y mucho más.
Se le ha integrado un sistema de calendarización que permite agregar fechas
importantes en listas masivas de alumnos y sus cursos, con la opción de tener un
anuario y funciones de reporte de tarjetas. También cuenta con registros de salud,
atención médica, registros de disciplina, así como muchas otras características
que pueden ser administradas desde OpenSIS.
Esta plataforma registra la mayoría de la información escolar, como personal de
un estudiante, lo que podría ayudar rápidamente a saber el historial de un alumno
dentro de la propia escuela.(Alan, 2008 #29)
1.3 Descripción de la entidad
La Universidad Central “Marta Abreu” de Las Villas es un centro de altos estudios
dedicado a formar profesionales del más alto nivel especializados en diferentes
materias.
1.4 Tendencias y/o tecnologías empleadas
En el constante cambiar de las tecnologías cada día los desarrolladores tienen
que topar con disímiles estilos para llevar a cabo sus proyectos, nuevos ambientes
y tecnologías cada vez más rápidas a la hora de gestionar los datos. Las
Tecnologías de la Información y las Comunicaciones son aquellas herramientas
computacionales e informáticas que procesan, almacenan, sintetizan, recuperan y
presentan información representada de las formas más variadas.(Graells, 2000)
1.4.1 Tecnologías web
La web ha permitido un flujo de comunicación global a una escala sin precedentes
en la historia humana. Personas separadas en el tiempo y el espacio, pueden usar
la web para intercambiar, e incluso desarrollar mutuamente sus pensamientos más
íntimos, o alternativamente sus actitudes y deseos cotidianos. Gracias a su
carácter virtual, la información en la web puede ser buscada más fácil y
CAPITULO I
3
eficientemente que en cualquier medio físico, y mucho más rápido de lo que una
persona podría recabar por sí misma a través de un viaje, correo, teléfono,
telégrafo, o cualquier otro medio de comunicación.
Esta plataforma ha permitido a los usuarios interactuar con muchos más grupos de
personas dispersas alrededor del planeta, de lo que es posible con las limitaciones
del contacto físico o simplemente con las limitaciones de todos los otros medios de
comunicación existentes combinados. A su vez, de esta se conocen infinidades de
aplicaciones de todo tipo que responden casi a cualquier problemática. El
desarrollo vertiginoso de esta tecnología ha permitido una gran variedad de
arquitecturas de desarrollo.
1.4.2 Tecnologías del lado del cliente.
La World Wide Web (Red Mundial) está basada principalmente en documentos
escritos en HTML (acrónimo del inglés: Hyper Text Markup Language = Lenguaje
de Etiquetas de Hipertexto), que es el lenguaje de marcado predominante para la
construcción de páginas web. Es usado para describir la estructura y el contenido
en forma de texto, así como para complementar el texto con objetos tales como
imágenes.
HTML también puede describir, hasta un cierto punto, la apariencia de un
documento. El mismo se escribe en forma de "etiquetas", rodeadas por corchetes
angulares (<, >).
Este lenguaje tiene una gran desventaja: es estático; por lo que se ha recurrido a
unirlo con otras tecnologías, como JavaScript, el lenguaje de hojas de estilo en
cascada (CSS) y la jerarquía de objetos DOM (acrónimo del inglés: Document
Object Model), creando así el llamado HTML Dinámico o DHTML (acrónimo del
inglés: Dynamic HTML).
JavaScript: es un lenguaje de programación que se utiliza principalmente para
crear páginas web dinámicas. Es un lenguaje de programación interpretado, es
decir, que no requiere compilación, con una sintaxis semejante a la del lenguaje
CAPITULO I
4
“Java” y el lenguaje “C”. A diferencia de Java, JavaScript no es un lenguaje
orientado a objetos propiamente dicho, ya que no dispone de herencia, es más
bien un lenguaje basado en prototipos, ya que las nuevas clases se generan
clonando las clases base (prototipos) y extendiendo su funcionalidad.(ExtJS, 2008
#11) Todos los navegadores modernos interpretan el código JavaScript integrado
dentro de las páginas web. Para interactuar con una página web se provee al
lenguaje JavaScript de una implementación del DOM.
CSS: es un Lenguaje de Hojas de Estilos (acrónimo del inglés: Cascading Style
Sheets) creado para controlar el aspecto o presentación de los documentos
electrónicos definidos con HTML. El lenguaje CSS se utiliza para definir el aspecto
de todos los contenidos, es decir, el color, tamaño y tipo de letra de los párrafos de
texto, la separación entre titulares y párrafos, la tabulación con la que se muestran
los elementos de una lista, entre otros aspectos.
CSS es la mejor forma de separar los contenidos y su presentación y es
imprescindible para crear páginas web complejas. La separación de los contenidos
y su presentación presenta numerosas ventajas, ya que obliga a crear
documentos HTML bien definidos y con significado completo (también llamados
“documentos semánticos”).Al usar hojas de estilos los webmasters pueden ahorrar
tiempo cuando crean una página de estilo modelo con colores, márgenes,
tipografía, etc. Esta página de estilo madre luego se aplica al resto de los
documentos HTML, los que se verán tal como ella lo indique.(Wikipedia, 2013a)
DOM: El Document Object Model (una traducción al español para nada literal,
pero apropiada, podría ser modelo en objetos para la representación de
documentos) es un conjunto de utilidades específicamente diseñadas para
manipular documentos XML. Por extensión, DOM también se puede utilizar para
manipular documentos XHTML y HTML. Técnicamente, DOM es una API de
funciones que se pueden utilizar para manipular las paginas XTHML de forma
rápida y eficiente. (Pérez, 2008)
CAPITULO I
5
XML: XML proviene de las siglas Extensible Markup Language (Lenguaje de
marcas extensible). Es un metalenguaje extensible de etiquetas desarrollado por
el WWW (W3C). Permite definir la gramática de lenguajes específicos, por lo tanto
XML no es realmente un lenguaje en particular, sino una manera de definir
lenguajes para diferentes necesidades(Barbero, 1999)
PHP: (Hipertext Preprocesor). Se usa para la creación de aplicaciones para
servidores, o creación de contenido dinámico para sitios Web. Es un lenguaje de
programación del lado del servidor, cuyo código se combina con el HTML para
procesar la información de formularios, generar páginas con contenidos
dinámicos, y mandar y recibir cookies.(Wikipedia, 2013c)
JSON: Conocido por sus siglas en inglés como JavaScript Object Notation (notación de objetos JavaScript).
Es un formato de datos muy ligero basado en un subconjunto de la sintaxis de
JavaScript: literales de matrices y objetos. Como usa la sintaxis JavaScript, las
definiciones JSON pueden incluirse dentro de archivos JavaScript y acceder a
ellas sin ningún análisis adicional como los necesarios con lenguajes basados en
XML.(Web, 2008 #14)
1.4.3 Tecnologías del lado del servidor
Java Server Pages (JSP) es una tecnología para desarrollar páginas web que
incluyen contenido dinámico. A diferencia de una página simple de HTML, que
contiene contenido estático que siempre permanece igual, una página JSP puede
cambiar su contenido basado en cualquier número de artículos variables,
incluyendo la identidad del usuario, el tipo del navegador del usuario, información
provisto por el usuario, y las selecciones hechas por el usuario.
Una página JSP contiene elementos estándar del lenguaje de marcado, como
etiquetas de HTML, algo así como una página web normal. Sin embargo, una
página JSP también contiene elementos especiales JSP que dejan al servidor
insertar contenido dinámico en la página. Los elementos JSP pueden servir para
CAPITULO I
6
una colección variada de propósitos, como rescatar información de una base de
datos o registrar preferencias del usuario.
1.4.4 Frameworks a utilizar
En la actualidad la mayoría de los proyectos desarrollados tienen una gran
similitud en cuanto al uso de técnicas y librerías, por lo que los Frameworks son de
gran ayuda a la hora de generalizar la parte del código que todos usan en común.
Existen infinidad de estos entornos para diferentes lenguajes de programación,
haciendo más fácil el desarrollo y la integración de las nuevas tecnologías.
1.4.5 CodeIgniter
Es un programa o aplicación web desarrollada en PHP para la creación de
cualquier tipo de aplicación web bajo PHP. Es un producto de código libre, libre de
uso para cualquier aplicación. Como cualquier otro framework, CodeIgniter
contiene una serie de librerías que sirven para el desarrollo de aplicaciones web y
además propone una manera de desarrollarlas que debemos seguir para obtener
provecho de la aplicación. CodeIgniter implementa el proceso de desarrollo
llamado Model View Controller (Modelo Vista Controlador), que es un estándar de
programación de aplicaciones, utilizado tanto para hacer sitios web como
programas tradicionales, algunos de los puntos más interesantes sobre este
framework sobre todos en comparación con otros productos similares, son los
siguientes:
Versatilidad: Quizás la característica principal de CodeIgniter, en comparación
con otros framework PHP, es que es capaz de trabajar la mayoría de los entornos
o servidores, incluso en sistemas de alojamiento compartido, donde sólo tenemos
un acceso por FTP para enviar los archivos al servidor donde no tenemos acceso
a si configuración.
Compatibilidad: CodeIgniter, es compatible con la versión PHP 4, lo que hace
que se pueda utilizar en cualquier servidor, incluso en algunos antiguos. Por
supuesto, funciona correctamente también en PHP 5.
CAPITULO I
7
Facilidad de instalación: No es necesario más que una cuenta de FTP para subir
CodeIgniter al servidor y su configuración se realiza con apenas la edición de un
archivo, donde debemos escribir cosas como el acceso a la base de datos.
Durante la configuración no se necesita el acceso a herramientas como la línea de
comandos, que no suele estar disponibles en todos los alojamientos.
Flexibilidad: CodeIgniter es bastante menos rígido que otros frameworks. Define
una manera de trabajar específica, pero en muchos de los casos podemos
seguirla o no, y sus reglas de codificación muchas veces se pueden saltar para
trabajar como más a gusto.(Alvarez, 2011 #15)
1.4.6 JQuery
Es un framework para el lenguaje JavaScript, este producto sirve de base para la
programación avanzada de aplicaciones, también aporta gran cantidad de
funciones o códigos para realizar tareas habituales. Nos permite programar sin
preocuparnos del navegador con el que el usuario nos está visitando. Entre sus
ventajas está que es un producto serio, estable, bien documentado y con un gran
equipo de desarrolladores a cargo de su mejora.(Alvarez, 2011 #16)
1.4.7 Sistema gestor de bases de datos (SGBD)
Los sistemas de gestión de base de datos son un tipo de software muy específico,
dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones
que la utilizan. Se compone de un lenguaje de definición de datos, de un lenguaje
de manipulación de datos y de un lenguaje de consulta. Es aquel software que
permite la utilización y/o actualización de los datos almacenados en una (o varias)
base(s) de datos por uno o varios usuarios desde diferentes puntos de vista y a la
vez, se denomina sistema de gestión de bases de datos (SGBD)(García, 1999)
CAPITULO I
8
Características fundamentales de los SGBD:
Abstracción de la información: Los SGBD ahorran a los usuarios detalles acerca
del almacenamiento físico de los datos.
Independencia: La independencia de los datos consiste en la capacidad de
modificar el esquema (físico o lógico) de una base de datos sin tener que realizar
cambios en las aplicaciones que se sirven de ella.
Redundancia mínima: Un buen diseño de una base de datos logrará evitar la
aparición de información repetida o redundante.
Consistencia: En aquellos casos en los que no se ha logrado esta redundancia
nula, será necesario vigilar que aquella información que aparece repetida se
actualice de forma coherente, es decir, que todos los datos repetidos se actualicen
de forma simultánea.
Seguridad: Los SGBD deben garantizar que esta información se encuentra segura
frente a usuarios malintencionados, que intenten leer información privilegiada;
frente a ataques que deseen manipular o destruir la información; o simplemente
ante las torpezas de algún usuario autorizado pero despistado.
Integridad: Se trata de adoptar las medidas necesarias para garantizar la validez
de los datos almacenados.
Respaldo y recuperación: Los SGBD deben proporcionar una forma eficiente de
realizar copias de respaldo de la información almacenada en ellos, y de restaurar
a partir de estas copias los datos que se hayan podido perder.
Control de la concurrencia: Un SGBD debe controlar el acceso concurrente a la
información, que podría derivar en inconsistencias.
Tiempo de respuesta: Lógicamente, es deseable minimizar el tiempo que el SGBD
tarda en darnos la información solicitada y en almacenar los cambios realizados.
CAPITULO I
9
1.5 Metodología de desarrollo empleada
Existen diferentes tipos de metodologías para el ciclo de desarrollo del software,
algunos especializados en proyectos de mayor tamaño, equipos más grandes de
desarrolladores y otros dedicados a pequeños proyectos y número reducido de
desarrolladores, buscando agilidad a la hora de producir.
1.5.1 Metodología de desarrollo del software RUP
La metodología que se utiliza para el análisis y modelado de los procesos de
desarrollo de software es el Proceso Unificado de Desarrollo del Software, que en
inglés se identifica como Rational Unified Process (RUP). Fue publicada en 1998
como resultado de varios años de experiencia.
Este proceso de desarrollo de software, unido al Lenguaje Unificado de Modelado
(UML), constituye la metodología estándar más utilizada en la actualidad para el
análisis, implementación y documentación de sistemas orientados a objetos.
RUP no es un sistema con pasos firmemente establecidos, sino un conjunto de
metodologías adaptables al contexto y necesidades de cada organización. Posee
un conjunto de características que propician su recomendación para guiar el
desarrollo de un proyecto software (Jacobson, 2000 #17). Estas son las
siguientes:
Dirigido por casos de uso. Un caso de uso es un fragmento de funcionalidad del
sistema que proporciona al usuario un resultado importante. Todos los casos de
uso juntos constituyen el modelo de casos de uso que describe la funcionalidad
total del sistema. El proceso de desarrollo avanza a través de una serie de flujos
de trabajo que parten de los casos de uso, los que se especifican, se diseñan, y se
prueban. Estos constituyen el hilo conductor de todo el proceso.
Centrado en arquitectura. La arquitectura se describe mediante diferentes vistas
del sistema en construcción e incluye los aspectos estáticos y dinámicos más
significativos del sistema.
CAPITULO I
10
Factores que influyen en la arquitectura:
La plataforma en la que tiene que funcionar el software (hardware, sistema
operativo, sistema de gestión de base de datos, protocolos de
comunicación).
Los bloques de construcción reutilizables de que se dispone.
Consideraciones de implantación, sistemas heredados, y requisitos no
funcionales como rendimiento y fiabilidad.
La arquitectura se debe diseñar para permitir que el sistema evolucione y para ello
se debe trabajar centrado en las funciones fundamentales que tendrá el sistema.
Iterativo e incremental. Es práctico dividir las partes en mini proyectos donde
cada uno es una iteración que resulta en un incremento. Las iteraciones hacen
referencia a pasos en los flujos de trabajo y los incrementos a crecimiento del
producto.
Entre los principales beneficios de las iteraciones se encuentran:
Reduce el costo del riesgo al costo de un solo incremento.
Menos riesgo de no sacar el producto al mercado en fecha.
El Lenguaje Unificado de Modelado
El Lenguaje Unificado de Modelado (UML por su acrónimo del inglés: Unified
Modeling Language) es una notación (esquemática en su mayor parte) con que
se construyen sistemas por medio de conceptos orientados a objetos. Es un
lenguaje para especificar, visualizar construir y documentar los artefactos de los
sistemas software, así como para el modelado del negocio y otros sistemas que
no software.(Larman, 2000)
UML es apropiado para modelar desde sistemas de información en empresas
hasta aplicaciones distribuidas basadas en la web, e incluso para sistemas
empotrados de tiempo real muy exigentes. Es un lenguaje muy expresivo, que
cubre todas las vistas necesarias para desarrollar y luego desplegar tales
CAPITULO I
11
sistemas. UML proporciona una forma estándar de escribir los planos de un
sistema, cubriendo tanto las cosas conceptuales, tales como procesos del
negocio y funciones del sistema, como las cosas concretas, tales como las clases
escritas en un lenguaje de programación específico, esquemas de bases de datos
y componentes software reutilizables.
Conclusiones parciales
De la literatura consultada se reafirma la importancia y necesidad del uso de las
nuevas tecnologías de la información para el desarrollo de aplicaciones. Tras un
estudio de las potencialidades de cada una, se tuvieron en cuenta las
metodologías, lenguajes y herramientas a emplear en la elaboración de una
solución al problema planteado. RUP como metodología de desarrollo; el lenguaje
de modelado UML; PHP, CSS, HTML y JavaScript como lenguajes de
programación; Visual Paradigm como herramienta de modelado; Dreamweaver
CS5 como herramienta de diseño e implementación y el Framework Codeigniter
para integrar los lenguajes de programación. Las herramientas, lenguajes y
metodologías seleccionadas se adaptan perfectamente a las necesidades de la
aplicación.
CAPITULO II
12
CAPÍTULO 2. ANALISIS Y DISEÑO DE LA APLICACIÓN
En el presente capítulo se formulan los requisitos funcionales y no funcionales de
la aplicación, se expone la línea base de la arquitectura establecida y se
relacionan los diferentes módulos y componentes incorporados a la aplicación.
2.1 Modelo del Dominio
Un Modelo del Dominio es una representación visual de las clases conceptuales u
objetos del mundo real en un dominio de interés.(Larman, 2000)
Figura 2.1 Modelo del Dominio
Tabla 1. Definiciones
Nombre Definición
UCLV Representa la institución para la cual está destinada la
realización del software.
SGED Sistema encargado de la Gestión Estadística y Docente en
dicha institución.
Gestor Usuario encargado de gestionar el horario docente educativo.
CAPITULO II
13
Usuario Estudiantes, profesores, Gestores, Consultores o sea todas
las personas forman parte e interactúan con el sistema.
Informe Realizado por el gestor y brinda la posibilidad de establecer
una estadística con respecto temas de interés docente.
2.2 Requisitos del Sistema
La identificación de los requisitos como parte del proceso del desarrollo de
Software es de gran importancia; los requerimientos se dividen en funcionales y
los no funcionales. Constituyen las características que hacen al producto atractivo,
usable, rápido y confiable. Son fundamentales en el éxito del producto.
En el libro El Proceso Unificado de Desarrollo del Software de Jacobson, I. Booch
y Rumbaugh, J., definen el requisito funcional como «requisito que especifica una
acción que debe ser capaz de realizar el sistema, sin considerar restricciones
físicas; específica comportamiento de entrada/salida de un sistema»(Jacobson,
2000). Por otra parte definen el no funcional como el requisito que «especifica
propiedades del sistema, como restricciones del entorno o de implementación,
rendimiento, dependencias de la plataforma, mantenimiento, extensibilidad o
fiabilidad. Requisito que especifica restricciones físicas sobre un requisito
funcional»(Jacobson, 2000)
2.2.1 Requisitos Funcionales
R1.Gestionar Usuario
R1.1 Añadir Usuario
R1.2 Eliminar Usuario
R1.3 Modificar Usuario
R2: Definir Roles
R3: Gestionar Horario Docente
CAPITULO II
14
R3.1 Crear Horario
R3.2 Modificar Horario
R4: Gestionar Evaluaciones
R4.1 Programar Evaluación
R4.2 Actualizar Registro de Evaluaciones
R4.3 Consultar Registro de Evaluaciones
R5: Gestionar Registro de Asistencia
R5.1 Actualizar Registro de Asistencia
R5.2 Consultar Registro de Asistencia
R5.3 Mostrar Reportes de Asistencia
R6: Gestionar Plan de Estudio
R6.1 Definir Asignaturas a Cursar
R6.2 Actualizar Listado de Asignaturas
R7: Gestionar Profesores
R7.1 Asignar Profesores a una Asignatura
R8: Gestionar Grupos
R8.1 Actualizar Listado de Estudiantes
R8.2 Gestionar Estudiantes con Arrastres
R9: Gestionar P1 de los Profesores
R9.1 Orientar Tareas para el Turno de Clase
R9.2 Compartir Archivos y Documentos de Apoyo
CAPITULO II
15
2.2.2 Requisitos no Funcionales
Los requisitos no funcionales sirven de apoyo a los usuarios del sistema para
valorar el mismo, ya que un producto seguro, usable, agradable y conveniente
será más visitado y empleado.
Los requisitos no funcionales para el sistema se relacionan a continuación:
Interfaz del sistema: La aplicación informática propuesta será usada por
profesionales que no necesariamente tienen habilidades en el trabajo en la
computadora, por lo que la interfaz debe ser amigable y fácil de usar, de manera
que no sea difícil la interacción con ella.
Usabilidad: La aplicación se encontrará en la red de la Universidad Central “Marta
Abreu” de Las Villas, todos lo que tengan acceso a ella podrán interactuar con la
misma.
Rendimiento: El sistema debe estar disponible para los usuarios las 24h, de esta
forma se garantiza que los usuarios puedan visitar el sitio en distintos horarios.
Soporte: El sistema cuenta con una base de datos y una aplicación Web que se
servirá de la misma. El mantenimiento y asistencia del producto será
responsabilidad del administrador. El sistema brinda la posibilidad de hacer
cambios en dependencia de los clientes que interactúen con él.
Portabilidad: El sistema se podrá utilizar en cualquier plataforma, solo teniendo
instalado un servidor WEB, independientemente del tipo de servidor de bases de
datos existente.
Seguridad: Se establecerá un nivel de acceso al sistema, para garantizar un
control sobre la información, definiendo una política de usuario con roles y
privilegios diferentes.
CAPITULO II
16
Roles del sistema:
Estudiante: Puede consultar información relacionada con su horario,
evaluaciones (tanto en el curso actual como en la trayectoria universitaria),
asistencia a clases.
Gestor: Es el encargado de Gestionar el Horario Docente, Listado de
Estudiantes, Gestionar el Plan de Estudio de las Carreras y Asignar Profesores
a las Asignaturas.
Profesor: Gestiona las actividades referentes a las asignaturas que imparte en
cada grupo (programa evaluaciones, actualiza registro de evaluaciones y
actualiza registro de asistencia).
Administrador: Gestiona los Usuarios del Sistema (Adicionar, Eliminar,
Modificar), define los roles de algunos usuarios y grupos de usuarios.
Consultor: Puede consultar los reportes que brinda la aplicación.
Ayuda y documentación en línea: No se hizo necesaria la implementación de
una ayuda detallada del sistema, ya que está diseñado de manera sencilla y fácil
de usar pero se brinda en la documentación un pequeño manual de usuario,
detallando las principales funcionalidades.
2.3 Actores del sistema
Tabla 2. Actores del sistema.
Actores Justificación
Estudiante Es el actor que representa a los estudiantes de la universidad,
éste se autentica en el sistema, puede acceder al contenido de la
aplicación.
Gestor Este actor se encarga de gestionar el horario docente, los grupos,
los planes de estudio y asignar profesores a las asignaturas.
Administrador Se encarga de gestionar los usuarios de la aplicación y los roles
CAPITULO II
17
que desempeñan.
Consultor Está capacitado para ver los reportes que brinda la aplicación.
Profesor Este rol puede Gestionar el Registro de Evaluaciones, Registro de
Asistencia y las actividades referentes a los grupos a los que
imparte.
2.4 Diagrama de casos de uso
El diagrama de casos de uso muestra los actores y sus relaciones, se emplean
para visualizar el comportamiento de un sistema, un subsistema o una clase, de
forma que los usuarios puedan comprender cómo utilizar ese elemento y que los
desarrolladores puedan implementarlo.(Jacobson, 1998)
En otras palabras, es una descripción de las acciones un sistema desde el punto
de vista del usuario. Para los desarrolladores del sistema, esta es una herramienta
valiosa, ya que es una técnica de aciertos y errores para obtener los
requerimientos del sistema desde el punto de vista del usuario.(Schmuller, 2000)
Diagrama de Casos de Uso del Sistema
Figura 2.2 Diagrama de Casos de Uso del Sistema
CAPITULO II
18
2.5 Descripción de los casos de uso del sistema
Tabla 3. Descripción del caso de uso: Autenticar usuario
Caso de Uso: Autenticar usuario
Actores: Administrador, Gestor, Profesor, Estudiante, Consultor.
Propósito: Registrarse en la aplicación
Resumen: El caso de uso comienza cuando el usuario se registra en la
aplicación, introduciendo los datos correspondientes. Luego el
administrador asignará a qué tipo de usuario pertenece.
Tabla 4. Descripción del caso de uso: Gestionar usuario
Caso de uso: Gestionar usuario
Actores: Administrador
Resumen: El administrador necesita adicionar, modificar
o eliminar algún usuario del sistema.
Referencias: R1
Prioridad: Crítico
Precondiciones: 1. El usuario debe entrar a la sesión del
administrador del sistema y haber accedido a
la opción “Administrar Usuarios”.
Flujo normal de eventos
Sección «Adicionar usuario»
Acción del actor Respuesta del negocio
1. El administrador accede a la
opción “Administrar Roles”
2. El sistema muestra los campos necesarios
que debe llenar el administrador.
3. El administrador introduce los 4. El sistema verifica que no exista ningún
CAPITULO II
19
datos necesarios. campo obligatorio vacío.
5. El sistema verifica que no exista el usuario
que se está agregando.
6. El sistema muestra un mensaje informando
que se agregó el usuario correctamente.
Vista de la interfaz: Gestionar Usuario
Flujos alternos
Acción del actor Respuesta del negocio
4.1 El sistema detecta un campo obligatorio
vacío. Muestra al usuario un mensaje de error.
5.1 El sistema detecta que el usuario ya existe.
Le notifica al administrador a través de un
mensaje de error.
CAPITULO II
20
Sección «Modificar usuario»
Acción del actor Respuesta del negocio
1. El administrador selecciona el
usuario que desea modificar
2. El administrador accede a la
opción “Editar”
3. El sistema muestra la interfaz con todos los
datos del usuario que desea modificar. Los
campos se habilitan para que el usuario
realice los cambios deseados.
4. El usuario realiza los cambios
deseados.
5. El sistema verifica que no exista ningún
campo obligatorio vacío.
6. El sistema verifica que no exista el usuario.
7. El sistema muestra un mensaje informando
que se realizaron los cambios correctamente.
Flujos alternos
Acción del actor Respuesta del negocio
5.1 El sistema detecta un campo obligatorio
vacío. Muestra al usuario un mensaje de error.
6.1 El sistema detecta que el usuario ya existe.
Le notifica al usuario a través de un mensaje
de error.
Sección «Eliminar usuario»
Acción del actor Respuesta del negocio
1. El administrador selecciona el
usuario que desea eliminar
2. El usuario accede a la opción 3. El sistema elimina el usuario y refresca la
CAPITULO II
21
“Borrar”. interfaz.
Tabla 5.Descripción del caso de uso: Gestionar Horario Docente
Caso de Uso: Gestionar Horario Docente
Actores: Gestor.
Propósito: Gestionar el Horario Docente
Resumen: El Actor gestiona el Horario Docente según corresponde
teniendo la posibilidad de realizar reportes para su posterior
utilización por parte del personal que lo requiera.
Tabla 6.Descripcion del caso de uso: Gestionar Evaluaciones
Caso de Uso: Gestionar Evaluaciones
Actores: Profesor.
Propósito: Agregar, Eliminar, Revisar Evaluaciones
Resumen: El profesor tiene la posibilidad de realizar evaluaciones a los
estudiantes y a su vez puede llenar el Registro de Asistencia.
2.6 Diagramas de clases del análisis
Los diagramas de clases muestran las clases participantes y las relaciones de un
caso de uso en específico. Es importante adjuntar los diagramas de clases a la
realización de los casos de usos, ya que una clase de análisis y sus objetos
normalmente participan en varias realizaciones de casos de uso, y algunas de las
responsabilidades, atributos, y asociaciones de una clase concreta suelen ser sólo
relevantes para una única realización de caso de uso. A continuación se muestran
algunos diagramas de clases del análisis.
CAPITULO II
22
Figura 2.3 Diagrama de clases del análisis perteneciente al caso de uso:
Autenticar Usuario.
Figura 2.4 Diagrama de clases del análisis perteneciente al caso de uso: Gestionar
Usuario.
Figura 2.5 Diagrama de clases del análisis perteneciente al caso de uso: Gestionar
Evaluaciones.
CAPITULO II
23
2.7 Diagramas de colaboración
Los diagramas de colaboración se utilizan para describir cómo una sociedad de
objetos de análisis lleva a cabo la realización de los caso de uso.
Estos diagramas muestran cómo el control pasa de un objeto a otro a medida que
se lleva a cabo el caso de uso, y los mensajes que se envían entre los objetos. Un
mensaje de un objeto dispara al objeto receptor para que tome el control y lleve a
cabo una de las responsabilidades de su clase. El nombre de un mensaje indica el
motivo del objeto que realiza la llamada en su interacción con el objeto invocado
(Jacobson, 2000 #17)
Figura 2.6 Diagrama de colaboración Autenticar Usuario (Estudiante).
CAPITULO II
24
Figura 2.7 Diagrama de colaboración Eliminar Usuario.
Figura 2.8 Diagrama de colaboración Adicionar Evaluación.
CAPITULO II
25
2.8 Diagrama de despliegue
Los diagramas de despliegue muestran la configuración de nodos que participan
en la ejecución y de los componentes que residen en ellos, además de mostrar
cómo se configuran las instancias de los componentes y los procesos para la
ejecución run-time en las instancias de los nodos de proceso(Larman, 2000). Se
utilizan para modelar la vista de despliegue estática de un sistema.
Figura 2.9 Diagrama de despliegue
2.9 Conclusiones parciales
Se formularon los requisitos funcionales y no funcionales requeridos por el sistema
el cual se construyó debido a la necesidad de diseñar e implementar un sistema
con ambiente web que permita el control y centralización de la información
docente en la Universidad “Marta Abreu” de Las Villas. Su arquitectura cuenta con
la identificación de los actores del sistema: Profesor; Estudiante; Administrador;
Gestor; Administrativo; Consultor, además cuenta con una especificación de los
casos de uso mediante la realización de diagramas de clases del diseño e
implementación por parte del diagrama de despliegue. En resumen la aplicación
diseñada facilitó la comprensión del sistema y la comunicación entre cliente y el
desarrollador lo que dio pie a la implementación del sistema.
CAPITULO III
26
CAPÍTULO 3. CAPITULO 3: DESCRIPCION DEL TRABAJO CON
LA APLICACION
En este capítulo se describe el trabajo con la aplicación, lo cual está dirigido al
usuario que interactuará con el sistema. Se expone el mapa de navegación y las
imágenes de la aplicación.
3.1 Mapa de navegación
Figura 3.1 Mapa de Navegación.
CAPITULO III
27
3.2 Interfaz de Acceso
Esta interfaz es la que posibilita el acceso a los diferentes tipos de usuarios que
interactúan con el sistema como el Administrador, Gestor, Consultor, Profesor y el
Estudiante.
Figura 3.2 Interfaz de Acceso
CAPITULO III
28
3.2.1 Ambiente del Sistema para el usuario Administrador
El usuario Administrador es el encargado de Gestionar los diferentes Grupos de
usuario en la aplicación así como definir los diferentes roles en dicho sistema.
Figura 3.3 Ambiente del Sistema para el usuario Administrador
CAPITULO III
29
En este interfaz se muestra la posibilidad de gestionar los usuarios según el rol
que juega en la aplicación.
Figura 3.4 Gestionar Usuarios
CAPITULO III
30
3.3 Ambiente del Sistema para el Usuario Gestor
El usuario Gestor es el encargado de Gestionar el Horario Docente contando con
el respectivo semestre que se esté cursando y en la semana que sea preciso,
también tendrá la posibilidad de gestionar los estudiantes por grupos, gestionar el
plan de estudio, gestionar los profesores por asignatura y los tipos de turnos de
clases en las diferentes carreras.
Figura 3.5 Ambiente del Sistema para el usuario Gestor
CAPITULO III
31
3.3.1Gestionar Grupos por Carrera
Aquí el Gestor tiene la posibilidad de Gestionar los Grupos en dependencia de las
diferentes carreras, actualizar el listado por el SIGENU así como ver su situación
en cuanto a si es nuevo ingreso, reingreso, etc.
Figura 3.6 Gestionar Grupos por Carrera
CAPITULO III
32
3.3.2 Gestionar Horario Docente
Aquí el Gestor tiene la posibilidad de gestionar el horario docente para las
diferentes carreras, asignarle la asignatura correspondiente en cada turno de
clases en la semana correspondiente.
Figura 3.7 Gestionar Horario Docente
CAPITULO III
33
3.3.3 Gestionar Plan de Estudio
Aquí el Gestor tiene la posibilidad de gestionar el plan de estudio correspondiente
a las diferentes carreras, asignar o eliminar las asignaturas dadas en los diferentes
semestres.
Figura 3.8 Gestionar Plan de Estudio
CAPITULO III
34
3.3.4 Gestionar Tipos de Turnos de Clases
Aquí el Gestor tiene la posibilidad de gestionar los tipos de turnos de clases ya
sean conferencias o clases prácticas correspondiente a las diferentes carreras.
Figura 3.9 Gestionar Tipos de Turnos de Clases
CAPITULO III
35
3.3.5 Gestionar Profesores por Asignatura
Aquí el Gestor tiene la posibilidad de gestionar los profesores por asignaturas en
las diferentes carreras, asignándolo a un determinado grupo.
Figura 3.10 Gestionar Profesores por Asignaturas
CAPITULO III
36
3.4 Ambiente del Sistema para el usuario Profesor
Este rol puede Gestionar el Registro de Evaluaciones, Registro de Asistencia, las
actividades referentes a los grupos a los que imparte así como consultar su P1.
Figura 3.11 Ambiente del Sistema para el usuario Profesor
CAPITULO III
37
Figura 3.12 Planificación P1.
CAPITULO III
38
Figura 3.13 Consultar listado de estudiantes.
CAPITULO III
39
Figura 3.14 Registro de asistencias
CAPITULO III
40
Figura 3.15 Registro de evaluación.
CAPITULO III
41
Figura 3.16 Adicionar archivos a turnos de clases.
CAPITULO III
42
3.5 Ambiente del Sistema para el usuario Consultor
Este rol está capacitado para buscar información sobre las diferentes actividades
disponibles en el sitio, así como consultar y descargar la información que
desee.
Figura 3.17 Ambiente del Sistema para el usuario Consultor
CAPITULO III
43
Figura 3.18 Consultar listado de estudiantes.
CAPITULO III
44
3.6 Ambiente del Sistema para el usuario Estudiante
Es el actor que representa a los estudiantes de la universidad, éste se autentica
en el sistema, puede acceder al contenido de la aplicación, ver sus resultados
académicos durante el actual curso así como consultar su horario docente,
calendario de pruebas, registro de asistencias y de evaluaciones.
Figura 3.19 Ambiente del Sistema para el usuario Estudiante
CAPITULO III
45
Figura 3.20 Consultar horario docente.
CONCLUSIONES
46
Conclusiones
En el proceso investigativo desarrollado para crear el “Sistema de Gestión y
estadística Docente” para la Universidad Central ¨Marta Abreu¨ de las Villas, se
cumplieron los requisitos y funcionalidades propuestas para la problemática.
Se obtuvo una Base de Datos que se actualiza con los datos del SIGENU
para el control interno de los datos con que trabaja la aplicación.
Se logró incluir las funcionalidades que permiten la gestión del Horario
Docente de cada grupo y mantenerlo en línea para que pueda ser
consultado por los estudiantes y personal del centro.
Se obtuvo el módulo de administración de roles y usuarios del sistema,
permitiendo el control de acceso y modificación de la información.
Se obtuvo el módulo para gestionar las principales actividades docentes tales
como: gestionar los grupos, gestionar los planes de estudio de cada
carrera, gestionar los estudiantes con arrastres, gestionar los profesores
por asignatura, gestionar los P1 de los profesores, gestionar los registros de
asistencia, gestionar los registros de evaluaciones.
Se logró un producto funcional que reúne los módulos anteriores y aporta
otras funcionalidades que permiten la centralización de los datos docentes y
la gestión de las principales actividades. La aplicación cuenta con
validaciones para la entrada de datos incorrectos y seguridad a la hora de
prevenir ataques por inyección SQL.
RECOMENDACIONES
47
Recomendaciones
Establecer un enlace con la Base de Datos SIGENU para actualizar los datos
que se necesitan de esta, las vistas ya están implementadas y funcionales.
Implementar un sistema de avisos mediante correo electrónico para las
notificaciones, recordatorios de exámenes y cambios de última hora.
Conformar un sistema de generación de reportes teniendo en cuenta los
resultados académicos de los estudiantes en las diferentes asignaturas y
sus registros de asistencia.
Implementar nuevas funcionalidades para lograr una mayor centralización de
los datos y simplificar el acceso a los mismos por parte del personal
universitario.
REFERENCIAS BIBLIOGRAFICAS
48
Referencias Bibliográficas:
BARBERO, A. 1999. Tutorial de XML.
EXTJS, C. D. 2008.
GARCÍA, R. M. M. 1999. Diseño de Bases de Datos.
GRAELLS, D. P. M. 2000. Las TIC y sus Aportaciones a la sociedad [Online].
Available: http://peremarques.pangea.org/tic.thm [Accessed].
JACOBSON, I. B., GRADY RUMBAUGH, JAMES 1998. El lenguaje unificado de
modelado.
JACOBSON, I. B., GRADY RUMBAUGH, JAMES 2000. El proceso unificado de
desarrollo del software.
LARMAN, C. 2000. UML y Patrones.
LAUDON 2006. Sistema de Informacion Gerencial. In: KOSCIUK, N. H. (ed.).
PALACIO, J. 2006. El modelo Scrum.
PÉREZ, J. E. 2008. Introducción a AJAX.
SCHMULLER, J. 2000. Aprendiendo UML en 24 Horas. México.
WIKIPEDIA 2013a. CSS.
WIKIPEDIA. 2013b. Ext JS [Online]. Available: http://www.wikipedia.org
[Accessed].
WIKIPEDIA. 2013c. PHP [Online]. Available: http://es.wikipedia.org/wiki/Php
[Accessed].
YARITZA MONTERO VAILLANT, E. M. R. R. 2011. Plataforma para el Analisis
Estatico de Vulnerabilidades del Codigo. Universidad de las Ciencias
Informáticas.
ANEXOS
49
Anexos:
Anexo #1: Descripción de casos de uso
Tabla 7. Descripción de casos de uso: Consultar horario
Caso de Uso: Consultar horario
Actores: Consultor, Profesor, Estudiante
Propósito: Consultar el horario docente
Resumen: Aquí el usuario tiene la oportunidad de consultar el horario
docente para informarse de sus respectivas actividades.
Tabla 8. Descripción de casos de uso: Consultar evaluación
Caso de Uso: Consultar evaluación.
Actores: Consultor, Profesor, Estudiante.
Propósito: Consultar evaluación.
Resumen: Los usuarios tienen acceso a las respectivas evaluaciones
parciales hechas durante el curso que transcurre.
ANEXOS
50
Tabla 9. Descripción de casos de uso: Consultar registro de asistencias
Caso de Uso: Consultar registro de asistencias
Actores: Consultor, Profesor, Estudiante.
Propósito: Consultar registro de asistencias en el actual semestre.
Resumen: Los usuarios podrán acceder a consultar el registro de
asistencias en las diferentes asignaturas correspondientes al
semestre actual.
Anexo #2: Diagrama de clases del análisis
Figura 2.10 Diagrama de clases del análisis perteneciente al caso de uso: Llenar
Registro de Asistencia.