Tesis(Gustavo Medina Santana) - DSpace@UCLV

Anuncio
Universidad Central “Marta Abreu” de las Villas.
Facultad Matemática Física y Computación
Licenciatura en Ciencia de la Computación
Sistema de Información de apoyo a la
Autoevaluación de la Carrera Ciencia de la
Computación (SAAC)
Autor
Gustavo Medina Santana
Tutor
Dr. Daniel Gálvez Lio
Curso 2012- 2013
Declaración Jurada
El que suscribe, Gustavo Medina Santana, hago constar que el trabajo titulado
Sistema de información para la autoevaluación de la carrera Ciencia de la
Computación fue realizado en la Universidad Central “Marta Abreu” de Las Villas
como parte de la culminación de los estudios de la especialidad de Licenciatura
en Ciencia de la Computación, autorizando 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 publicado sin la
autorización de la Universidad.
________________
Firma del autor
Los abajo firmantes, certificamos que el presente trabajo ha sido realizado según
acuerdos 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.
___________________________
____________________________
Firma del Tutor
Firma del Jefe del Laboratorio
Dedicatoria
Dedico con todo mi corazón este trabajo
a mi familia
por brindarme su apoyo incondicional en todo momento y
a mi niño
que desde su nacimiento se convirtió en un faro
que ilumina mi vida.
Agradecimientos

Al Dr. Daniel Gálvez Lio por darme un voto de confianza y ser un excelente tutor
y amigo.

Al profesor Abel Rodríguez Morffi por su paciencia y apoyo incondicional.

A mi familia por mantener su fe en mí en todas las etapas de mi vida.

A la mujer de mis sueños Indiana, por existir en mi vida.

A mi suegra Belkis por acogerme en su hogar como un hijo más.
Resumen
La Junta de Acreditación Nacional (JAN) establece en los documentos rectores de su
trabajo la guía de evaluación de carreras universitarias (SEA-CU 02) que establece un
grupo de indicadores y criterios de medidas para los mismos. Estos indicadores son
evaluados de manera cualitativa, pues los criterios de medida en la mayoría de los casos
no reflejan valores cuantitativos. Sin embargo, esas valoraciones pueden fundamentarse
en informaciones cuantitativas que son manejadas por el personal institucional,
entiéndase, jefe de carrera, jefes de departamento, jefes de disciplinas, Vicedecano
Docente, Vicedecano de Investigación, así como otras personas.
A partir de la guía de autoevaluación de carreras universitarias se establece un conjunto
de informaciones cuantitativas que pueden fundamentar el informe de autoevaluación
propuesto por el colectivo de carrera y esta información se puede almacenar en una base
de datos que conserve en el tiempo dicha información y que pueda ser accedida por un
sistema de apoyo al proceso de autoevaluación de las carreras, capaz de gestionar los
datos y generar reportes del estado de los mismos. Con este fin se implementa SAAC en
su versión 1.0 como un sistema de apoyo al proceso de autoevaluación de la carrera de
Ciencia de la Computación.
ABSTRACT
The National Accreditation Board (JAN) provides documents to guide the process of selfassessment for universities careers (SEA-CU 02), that documents provides a set of
indicators and measurement criteria. These indicators are evaluated qualitatively due to
the measuring criteria, in most cases, not reflect quantitative values. However, these
qualitative assessments can be based on quantitative data that are managed by
institutional staff, for example, chief career, heads of departments, heads of disciplines,
Teaching Associate Dean, Associate Dean for Research, and others.
From self-assessment guide to university career, can be establish a set of quantitative
information that can substantiate the proposed self-assessment report by the staff of
career and this information can be stored in a database that holds over the time. That
information can be accessed by a support system for self-assessment career’s, that system
will be able to manage data and generate reports. In order to help to the self-assessment
process for the career of Computer Science, the software, called SAAC version 1.0, is
implemented.
Tabla de contenido
Introducción ........................................................................................................... 1
Objetivo General ................................................................................................. 2
Objetivos Específicos ........................................................................................... 2
Justificación ........................................................................................................ 2
Capítulo 1: “Proceso de Autoevaluación de una carrera y las tecnologías de programación
utilizadas” .............................................................................................................. 4
1.1
Descripción del Problema............................................................................ 4
1.1.1
1.2
Análisis de las variables involucradas en el proceso ................................. 5
Herramientas para el desarrollo del sistema informático ............................... 11
1.2.1
PostgreSQL como Sistema Gestor de Bases de Datos ............................ 11
1.2.2
Java como lenguaje de programación ................................................... 11
1.2.3
NetBeans .......................................................................................... 17
1.2.4
Principales bibliotecas y drivers utilizados ........................................... 17
Capítulo 2: “Implementación del Sistema de Información de apoyo para la
Autoevaluación de la Carrera Ciencia de la Computación (SAAC)” ............................ 20
2.1
Requisitos funcionales y no funcionales del sistema ..................................... 20
2.2
Actores y Casos de Uso del sistema ............................................................ 22
2.2.1 Descripción de los casos de usos del sistema. ............................................ 28
2.3
Modelación de la información manejada por el sistema ................................ 30
2.4
Elementos de la implementación del sistema ............................................... 35
2.4.1
Aspectos de la arquitectura MVC utilizada ........................................... 35
2.4.2
Paquetes utilizados............................................................................. 36
2.4.3
Algoritmos y funciones utilizadas en la implementación del sistema ....... 37
2.5
Diagrama de Despliegue ........................................................................... 40
2.6
Herramientas para el desarrollo del Sistema ................................................ 40
2.6.1 Conexión de “SAAC.jar” con la base de datos .................................... 41
Capítulo 3: “Manual de Usuario” ............................................................................ 44
3.1 Requerimientos e Instalación de los Componentes del Sistema. ......................... 44
3.1.1 Instalación de la Base de Datos en el servidor. ........................................... 44
3.1.2 Requerimientos e Instalación del “SAAC.jar” ........................................... 44
3.2 Utilización de “SAAC”. ................................................................................ 44
3.2.1 Autentificación. ..................................................................................... 45
3.2.2Consultar reportes. ................................................................................. 47
3.2.3 Gestionar controles a clases. ................................................................... 50
3.3 Ayuda de “SAAC”........................................................................................ 53
Conclusiones ........................................................................................................ 54
Recomendaciones .................................................................................................. 55
Bibliografía .......................................................................................................... 56
Anexos ................................................................................................................. 57
Anexo 1 ............................................................................................................ 57
Anexo 2 ............................................................................................................ 60
Anexo 3 ............................................................................................................ 61
Introducción
La carrera de Ciencia de la Computación perteneciente a la Facultad de Matemática,
Física y Computación en la Universidad Central “Marta Abreu” de Las Villas realiza en
el curso 2012-2013 su 38va graduación, es una carrera acreditada de excelencia en un
proceso realizado por la Junta de Acreditación Nacional (JAN) en el 2008.
En el actual curso académico, el colectivo de carrera de Ciencia de la Computación debe
elaborar el informe del trabajo realizado para ser presentado en un proceso de reacreditación de la carrera. Para la elaboración del informe de autoevaluación de la carrera
existe una metodología que se aplica semestralmente y una vez culminado el curso, en
ocasiones se hace coincidir la autoevaluación del 2do semestre con la autoevaluación del
curso para la carrera. Esta autoevaluación se realiza teniendo en cuenta un determinado
grupo de indicadores y los criterios de evaluación para cada uno de ellos. La JAN
establece en los documentos rectores del proceso todos los aspectos a ser considerados.
Los criterios de evaluación en su mayoría, son información cualitativa, sin embargo,
existen un conjunto amplio de elementos cuantitativos que tributan a la evaluación
cualitativa expresada en la metodología, los elementos se encuentran dispersos, forman
parte de informaciones que se van generando durante todo el curso, son manejados por
diferentes personas en sus respectivas responsabilidades institucionales (como el jefe de
carrera, el vicedecano docente y el de investigación, el jefe de departamento, etc.), lo cual
dificulta el proceso, y de cierta forma puede conllevar a cometer imprecisiones.
Hasta el momento la información recopilada durante estos procesos de autoevaluación de
la carrera queda registrada en el informe de autoevaluación y el conjunto de anexos del
mismo y es responsabilidad del jefe de carrera conservarlos para posteriores análisis,
comparaciones con el curso precedente, etc. La información histórica de este proceso de
esta forma no está segura, disponible, ni automatizada.
…1
Objetivo General
Desarrollar la implementación de un sistema de información que facilite la gestión de los
datos necesarios para elaboración de la autoevaluación semestral y de un curso
académico de la carrera Ciencia de la Computación.
Objetivos Específicos
1. Determinar las necesidades de información para el proceso de autoevaluación de
la carrera Ciencia de la Computación.
2. Diseñar e implementar una base de datos que satisfaga las necesidades de
información detectadas en el proceso de autoevaluación.
3. Diseñare implementar un sistema de información de apoyo al proceso de
autoevaluación.
En esta investigación se diseña e implementa un sistema de información que permita
manejar información cuantitativa que sirve de base en la elaboración de la autoevaluación
semestral y de un curso académico de la carrera Ciencia de la Computación. Para lograr
lo antes mencionado se parte del análisis del documento “SISTEMA DE EVALUACIÓN
Y ACREDITACIÓN DE CARRERAS UNIVERSITARIAS” (JAN, 2009) de donde se
obtienen los indicadores para la autoevaluación de las carreras que servirán como fuente
primaria de información a manejar por el sistema. Como resultado del procesamiento de
esta información y del cálculo de ciertos criterios de medida, se obtendrán un conjunto de
tablas y reportes establecidos por la JAN, los cuales facilitarán la elaboración de esta
autoevaluación.
Justificación
Se hace necesaria la implementación de un sistema que apoye el proceso de
autoevaluación de la carrera Ciencia de la Computación debido al gran volumen de
información que se maneja y lo dispersa que se encuentra entre el personal involucrado,
además, muchas de esas informaciones tienen valor histórico por lo que tenerlas
almacenadas y poder consultarlas a través de un sistema es de gran beneficio e
importancia para nuestra carrera y la facultad en general.
…2
La tesis está estructurada en una introducción, tres capítulos, las conclusiones, las
recomendaciones, la bibliografía y 3 anexos. En el Capítulo 1 se encuentra descrito el
planteamiento del problema, así como lo relativo al proceso de autoevaluación de una
carrera, además, se hace una descripción teórica de cada una de las herramientas que se
utilizan para la confección del sistema. En el capítulo 2 se aborda todo lo relacionado con
la implementación del sistema, partiendo del modelado de los principales diagramas hasta
la configuración de las herramientas necesarias para continuar enriqueciéndolo; del
mismo modo en el capítulo 3 se explica de forma detallada cuáles son los requisitos que
deben cumplir tanto las máquinas clientes como el servidor, así como la configuración
de los software para poder utilizar de forma óptima el sistema creado.
…3
Capítulo 1: “Proceso de Autoevaluación de una carrera y las tecnologías
de programación utilizadas”
En este capítulo se presenta el planteamiento del problema investigativo relativo al
proceso de autoevaluación de una carrera, describiéndose brevemente este proceso y los
indicadores establecidos por la Junta de Acreditación Nacional (JAN). También se
describen los aspectos teóricos relacionados con las tecnologías utilizadas para dar
solución efectiva al mismo.
1.1 Descripción del Problema
La Junta de Acreditación Nacional (JAN) es el organismo encargado en nuestro país de
centrar el proceso de acreditación de las carreras universitarias y las especialidades de
postgrados: maestrías, doctorados, etc. Esta entidad ha creado el “SISTEMA DE
EVALUACIÓN Y ACREDITACIÓN DE CARRERAS UNIVERSITARIAS (SEA-CU)”
(JAN, 2009) y dicho sistema contiene la GUÍA DE EVALUACIÓN DE CARRERAS
UNIVERSITARIAS (SEA-CU 02) (ver anexo 1). Esta guía establece un total de 5
variables para cada una de las cuales se definen los indicadores y los criterios de
evaluación de cada indicador. En el caso de las carreras universitarias esas variables son:
12345-
PERTINENCIA E IMPACTO SOCIAL
PROFESORES Y PERSONAL AUXILIAR
ESTUDIANTES
INFRAESTRUCTURA
CURRÍCULO
La mayoría de los criterios de evaluación de cada indicador expresan valoraciones
cualitativas del proceso de ejecución de la carrera.
Normalmente el colectivo de carrera, órgano asesor de la carrera en cada centro, realiza
dos análisis semestrales y una autoevaluación de la carrera cada curso académico basados
en esa guía establecida por la JAN. Además, en el momento en que un colectivo de
carrera considera que la carrera tiene un grado de madurez adecuado para optar por
alguno de los niveles de acreditación establecidos por la JAN, se hace, a través del rector
…4
del centro, la solicitud de que la carrera sea acreditada y se elabora el informe de
acreditación teniendo en consideración la guía establecida por la JAN.
Como parte de este trabajo se debe hacer un estudio que permita establecer un conjunto
de elementos cuantitativos que permitan justificar la autoevaluación que el colectivo de
carrera propone en su informe de autoevaluación.
1.1.1 Análisis de las variables involucradas en el proceso
Teniendo en cuenta la información mostrada en el anexo 1, se realizó el análisis de los
indicadores que pudieran ser cuantificados, lo cual se muestra a continuación:
1.1.1.1 Variable 1“Pertinencia e impacto social”
En la variable 1 se establece el indicador “1.1 Proyección de la profesión hacia el
territorio y/o el país” y se establece como criterio de medida “Reconocimiento del
vínculo de los profesores y estudiantes a la solución de los problemas del territorio y/o
del país” entonces para valorar el cumplimiento de este criterio de medida se podría tener
en cuenta los siguientes elementos cuantitativos:
o Cantidad de estudiantes y profesores con resultados reconocidos en fórum de
Ciencia y Técnica y otros eventos de carácter regional, nacional e internacional
y con reconocimientos y premios nacionales e internacionales.
o Proyectos de Investigación de distinta índole (locales, regionales, nacionales,
internacionales) en los que participan los estudiantes y profesores.
o Participación en las tareas de impacto.
o Cantidad de estudiantes vinculados a proyectos comunitarios.
La información anterior es controlada por el director del Centro de Estudios de
Informática (CEI) a través del balance de Ciencia y Técnica y los vicedecanos docente y
de investigación de la facultad.
Se establece un segundo indicador “1.2 Grado de satisfacción de profesores, estudiantes,
egresados y empleadores con la calidad del proceso de formación”, y se establece como
criterio de medida “Resultados alcanzados en la valoración del grado de satisfacción a los
profesores, estudiantes, empleadores y los egresados” entonces para valorar el
…5
cumplimiento de este criterio de medida se podría tener en cuenta como elemento
cuantitativo:
o Los resultados de las encuestas realizadas a profesores, estudiantes,
empleadores y egresados.
Las encuestas a estudiantes se realizan con sistematicidad (semestralmente), son
procesados por el vicedecano docente de la facultad y sus resultados son objeto de
análisis en el colectivo de carrera, en la brigada, etc. Las encuestas a egresados y
empleadores se realizan en muy pocas ocasiones, pero como la facultad mantiene buen
vínculo con sus egresados, fundamentalmente a través de la formación postgraduada, se
sugiere sistematizar un sistema de retroalimentación que aproveche la presencia de los
egresados en nuestras las aulas y garantice el conocer grado de satisfacción de egresados
y empleadores.
1.1.1.2 Variable 2“Profesores y personal auxiliar”
En la variable 2 se establece el indicador “2.1 Cualidades de educador” y se establece
como criterio de medida “Se comprueba por diferentes vías que los profesores se
destacan por sus cualidades de educador” entonces para valorar el cumplimiento deeste
criterio de medida se podría tener en cuenta los siguientes elementos cuantitativos:
o Resultados de encuestas a estudiantes, en particular la pregunta 8 de la
encuesta.
o Cantidad de controles a clase realizados y los porcientos de calificaciones
entre 4 y 5, lo cual va a reflejar la calidad de la docencia que se imparte.
La encuesta a los estudiantes se procesa por el vicedecano docente y los controles a clase
son planificados por el jefe del departamento docente.
Se establecen otros dos indicadores “2.2 % de doctores (o equivalente según reglamento),
Master y Especialistas con que cuenta la carrera” y “2.3 Categorización de los
profesores”, y se establecen como criterios de medida:
“A. Sede Central: % de Doctores del claustro y % de Master en el resto del claustro”
entonces para valorar el cumplimiento de estos criterios de medida se podría valorar los
siguientes elementos cuantitativos:
…6
o La cantidad de licenciados e ingenieros, de master y de doctores conforman el
claustro de profesores, así como el porciento que estos representan.
o La cantidad de profesores con categoría superior (PA y PT), así como el
porciento que estos representan.
La información anterior se maneja a nivel del jefe del departamento durante la
planificación de la carga docente en cada semestre.
Otro indicador es “2.4 Calidad de las investigaciones y el postgrado en la carrera”, para el
cual se establece como criterio de medida “Se reconoce el impacto económico y social de
las investigaciones realizadas en los últimos 5 años y la integración de la gestión de la
ciencia y la innovación entre la Sede Central y la otra modalidad de enseñanza en su
influencia en el proceso de formación de los estudiantes” entonces para evaluar el
cumplimiento de este criterio de medida se podría valorar los siguientes elementos
cuantitativos:
o La cantidad de premios y reconocimientos obtenidos por los profesores en los
últimos 5 años.
o Índice promedio de eventos por profesor en los últimos 5 años.
Esta información se extraerá del Balance de Ciencia y Técnica que realiza el CEI y que
controla el director y contará con una descripción detallada de cada elemento para que
sirva de referencia al personal encargado de realizar la acreditación.
Otro indicador es “2.5 Publicaciones de textos y/o artículos científicos en revistas
referenciadas y participación en eventos nacionales e internacionales”, para el cual se
establecen como criterios de medida “Tres o más publicaciones promedio por profesor en
los últimos 5 años” y “Tres o más ponencias promedio en eventos nacionales e
internacionales por profesor en los últimos 5 años” entonces para valorar el cumplimiento
de este criterio de medida se podría valorar los siguientes elementos cuantitativos:
o Las publicaciones de los profesores del claustro en los últimos 5 años y el
promedio por profesor.
…7
o Las ponencias, para a partir de estas sumarlas y calcular las ponencias
promedio en eventos nacionales e internacionales por profesor en los últimos
5 años.
o Índice promedio de publicaciones por profesor.
Esta información al igual que la anterior se extrae del Balance de Ciencia y Técnica.
1.1.1.3 Variable 3“Estudiantes”
En la variable 3
se establece el indicador “3.3 Tendencia que se manifiesta en la
eficiencia en los últimos 5 cursos” y se establece como criterio de medida “La eficiencia
muestra una efectiva estabilidad o tendencia al incremento de la permanencia, del
rendimiento y del egresado en los últimos 5 cursos” entonces para el cumplimiento de
este criterio de medida se necesitaría llevar a cabo el análisis de las eficiencias vertical y
horizontal de los últimos 5 cursos y lo cual es obtenido desde la secretaria docente por el
vicedecano docente.
Otro indicador sería “3.2 Dominio de los modos de actuación de la profesión” el cual
establece como criterios de medida “Resultados alcanzados en los exámenes integradores
aplicados a una muestra de estudiantes que garantice evaluar los modos de actuación de
la profesión”, “% de estudiantes con calificaciones de 4 ó 5” y “Calidad de los Trabajos
de Curso, de Diploma u otras formas de culminación de estudio realizados en los últimos
3 cursos”, entonces para hacer efectivo el cumplimiento de estos criterios de medida se
deben tener en cuenta las notas almacenada en el SIGENU de la práctica de producción y
los trabajos de diploma. Esta información es controlada por la secretaria docente a través
de los responsables de la práctica laboral de cada uno de los años y del responsable de los
trabajos de diploma para 5to año.
1.1.1.4 Variable 4“Infraestructura”
De esta variable no se decidió información cuantitativa para incluir en el sistema.
1.1.1.5 Variable 5“Currículo”
En la variable 5 se establece el indicador “5.5 Actividad investigativo – laboral de los
estudiantes” y se establecen como criterios de medida “La organización y desarrollo de la
…8
actividad investigativo – laboral en la carrera garantiza la formación de los modos de
actuar del profesional” y “Las unidades docentes están constituidas en entidades laborales
de alto prestigio profesional que reúnen los requisitos necesarios para la formación de los
modos de actuación de la profesión” entonces para valorar el cumplimiento de estos
criterios de medida se podría valorar los siguientes elementos cuantitativos:
o La cantidad de estudiantes vinculados a grupos científicos.
o La cantidad de ponencias y premios en eventos a todos los niveles.
o Los diferentes tipos de centros de trabajo donde se ubican a los estudiantes
para realizar sus prácticas laborales.
La información anterior es controlada por los laboratorios científicos del CEI y por los
profesores que atienden la práctica de producción quienes reportan esta información a sus
superiores: el director del CEI y el Jefe de la Disciplina Práctica Profesional.
1.1.1.6 Otras informaciones
La JAN establece en su documentación un conjunto de informaciones en forma de tablas
(ver anexo 2) que son datos cuantitativos que deben ser entregados como parte del
documento de autoevaluación a elaborar por el colectivo de carrera. Estas informaciones
son por ejemplo:
o Una relación de los profesores que dirigen los diferentes colectivos
pedagógicos con su categoría docente y grado científico. Esta información se
localiza fundamentalmente en el jefe de departamento carrera y en el jefe de la
carrera.
o Relación del personal responsable de la práctica laboral por cada una de las
entidades, con sus respectivos contactos.
Durante este epígrafe se ha presentado toda la información cuantitativa que se considera
útil para fundamentar la autoevaluación de la carrera, así como los responsables
institucionales que la controlan, de manera que se pueda desarrollar una aplicación
informática que permita capturar toda esa información y procesarla, extrayendo los
resúmenes y otras informaciones en el formato establecido por la JAN.
…9
1.1.2 Resumen de la cuantificación de las variables
Variable No.1: PERTINENCIA E IMPACTO SOCIAL
No. Indicador
1.1 Proyección de la profesión hacia el territorio y/o el país.
1.2 Grado de satisfacción de profesores, estudiantes, egresados y
empleadores con la calidad del proceso de formación.
Cuantificar
Sí
Sí
Variable No.2: PROFESORES Y PERSONAL AUXILIAR
No.
2.1
2.2
2.3
2.4
2.5
2.6
2.7
Indicador
Cuantificar
Cualidades de educador.
Sí
% de doctores (o equivalente según reglamento), Master y
Sí
Especialistas con que cuenta la carrera. Categorización de los
profesores.
Sí
Calidad de las investigaciones y el postgrado en la carrera.
Sí
Publicaciones de textos y/o artículos científicos en revistas
Sí
referenciadas y participación en eventos nacionales e internacionales.
Experiencia profesional en el área de conocimientos de la carrera.
No
Personal no docente y administrativo.
No
Variable No.3: ESTUDIANTES
No.
3.1
3.2
3.3
3.4
Indicador
Participación de los estudiantes como protagonistas de su proceso de
formación.
Dominio de los modos de actuación de la profesión.
Tendencia que se manifiesta en la eficiencia en los últimos cinco
cursos.
Organización docente para el aprendizaje.
Cuantificar
No
Sí
Sí
No
Variable No.4: INFRAESTRUCTURA
No.
4.1
4.2
4.3
4.4
Indicador
Aseguramiento de un sistema integrado y progresivo de los medios
de enseñanza que garantice el acceso al aprendizaje de los
estudiantes.
Aseguramiento bibliográfico en el área de conocimiento de la
carrera.
Aseguramiento de la base material en el área de conocimiento de la
carrera (incluido el que se utiliza como consecuencia de la alianza
con los OACE).
Aseguramiento material para el empleo de la computación y las TICs
en la carrera.
Otras instalaciones de carácter docente utilizadas por la carrera.
Cuantificar
No
No
No
No
Variable No.5: CURRÍCULO
No. Indicador
5.1 Gestión curricular en la carrera y en el colectivo pedagógico.
5.2 Relación entre los diferentes componentes del proceso docenteeducativo en la carrera.
5.3 Estrategia educativa de la carrera.
5.4 Estrategias curriculares.
5.5 Actividad investigativo-laboral de los estudiantes.
Cuantificar
No
No
No
No
Sí
… 10
1.2 Herramientas para el desarrollo del sistema informático
En este epígrafe se analizan las herramientas y tecnologías de software que
probablemente serán utilizadas en la implementación del sistema informático de ayuda al
proceso de autoevaluación de la carrera de Ciencia de la Computación.
1.2.1
PostgreSQL como Sistema Gestor de Bases de Datos
PostgreSQL es un sistema de gestión de base de datos relacional orientada a objetos y
libre, publicado bajo la licencia BSD y está considerado como el Sistema de Bases de
Datos Libre de código abierto más avanzado hoy día (The-PostgreSQL-GlobalDevelopment-Group, 1996). Cuenta con una comunidad internacional de desarrolladores
llamada PostgreSQL Global Development Group compuesta por desarrolladores de una
amplia gama de países lo que hace poco probable la ocurrencia de que sea privatizado
como sucedió con el SGBD MySQL.
PostgreSQL incorpora cuatro elementos básicos: clases, herencia, tipo y funciones;
además de otras características que aportan potencia y flexibilidad adicional como son:
restricciones (constrains), disparadores (triggers), reglas (rulers) e integridad
transaccional. (Equipo de Desarrollo PostgreSQL). Está basado en el arquitectura
Cliente/Servidor, también ofrece control de concurrencia multiversión, soporta casi toda
la sintaxis SQL; es altamente extensible pues soporta operadores definidos por el usuario,
funciones, métodos de acceso y tipos. Además brinda soporte para lenguaje procedural
externo aunque comúnmente el código del lado del servidor es escrito utilizando el
lenguaje nativo PL/pgSQL, también permite el uso de Tcl, Python como lenguajes.
PostgreSQL también soporta el desarrollo de aplicaciones cliente en diferentes lenguajes
C, C++, PHP, Perl, Tcl/Tk, y Python.
1.2.2 Java como lenguaje de programación
Java es un lenguaje de programación de alto nivel de última generación que se basa en el
paradigma orientado a objetos. Como lenguaje de programación para computadores, se
introdujo a finales de 1995. La clave fue la incorporación de un intérprete Java en la
versión 2.0 del programa Netscape Navigator, produciendo una verdadera revolución en
Internet. Java 1.1 apareció a principios de 1997, mejorando sustancialmente la primera
versión del lenguaje. Java 1.2, más tarde rebautizado como Java 2, nació a finales de
1998 (García et al., 1999).
… 11
Java es un entorno para la ejecución de programas, englobado en la llamada máquina
virtual de Java, lo que hace de él un concepto diferente. Este entorno es un software que
permite que las aplicaciones escritas en Java se ejecuten en cualquier ordenador,
independientemente del sistema operativo y de la configuración de hardware utilizados.
La compañía Sun describe el lenguaje Java como “simple, orientado a objetos,
distribuido, interpretado, robusto, seguro, de arquitectura neutra, portable, de altas
prestaciones, multitarea y dinámico”, aunque en algunas de esas características el
lenguaje sea todavía bastante mejorable.
Cualidades principales de Java
Universalidad: Aunque un programa interpretado no es, en principio, tan rápido como
un programa equivalente compilado, las prestaciones de Java son, sin embargo,
muchísimo mejores que las de cualquier lenguaje interpretado. Este hecho, junto con la
sencillez de programación en Java ha propiciado que se hayan escrito intérpretes de
pequeño tamaño adaptados a prácticamente cualquier plataforma, desde mainframes y
ordenadores personales (con cualquier sistema operativo: Windows, Macintosh OS,
Unix,...) hasta dispositivos electrónicos de bajo coste. Además, la universalidad de los
byte codes hacen de Java el lenguaje idóneo para desarrollar aplicaciones para Internet.
De hecho, la mayor parte de los navegadores (Netscape Navigator, Internet Explorer,
HotJava) integran máquinas virtuales, y por tanto intérpretes de Java, lo que hace posible
acceder automáticamente a los applets presentes en las páginas web. De nuevo la
sencillez de Java hace que esta integración no reduzca en absoluto las prestaciones de los
navegadores, permitiendo además la ejecución rápida y simultánea de gran cantidad de
applets.
También se suele hacer referencia a la universalidad de Java con términos equivalentes
como transportabilidad, o independencia de plataforma, pues para ejecutar un programa
basta compilarlo una sola vez: a partir de entonces, se puede hacer correr en cualquier
máquina que tenga implementado un intérprete de Java.
Además, las bibliotecas estándar de funciones y métodos de Java (definidas en su API,
Application Programming Interface) facilitan la programación de multitud de acciones
complejas (desarrollo de interfaces gráficas, multimedia, multitarea, interacción con
… 12
bases de datos,...). Ningún otro lenguaje (ni compilado ni interpretado) dispone como
Java de una cantidad tan grande de funciones accesibles en cualquier plataforma sin
necesidad de cambiar el código fuente.
Sencillez: Java es un lenguaje de gran facilidad de aprendizaje, pues en su concepción se
eliminaron todos aquellos elementos que no se consideraron absolutamente necesarios.
Por ejemplo, en comparación con otros lenguajes como C ó C++, es notable la ausencia
de punteros, o lo que es lo mismo: es imposible hacer referencia de forma explícita a una
posición de memoria; ello ahorra gran cantidad de tiempo a los programadores, dado que
el comportamiento imprevisto de los punteros es una de las principales fuentes de errores
en la ejecución de un programa. Por otra parte, el código escrito en Java es por lo general
mucho más legible que el escrito en C ó C++.
Por otro lado, Java dispone de un mecanismo conocido como de "recogida de basura", el
cual —usando la capacidad multitarea de Java— hace que, durante la ejecución de un
programa, los objetos que ya no se utilizan se eliminen automáticamente de la memoria.
Dicho mecanismo facilita enormemente el diseño de un programa y optimiza los recursos
de la máquina que se esté usando para la ejecución del mismo (con los lenguajes
tradicionales, la eliminación de objetos y la consiguiente optimización de recursos debe
planificarse cuidadosamente al idear el programa).
Orientación a objetos: Java es un lenguaje orientado a objetos desde su concepción. Un
programador no puede obviar la orientación a objetos cuando escribe un programa en
Java, y esto hace que las aplicaciones escritas en Java tengan interesantes ventajas.
En el caso de los lenguajes orientados a objetos el concepto clave es el de objeto. Por
ejemplo, en una aplicación de Bibliotecas un objeto puede ser un código de barras, que
contiene datos (p. ej. el número mismo del código de barras) e instrucciones para
manejarlos (p. ej. el método para calcular el dígito de control). Los objetos, además,
poseen la capacidad de enviarse mensajes entre sí durante la ejecución de un programa.
Seguridad: En general, se considera que un lenguaje es tanto más seguro cuanto menor
es la posibilidad de que errores en la programación, o diseños malintencionados de
programas (virus), causen daños en el sistema. La extrema seguridad de Java se establece
a tres niveles:
… 13
1- Nivel de seguridad dado por las características del lenguaje, tales como la
ausencia de punteros (que evita cualquier error de asignación de memoria) o el
"ocultamiento de la información" propio de la programación orientada a objetos,
por recordar dos ejemplos ya mencionados.
2- Nivel de seguridad dado por el diseño de la VM:
La VM de Java posee un verificador de los byte codes, que antes de ejecutarlos
analiza su formato comprobando que no existen punteros en ellos, que se accede a
los recursos del sistema a través de objetos de Java, etc.
Otro elemento constitutivo de la VM es el cargador de clases. Una clase es una
categoría de objetos utilizados en un programa; cuando se ejecuta un programa en
Java, éste llama a determinadas clases a través del cargador de clases. Estas clases
pueden provenir de tres lugares distintos, en donde residen en forma de ficheros:
del ordenador local, de la red de área local a la que pueda estar conectado el
ordenador cliente, o de Internet. En función de la procedencia de las clases, se
efectúan una serie de comprobaciones diferentes, y el gestor de seguridad de la
VM prohíbe los accesos peligrosos.
3- Nivel de seguridad dado por la API de Java. El conjunto de métodos y clases que
estamos obligados a utilizar cuando programamos en Java para acceder a los
recursos del sistema, está definido por la API, y constituye la última barrera
defensiva. El diseño de dichos métodos y clases hace que éstos realicen múltiples
verificaciones cuando son invocados, de modo que se dificultan los errores
(voluntarios o involuntarios).
Adaptación a redes (y en particular a Internet): Java irrumpió en el mercado para
potenciar la interactividad en Internet, y también se han mencionado los applets,
pequeños programas en Java que se cargan junto con una página web desde un servidor, y
que son ejecutados (por la VM del navegador del cliente) como una parte de la página
web. Además de las ventajas que supone su ejecución local, los applets disponen de una
significativa riqueza de recursos y son capaces de realizar tareas muy complejas a pesar
de su reducido tamaño. Una de las explicaciones de esta sorprendente capacidad es el
hecho de que los applets se sirven del propio código del navegador en cuya VM se
ejecutan, utilizándolo para tareas tales como presentación gráfica o comunicaciones. Sin
… 14
embargo, el acceso a las funciones del navegador es totalmente automático y transparente
para el programador, que debe limitarse a invocar ciertas funciones de la API de Java;
estas invocaciones, interpretadas por el navegador, dan origen a acciones muy complejas.
Esta observación es muy importante cuando se discute del rendimiento de Java, pues
todas estas acciones se realizan en la máquina que está ejecutando el applet, y la rapidez
de ejecución de las mismas no depende de que Java sea un lenguaje semi-interpretado (o
semi-compilado).
Entre las tareas básicas más comunes que suelen realizar los applets, se encuentran:
visualizar animaciones en la ventana del navegador; reproducir sonidos; establecer
comunicaciones con el servidor del que procede el applet (p. ej. para cargar desde él
ficheros de cualquier naturaleza); crear interfaces gráficas con los elementos habituales
de los entornos de ventanas (como Macintosh o Windows): menús desplegables, botones,
áreas de texto, barras de desplazamiento, etc.; pedir datos al usuario para procesarlos
(gestionando eventos como pulsaciones de teclas o acciones con el ratón); etc. No
obstante, y como acabamos de decir, es posible programar applets para realizar tareas de
enorme complejidad.
A continuación mencionaremos algunos beneficios directos derivados de las cualidades
de Java:
Rapidez de desarrollo y mejora del software. El hecho de que Java sea un lenguaje
orientado a objetos desde su concepción tiene, entre otras muchas consecuencias, la de
que es fácil reutilizar el código de programación; y por tanto los desarrollos de una
aplicación serán más rápidos, pues es más rápido reutilizar objetos y sus componentes
que reescribir el código desde el principio. Además, una vez que el código de un objeto
es estable, la reutilización de ese objeto replica ese código fiable en cualquier parte en
toda la aplicación, lo que reduce el proceso de depuración (debugging).
Además, como hay menor posibilidad de errores en la programación, como también se ha
visto al describir los niveles de seguridad de Java, resulta que, como se ha dicho en
alguna ocasión: "al programador en Java no le queda más remedio que escribir código
robusto y fiable", o lo que es lo mismo: en el desarrollo de una aplicación se necesitará
emplear menos tiempo (y dinero) en los procesos de depuración y de perfeccionamiento o
reescritura del programa.
… 15
Otra consecuencia de la orientación a objetos de Java es que hace que el software escrito
en Java sea modular: como el objeto es la entidad clave en la programación, cada uno
puede ser modificado y mantenido por separado. Además, en Java no existe el concepto
de fichero ejecutable: un programa no es más que un conjunto de ficheros compilados
para la VM (llamados "módulos"), que no es necesario "enlazar" en un único ejecutable
como ocurría en el caso de los lenguajes compilados. Esto significa que pueden realizarse
modificaciones sobre cada uno de los "módulos" sin necesidad de tener que recompilar y
enlazar todos ellos: basta compilar sólo los "módulos" afectados.
En particular, cuando se deseaba implementar una nueva funcionalidad de una aplicación
escrita en un lenguaje compilado, podía ser necesario reescribirla en múltiples ocasiones
para adecuarla a cada plataforma en que se utilizaba la aplicación. En el caso de Java,
basta añadir el código una sola vez, en un solo lugar. Esto equivale a que la Biblioteca
soporta sólo una versión del software. Este enfoque es más eficiente, económico y directo
que soportar diferentes paquetes de cliente para cada tipo de plataforma.
Todas las consideraciones que se han realizado hasta este punto tienen las siguientes
ventajas añadidas para las Bibliotecas:
Se intensifica y acelera la entrega de mejoras de la aplicación, garantizando por
consiguiente una mayor versatilidad y adaptabilidad a las tecnologías emergentes y a las
necesidades crecientes, en materia de servicios, de la comunidad de usuarios de las
Bibliotecas.
No sólo las mejoras llegan antes a las Bibliotecas, incrementando su rendimiento, sino
que también llegan con un menor coste financiero del mantenimiento del software.
Seguridad, fiabilidad y eficiencia: Las características de Java como lenguaje redundan
en una ejecución segura del código, de manera que es posible construir módulos de
software capaces de detectar intentos de acceso a recursos privilegiados del sistema. Esa
capacidad es importante, sobre todo a la hora de emplear Java en redes de ordenadores
inseguras como Internet (cuando se cargan applets). La supremacía de Java sobre los
lenguajes interpretados tradicionales (muy populares en Internet debido a su flexibilidad
para evaluar cadenas dinámicas de caracteres, lo que permite manejar formularios, p. ej.)
es rotunda, pues éstos presentan graves deficiencias en ese sentido.
… 16
1.2.3 NetBeans
El NetBeans es una aplicación del tipo IDE (Interface Development Environment)
(NetBeans-IDE, 2008). Esta tecnología está dotada de muchas facilidades y ventajas. La
rapidez con que se pueden desarrollar las aplicaciones es un aspecto a tener muy
presente, pues es de vital importancia para los usuarios tener el producto final lo más
rápido posible en la mayoría de los casos, es una herramienta para que los programadores
puedan escribir, compilar, depurar y ejecutar programas. Está escrito en Java pero puede
servir para cualquier otro lenguaje de programación; es un software libre por lo que se
presta para apegarse a la política que están siguiendo la mayoría de las empresas del país
de usar tecnologías desarrolladas con software libre. Otras de las ventajas que ofrece esta
tecnología es su rapidez en el procesamiento de datos, su alta capacidad para soportar
estructuras de almacenamiento complejas, la posibilidad de construir Interfaces Gráficas
de Usuario utilizando la llamada Programación Visual. En lugar de escribir el código
puro en Java se crean aplicaciones utilizando herramientas visuales de manera que el
código a escribir es mínimo, el rehúso de código fuente, así como la disponibilidad de la
biblioteca Swing que dota al diseñador de la interfaz de usuario de las aplicaciones de
muchas componentes que enriquecen y embellecen dichas interfaces, además de
proporcionarle a los programadores otras componentes que implementan muchas
funcionalidades reusables.
1.2.4 Principales bibliotecas y drivers utilizados
En este epígrafe se abordan brevemente las bibliotecas de java utilizadas en la solución
computacional.
1.2.4.1 Java.sql.*
Implementada por la API (Interfaz de Programación de Aplicaciones) de JDBC. Es una
biblioteca importada por Java para hacer consultas en BD, si se usa únicamente esta
biblioteca, entonces podemos realizar una conexión básica y simple, sirve para acceder a
bases de datos SQL mediante una llamada a un método de la biblioteca Java.sql.*. Esta
biblioteca contiene su propia estructura y hace llamado de sus propias clases.
Breve descripción de algunas de sus clases (Sánchez, 2001):

Driver: Permite conectarse a una Base de Datos, cada gestor de Base de
Datos requiere un Driver distinto.
… 17

DriverManager: Permite gestionar todos los Drivers instalados en el sistema.

DriverPropertyInfo: Proporciona diversa información acerca de un Driver.

Connection: Representa una conexión con una Base de Datos. Una aplicación
puede tener más de una conexión a más de una Base de Datos.

DatabaseMetadata: Proporciona información acerca de una Base de Datos,
como las tablas que contiene, etc.

Statement: Permite ejecutar sentencias SQL sin parámetros.

PreparedStatement: Permite ejecutar sentencias SQL con parámetros de
entrada.

CallableStatement: Permite ejecutar sentencias SQL con parámetros de
entrada y salida.

ResultSet: Contiene las filas o registros obtenidos al ejecutar un SELECT.

ResultSetMetadata: Permite obtener información sobre un ResultSet, como el
número de columnas, sus nombres, etc.
1.2.4.2 javax.swing.*
Swing es un conjunto de clases desarrolladas por primera vez para Java 1.2 (el llamado
Java2), para reemplazar al anterior paquete que implementaba clases para fabricar
interfaces de usuario, el llamado AWT (Abstract Window Tools) que aún se usa bastante.
Tanto Swing como AWT forman parte de una colección de clases llamada JFC (Java
Foundation Classes) que incluyen paquetes dedicados a la programación de interfaces
gráficas. Sin embargo AWT tenía varios problemas y por ello aparece Swing en la
versión 1.2 como parte del JFC que es el kit de clases más importante de Java para las
producciones gráficas.
Según (Sánchez, 2001) los problemas de AWT son:
o AWT tenía problemas de compatibilidad en varios sistemas.
o A AWT le faltaban algunos componentes avanzados (árboles, tablas,…).
o Consumía excesivos recursos del sistema.
Swing aporta muchas más clases, consume menos recursos y construye mejor la
apariencia de los programas.
… 18
Los componentes son los elementos básicos de la programación con Swing. Todo lo que
se ve en un GUI de Java es un componente. Los componentes se colocan en otros
elementos llamados contenedores que sirven para agrupar componentes.
La clase javax.swing.JComponent es la clase padre de todos los componentes. A su
vez,
JComponent
desciende
de
java.awt.container
y
ésta
de
java.awt.component. De esto se deduce que Swing es una extensión de AWT, de
hecho su estructura es análoga.
1.2.4.3 postgresql-8.3-603.jdbc3.jar
Para realizar las conexiones necesitaremos los drivers respectivos, de acuerdo al motor de
base de datos al cual deseemos conectarnos. En nuestro caso estableceremos una
conexión con PostgreSQL 9.0.1, para el cual es necesario contar con la librería:
postgresql-8.3-603.jdbc3.jar.
… 19
Capítulo 2: “Implementación del Sistema de Información de apoyo para
la Autoevaluación de la Carrera Ciencia de la Computación (SAAC)”
En este capítulo se aborda el desarrollo del sistema teniendo en consideración las
características del problema a resolver, se describen detalladamente los componentes y
módulos del mismo, así como las tecnologías computacionales que se usaron para la
implementación. La concepción y elementos integrantes del sistema fueron definidos a
partir de entrevistas y encuentros con varios de los posibles usuarios del sistema, en este
proceso se fueron definiendo los elementos que se describen a continuación en los
epígrafes siguientes.
2.1 Requisitos funcionales y no funcionales del sistema
Según (Conallen, 2003), en general, los requisitos pueden categorizarse como funcionales
o no funcionales. Los requisitos funcionales son acciones que el sistema debe realizar…
Los requisitos funcionales, el tipo de requisitos más común, identifican las cosas que el
sistema puede hacer, generalmente en respuesta a una entrada externa... Los requisitos no
funcionales pueden ser categorizados, para su fácil entendimiento y para seguir su traza.
Las categorías más comunes para estos requerimientos son:
1. Utilidad: Refieren los aspectos generales de la interfaz entre el usuario y el
sistema.
2. Rendimiento: Describen el rendimiento en la ejecución del sistema y
normalmente relacionado con tiempo de ejecución.
3. Robustez/fiabilidad: Expresa el grado de necesidad de disponibilidad de la
aplicación, también se refiere a las necesidades de almacenamiento y copias de
seguridad de la información (backups).
4. Seguridad: Tienden a especificar niveles de acceso al sistema y a menudo a trazar
los roles de los usuarios en el negocio.
5. Hardware. Declaran el hardware mínimo que requerido para implementar el
sistema.
6. Despliegue. Describen cómo la aplicación se entrega a los usuarios finales.
… 20
A continuación se presentan los requisitos funcionales y no funcionales del sistema a
desarrollar.
2.1.1 Requerimientos funcionales.
El sistema deberá ser capaz de:
1. Gestionar resultados científicos y premios estudiantiles: El jefe de carrera o el
vicedecano de investigación son los encargados de insertar, eliminar o modificar
los datos de los resultados científicos y premios estudiantiles.
2. Gestionar resultados científicos y premios de los profesores: El jefe de carrera o el
director del CEI son los encargados de insertar, eliminar o modificar los datos de
los resultados científicos y premios de los profesores.
3. Gestionar proyectos de investigación: El jefe de carrera o el director del CEI son
los encargados de insertar, eliminar o modificar los datos de los proyectos de
investigación.
4. Gestionar publicaciones: El jefe de carrera o el director del CEI son los
encargados de insertar, eliminar o modificar los datos de las publicaciones.
5. Gestionar eventos: El jefe de carrera o el director del CEI son los encargados de
insertar, eliminar o modificar los datos de los eventos.
6. Listar los estudiantes que pertenecen a grupos científicos: El jefe de carrera o el
director del CEI podrán obtener el listado de los estudiantes que pertenecen a los
grupos científicos.
7. Gestionar tareas de impacto: El jefe de carrera o el vicedecano docente son los
encargados de insertar, eliminar o modificar los datos de las tareas de impacto.
8. Gestionar proyectos comunitarios: El jefe de carrera o el vicedecano docente son
los encargados de insertar, eliminar o modificar los datos de los proyectos
comunitarios.
9. Gestionar resultados de las encuestas: El jefe de carrera o el vicedecano docente
son los encargados de insertar, eliminar o modificar los datos de los resultados de
las encuestas.
10. Gestionar eficiencias verticales y horizontales: El jefe de carrera o el vicedecano
docente son los encargados de insertar, eliminar o modificar los datos de las
eficiencias verticales y horizontales.
… 21
11. Gestionar controles a clases: El jefe de carrera o el jefe de departamento son los
encargados de insertar, eliminar o modificar los datos de los controles a clases.
12. Gestionar alumnos ayudantes: El jefe de carrera o el jefe de departamento son los
encargados de insertar, eliminar o modificar los datos de los alumnos ayudantes.
13. Gestionar la evaluación de la práctica de producción: El jefe de carrera o el jefe
de la disciplina práctica profesional son los encargados de insertar, eliminar o
modificar los datos de las prácticas de producción.
14. Gestionar los centros de trabajo asociados a las prácticas: El jefe de carrera o el
jefe de la disciplina práctica profesional son los encargados de insertar, eliminar o
modificar los datos de los centros de trabajo asociados a las prácticas.
15. Consultar reportes: Cualquier usuario del sistema podrá acceder a los reportes que
el sistema es capaz de generar.
2.1.2 Requerimientos no funcionales.
1. El sistema debe ser fácil de usar y debe tener una interfaz agradable a la vista del
usuario.
2. El sistema debe presentar un mecanismo de respuesta rápida ante fallos,
propiciando que se minimicen la ocurrencia de pérdidas de la información.
3. El sistema debe estar diseñado sobre la arquitectura cliente-servidor.
4. El sistema debe tener una apariencia profesional, sin gran cantidad de
imágenes, ágil, muy legible y simple de usar.
5. La aplicación debe ser lo más interactiva posible.
6. Las estaciones de trabajo clientes utilizarán como sistema operativo
GNU/Linux en sus diversas distribuciones o la familia de Windows superiora
Windows 98.
2.2 Actores y Casos de Uso del sistema
Actor
Descripción
Usuario
Este actor tiene la posibilidad de realizar la acción de
autentificarse en el Sistema y una vez hecho esto puede acceder a
consultar los reportes.
… 22
Vicedecano
Investigación
de Este actor hereda de usuario y además tiene la posibilidad de
realizar la acción de gestionar resultados científicos y premios
estudiantiles.
Director del CEI
Este actor hereda de usuario y además tiene la posibilidad de
realizar las acciones de gestionar resultados científicos y premios
de los profesores, los proyectos de investigación, los eventos y de
listar los estudiantes que pertenecen a grupos científicos.
Vicedecano
Este actor hereda de usuario y además tiene la posibilidad de
Docente
realizar las acciones de gestionar tareas de impacto, los proyectos
comunitarios, los resultados de las encuestas y las eficiencias
verticales y horizontales.
Jefe
de Este actor hereda de usuario y además tiene la posibilidad de
Departamento
realizar las acciones de gestionar los controles a clase, los
alumnos ayudantes y obtener claustro por curso académico.
Jefe
de
la Este actor hereda de usuario y además tiene la posibilidad de
Disciplina Práctica realizar las acciones de gestionar la evaluación de la práctica de
Profesional
producción, la evaluación de los trabajos de diploma y los centros
de trabajo.
Jefe de Carrera
Este actor hereda de todos los demás actores, por lo que tiene la
posibilidad de realizar todas las acciones del sistema.
A continuación se muestran los diagramas de actores y casos de uso para cada uno de los
actores propuestos para el sistema en las figuras de la 2.1a a la 2.1g y en la figura 2.1 se
muestra las relaciones entre todos los actores definidos.
… 23
Fig.2.1a.Diagrama del actor Usuario y sus Casos de Uso.
Fig.2.1b.Diagrama del actor VD_Investigación y sus Casos de Uso.
… 24
Fig.2.1c.Diagrama del actor Dir_CEI y sus Casos de Uso.
Fig.2.1d.Diagrama del actor VD_Docente y sus Casos de Uso.
… 25
Fig.2.1e.Diagrama del actor Jefe_Departamento y sus Casos de Uso.
Fig.2.1f. Diagrama del actor Jefe_Disciplina_Práctica_Profesional y sus Casos de Uso.
… 26
Fig.2.1g. Diagrama del actor Jefe_Carrera y sus Casos de Uso.
Fig.2.1. Diagrama de Actores del Sistema.
… 27
2.2.1 Descripción de los casos de usos del sistema.
En este epígrafe se realizará una breve descripción de algunos de los casos de uso más
significativos del sistema. A continuación se indican los casos de uso seleccionados y los
aspectos que justifican su selección:
a) Caso de uso “Gestionar controles a clase” presente en los actores Jede de
Departamento y jefe de Carrera: por ser un caso de uso típico en el sistema, y
conociendo cómo se realiza su flujo de información podemos tener una ida
bastante precisa del resto de los casos de uso de gestión de información del
sistema, pues son similares.
b) Caso de uso “Consultar reportes” presente en todos los actores: por representar
una operación común para todos los usuarios del sistema.
2.2.1.1 Gestionar controles a clases.
Caso de Uso:
Actor:
Propósito:
Resumen:
Acción del Actor
1. El usuario selecciona la
opción Gestionar controles
a clases del menú Jefe de
Departamento.
El usuario elige el escenario
a)
Gestionar controles a clases
Jefe de Departamento o Jefe de Carrera
Gestionar la información de los controles a clases en la
Base de Datos.
El usuario selecciona la opción Gestionar controles a
clases, escoge el escenario que desea, introduce los
datos y la BD se modifica.
Flujo Normal de Eventos
Respuesta del Sistema
2. Muestra el contenido de la tabla correspondiente en
la BD y una serie de escenarios:
a) Insertar.
b) Eliminar.
c) Modificar.
Escenario 2a
3. Muestra la ventana Insertar Datos de controles a
clases que tiene una serie de campos:
1. Profesor
5.Calificación
2. Asignatura
6.Descripción
3. Curso
7. Fecha
4. Semestre
4. Llena los campos 5. Comprueba que no existan campos sin datos.
correspondientes
y 6. Comprueba que en la Base de Datos no exista ya
selecciona el botón Aceptar. una fila con el mismo profesor, asignatura, curso,
… 28
semestre y fecha.
7. Almacena los datos introducidos en la BD.
Escenario 2b
El usuario selecciona una 3. Notifica al usuario que la fila que seleccionó será
fila de la tabla y elige el eliminada de forma permanente.
escenario b)
4. Selecciona el botón Sí.
5. Elimina de la BD la fila correspondiente.
Escenario 2c
El usuario selecciona una 3. Muestra la ventana Modificar Datos de controles a
fila de la tabla y elige el clases que tiene una serie de atributos:
escenario c)
1. Profesor
5. Calificación
2. Asignatura
6. Descripción
3. Curso
7. Fecha
4. Semestre
4. Llena los campos 5. Comprueba que no existan campos sin datos.
correspondientes
y 6. Almacena los datos introducidos en la BD,
selecciona el botón Aceptar. modificando así la fila seleccionada.
2.2.1.2 Consultar reportes.
Caso de Uso:
Actor:
Consultar reportes
Invitado, Vicedecano de Investigación, Director del CEI,
Vicedecano Docente, Jefe de Departamento, Jefe de la
Disciplina Práctica de Profesional y Jefe de carrera.
Propósito:
Obtener resúmenes de toda la información que conforma el
informe de autoevaluación de la Carrera Ciencia de la
Computación.
Resumen:
El usuario selecciona la opción Informes, luego elige un
curso o el curso y el semestre y una vez hecho esto
selecciona el resumen que desee.
Flujo Normal de Eventos
Acción del Actor
Respuesta del Sistema
1. Selecciona el menú Informes.
2. Muestra la ventana Informe de autoevaluación
de la Carrera Ciencia de la Computación que tiene
una serie de campos. Entre ellos dos ComboBox
de Curso y Semestre.
3. Elige solo un curso (Semestre 4. Habilita los resúmenes que pertenecen al curso
vacío) o elige y un Curso y un o los que pertenecen al curso y al semestre.
Semestre
5. Selecciona un radio buttom con 6. Muestra una
el reporte que desea y presiona el seleccionado.
botón Aceptar.
7. Observa el reporte. Selecciona
una de las opciones siguientes:
a) Regresar a seleccionar
otro reporte.
ventana
con
el
reporte
… 29
b) Guardar en un archivo el
reporte.
c) Cerrar el trabajo con los
Reportes.
Escenario 7a
El usuario elige el escenario a)
8. Muestra nuevamente la ventana Informe de
autoevaluación de la Carrera Ciencia de la
Computación donde aparecen todos los reportes a
seleccionar.
Escenario 7b
El usuario elige el escenario b)
8. Muestra a través de un JFileChooser el árbol de
direcciones donde el usuario puede guardar el
reporte seleccionado.
9. Le da un nombre al fichero y 10. Guarda el archivo en la dirección escogida por
pulsa el botón guardar.
el usuario.
Escenario 7c
El usuario elige el escenario c)
8. Cierra la ventana donde se encuentra
actualmente y vuelve a la ventana principal.
2.3 Modelación de la información manejada por el sistema
Como herramienta fundamental para el modelado de los datos de nuestro sistema
utilizamos el diagrama o modelo entidad-relación, ya que estos modelos expresan
entidades relevantes para un sistema de información así como sus interrelaciones y
propiedades.
Como se explica en el capítulo anterior, para la modelación e implementación del
sistema se necesita realizar el manejo de un gran volumen de información que es de vital
importancia para la confección de los diferentes reportes que satisfacen la problemática
en cuestión, algunos de los datos a tener en cuenta son: toda la información relacionada
con profesor, los estudiantes, las asignaturas, los programas de postgrado, el claustro de
la carrera y la carga docente, entre otros.
Como se están realizando, además de este, otros dos trabajos de diploma llamados:
“Sistema para el control de la carga de trabajo en el departamento de Ciencia de la
Computación” y “Sistema de seguimiento y control de texto” que requieren gran parte de
la información antes mencionada, se decidió confeccionar una base de datos con un
núcleo común (ver Anexo 3), a la cual se puede acceder desde cualquiera de estas tres
aplicaciones.
… 30
Este núcleo común se centra en la tabla Curso_Semestre que es la encargada de
establecer el momento (tiempo) en que se realizan la mayoría de las operaciones de los
tres sistemas.
A continuación se muestra el diagrama de entidad-relación que hace referencia a la
información propia de SAAC, donde se pueden apreciar las entidades de SAAC y su
relación con las entidades pertenecientes al núcleo.
SAAC requiere de otros datos en particular como son: todo lo referente a proyectos
comunitarios, proyectos de investigación, tareas de impacto, premios, eventos,
publicaciones, resultados de las encuestas aplicadas a estudiantes, la práctica de
producción y los centros de trabajos asociados a las mismas, los alumnos ayudantes, los
controles a clase y las eficiencias verticales y horizontales. Se definieron por lo tanto
entidades para cada una de las informaciones anteriores y se relacionaron con las
entidades del núcleo necesarias. Por ejemplo, la entidad “proyecto comunitario” se
relaciona con “profesor” (entidad del núcleo) a través de la relación “jefe de”, a su vez se
relaciona con la entidad “curso semestre” (entidad del núcleo) a través de la relación “se
realiza”, esta relación nos per mite ubicar la ejecución del proyecto comunitario en un
curso particular.
… 31
Fig. 2.2. Diagrama Entidad Relación de SAAC
… 32
Modelo físico
El modelo físico es el resultado del análisis de requisitos. Este puede ser usado en la fase
de diseño para la definición de los componentes de la aplicación, además, constituye una
de las técnicas más utilizadas en el desarrollo orientado a objetos y describe de forma
formal la estructura de los elementos del sistema. Este diagrama describe para cada
objeto su identidad y sus relaciones con otros objetos, o sea, describe un modelo general
de información del sistema.
Uno de los detalles más interesantes a señalar en cuanto a la transformación del modelo
lógico al modelo físico lo constituye, por ejemplo, que en el modelo lógico se hace
referencia a la entidad publicaciones, indicando una especie de jerarquía entre
publicaciones y las entidades publicaciones periódicas, libros y monografías y registros;
las cuales no aparecen en el modelo físico que veremos a continuación; esto se produce
precisamente porque existen varias formas de realizar esta transformación:
1. Utilizando una sola relación que tenga los atributos del supertipo y los específicos
de cada uno de los subtipos y la llave primaria sería la del supertipo.
2. Utilizando una relación para el supertipo y una para cada subtipo y las llaves de
esos subtipos constituirían la llave primaria del supertipo que a su vez serian llave
foránea. (Esta transformación se recomienda para los casos en los que la jerarquía
es de tipo parcial y solapada).
3. Utilizando una relación para cada subtipo. (Esta transformación se recomienda
para los casos en los que la jerarquía es de tipo total y excluyente).
En nuestro caso la transformación realizada coincide con la última descrita ya que con la
unión de las publicaciones periódicas, los libros y monografías y los registros
informáticos y no informáticos se obtiene la totalidad de las publicaciones y además no
hay intersección entre ellas, o sea, un registro no puede ser ni una publicación periódica
ni un libro o monografía; un libro o monografía no pude ser ni una publicación periódica
ni un registro y una publicación periódica no pude ser ni un libro o monografía ni un
registro.
… 33
Fig. 2.3. Modelo Físico de la BD de SAAC
… 34
2.4 Elementos de la implementación del sistema
En este epígrafe se presentan algunos elementos tenido en consideración en la
implementación del sistema.
2.4.1 Aspectos de la arquitectura MVC utilizada
Como se muestra en (Zukowski, 2005), en particular en el capítulo 3,
Swing está
diseñado sobre la base de la arquitectura Modelo-Vista-Controlador (MVC). Esto hace
que todas las componentes visuales establezcan esa filosofía entre la vista (la forma
visual de la componente), el modelo (los datos o información que maneja la vista) y su
controlador (un objeto delegado asociado a cada componente visual).
Al desarrollar una aplicación desktop en Java utilizando NetBeans como IDE de
desarrollo puede implementarse la arquitectura MVC de la manera siguiente:
-
Capa de las Vistas: integrada por el conjunto de clases que representan ventanas
de captación de datos u otras de entrada/salida necesarias en la aplicación.
-
Capa Controladora: puede asociarse, en primera instancia, con la clase donde se
encuentra la ventana principal de la aplicación y donde se manipulan todos los
eventos del sistema, incluyendo los generados por el menú principal y otros
controles visuales utilizados en la interfaz de usuario. Pueden definirse e
implementarse otras clases controladoras en la solución computacional.
-
Capa de Datos: integrada por el conjunto de clases que se utilizan para almacenar
la información manejada por el sistema.
La comunicación entre las tres capas se establece a través de la clase controladora, quien
maneja todo el flujo de información entre las clases visuales y las de datos.
El sistema fue implementado siguiendo la concepción anterior, así se definieron varios
paquetes para la implementación del sistema:
-
Paquete visual: contiene las ventanas de captación de datos, de reportes y
otros elementos visuales.
-
Paquete Principal: contiene a la clase controladora, incluye la ventana y el
menú principal de la aplicación y el tratamiento de todos los eventos del
sistema.
… 35
-
Paquete objetos: contiene unas 17 clases que representan las entidades
asociadas a las tablas de la BD que serán manipuladas por el sistema durante
el procesamiento de la información.
-
Paquete útiles
y paquete excepciones: contienen otras clases
complementarias en la implementación del sistema.
2.4.2 Paquetes utilizados
Según (Martin, 2003) existen dos tipos diferentes de paquetes que son importantes para
los programadores de Java. El primer tipo son los paquetes en código fuente creados por
los programadores bajo la palabra reservada package y el segundo tipo son los
componentes binarios representados por los archivos .jar, generalmente clases de Java
compiladas.
En nuestra aplicación se desarrollaron paquetes en función de la modelación del
problema y de la arquitectura del sistema descritos anteriormente y se reutilizaron varios
paquetes binarios como son:
a) Jcalendar.jar
El Jcalendar es un selector para elegir fechas gráficamente. Como se describe
en (Eubanks, 2005) este se compone de otros beans como lo son el JDayChooser,
JMonthChooser y el JYearChooser, permitiéndole al usuario ingresar los campos
de tipo fecha de una forma muy amigable y sencilla a través de un ComboBox
mostrándoles un calendario con la opción de seleccionar el mes, el año y el día.
Además JCalendar es libre y puede ser redistribuido y/o modificado bajo los
términos de GNU.
b) Jxl.jar
Según (LIU and YANG, 2007) Jxl es la biblioteca de JExcelApi, que es un
código abierto de Java API para leer, escribir y modificar hojas de cálculo Excel
de forma dinámica, además contiene todos los archivos compilados *. Clase, los
metadatos asociados y los recursos que utiliza la API de Java Excel internamente.
c) postgresql-9.2-1002.jdbc3.jar
Ofrece un driver JDBC para la versión 9.2 de PostgreSQL, el cual permite
establecer comunicación con bases de datos de PostgreSQL y acceder a las
mismas a través de sentencias SQL.
… 36
d) nimrodlf-1.2.jar
Nimrodlf-1.2 es un "look and feel". Este término se utiliza como una metáfora
para indicar cualquier modificación que se realiza en el aspecto y comportamiento
de una GUI con el objetivo de darle una identidad visual única a la interfaz visual.
En la figura 2.4 se muestra las dependencias entre los paquetes implementados y los
reusados en el desarrollo de SAAC.
Fig. 2.4. Diagrama de Componentes
2.4.3 Algoritmos y funciones utilizadas en la implementación del sistema
Como habíamos mencionado en epígrafes anteriores, entre las acciones que el sistema
tiene que ser capaz de realizar se encuentra la de gestionar controles a clases; para esto el
sistema tiene que hacer llamadas a un conjunto de funciones SQL desarrolladas en
PostgreSQL como las que se muestran a continuación:
INSERT INTO "controles_a_clases"
(profesor, asignatura, curso, semestre, nota, descripción, fecha)
VALUES($1, $2, $3, $4, $5, $6, $7);
La cual quiere decir que se va a insertar en la tabla "controles_a_clases" los valores $1,
$2, $3, $4, $5, $6, $7 que se pasan como parámetros durante la propia creación de la
función en los campos profesor, asignatura, curso, semestre, nota, descripción, fecha.
… 37
UPDATE "controles_a_clases" SET nota=$5, descripción=$6
WHERE profesor=$1 and asignatura=$2 and curso=$3 and semestre=$4;
La cual quiere decir que se van a actualizar en la tabla "controles_a_clases" los campos
nota y descripción con los valores, $5 y $6 respectivamente en la fila donde coincidan los
campos profesor, asignatura, curso, semestre, nota, descripción y fecha con los valores
$1, $2, $3 y $4 que se pasaron como parámetros previamente.
DELETE FROM "controles_a_clases"
WHERE (profesor=$1 and asignatura=$2 and curso=$3 and
semestre=$4 and fecha=$5);
La cual quiere decir que se va a eliminar de la tabla "controles_a_clases" la fila donde
coincidan los campos profesor, asignatura, curso, semestre y fecha con los valores $1,
$2, $3, $4 y $5 que se pasan como parámetros durante la propia creación de la función.
Otro detalle a destacar son las formas de tratar los cálculos de las eficiencias, por
ejemplo: el cálculo de la eficiencia vertical no se realiza durante la gestión de los datos de
la misma, sino que, una vez que se selecciona el reporte “eficiencia vertical” se hace un
llamado a la función “zzz_eficiencia_vert”:
select distinct curso, anno, mi, aprobados, porciento_vertical
from curso_semestre, curso_tiene_anno,
anno_tiene_carrera, carrera
where carrera=id_carrera and nomb_curso=curso and
semestre=semestre_c_a and anno='1' and
anno_de_inicio_de_curso=$1-4
union
select distinct curso, anno, mi, aprobados, porciento_vertical
from curso_semestre, curso_tiene_anno,
anno_tiene_carrera, carrera
where carrera=id_carrera and nomb_curso=curso and
semestre=semestre_c_a and anno='2' and
anno_de_inicio_de_curso=$1-3
union
select distinct curso, anno, mi, aprobados, porciento_vertical
from curso_semestre, curso_tiene_anno,
anno_tiene_carrera, carrera
where carrera=id_carrera and nomb_curso=curso and
… 38
semestre=semestre_c_a and anno='3' and
anno_de_inicio_de_curso=$1-2
union
select distinct curso, anno, mi, aprobados, porciento_vertical
from curso_semestre, curso_tiene_anno,
anno_tiene_carrera, carrera
where carrera=id_carrera and nomb_curso=curso and
semestre=semestre_c_a and anno='4' and
anno_de_inicio_de_curso=$1-1
union
select distinct curso, anno, mi, aprobados, porciento_vertical
from curso_semestre, curso_tiene_anno,
anno_tiene_carrera, carrera
where carrera=id_carrera and nomb_curso=curso and
semestre=semestre_c_a and anno='5' and
anno_de_inicio_de_curso=$1
Esta función recibe como parámetro el año de inicio del curso que seleccionó a la hora de
escoger el reporte, y que a su vez devuelve una tabla con el curso, el año, la matricula
inicial, los aprobados y el porciento vertical del año que se le paso como parámetro a la
función y los cuartos años anteriores; luego con esa información se realiza el cálculo de
la eficiencia como se muestra en la figura 2.5.
Figura 2.5. Segmento de código para el cálculo de la eficiencia vertical
… 39
2.5 Diagrama de Despliegue
El diagrama de despliegue muestra la disposición física de los distintos nodos que entran
en la composición de un sistema y el reparto de los programas ejecutables sobre estos
nodos. En nuestro caso se usa una arquitectura cliente-servidor. En el servidor debe estar
instalado un gestor de Base de Datos PostgreSQL versión 9.0.1y en los clientes el
JavaRuntimeEnvironment o JRE 7, lo cual va a permitir la ejecución de programas Java y
el sistema SAAC.jar.
Figura 2.1.7: Diagrama de Despliegue.
2.6 Herramientas para el desarrollo del Sistema
SAAC es un sistema implementado en Java y se conecta a un servidor de Base de Datos
PostgreSQL versión 9.0.1. El entorno de desarrollo utilizado es la versión 7.1.2 del IDE
Netbeans (NetBeans-IDE, 2008).
Para poder continuar extendiendo el sistema se debe agregar al proyecto un conjunto de
bibliotecas que fueron utilizadas en este desarrollo:
Bibliotecas
Jcalendar.jar
Uso de la Biblioteca
Trabajo con los campos de tipo fecha
Jxl.jar
nimrodlf-1.2.jar
Trabajo con las tablas Excel a la hora de
guardar los reportes
Modifica la parte visual del proyecto
postgresql-9.2-1002.jdbc3.jar
Conexión con el gestor de Base de Datos
… 40
El sistema SAAC consta de una ayuda accesible desde el propio sistema que fue
desarrollada en Help& Manual Professional Edition versión 5.2.0 y que debe ser
actualizada en la misma medida que el sistema sea modificado. Para hacer
modificaciones en la ayuda es necesario con la herramienta de ayuda antes mencionada
utilizar “NewProject.hmxz” que es el proyecto de la ayuda de SAAC donde se realizarán
las modificaciones a la ayuda.
2.6.1 Conexión de “SAAC.jar” con la base de datos
Para realizar la conexión de “SAAC.jar” con la base de datos es necesario seguir una
serie de pasos:
I.
Una vez instalado el gestor de BD PostgreSQL:

Ir a la carpeta de instalación del PostgreSQL y en la carpeta "data" modificar el
archivo pg_hba.conf, como se muestra en la figura 2.6.
II. Crear
una nueva Base de Datos con nombre: "tesis".
III.Crear
un nuevo rol de login con nombre: "admin" y contraseña: "admin".
IV.
Hacer clic derecho sobre la BD creada y seleccionar la opción restaurar, dándole
la dirección del reguardo "tesis.backup".
… 41
Fig. 2.6. Modificación del archivo pg_hba.conf (línea marcada)
Si el administrador del gestor de BD decide modificar el nombre de la base de datos o el
usuario o la contraseña, debe poner el o los campos que modificó en el archivo de
configuración config.ini que aparece en la carpeta de instalación del software, como
se muestra en la figura 2.7:
… 42
Fig. 2.7. Ubicación del archivo config.ini
EL archivo config.ini tiene que tener un formato específico como se muestra en la
figura 2.8, el nombre de las variables y sus valores tienen que estar separados por “:” y la
variables tienen que llamarse específicamente “user”, “passwd” y “bd”.
Fig. 2.8. Ejemplo del contenido del archivo config.ini
… 43
Capítulo 3: “Manual de Usuario”
En este capítulo se explican los requerimientos de hardware, instalación, y uso de los
componentes del sistema: la Base de Datos y la aplicación SAAC.jar.
3.1 Requerimientos e Instalación de los Componentes del Sistema.
Para instalar cada uno de los componentes del sistema se tienen que tener en cuenta los
requisitos específicos de cada uno de ellos por separado, ya que los mismos no
necesariamente tienen que estar instalados en la misma computadora.
3.1.1 Instalación de la Base de Datos en el servidor.
Para instalar la Base de Datos y lograr un correcto funcionamiento de la misma se deben
seguir los pasos siguientes:
a) Tener un servidor de Base de Datos PostgreSQL versión 9.0.1.
b) Crear una nueva Base de Datos en el Servidor con nombre tesis.
c) Restaurar la Base de Datos creada en el paso anterior usando el archivo
tesis.backup que se encuentra en la carpeta “SAAC” de la instalación.
3.1.2 Requerimientos e Instalación del “SAAC.jar”
Antes de pasar a la instalación de SAAC, se deben revisar los siguientes requisitos.

Procesador Pentium o superior.

Al menos 256 Megabytes de memoria.

Versión Windows XP o superior.

Máquina Virtual de Java (jre versión 7 o superior).
Si ya se han verificado los requerimientos anteriores, se debe crear la conexión necesaria
con el componente externo del sistema, o sea, con la base de datos, para esto se debe
seguir las indicaciones del epígrafe 2.6.1. Después de hecho esto entonces se puede pasar
al trabajo con la herramienta SAAC.jar.
3.2 Utilización de “SAAC”.
Al ejecutar el software, rápidamente se está en presencia de su portada inicial, esta es
mostrada en la figura 3.1:
… 44
Figura 3.1: Portada del SAAC.jar
A continuación se describen por separado cada una de las interfaces sobre las cuales se
realizan las operaciones con el software.
3.2.1 Autentificación.
Inicialmente en el sistema solo aparece habilitado el menú Autentificación y la Ayuda,
porque en dependencia del usuario que acceda al sistema, serán las opciones que se
habilitarán en el mismo. Presionado la opción Autenticación se despliega un submenú
como se muestra en la figura 3.2.
Una vez seleccionada la opción conectar aparece una ventana donde se inserta la
dirección IP del servidor donde se encuentra la BD, el usuario del sistema y su
contraseña. Ver figura 3.3.
… 45
Fig. 3.2 Menú de conexión
Si quiere cambiar su contraseña selecciona la opción Cambiar Contraseña y pulsa el
botón aceptar, si no, una vez llenados los campos pulsa el botón aceptar y son correctos
sus datos se inicia su sesión.
Fig. 3.3 Datos para el acceso al sistema
Si presionó el botón aceptar con la casilla cambiar contraseña seleccionada aparece otra
ventana donde es necesario que el usuario inserte su contraseña antigua y la nueva y el
sistema internamente verifica que su contraseña vieja sea correcta, de serlo, se muestra un
mensaje de confirmación informándole que su cuenta ha sido cambiada exitosamente y se
… 46
inicia su sesión, si no, se muestra otro mensaje informándole que su cuenta es incorrecta
y tiene que repetir nuevamente todo el procedimiento.
Fig. 3.4 Datos para cambiar contraseña
3.2.2Consultar reportes.
Todos los usuarios del sistema tienen la posibilidad de acceder al menú Informes.
Normalmente el colectivo de carrera, realiza dos análisis semestrales y una
autoevaluación de la carrera cada curso académico, por lo que primeramente el usuario
debe seleccionar un curso o el curso y el semestre en dependencia del análisis que se vaya
a realizar.
En caso de seleccionar solamente el curso se habilitan los reportes pertenecientes al
informe anual. Y en caso de seleccionar el curso y el semestre se habilitan los reportes
pertenecientes al informe semestral. Ver las figuras 3.5 y 3.6.
… 47
Fig. 3.5 Reportes de un curso académico
Fig. 3.6 Reportes de un semestre dado un curso académico
… 48
Una vez seleccionado el reporte que desee como se muestra en la figura 3.7, se debe
pulsar el botón visualizar y entonces aparece en otra ventana el contenido del reporte
solicitado; luego si desea guardar dicho informe pulse el botón guardar y se guarda el
Fig. 3.7 Selección de un reporte
reporte en formato Excel en la dirección escogida por el usuario.
Fig. 3.8 Ventana donde se muestra el contenido de los reportes
… 49
3.2.3 Gestionar controles a clases.
Este menú solo pude ser accedido por el jefe de carrera y el jefe de departamento:
Pasos:
Seleccione el menú Jefe_Departamento
Seleccione el submenú Gestionar controles a clases
Fig. 3.9 Menú gestionar controles a clases
Luego se muestra el contenido de la tabla controles a clases y las operaciones que se
pueden realizar con ella:
… 50
Fig. 3.10 Ventana donde se muestra el contenido de la tabla correspondiente al menú
seleccionado
Si selecciona la opción insertar, se muestra la ventana insertar datos de los controles a
clases, luego el usuario tiene que llenar todos los campos y presionar el botón aceptar
Fig. 3.11 Ventana para insertar datos de controles a clases
… 51
Para eliminar tiene que seleccionar primero la fila de la tabla que desea eliminar y pulsar
el botón Eliminar
Fig. 3.12 Ventana donde se muestra el procedimiento para eliminar un control a clase
Luego el sistema muestra un mensaje donde le pregunta al usuario si en realidad desea
eliminar la fila seleccionada, y si escoge la opción "si" la fila es eliminada de forma
permanente de la BD.
Para modificar tiene que seleccionar primero la fila de la tabla que desea modificar y
pulsar el botón Modificar, luego aparece una ventana donde solo se habilitan aquellos
campos que no sean llaves primarias de la tabla sobre la que se está trabajando en la BD.
Una vez llenos todos los campos se oprime el botón aceptar y se modifica la fila
seleccionada en la BD.
Si se cometió algún error en alguno de los datos que son llave primaria, se sugiere
eliminar la entrada de la BD e insertarla nuevamente de manera correcta.
… 52
Fig. 3.13 Ventana para modificar datos de controles a clases
3.3 Ayuda de “SAAC”.
El sistema cuenta con una ayuda en línea que explica de forma detallada en que consiste
el software, así como cada una de las acciones que el usuario es capaz de realizar con el
mismo. A esta ayuda se puede acceder desde dentro del propio programa o de forma
independiente, o sea, que no es necesario autentificarse para poder interactuar con ella, ya
que existe un ejecutable en la carpeta de instalación de SAAC. A continuación se muestra
una imagen de la forma de acceso a la ayuda, así como su estructura.
Fig. 3.14 Ayuda del sistema
… 53
Conclusiones
1. Se determinaron las necesidades de información cuantitativa para el proceso de
autoevaluación a partir del análisis de la Guía de Autoevaluación propuesta por la
JAN.
2. Se diseñó e implementó una base de datos que satisface las necesidades de
información detectadas en el proceso de autoevaluación y se integra al núcleo
utilizado en otros sistemas desarrollados en función de la automatización del
trabajo del departamento de Computación.
3. Se diseñó e implementó el sistema de información SAAC versión 1.0 para apoyo
al proceso de autoevaluación de la carrera Ciencia de la Computación.
… 54
Recomendaciones
1. Incluir capacidad al sistema de conectarse a otros que manejan parte de la
información necesaria para el proceso de autoevaluación, por ejemplo al SIGENU
y al DSPACE del CEI.
2. Ampliar la información del núcleo de la BD para garantizar obtener información
sobre la experiencia profesional y estabilidad del claustro.
3. Diseñar una Arquitectura Orientada a Servicio para la aplicación de manera que a
través de estos se pueda reutilizar los componentes principales desarrollados.
4. Analizar la posibilidad de generalizar el sistema a otras carreras que lo necesiten.
… 55
Bibliografía
CONALLEN, J. 2003. Building Web applications with UML, Addison-Wesley
Professional.
EUBANKS, B. D. 2005. Wicked Cool Java: Code Bits, Open-Source Libraries,
and Project Ideas, No Starch Press.
GARCÍA, J., RODRIGUEZ, J., MINGO, I., IMAZ, A., BRAZALEZ, A., LARZABAL,
A., CALLEJA, J. & GARCÍA, J. 1999. Aprenda Java como si estuviera en
primero. Universidad de Navarra, San Sebastián-España.
JAN 2009. SISTEMA DE EVALUACIÓN Y ACREDITACIÓN DE CARRERAS
UNIVERSITARIAS (SEA-CU). MES.
LIU, J. & YANG, L.-J. 2007. Excel File Operation Based on Java. Computer
Knowledge and Technology (Academic Exchange), 12, 134.
MARTIN, R. C. 2003. UML for Java programmers, Prentice Hall.
NETBEANS-IDE. 2008. disponible en <http://www.netbeans.org> [Online].
[Accessed octubre 2012].
SÁNCHEZ, J. 2001. Java 2, McGraw Hill.
THE-POSTGRESQL-GLOBAL-DEVELOPMENT-GROUP. 1996. Sitio Oficial de
PostgreSQL [Online]. [Accessed 2013].
ZUKOWSKI, J. 2005. The Definitive Guide to Java Swing, Apress.
… 56
Anexos
Anexo 1
GUÍA DE EVALUACIÓN DE CARRERAS UNIVERSITARIAS (SEA-CU 02)
VARIABLE No.1: PERTINENCIA E IMPACTO SOCIAL
No.
1.1
1.2
INDICADOR
Proyección
de
la
profesión
hacia
el
territorio y/o el país.
Grado de satisfacción de
profesores, estudiantes,
egresados y empleadores
con la calidad del proceso
de formación.
CRITERIOS DE EVALUACIÓN
• Reconocimiento del vínculo de los profesores y
estudiantes a la solución de los problemas del territorio y/o
del país.
• Resultados alcanzados en la valoración del grado de
satisfacción a los profesores, estudiantes, empleadores y
los egresados.
VARIABLE No. 2: PROFESORES Y PERSONAL AUXILIAR
No.
2.1
INDICADOR
Cualidades de educador
2.2
% de Doctores (o
equivalente,
según
reglamento), Master y
Especialistas con que
cuenta la carrera
2.3
Categorización de los
profesores
Calidad
de
las
investigaciones
y
el
postgrado en la carrera.
2.4
2.5
2.6
CRITERIOS DE EVALUACIÓN
• Se comprueba por diferentes vías que los profesores se
destacan por sus cualidades de educador.
A. Sede Central:
• % de Doctores del claustro
• % de Master en el resto del claustro
B. Otras modalidades:
• % de doctores, especialistas y master del claustro
• % de Doctores del claustro
• % de profesores con categoría de PA y PT o
equivalentes
• Se reconoce el impacto económico y social de las
investigaciones realizadas en los últimos 5 años y la
integración de la gestión de la ciencia y la innovación
entre la Sede Central y la otra modalidad de enseñanza en
su influencia en el proceso de formación de los
estudiantes.
• Se reconoce el prestigio de los programas de postgrado
desarrollados en los últimos 5 años en su influencia en el
proceso de formación.
• Tres o más publicaciones promedio por profesor en los
últimos cinco años.
• Tres o más ponencias promedio en eventos nacionales e
internacionales por profesor en los últimos cinco años.
Publicaciones de textos
y/o artículos científicos en
revistas referenciadas y
participación en eventos
nacionales
e
internacionales
Experiencia profesional • La experiencia profesional y estabilidad del claustro
en
el
área
de satisface las exigencias del proceso de formación en las
conocimientos
de
la disciplinas del ejercicio de la profesión.
… 57
• Se cuenta con un cuerpo de profesores a tiempo parcial,
seleccionados entre los profesionales más calificados en su
profesión.
Personal no docente y • La preparación, experiencia y dedicación del personal no
administrativo
docente y administrativo representa un apoyo efectivo a la
labor docente.
carrera.
2.7
VARIABLE No.3: ESTUDIANTES
No.
3.1
3.2
3.3
3.4
INDICADOR
Participación
de
los
estudiantes
como
protagonistas
de
su
proceso de formación.
Dominio de los modos de
actuación de la profesión
CRITERIOS DE EVALUACIÓN
• Los estudiantes tienen una efectiva participación en las
tareas previstas en la estrategia educativa de la carrera
• Resultados alcanzados en los exámenes integradores
aplicados a una muestra de estudiantes que garantice
evaluar los modos de actuación de la profesión
• %de estudiantes con calificaciones de 4 ó 5
• Calidad de los Trabajos de Curso , de Diploma u otras
formas de culminación de estudio realizados en los
últimos 3 cursos
Tendencia
que
se • La eficiencia muestra una efectiva estabilidad o
manifiesta en la eficiencia tendencia al incremento de la permanencia, del
en los últimos cinco rendimiento y del egresado en los últimos 5 cursos
cursos
Organización
docente • La organización docente permite una efectiva atención
para el aprendizaje
diferenciada por parte de los profesores
VARIABLE No.4: INFRAESTRUCTURA
No.
4.1
4.2
INDICADOR
Aseguramiento de un
sistema
integrado
y
progresivo de medios de
enseñanza que garantice
el acceso al aprendizaje
de los estudiantes.
Aseguramiento
bibliográfico en el área de
conocimiento
de
la
carrera
CRITERIOS DE EVALUACIÓN
• Utilización de materiales impresos: textos y guía, y guía
del profesor, revistas científicas, etc.
• Utilización pertinente de los medios audiovisuales e
informáticos elaborado por la academia: softwares
educativo, videos, multimedia, laboratorios virtuales., etc.
•Plataforma de teleformación que facilite el acceso al
aprendizaje., mediante la integración de medios,
interactividad, acceso remoto, etc.
• Utilización de los textos básicos y guías de estudio
disponibles para la carrera
• Actualidad de los fondos de biblioteca, incluidas las
revistas científicas
• Materiales elaborados por el claustro, incluido en soporte
electrónico, y acceso de los estudiantes a los mismos
Aseguramiento de la base • Correspondencia de la base material disponible con las
material en el área de necesidades de la carrera y calidad de la misma
conocimientos
de
la • Organización del trabajo en los laboratorios
carrera (incluido el que se
utiliza como
consecuencia de la alianza
con los OACE)
… 58
4.3
4.4
• Equipamiento de computación disponible para la carrera,
en proporción al número de estudiantes
• Posibilidades de acceso de los estudiantes a los servicios
de la Intranet del centro e Internet
• Acceso de los estudiantes a Plataformas de
teleformación.
• Software profesional y plataformas interactivas
disponibles en correspondencia con los avances de la
profesión
Otras instalaciones de • Calidad de las aulas, del mobiliario, de los talleres,
carácter docente utilizadas gabinetes, bibliotecas, locales de estudio, etc., y el uso de
por la carrera
la infraestructura del territorio
Aseguramiento material
para el empleo de la
computación y las TICs
en la carrera
VARIABLE No. 5: CURRÍCULO
No.
5.1
5.2
5.3
5.4
5.5
INDICADOR
Gestión curricular en la
carrera y en el colectivo
pedagógico.
CRITERIOS DE EVALUACIÓN
• Los objetivos de los años o ciclos académicos y su
ejecución dan respuesta a los requerimientos de la carrera
• Los objetivos y los contenidos de las disciplinas y su
ejecución dan respuesta a los requerimientos de la carrera
• La estructuración didáctica del proceso da respuesta a los
requerimientos del modelo pedagógico en la modalidad de
estudio de la carrera y a la personalización de la
educación.
Relación
entre
los • Se emplean de forma efectiva los métodos, formas
diferentes
organizativas, medios y sistemas de evaluación
componentes del proceso • Se observan relaciones interdisciplinarias en el desarrollo
docente-educativo en la del proceso docente- educativo
carrera.
Estrategia educativa de la • Se cuenta con una estrategia educativa de calidad, en
carrera
correspondencia con las fuentes de ingreso, que garantiza
el cumplimiento de los objetivos generales de ese
profesional
• Los proyectos educativos se personalizan y
conforman un sistema coherente de sus diferentes
dimensiones
Estrategias curriculares
• Las estrategias pertinentes vinculadas al desarrollo de las
distintas profesiones se estructuran a lo largo de la carrera
Actividad investigativo- • La organización y desarrollo de la actividad
laboral de los estudiantes
investigativo- laboral en la carrera garantiza la formación
de los modos de actuar del profesional
• Las Unidades Docentes están constituidas en
entidades laborales de alto prestigio profesional que
reúnen los requisitos necesarios para la formación de los
modos de
actuación de la profesión
… 59
Anexo 2
Tabla. No 1
Relación de profesores asignaturas del plan de estudio.
No
Nombre y Apellidos
Asignaturas(Año)
Tabla no. 2
Relación de profesores con la especialidad, el grado científico o título académico y categoría docente
G. o T.
No
Nombre y Apellidos
Cat. Doc.
Acad.
Especialización
Tabla no. 3
Profesores que dirigen los diferentes colectivos pedagógicos
Colectivo que dirige
Nombre y Apellidos
Cat. Doc.
Cat. C.
Carrera
Disciplinas
Colectivos de Año
1ro
2do
3ro
4to
5to
… 60
Anexo 3
… 61
Descargar