MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO...

136
MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ESTADÍSTICO 1.1 Flujo de procesos de ventanas 1.1.1 Consulta de Estadísticas Ventana Principal Nombre: Estadísticas Actores: Profesores - Administradores Función: Mostrar las opciones de reportes a generar. Descripción: El usuario podrá conocer, a través de los gráficos estadísticos, la situación en un período de tiempo determinado de profesores, alumnos y materias. 1.1.2 Formatos de eventos 1.1.2 Formatos de eventos Evento: Presentación de pantalla de consulta 1. Escoge la opción del menú 2. Carga de ventana de consulta solicitada 1

Transcript of MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO...

Page 1: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

MANUAL DE USUARIO

1. PROCESOS DEL MÓDULO ESTADÍSTICO

1.1 Flujo de procesos de ventanas

1.1.1 Consulta de Estadísticas Ventana Principal

Nombre: Estadísticas

Actores: Profesores - Administradores

Función: Mostrar las opciones de reportes a generar.

Descripción: El usuario podrá conocer, a través de los gráficos estadísticos,

la situación en un período de tiempo determinado de profesores, alumnos y

materias.

1.1.2 Formatos de eventos1.1.2 Formatos de eventos

Evento: Presentación de pantalla de consulta

1. Escoge la opción del menú

2. Carga de ventana de consulta solicitada

1

Page 2: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.2.1 Consulta de Estadísticas de profesores

Nombre: Profesores por materia

Actores: Profesores - Administradores

Función: Presentar la situación de los profesores considerando el

rendimiento de los alumnos en cada una de las materias que imparten.

Descripción: El usuario podrá visualizar todos los profesores y las materias

que tienen asignadas, así como también consultará por el nombre de los

docentes, identificación o fecha de ingreso a la institución.

1.2.2 Formatos de eventos1.2.2 Formatos de eventos

Evento: Presentación de profesores y materias asignadas

1. Escoger la forma de cómo se desea mostrar la información, todos, por

nombre, identificación, o fecha de ingreso.

2. Ejecución de sentencias SQL para mostrar datos en pantalla de

acuerdo al requerimiento.

3. Listado de profesores y las materias asignadas a cada uno.

4. Escoger una materia de un profesor, o escoger el profesor para ver la

situación de todas sus materias.

5. Ejecución de los Bean de Datos: mostrará el gráfico dependiendo de

la opción escogida.

2

Page 3: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.3.1 Consulta de Estadísticas de evaluación de profesores

Nombre: Evaluación de profesores.

Actores: Profesores - Administradores

Función: Presentar la calificación de los profesores considerando las

evaluaciones realizadas a los alumnos en cada una de las materias que

imparten.

Descripción: El usuario podrá visualizar la calificación luego de las

evaluaciones que se realizan a los alumnos sobre la calidad, capacidad y

comportamiento de los docentes en las materias que tienen asignadas. El

gráfico mostrará la calificación de 5 categorías, excelente, muy bueno, bueno

regular y malo.

1.3.2 Formatos de eventos1.3.2 Formatos de eventos

Evento: Presentación de evaluación de profesores.

1. Escoger la forma de cómo se desea mostrar la información, todos, por

nombre, identificación, o fecha de ingreso.

2. Ejecución de sentencias SQL para mostrar datos en pantalla de

acuerdo al requerimiento.

3. Listado de profesores y las materias asignadas a cada uno.

4. Escoger una materia de un profesor, o escoger el profesor para ver la

situación de todas sus materias.

3

Page 4: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

5. Ejecución de los Bean de Datos: mostrará el gráfico dependiendo de

la opción escogida.

1.4.1 Consulta de Estadísticas de materias

Nombre: Notas por materia.

Actores: Profesores - Administradores

Función: Presenta el rendimiento de los alumnos en la materia o materias

presentadas.

Descripción: El usuario podrá visualizar el rendimiento de los alumnos en

una materia específica, lo que permitirá conocer el número de alumnos

aprobados, reprobados y aquellos que van a recuperación.

1.4.2 Formatos de eventos1.4.2 Formatos de eventos

Evento: Presentación de Notas por Materias.

1. Escoger la forma de cómo se desea mostrar la información, todas, o

por nombre.

2. Ejecución de sentencias SQL para mostrar datos en pantalla de

acuerdo al requerimiento.

3. Listado de las materias.

4. Escoger una materia.

Ejecución de los Bean de Datos: mostrará el gráfico dependiendo de la

materia escogida.

4

Page 5: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.5.1 Consulta de Estadísticas de alumnos

Nombre: Estadísticas por alumnos.

Actores: Profesores - Administradores

Función: Presenta el rendimiento de los alumnos en la materia o materias

presentadas.

Descripción: El usuario podrá visualizar el rendimiento de los alumnos en

las materias que cursa durante un período de clases, y su comportamiento

en períodos anteriores.

1.5.2 Formatos de eventos1.5.2 Formatos de eventos

Evento: Presentación de Estadísticas por alumnos.

5. Escoger la forma de cómo se desea mostrar la información, todos, por

nombre o identificación.

6. Ejecución de sentencias SQL para mostrar datos en pantalla de

acuerdo al requerimiento.

7. Listado de alumno(s).

8. Escoger un alumno.

Ejecución de los Bean de Datos: mostrará el gráfico dependiendo del alumno

escogida.

5

Page 6: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2. DESCRIPCION DE PROGRAMAS

2.1 Descripción de programas de consultas

2.1.1 LISTAR_PROFESORES.JSP

Descripción: Permitirá al usuario mostrar información de profesores

dependiendo de la materia(s) que escoja; podrá mostrar todos los profesores,

por el nombre o la identificación.

Enlaces: MostrarEstadisticas, EstadisticasAction, struts-config.xml

Librerías: Taglib – Mensajes - Bean – Html

2.1.2 LISTAR_EVALUACIONES.JSP

Descripción: Permitirá al usuario mostrar información de las evaluaciones

realizadas por alumnos midiendo la asimilación de conocimientos brindada

por el docente en cada una de las materias que imparten..

Enlaces: MostrarEstadisticas, EstadisticasAction, struts-config.xml

Librerías: Taglib – Mensajes - Bean – Html

2.1.3 LISTAR_ALUMNOS.JSP

Descripción: El usuario podrá visualizar el rendimiento de los alumnos en un

período determinado, considerando las materias que esté cursando.

Enlaces: MostrarEstadisticas, EstadisticasAction, struts-config.xml

Librerías: Taglib – Mensajes - Bean – Html

6

Page 7: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.1.4 LISTAR_MATERIAS.JSP

Descripción: Permite visualizar la información de las materias y conocer el

comportamiento de los alumnos que la estén cursando.

Enlaces: MostrarEstadisticas, EstadisticasAction, struts-config.xml

Librerías: Taglib – Mensajes - Bean – Html

2.1.5 MOSTRAR_ESTADISTICAS.JSP

Descripción: Encargada de la presentación de gráficos dependiendo del

criterio escogido por el usuario.

Enlaces: EstadisticasAction, struts-config.xml

Librerías: Taglib – Mensajes - Bean – Html

7

Page 8: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.2 CLASES JAVA

2.2.1 Action

2.2.1.1EstadisticasAction.java

Descripción: Es nuestro Action Principal, el cual recibe como parámetros los

criterios de consulta por parte del usuario, dependiendo de la opción

escogida. Este Action se encarga de forma la ventana de la consulta

dependiendo de la opción escogida, a su vez se encarga de hacer de revisar

las sentencias sql considerando los criterios de la consulta solicitada. Cada

consulta es enviada como un objeto el cual contiene la sentencia que se

formada por los criterios escogidos por pantalla, el tipo de reporte a generar y

la ventana de resultado.

2.2.2 Clases

2.2.2.1 Alumnos

Se encarga de recuperar la información de la clase alumnos, de esta forma

se puede conocer los datos personales de los alumnos y a su vez las

materias y calificaciones que posee

8

Page 9: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

3. DESCRIPCIÓN DE VENTANAS

3.1 Ventanas de consultas

3.1.1 Ventana principal de consulta

9

Page 10: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Descripción:

Esta pantalla contiene las opciones de consulta para la generación de

reportes estadísticos, las alternativas son:

Profesores por materias: En esta opción el usuario podrá visualizar

el comportamiento de los alumnos (aprobados, reprobados y

recuperación) en cada una de las materias que imparte el profesor que

se ha seleccionado

Evaluación de profesores: El usuario conocerá el resultado de las

evaluaciones que se realizan durante un período para conocer el nivel

de aceptación desde el punto de vista académico por parte de los

alumnos de cada una de las materias impartidas por los docentes

Notas por materias: Permite mostrar el comportamiento de los

alumnos en las diferentes materias dictadas por varios docentes, lo

que dará la posibilidad a conocer el rendimiento de los alumnos en

una misma materia pero dictada por diferentes profesores.

Estadísticas de alumnos: Esta opción permite conocer el

rendimiento de un alumno en las diversas materias que cursa en un

período de clases.

Las tablas consideradas para la generación de los gráficos se

encuentran en el anexo A.

10

Page 11: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

3.1.2 Notas por materias

Manteniendo el esquema original de las consultas, esta opción mostrará

varias alternativas de consulta, se puede listar todas las materias o escoger

el nombre de la materia. Luego de presionar el botón consultar, se muestra

la cantidad de registros encontrados, el nombre del profesor, la fecha de

ingreso, el año, período y las materias que dicta el docente.

Si el usuario escoge una de las materias asignadas a un docente o varios

docentes, el gráfico mostrará la cantidad de alumnos aprobados, reprobados

y recuperación, en un gráfico de barra y una tabla resumida que contiene la

11

Page 12: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

información solicitada.

12

Page 13: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Como se indica en la parte superior de la ventana, se encuentra expresada la

cantidad de profesores que dan la materia en mención, cual es el promedio

de cada profesor en los diferentes periodos que ha dado la materia.

Cada ventana contiene el resultado de la consulta tiene la posibilidad de que

las exportaciones de los datos sea de dos formas: Exportar los datos de las

tablas a CSV (Texto separado por comas), Excel o XML. Otra alternativa es

exportar toda la información, es decir, gráfico y tabla a los siguientes

formatos: PDF, HTML, XLS, CSV, RTF (Texto enriquecido)

Nota.- Cabe indicar que por la versión de la herramienta generadora de

reportes (1.2.0) los gráficos en Excel no pueden ser apreciados, solo las

tablas, así como también, de forma esporádica, las barras de los

13

Page 14: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

gráficos tiende a cambiar si se hacen varios refrescamiento a las

páginas en donde se encuentra los gráficos.

3.1.3 Profesores por materia

La ventana de Profesores por materias, da la posibilidad al usuario de

conocer de forma gráfica el rendimiento de alumnos en la(s) materia(s)

impartida por un profesor. El usuario puede listar todos los profesores y sus

materias, puede ingresar el nombre del profesor o su identificación; así como

también puede considerar la fecha de ingreso de los datos del profesor al

sistema. Así como también podrá elegir que periodo desea evaluar.

14

Page 15: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

El resultado de la consulta será el siguiente: En la ventana se puede

visualizar la cantidad de materias asignadas al profesor y cuales son las

mismas, el total de alumnos evaluados, el promedio global

15

Page 16: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

16

Page 17: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

3.1.3 Evaluación de Profesores

Si el usuario desea visualizar la evaluación de los profesores, al momento de

escoger dicha opción, podrá listar todos los profesores, buscar un profesor

específico o ingresar su identificación; así como también se podrá escoger el

periodo a evaluar.

El resultado, al escoger un profesor, es la visualización del nivel cualitativo en

que las evaluaciones realizadas por los estudiantes durante un período de

clases. Los parámetros de medición son: Excelente, muy bueno, bueno,

regular y malo.

17

Page 18: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Como se puede apreciar en el gráfico, se muestra el total de paralelos

evaluados, la cantidad de evaluaciones realizadas, así como cuales son las

materias que han sido evaluadas.

18

Page 19: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

3.1.4 Estadísticas por Alumnos

En esta opción el usuario podrá listar todos los alumnos, se podrá listar

todos, buscar por el nombre o por la identificación. Los criterios de selección

considerados, es el género y los rangos de edad de los estudiantes

19

Page 20: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

La finalidad de esta consulta es listar el rendimiento del alumno en las

materias que ha tomado durante un período o periodos de clases. En este

gráfico se muestra el total de materias tomadas por el alumno, el promedio

de las notas y la varianza entre un promedio y otro.

20

Page 21: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

MANUAL TÉCNICOClases

Alumnos.java

package com.bvg.comun.model.estadisticas;

import java.util.Date;import java.util.Set;

import com.bvg.comun.persistencia.Entidad;import com.bvg.comun.persistencia.EntidadEliminable;

public class Alumno extends Entidad {

private Persona persona;private Especializacion especializacion;

private Set registros;

public Alumno() {super();

}

public Long getId() {return this.id;

}

public Persona getPersona() {return persona;

}

public void setPersona(Persona persona) {this.persona = persona;

}

21

Page 22: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

public Especializacion getEspecializacion() {return especializacion;

}public void setEspecializacion(Especializacion especializacion) {

this.especializacion = especializacion;}

public Set getRegistros() {return registros;

}

public void setRegistros(Set paralelos) {this.registros = paralelos;

}

}

Profesor.java

package com.bvg.comun.model.estadisticas;

import java.util.Date;import java.util.Set;

import com.bvg.comun.persistencia.EntidadEliminable;

public class Profesor extends EntidadEliminable {

private Persona persona;private Set materias;private Set paralelos;

private Date fechaIngreso;

public Profesor() {super();

}

22

Page 23: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

public Long getId() {return this.id;

}

public Persona getPersona() {return persona;

}

public void setPersona(Persona persona) {this.persona = persona;

}

public Set getMaterias() {return materias;

}

public void setMaterias(Set materias) {this.materias = materias;

}

public Date getFechaIngreso() {return fechaIngreso;

}

public void setFechaIngreso(Date fechaIngreso) {this.fechaIngreso = fechaIngreso;

}

public Set getParalelos() {

return paralelos;}

public void setParalelos(Set paralelos) {this.paralelos = paralelos;

}

}

23

Page 24: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Materias.java

package com.bvg.comun.model.estadisticas;

import java.util.Set;

import com.bvg.comun.persistencia.Entidad;

public class Materia extends Entidad {

private String nombre;private Set profesores;public Materia() {

super();}

public Long getId() {return this.id;

}

public String getNombre() {return nombre;

}

public void setNombre(String nombre) {this.nombre = nombre;

}

public Set getProfesores() {return profesores;

}

public void setProfesores(Set profesores) {this.profesores = profesores;

}

}

24

Page 25: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Reporte.java

package com.bvg.comun.web.reporte;

import java.io.File;import java.util.HashMap;import java.util.List;

public class Reporte {public static final int TIPO_PDF=1;public static final int TIPO_HTML=2;public static final int TIPO_XLS=3;public static final int TIPO_CSV=4;public static final int TIPO_RTF=5;public static final int TIPO_XML=6;private String nombreReporteJasper;private String nombreReporteXML;private String nombreReporte;private String imagenDir;private File archivoReporteJasper = null;private List coleccionDatos = null;private HashMap parametros = new HashMap();

private int tipoSalida;

public String getNombreReporteJasper() {return nombreReporteJasper;

}public void setNombreReporteJasper(String nombreReporteJasper) {

this.nombreReporteJasper = nombreReporteJasper;}

public String getNombreReporteXML() {return nombreReporteXML;

}public void setNombreReporteXML(String nombreReporteXML) {

this.nombreReporteXML = nombreReporteXML;}

public String getNombreReporte() {return nombreReporte;

}public void setNombreReporte(String nombreReporte) {

this.nombreReporte = nombreReporte.trim();

25

Page 26: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

setNombreReporteXML(nombreReporte+".jrxml");setNombreReporteJasper(nombreReporte+".jasper");

}

public String getImagenDir() {return imagenDir;

}public void setImagenDir(String imagenDir) {

this.imagenDir = imagenDir;}

public File getArchivoReporteJasper() {return archivoReporteJasper;

}public void setArchivoReporteJasper(File archivoReporteJasper) {

this.archivoReporteJasper = archivoReporteJasper;}

public List getColeccionDatos() {return coleccionDatos;

}public void setColeccionDatos(List coleccionDatos) {

this.coleccionDatos = coleccionDatos;}

public HashMap getParametros() {return parametros;

}public void setParametros(HashMap parametros) {

this.parametros = parametros;}public void addParametro(Object key, Object value){

// Si ya existe, NO lo reemplazaif (parametros.get(key)==null){

parametros.put(key,value);}

}

public int getTipoSalida() {return tipoSalida;

}public void setTipoSalida(int tipoSalida) {

this.tipoSalida = tipoSalida;

26

Page 27: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

}

public String getTipoSalidaString() {switch (tipoSalida) {case TIPO_PDF:

return "PDF";case TIPO_XLS:

return "XLS";case TIPO_RTF:

return "RTF";case TIPO_HTML:

return "HTML";case TIPO_CSV:

return "CSV";default:

return "";}

}}

Action

EstadisticasAction.java

package com.bvg.app.web;

import java.io.OutputStream;import java.util.ArrayList;import java.util.HashMap;import java.util.Iterator;import java.util.List;

import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;import org.apache.struts.action.ActionForward;import org.apache.struts.action.ActionMapping;import org.apache.struts.action.DynaActionForm;import org.jfree.chart.ChartFactory;import org.jfree.chart.ChartUtilities;import org.jfree.chart.JFreeChart;import org.jfree.chart.axis.CategoryAxis;

27

Page 28: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

import org.jfree.chart.plot.CategoryPlot;import org.jfree.chart.plot.PlotOrientation;import org.jfree.chart.renderer.category.BarRenderer;import org.jfree.data.category.DefaultCategoryDataset;import org.jfree.data.general.DefaultPieDataset;

import com.bvg.comun.model.estadisticas.Alumno;import com.bvg.comun.model.estadisticas.Evaluacion;import com.bvg.comun.model.estadisticas.Materia;import com.bvg.comun.model.estadisticas.Paralelo;import com.bvg.comun.model.estadisticas.Profesor;import com.bvg.comun.model.estadisticas.Registro;import com.bvg.comun.util.FechaFormat;import com.bvg.comun.web.GlobalAction;import com.bvg.comun.web.ReportesAction;

public class EstadisticasAction extends ReportesAction {

//URL de la acción de strutspublic static final String SECURITY_ACCION = "estadisticas";

public ActionForward listarAlumnos(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){ request.getSession().setAttribute(ACCION, SECURITY_ACCION); }

DynaActionForm dynaForm = (DynaActionForm) form;String textToFind = (String) dynaForm.get("textToFind");String cmbTextToFind = (String)

dynaForm.get("cmbTextToFind");

List items = null;HashMap filtros = new HashMap();

//List result = new ArrayList();

if (cmbTextToFind != null && cmbTextToFind.length() > 0 ){

28

Page 29: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

if (cmbTextToFind.compareTo("NOMBRE") == 0 && textToFind != null && textToFind.length() > 0){

filtros.put("persona.apellidos like '"+textToFind.trim()+"%'",textToFind.trim()+"%");

}if (cmbTextToFind.compareTo("IDENTIFICACION") == 0

&& textToFind != null && textToFind.length() > 0){filtros.put("persona.cedula like '"+textToFind.trim()

+"%'",textToFind.trim()+"%");}

items = manager.getAlumnos(filtros);

}

request.setAttribute("items", items); return mapping.findForward("listarAlumnos");

}

public ActionForward listarMaterias(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){ request.getSession().setAttribute(ACCION, SECURITY_ACCION); }

DynaActionForm dynaForm = (DynaActionForm) form;String textToFind = (String) dynaForm.get("textToFind");String cmbTextToFind = (String)

dynaForm.get("cmbTextToFind");

29

Page 30: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

List items = null;HashMap filtros = new HashMap();

//List result = new ArrayList();

if (cmbTextToFind != null && cmbTextToFind.length() > 0 ){if (cmbTextToFind.compareTo("NOMBRE") == 0 &&

textToFind != null && textToFind.length() > 0){filtros.put("persona.apellidos like

'"+textToFind.trim()+"%'",textToFind.trim()+"%");}

items = manager.getMaterias(filtros);

}

request.setAttribute("items", items); return mapping.findForward("listarMaterias");

}

public ActionForward listarProfesores(ActionMapping mapping, ActionFormform, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){ request.getSession().setAttribute(ACCION, SECURITY_ACCION); }

DynaActionForm dynaForm = (DynaActionForm) form;String textToFind = (String) dynaForm.get("textToFind");String cmbTextToFind = (String)

dynaForm.get("cmbTextToFind");

30

Page 31: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

String fecha_inicio = (String) dynaForm.get("fecha_inicio");String fecha_fin = (String) dynaForm.get("fecha_fin");

List items = null;HashMap filtros = new HashMap();

//List result = new ArrayList();

if (cmbTextToFind != null && cmbTextToFind.length() > 0 ){if (cmbTextToFind.compareTo("NOMBRE") == 0 &&

textToFind != null && textToFind.length() > 0){filtros.put("persona.apellidos like

'"+textToFind.trim()+"%'",textToFind.trim()+"%");}if (cmbTextToFind.compareTo("IDENTIFICACION") == 0

&& textToFind != null && textToFind.length() > 0){filtros.put("persona.cedula like '"+textToFind.trim()

+"%'",textToFind.trim()+"%");}

if (fecha_inicio != null && fecha_inicio.length() > 0 ){filtros.put("fechaIngreso >=

'"+fecha_inicio+"'",FechaFormat.toDate(fecha_inicio));}

if (fecha_fin != null && fecha_fin.length() > 0 ){filtros.put("fechaIngreso <=

'"+fecha_fin+"'",FechaFormat.toDate(fecha_fin));}

items = manager.getProfesores(filtros);

}

request.setAttribute("items", items); return mapping.findForward("listarProfesores");

31

Page 32: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

} public ActionForward listarEvaluaciones(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){ request.getSession().setAttribute(ACCION, SECURITY_ACCION); }

DynaActionForm dynaForm = (DynaActionForm) form;String textToFind = (String) dynaForm.get("textToFind");String cmbTextToFind = (String)

dynaForm.get("cmbTextToFind");

String fecha_inicio = (String) dynaForm.get("fecha_inicio");String fecha_fin = (String) dynaForm.get("fecha_fin");

List items = null;HashMap filtros = new HashMap();

//List result = new ArrayList();

if (cmbTextToFind != null && cmbTextToFind.length() > 0 ){if (cmbTextToFind.compareTo("NOMBRE") == 0 &&

textToFind != null && textToFind.length() > 0){filtros.put("persona.apellidos like

'"+textToFind.trim()+"%'",textToFind.trim()+"%");}if (cmbTextToFind.compareTo("IDENTIFICACION") == 0

&& textToFind != null && textToFind.length() > 0){filtros.put("persona.cedula like '"+textToFind.trim()

+"%'",textToFind.trim()+"%");}

32

Page 33: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

if (fecha_inicio != null && fecha_inicio.length() > 0 ){filtros.put("fechaIngreso >=

'"+fecha_inicio+"'",FechaFormat.toDate(fecha_inicio));}

if (fecha_fin != null && fecha_fin.length() > 0 ){filtros.put("fechaIngreso <=

'"+fecha_fin+"'",FechaFormat.toDate(fecha_fin));}

items = manager.getProfesores(filtros);

}

request.setAttribute("items", items); return mapping.findForward("listarEvaluaciones");

} public ActionForward mostrarImageneEstadistica(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {

String titulo = (String) request.getSession().getAttribute("titulo"); if (titulo != null ){ // ignore }else{ titulo = "Gráfico Estadístico"; } List datosGraficoPastel = (List)

request.getSession().getAttribute("datosGraficoPastel"); JFreeChart chart = createPieChart(titulo, datosGraficoPastel);

if (chart != null) { response.addHeader("Content-disposition", "attachment; filename=imagen.png") ;

33

Page 34: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

response.setContentType("image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, image/jpg, image/jpe, image/png"); OutputStream stream = response.getOutputStream();

ChartUtilities.writeChartAsPNG(stream, chart, 430, 350); } return null; } /** * Creates a sample pie chart. * * @return a pie chart. */ private JFreeChart createPieChart(String title, List tabla) { DefaultPieDataset data = new DefaultPieDataset(); DefaultCategoryDataset dataset = new DefaultCategoryDataset(); int count = 1; for (Iterator iter = tabla.iterator(); iter.hasNext();) {

Object[] list = (Object[]) iter.next();

if (list.length == 2){

dataset.addValue(Double.parseDouble(list[1].toString()),"", list[0].toString() );

}else if (list.length == 3){

dataset.addValue(Double.parseDouble(list[2].toString()),list[1].toString(),list[0].toString());

}}

JFreeChart chart2 = ChartFactory.createBarChart3D( title, // chart title "Categorias", // domain axis label "Totales", // range axis label dataset, // data PlotOrientation.VERTICAL, true, // include legend true, // tooltips? false // URLs?

34

Page 35: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

); CategoryPlot plot = chart2.getCategoryPlot(); CategoryAxis axis = plot.getDomainAxis(); //axis.setLowerMargin(0.02); // two percent axis.setCategoryMargin(0.20); // ten percent //axis.setUpperMargin(0.02); // two percent BarRenderer renderer = (BarRenderer) plot.getRenderer(); renderer.setItemMargin(0.50); // fifteen percent return chart2; }

public ActionForward generarEstadisticaMateria(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){ request.getSession().setAttribute(ACCION, SECURITY_ACCION); } Profesor profesor = null;

String id_paralelo = (String) request.getParameter("id_profesor"); if (id_paralelo != null && id_paralelo.length() > 0 ){ HashMap filtros = new HashMap(); filtros.put("id = '"+Long.valueOf(id_paralelo)+"'", null); List profesores = manager.getProfesores(filtros); if (profesores != null && profesores.size() >0 ){ profesor = (Profesor) profesores.get(0); List datosGrafico = new ArrayList(); for (Iterator iter = profesor.getParalelos().iterator(); iter.hasNext();) {

Paralelo paralelo2 = (Paralelo) iter.next();

filtros.clear(); filtros.put("id = '"+paralelo2.getId()+"'", null);

35

Page 36: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

List paralelos = manager.getParalelos(filtros);

if (paralelos != null && paralelos.size() > 0){ Paralelo paralelo = (Paralelo)

paralelos.get(0); int aprobados = 0; int reprobados = 0; int suspensos = 0; for (Iterator iter4 =

paralelo.getRegistros().iterator(); iter4.hasNext();) { Registro registro = (Registro)

iter4.next(); if

(registro.getPromedio().intValue() >= 7){ aprobados++; }else if

(registro.getPromedio().intValue() >= 5 && registro.getPromedio().intValue() <7){

suspensos++; }else{ reprobados++; } } datosGrafico.add(new Object[]

{"APROBADOS", paralelo2.getMateria().getNombre(),Integer.valueOf(aprobados)});

datosGrafico.add(new Object[]{"REPROBADOS",paralelo2.getMateria().getNombre(), Integer.valueOf(reprobados)});

datosGrafico.add(new Object[]{"SUSPENSOS",paralelo2.getMateria().getNombre(), Integer.valueOf(suspensos)});

//List datosGrafico =

manager.getEstadisticasPersonalByParaleloNota(id_linea_especialidad); }

36

Page 37: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

}

request.getSession().setAttribute("datosGraficoPastel", datosGrafico);

//request.getSession().setAttribute("total", Integer.valueOf(aprobados+reprobados+suspensos));

} } String nombre =(profesor!=null)?(profesor.getPersona().getApellidos()+profesor.getPersona().getApellidos()):""; request.getSession().setAttribute("titulo", "Clasificación de notaspor Materia del profesor " + nombre ); request.setAttribute("urlAccion", "generarEstadisticaMateria"); return mapping.findForward("mostrarEstadisticas");

}

public ActionForward generarEstadisticaMateriaConProfesores(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){

37

Page 38: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

request.getSession().setAttribute(ACCION, SECURITY_ACCION); } List datosGrafico = new ArrayList(); Materia materia = null; String id_paralelo = (String) request.getParameter("id_materia"); if (id_paralelo != null && id_paralelo.length() > 0 ){ HashMap filtros = new HashMap(); filtros.put("id = '"+Long.valueOf(id_paralelo)+"'", null); List maaterias = manager.getMaterias(filtros); if (maaterias != null && maaterias.size() >0 ){ materia = (Materia) maaterias.get(0); for (Iterator iter = materia.getProfesores().iterator();iter.hasNext();) {

Profesor profesor = (Profesor) iter.next();

filtros.clear(); filtros.put("id = '"+profesor.getId()+"'", null);

List profesores = manager.getProfesores(filtros);

if(profesores != null && profesores.size() > 0){

Profesor profesor2 = (Profesor) profesores.get(0);

for (Iterator iterator = profesor2.getParalelos().iterator(); iterator

.hasNext();) {

Paralelo paralelo2 = (Paralelo) iterator.next();

filtros.clear(); filtros.put("id =

'"+paralelo2.getId()+"'", null);

38

Page 39: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

filtros.put("materia.id = '"+materia.getId()+"'", null);

List paralelos = manager.getParalelos(filtros);

if (paralelos != null &&

paralelos.size() > 0){ Paralelo paralelo =

(Paralelo) paralelos.get(0); int aprobados = 0; int reprobados = 0; int suspensos = 0; for (Iterator iter4 =

paralelo.getRegistros().iterator(); iter4.hasNext();) { Registro registro

= (Registro) iter4.next(); if

(registro.getPromedio().intValue() >= 7){

aprobados++; }else if

(registro.getPromedio().intValue() >= 5 && registro.getPromedio().intValue() <7){

suspensos++;

}else{

reprobados++; } } datosGrafico.add(new

Object[]{"APROBADOS", profesor2.getPersona().getNombres()+" "+profesor2.getPersona().getApellidos(),Integer.valueOf(aprobados)});

datosGrafico.add(new Object[]{"REPROBADOS",profesor2.getPersona().getNombres()+" "+profesor2.getPersona().getApellidos(), Integer.valueOf(reprobados)});

datosGrafico.add(new Object[]{"SUSPENSOS",profesor2.getPersona().getNombres()+" "+profesor2.getPersona().getApellidos(), Integer.valueOf(suspensos)});

39

Page 40: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

//List datosGrafico =

manager.getEstadisticasPersonalByParaleloNota(id_linea_especialidad); }

}}

} } }

request.getSession().setAttribute("datosGraficoPastel", datosGrafico);

request.getSession().setAttribute("tipo3", new String[]{"Clasificación de nota", "Profesor", "Total"});

String nombre =(materia!=null)?(materia.getNombre()):""; request.getSession().setAttribute("titulo", "Estadística de notas por Materia " + nombre );

request.setAttribute("urlAccion", "generarEstadisticaMateriaConProfesores"); return mapping.findForward("mostrarEstadisticas");

}

public ActionForward generarEstadisticaAlumno(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){ request.getSession().setAttribute(ACCION, SECURITY_ACCION); } Alumno alumno = null;

String id_alumno = (String) request.getParameter("id_alumno"); if (id_alumno != null && id_alumno.length() > 0 ){

40

Page 41: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

HashMap filtros = new HashMap(); filtros.put("id = '"+Long.valueOf(id_alumno)+"'", null); List profesores = manager.getAlumnos(filtros); if (profesores != null && profesores.size() >0 ){ alumno = (Alumno) profesores.get(0); List datosGrafico = new ArrayList();

int aprobados = 0; int reprobados = 0; int suspensos = 0; for (Iterator iter = alumno.getRegistros().iterator(); iter.hasNext();) { Registro registro = (Registro) iter.next();

if

(registro.getPromedio().intValue() >= 7){ aprobados++; }else if

(registro.getPromedio().intValue() >= 5 && registro.getPromedio().intValue() <7){

suspensos++; }else{ reprobados++; } datosGrafico.add(new Object[]

{"APROBADOS", registro.getParalelo().getMateria().getNombre(),Integer.valueOf(aprobados)});

datosGrafico.add(new Object[]{"REPROBADOS",registro.getParalelo().getMateria().getNombre(), Integer.valueOf(reprobados)});

datosGrafico.add(new Object[]{"SUSPENSOS",registro.getParalelo().getMateria().getNombre(), Integer.valueOf(suspensos)});

41

Page 42: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

//List datosGrafico =

manager.getEstadisticasPersonalByParaleloNota(id_linea_especialidad);

}

request.getSession().setAttribute("datosGraficoPastel", datosGrafico); request.getSession().setAttribute("tipo3",

new String[]{"Clasificación de nota", "Paralelo", "Total"}); //request.getSession().setAttribute("total", Integer.valueOf(aprobados+reprobados+suspensos));

} } String nombre =(alumno!=null)?(alumno.getPersona().getNombres()+" "+alumno.getPersona().getApellidos()):""; request.getSession().setAttribute("titulo", "Estadística de notas por Materia del alumno " + nombre );

request.setAttribute("urlAccion", "generarEstadisticaAlumno"); return mapping.findForward("mostrarEstadisticas");

} public ActionForward generarEstadisticaProfesor(ActionMapping mapping,ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){

42

Page 43: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

request.getSession().setAttribute(ACCION, SECURITY_ACCION); } Profesor profesor = null;

String id_paralelo = (String) request.getParameter("id_profesor"); if (id_paralelo != null && id_paralelo.length() > 0 ){ HashMap filtros = new HashMap(); filtros.put("id = '"+Long.valueOf(id_paralelo)+"'", null); List profesores = manager.getProfesores(filtros); if (profesores != null && profesores.size() >0 ){ profesor = (Profesor) profesores.get(0); List datosGrafico = new ArrayList(); for (Iterator iter = profesor.getParalelos().iterator(); iter.hasNext();) {

Paralelo paralelo2 = (Paralelo) iter.next();

filtros.clear(); filtros.put("id = '"+paralelo2.getId()+"'", null); List paralelos =

manager.getParalelos(filtros); if (paralelos != null && paralelos.size() > 0){ Paralelo paralelo = (Paralelo)

paralelos.get(0); int aprobados = 0; int reprobados = 0; int suspensos = 0; for (Iterator iter4 =

paralelo.getRegistros().iterator(); iter4.hasNext();) { Registro registro = (Registro)

iter4.next(); if

(registro.getPromedio().intValue() >= 7){ aprobados++; }else if

(registro.getPromedio().intValue() >= 5 && registro.getPromedio().intValue() <7){

43

Page 44: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

suspensos++; }else{ reprobados++; } } datosGrafico.add(new Object[]

{"APROBADOS", paralelo2.getMateria().getNombre(),Integer.valueOf(aprobados)});

datosGrafico.add(new Object[]{"REPROBADOS",paralelo2.getMateria().getNombre(), Integer.valueOf(reprobados)});

datosGrafico.add(new Object[]{"SUSPENSOS",paralelo2.getMateria().getNombre(), Integer.valueOf(suspensos)});

//List datosGrafico =

manager.getEstadisticasPersonalByParaleloNota(id_linea_especialidad); }

}

request.getSession().setAttribute("datosGraficoPastel", datosGrafico); request.getSession().setAttribute("tipo3",

new String[]{"Clasificación de nota", "Paralelo", "Total"}); //request.getSession().setAttribute("total", Integer.valueOf(aprobados+reprobados+suspensos));

} }

44

Page 45: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

String nombre =(profesor!=null)?(profesor.getPersona().getNombres()+" "+profesor.getPersona().getApellidos()):""; request.getSession().setAttribute("titulo", "Estadística de notas por Materia del profesor " + nombre );

request.setAttribute("urlAccion", "generarEstadisticaProfesor"); return mapping.findForward("mostrarEstadisticas");

} public ActionForward generarEstadisticaEvaluacionProfesor(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){ request.getSession().setAttribute(ACCION, SECURITY_ACCION); } Profesor profesor = null;

String id_paralelo = (String) request.getParameter("id_profesor"); if (id_paralelo != null && id_paralelo.length() > 0 ){ HashMap filtros = new HashMap(); filtros.put("id = '"+Long.valueOf(id_paralelo)+"'", null); List profesores = manager.getProfesores(filtros); if (profesores != null && profesores.size() >0 ){ profesor = (Profesor) profesores.get(0); List datosGrafico = new ArrayList(); for (Iterator iter = profesor.getParalelos().iterator(); iter.hasNext();) {

Paralelo paralelo2 = (Paralelo) iter.next();

filtros.clear(); filtros.put("id = '"+paralelo2.getId()+"'", null); List paralelos =

manager.getParalelosEvaluacion(filtros);

45

Page 46: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

if (paralelos != null && paralelos.size() > 0){ Paralelo paralelo = (Paralelo)

paralelos.get(0); int excenlente = 0; int muy_bueno = 0; int bueno = 0; int regular = 0; int malo = 0; for (Iterator iter2 =

paralelo.getEvaluaciones().iterator(); iter2.hasNext();) { Evaluacion evaluacion =

(Evaluacion) iter2.next(); if

(evaluacion.getRespuesta().intValue() ==5){ excenlente++; }else if

(evaluacion.getRespuesta().intValue() == 4){ muy_bueno++; }else if

(evaluacion.getRespuesta().intValue() == 3){ bueno++; }else if

(evaluacion.getRespuesta().intValue() == 2){ regular++; }else if

(evaluacion.getRespuesta().intValue() == 1){ malo++; } }

datosGrafico.add(new Object[]

{"EXCELENTE", paralelo2.getMateria().getNombre(), Integer.valueOf(excenlente)});

datosGrafico.add(new Object[]{"MUY BUENO", paralelo2.getMateria().getNombre(), Integer.valueOf(muy_bueno)});

datosGrafico.add(new Object[]{"BUENO", paralelo2.getMateria().getNombre(), Integer.valueOf(bueno)});

datosGrafico.add(new Object[]{"REGULAR", paralelo2.getMateria().getNombre(), Integer.valueOf(regular)});

46

Page 47: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

datosGrafico.add(new Object[]{"MALO", paralelo2.getMateria().getNombre(), Integer.valueOf(malo)});

//List datosGrafico =

manager.getEstadisticasPersonalByParaleloNota(id_linea_especialidad); }

}

request.getSession().setAttribute("datosGraficoPastel", datosGrafico); request.getSession().setAttribute("tipo3", new String[]{"Clasificación de la evaluacion", "Paralelo","Promedio"});

} } String nombre =(profesor!=null)?(profesor.getPersona().getNombres()+" "+profesor.getPersona().getApellidos()):""; request.getSession().setAttribute("titulo", "Estadistica de evaluación del profesor " + nombre + " en diferentes paralelos"); request.setAttribute("urlAccion", "generarEstadisticaEvaluacionProfesor"); return mapping.findForward("mostrarEstadisticas");

}

47

Page 48: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

public ActionForward generarEstadisticaEvaluacionParalelo(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){ request.getSession().setAttribute(ACCION, SECURITY_ACCION); } Paralelo paralelo = null; String id_paralelo = (String) request.getParameter("id_paralelo"); if (id_paralelo != null && id_paralelo.length() > 0 ){ HashMap filtros = new HashMap(); filtros.put("id = '"+id_paralelo+"'", null); List paralelos = manager.getParalelosEvaluacion(filtros); if (paralelos != null && paralelos.size() > 0){ paralelo = (Paralelo) paralelos.get(0); int excenlente = 0; int muy_bueno = 0; int bueno = 0; int regular = 0; int malo = 0; for (Iterator iter = paralelo.getEvaluaciones().iterator(); iter.hasNext();) { Evaluacion evaluacion = (Evaluacion) iter.next(); if (evaluacion.getRespuesta().intValue() ==5){ excenlente++; }else if (evaluacion.getRespuesta().intValue() == 4){ muy_bueno++; }else if (evaluacion.getRespuesta().intValue() == 3){ bueno++; }else if (evaluacion.getRespuesta().intValue() == 2){ regular++;

48

Page 49: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

}else if (evaluacion.getRespuesta().intValue() == 1){ malo++; } } List datosGrafico = new ArrayList(); datosGrafico.add(new Object[]{"EXCELENTE", Integer.valueOf(excenlente)}); datosGrafico.add(new Object[]{"MUY BUENO", Integer.valueOf(muy_bueno)}); datosGrafico.add(new Object[]{"BUENO", Integer.valueOf(bueno)}); datosGrafico.add(new Object[]{"REGULAR", Integer.valueOf(regular)}); datosGrafico.add(new Object[]{"MALO", Integer.valueOf(malo)});

request.getSession().setAttribute("datosGraficoPastel", datosGrafico); request.getSession().setAttribute("total", Integer.valueOf((excenlente+muy_bueno+bueno+regular+malo)/2)); request.getSession().setAttribute("tipo2", new String[]{"Clasificación de la evaluacion", "Promedio"}); //List datosGrafico = manager.getEstadisticasPersonalByParaleloNota(id_linea_especialidad); } } String nombre =(paralelo!=null)?(paralelo.getId()):""; String profesor =(paralelo!=null)?(paralelo.getProfesor().getPersona().getNombres()+paralelo.getProfesor().getPersona().getApellidos()):""; request.getSession().setAttribute("titulo", "Estadistica de evaluación del " + profesor + " en el paralelo " + nombre);

request.setAttribute("urlAccion", "generarEstadisticaEvaluacionParalelo");

49

Page 50: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

return mapping.findForward("mostrarEstadisticas");

} public ActionForward generarEstadisticaParaleloMateria(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { String accion = (String) request.getSession().getAttribute(ACCION); if (accion == null || accion.length() <= 0){ request.getSession().setAttribute(ACCION, SECURITY_ACCION); } Paralelo paralelo = null;

String id_paralelo = (String) request.getParameter("id_paralelo");

if (id_paralelo != null && id_paralelo.length() > 0 ){

HashMap filtros = new HashMap();filtros.put("id = '"+id_paralelo+"'", null);List paralelos = manager.getParalelos(filtros);

if (paralelos != null && paralelos.size() > 0){paralelo = (Paralelo) paralelos.get(0);

int aprobados = 0;int reprobados = 0;int suspensos = 0;

for (Iterator iter = paralelo.getRegistros().iterator(); iter.hasNext();) {

Registro registro = (Registro) iter.next();if (registro.getPromedio().intValue() >= 7){

aprobados++;}else if (registro.getPromedio().intValue() >=

5 && registro.getPromedio().intValue() < 7){suspensos++;

}else{reprobados++;

}}

50

Page 51: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

List datosGrafico = new ArrayList();datosGrafico.add(new Object[]{"APROBADOS",

Integer.valueOf(aprobados)});datosGrafico.add(new Object[]{"REPROBADOS",

Integer.valueOf(reprobados)});datosGrafico.add(new Object[]{"SUSPENSOS",

Integer.valueOf(suspensos)});

request.getSession().setAttribute("datosGraficoPastel", datosGrafico);request.getSession().setAttribute("total",

Integer.valueOf(aprobados+reprobados+suspensos));

request.getSession().setAttribute("tipo2", new String[]{"Clasificación de nota", "Total"});

//List datosGrafico = manager.getEstadisticasPersonalByParaleloNota(id_linea_especialidad);

}

}

String nombre =(paralelo!=null)?(paralelo.getId()):""; String profesor =(paralelo!=null)?(paralelo.getProfesor().getPersona().getNombres()+" "+paralelo.getProfesor().getPersona().getApellidos()):""; request.getSession().setAttribute("titulo", "Estadistica de las notas del profesor " + profesor + " en el paralelo " + nombre);

request.setAttribute("urlAccion", "generarEstadisticaParaleloMateria");

return mapping.findForward("mostrarEstadisticas");

}

}

51

Page 52: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia
Page 53: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

INTRODUCCIÓN

Recientemente se han detectado ciertas falencias tanto funcionales como

de requerimientos en el sistema académico, motivo por el cual se planteó la

realización de un nuevo sistema de apoyo académico computarizado. Uno

de los requerimientos planteados es diseñar un módulo especializado en la

generación y presentación de información estadística. Básicamente el

problema era la cantidad de tiempo y esfuerzo que se invertía en la

elaboración de cualquier tipo de información estadística, esto debido a que

los usuarios se veían obligados a obtener esta información de manera

manual. El presente proyecto plantea una solución a las necesidades

actuales de generación y presentación automática de información

estadística, dentro del sistema de apoyo académico de la universidad. El

objetivo del proyecto es el siguiente: “Desarrollar un módulo de generación

y presentación de información estadística que forme parte del sistema de

control académico computarizado para la Universidad de Guayaquil.”

1

Page 54: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

CAPÍTULO 1

1. TECNOLOGIA OPEN SOURCE

1.1. Problemática

Al finalizar los periodos clases en las carreras e institutos que son parte de

las facultades que componen a la Universidad de Guayaquil, se establecen

las respectivas reuniones que tienen como finalidad conocer la situación de

los alumnos y las materias impartidas, pero existen inconvenientes al no

contar con los datos necesarios que permitan discernir entre los alumnos y

su comportamiento a lo largo de un semestre o año y al mismo tiempo

realizar una comparativa entre materias, cursos en los periodos actuales, así

como también los datos históricos. Este tipo de procesos pueden tomar

varios días y solo están disponibles para el personal administrativo y

académico.

Al no contar con esta información de forma rápida, exacta y efectiva, no se

puede conocer el comportamiento de los alumnos en las materias, conocer si

las materias han sufrido algún tipo de cambio de periodo a otro, y, a su vez

evitar que errores pasados se vuelvan a presentar en futuros periodos.

2

Page 55: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.2. Solución de la Problemática

Ofrecer las opciones necesarias para que la tabulación de la información

perteneciente a una institución, sea lo más eficiente y eficaz al momento de

visualizarla de forma gráfica, lo que permitirá conocer las condiciones

actuales de las actividades realizadas, dando la posibilidad de tomar

decisiones futuras.

La aplicación fue desarrollada en Jdeveloper, la base de datos utilizada es

Postgres, para generar las graficas se ha usado la herramienta Ireport, el

cual usa el componente JFreeChart como generador de gráficos estadísticos

en dos y tres dimensiones.

1.3 Definición del Proyecto

El modulo de estadísticas se genera ya que en la actualidad no se contaba

con una herramienta que brinde la facilidad de realizar una consulta y que

el resultado de esta no solo se muestre de manera textual sino también

grafica.

El modulo de estadísticas recolecta la información de los módulos de

profesores, matriculación Web y alumnos, ya que básicamente de estos

módulos se crearan los criterios de consulta como por ejemplo cuantos

3

Page 56: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

alumnos están aprobados, suspensos y reprobados en una determinada

materia.

1.4 MISIÓN Y VISIÓN

1.4.1. Misión

Implementación de un sistema académico estadístico, confiable, seguro y

flexible a los procesos internos que manejan cada una de las unidades

académicas de la Universidad de Guayaquil considerando la

implementación practica en la Facultad de Ciencias Matemáticas y Físicas

a fin de obtener la satisfacción total del personal administrativo como

estudiantil.

1.4.2. Visión

Contribuir con la Universidad y la Facultad de Ciencias Matemáticas y

Físicas en su crecimiento tecnológico a fin de cubrir con las necesidades

actuales y futuras

4

Page 57: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.5. OBJETIVOS DEL PROYECTO

1.5.1. Objetivos Generales

Ofrecer las opciones necesarias para que la tabulación de la información

perteneciente a una institución, sea lo más eficiente y eficaz al momento de

visualizarla de forma gráfica, lo que permitirá conocer las condiciones

actuales de las actividades realizadas, dando la posibilidad de tomar

decisiones futuras.

1.5.2. Objetivos Específicos

Desarrollar la aplicación en IReport para graficar la información sobre

las notas de las materias que se imparten en los diferentes cursos.

Permitir la comparación entre el rendimiento de los alumnos y las

materias que han tomado para su estudio.

Realizar comparativas entre el nivel de captación que tienen los

alumnos acorde a la relación maestro – materia.

Conocer el resultado de la evaluación por parte de los alumnos y

conocer la forma de cómo los alumnos asimilan la pedagogía de los

profesores.

5

Page 58: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Conocer el rendimiento de los profesores y alumnos durante un

período y a su vez comparar con datos anteriores.

.

1.6. Alcance del Proyecto

- Los reportes serán visualizados de forma gráfica para mejor

comprensión.

- Los datos podrán ser exportados a los siguientes formatos: txt, xls,

pdf.

- El sistema permitirá evaluar el rendimiento de los alumnos y

profesores en las diferentes materias, haciendo uso de la información

histórica se encuentre almacenada.

- La información procesada dependerá de los datos que se ingresen en

los módulos del área académica (alumnos, profesores y matriculación

Web)

- El módulo mostrará una herramienta que brinde la oportunidad de

llevar un control específico de asignaturas, maestros y alumnos.

6

Page 59: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.6.1. Módulo estadístico del sistema académico

7

Page 60: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.7. Cronograma

Para este proyecto se ha establecido el siguiente calendario. La fecha de

aprobación indica cuándo la actividad en cuestión tiene un estado de

completitud suficiente para someterse a revisión, pero esto no quita la

posibilidad de su posterior refinamiento y cambios.

Actividades Comienzo Finalización

Preliminar

Coordinación con los módulos Profesor,Alumnos y matriculación Web

18/02 25/02

Establecimientos de objetivos y alcances 26/02 08/03

Revisión de estructura de acuerdo a lasposibles tablas

10/03 15/03

Definición de formatos y tipos de reporte 03/03 15/03

Tipos condensados y listados 15/03 20/03

Comparación de datos actuales ehistóricos

22/03 01/04

Definición de tipos de gráficosestadísticos

03/04 15/04

Definición de reportes 15/04 20/04

Diseño de reportes 25/04 20/05

DESARROLLO

Desarrollo de reportes 22/05 06/06

Desarrollo de parte grafica 07/06 17/06

Pruebas de reportes 18/06 02/07

Pruebas de integración 05/07 25/07

8

Page 61: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.8. ESTUDIO DE FACTIBILIDAD

1.8.1. Factibilidad Operativa.

Esencialmente se enfoca a todos aquellos recursos donde intervienen todos

los Procesos para la ejecución del Sistema Académico de la Universidad de

Guayaquil módulo Estadístico, depende de los recursos humanos que

participen durante la operación del proyecto. Durante esta etapa hemos

identificado todas aquellas actividades que son necesarias para lograr el

objetivo y evaluamos que se cumplirán con los siguientes objetivos:

Los datos que se administraran dentro del Sistema Académico de

la Universidad sean presentados de forma visual, ágil, precisa y

clara.

Los reportes se los podrá visualizar por medio de gráficos e

informes estadísticos.

La información procesada dependerá de los datos que se ingresen

en los Módulos del Área Académica tanto como alumnos,

profesores y matriculación Web.

El Modulo brindará la oportunidad de llevar un control especifico de

asignaturas, maestros y alumnos.

Automatización optima de procedimientos manuales.

9

Page 62: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Reducción de costos de la Universidad mediante la optimización o

eliminación de recursos no necesarios.

1.8.2. Factibilidad Técnica.

Se refiere a los recursos necesarios como herramientas, conocimientos,

habilidades, experiencia, etc., que son necesarios para efectuar las

actividades o procesos que requiere el modulo Estadístico. Generalmente

nos referimos a elementos tangibles (medibles) como:

Las páginas dinámicas se ejecutan en el propio servidor web. Por lo tanto,

dependerán del tipo de servidor que dispongamos, de preferencia Apache.

-JSP: Lenguaje script de código abierto. Ampliamente utilizado sobre el

servidor web Apache.

Además se aplicará la herramienta de Programación J DEVELOPER, que

trabaja en 3 capas y permite inspeccionar paso a paso el código, cuenta con

un servidor interno que permite evaluar lo que se va realizando.

Como manejador de Base de Datos luego del análisis de un conjunto de

alternativas se trabajará con POSTGRES que permitirá conectar y

administrar la base de datos.

10

Page 63: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

En contraposición a las tecnologías propietarias, tenemos a nuestra

disposición:

HTML: lo que casi todos usan para hacer páginas web.

CSS: Archivos que manejan los estilos de las páginas; se

encarga de los colores de las páginas, tipo, tamaño y color de las

letras

JavaScript: JavaScript es un estándar.

Java, y otros formatos: sí, insertar contenidos externos en una

web forma parte del estándar HTML, aunque los plugins sean

propietarios.

XML: el futuro para estructurar datos; útil en cualquier sitio.

1.8.3. Factibilidad Económica.

Vamos a detallar los recursos económicos y financieros necesarios para

desarrollar las actividades, procesos y los recursos básicos que deben

considerarse en el desarrollo del Sistema Académico especialmente en el

módulo de Estadísticas, los mas importantes son el tiempo de concluir o

culminar el modulo, el costo de la realización y el costo de adquirir nuevos

recursos , entre otros.

11

Page 64: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

La factibilidad económica es el elemento más importante a considerar dentro

del sistema porque se solventaran las demás carencias de otros recursos.

1.9. ADQUISICIÓN DE HARDWARE:

Procesador: Intel® Pentium® 4 hasta su modelo 630 (3GHz) con tecnología

HP.

Sistema Operativo: XP Professional, incluido en el precio.

Diseño: Disponible en modelos Torre, Escritorio Compacto y Escritorio Ultra

compacto Memoria: 512 Megabyte

Disco duro: 80 GB

Disco óptico: CD-RW/DVD-ROM

Monitor: 17"

Combo: Teclado y mouse óptico.

Se requiere sólo un equipo para cargar el programa, que luego se subirá en

los servidores correspondientes

Costo: 500 usd. Incluido el IVA

12

Page 65: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.9.1. Adquisición de Software.

Sistema Operativo: Linux Suse Enterprise 9.

Base de Datos: Postgres

Reporteador: Ireport, JfreeChart, JasperReport

Herramientas de Desarrollo: JSP Applet.

Costo: Ninguno, descargables desde Internet.

Costo total por HW y SW: 500 usd.

Elaboración del Anteproyecto: 100 usd

Logística: 100 usd

Costo total del proyecto: 700 usd.

Se consideró la adquisición de hosting, los datos aparecerán en el Anexo 2

Considerar Host

13

Page 66: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.10. RECURSOS

Las diferentes herramientas que van a formar parte de este macroproyecto,

son los que la Universidad de Guayaquil nos proporciona, con ayuda de

recursos propios de cada integrante. Para hacer un estudio pormenorizado

de estos recursos los describiremos de la siguiente manera:

1.10.1 Recursos Físicos

El proyecto se lo desarrollara íntegramente en el Laboratorio de

Computación asignado a los cursos de graduación dado por la Carrera

de Ingeniería de Sistemas Computacionales de la Universidad de

Guayaquil.

Muy INDEPENDIENTEMENTE, salvo imprevistos que se susciten

durante el transcurso del proyecto, se lo hará en el sitio de trabajo de

uno de los integrantes, el cual proveerá el ambiente de trabajo para

realizar el desarrollo y pruebas del mismo.

1.10.2. Recursos Tecnológicos

Al igual que el recurso físico, el proyecto se lo realizara con los

equipos que hay en los laboratorios de computación asignados a los

cursos de graduación. Dichos equipos están a disposición de los

14

Page 67: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

diferentes grupos que realizaran el desarrollo de los distintos módulos

a ellos asignados. Las características mínimas de los equipos son:

Computadores Pentium IV de 3.0 Ghz

Disco duros de 80 Gigabytes de capacidad.

Dispositivos multimedia como CD-WRITER

Combo de teclado y mouse optico.

Puertos Seriales, Paralelos y USB

Monitor de 15” CRT.

Drive 3½ “

Claro esta que uno de los integrantes del proyecto, pondrá a

disposición su computador personal para el desarrollo del proyecto de

manera PARALELA al que se realiza en la Universidad de Guayaquil.

Esto se lo hace con la doble intención de ir avanzando con el proyecto

y como medio de respaldo del mismo.

15

Page 68: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.10.3. Recursos Humanos

Está conformado por:

Carlos Delgado Encalada.

Rommel Mila Torres

Tito Ramos Soledispa

La asignación de tareas se dada a medida que se avance con el proyecto,

debido a que por el momento TODOS los integrantes realizamos la

investigación y levantamiento de información para ir estructurando el

proyecto.

1.10.4 Recursos Financieros

Financieramente, la Universidad de Guayaquil no realiza NINGUNA

APORTACION ECONOMICA, al proyecto encomendado, por lo que los

gastos corren exclusivamente por los integrantes, ya sea en la compra de

materiales para talleres y/o logística que haya que realizar en el proyecto.

Dichos recursos NO SON REEMBOLSABLES por la Universidad de

Guayaquil.

16

Page 69: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.10.5. Presupuesto

Los costos por hardware y software, durante el desarrollo del proyecto están

dados de manera intrínseca, debido a que el desarrollo se lo hace en el

Laboratorio de la Universidad de Guayaquil.

Ahora, si no tuviésemos los laboratorios de la Universidad de Guayaquil para

el desarrollo del proyecto, entonces tendríamos que adquirir equipo y

software para realizarlo.

En base a esta premisa, se ha elaborado un análisis de costo de cuanto

totalizaría el proyecto (desde 0).

1.11. METODOLOGÍA

A pesar que se había mencionado que todos los integrantes tenían que estar

inmersos en la concepción – desarrollo y culminación del proyecto, se hace

imprescindible asignar tareas y/o responsabilidades para que de esta manera

cada quien aporte con su trabajo a que el proyecto cumpla con los objetivos

mencionados.

17

Page 70: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

En la etapa de Análisis:

Carlos Delgado Encalada.

Rommel Mila Torres

Tito Ramos Soledispa

En la etapa de Diseño:

Carlos Delgado Encalada.

Rommel Mila Torres

Tito Ramos Soledispa

En la Etapa de Desarrollo e Implementación:

Carlos Delgado Encalada.

Rommel Mila Torres

Tito Ramos Soledispa

18

Page 71: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

En la Etapa de Implementación y Pruebas:

Carlos Delgado Encalada.

Rommel Mila Torres

Tito Ramos Soledispa

19

Page 72: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

CAPÍTULO 2

2. ANÁLISIS

2.1. Levantamiento de información

Conocer la situación académica de los

profesores y alumnos a lo largo de un período o

períodos de clases, de forma manual, es una labor muy

compleja y que tiende a coleccionar información

errónea y los resultados no serían los mejores. Dar la

posibilidad de que los docentes conozcan el

comportamiento de los alumnos en las materias que

imparten, y a su vez conocer la asimilación de la

20

Page 73: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

pedagogía impuesta durante sus clases, es una labor que para el personal

administrativo de la institución académica resulta ser muy laborioso. Mostrar

la información resumida a través de tablas y a su vez acompañar el reporte

con un gráfico el mismo que puede cambiar su forma dependiendo de la

información a mostrar y el orden de la misma. La idea es mostrar gráficos de

calidad que ayuden básicamente al personal administrativo y académico

tomar decisiones para mejorar la calidad del área docente lo que dará como

resultado profesionales de calidad dando la posibilidad de tomar decisiones

futuras y le dará un mayor prestigio a la carrera y a la universidad.

2.1.1. Tipos de gráficos

Desarrollar la aplicación en IReport para graficar la información sobre las

notas de las materias que se imparten en los diferentes cursos. Además de

permitir la comparación entre el rendimiento de los alumnos y las materias

que han tomado para su estudio y realizar comparativas entre el nivel de

captación que tienen los alumnos acorde a la relación maestro – materia. Los

datos podrán se exportados a los formatos txt, xls y pdf.

21

Page 74: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Los reportes estadísticos serán mostrados desde dos ópticas distintas, en el

primero se considerará datos condensados, es decir, información resumida

disgregando la información dependiendo del criterio de consulta como por

ejemplo se permitirá conocer globalmente la situación de la carrera. Se podrá

diferenciar información dependiendo de las materias tomadas por los

alumnos, los cursos en los cuales se imparten materias comunes, el

comportamiento de los alumnos en una misma materia pero en diferentes

cursos, comparar información entre cursos y al mismo tiempo revisar su

comportamiento en periodos anteriores. Este tipo de reportes tendrá una

combinación entre datos condensados y gráficos, aunque se resaltará la

información textual a mostrar.

En el segundo tipo de reporte se considerará solamente gráficos de dos y

tres dimensiones como el pastel, barra de dos dimensiones y barra de tres

dimensiones, permitiendo al usuario escoger el tipo de grafico que se desea

visualizar y que información quiere considerar. El tipo de información

dependerá exclusivamente de los módulos: profesores, alumnos y

matriculación Web. Si el usuario solicita, la información se presentara un

informe dependiendo de las opciones que escoja, se podrá escoger entre

varias opciones el o los criterios de discriminación de la información.

22

Page 75: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.1.2. Generación de reportes fácilmente

El usuario seguirá varios pasos de forma secuencial para generar el

tipo de reporte que desea, tomando en consideración cada uno de los

puntos que ofrece la consulta.

2.1.3. Fácil Implementación

En primera instancia para la consideración del Sistema Académico es el

sistema operativo con que se trabajaría, entre las ventajas de principales de

la tecnología Open Source es que no existen costos de licencia en si mismo.

El mayor diferenciador de todos modos es el que el usuario puede, además

obtener el código fuente. Esto le brinda independencia del proveedor

"contribuyente original" en el lenguaje de Código Abierto. De este modo el

usuario no depende de su existencia y prioridades. Toda la información,

estado, errores-bugs, etc. es abierta también, no existe política de

ocultamiento corporativa ni censura. Si algo no funciona, no tendrá

inconveniente en averiguarlo rápidamente. Como consecuencia, los

proyectos de Código Abierto son muy rápidos para reaccionar, si surgen

23

Page 76: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

problemas. Un desafío de todos modos es el que usted necesita decidir la

importancia de los inconvenientes que pudiesen surgir y el impacto en su

propio proyecto. Se utiliza como sistema operativo a Linux que es el sistema

más flexible para poder conectarse a cualquier ordenador del mundo. Internet

se creó y desarrollo dentro del mundo de Unix, y por lo tanto Linux tiene las

mayores capacidades para navegar, ya que Unix y Linux son sistemas

prácticamente idénticos. Se podrá montar un servidor en su propia casa sin

tener que pagar las enormes cantidades de dinero que piden otros sistemas.

No se sacrifica en ningún momento la creatividad, tal y como lo hacen

algunas compañías informáticas. Linux es una ventana abierta por la que es

posible huir hacia un mundo donde la verdadera informática puede ser

disfrutada sin límites ni monopolios.

También se considera las posibilidades de servidores de Páginas que es la

parte primordial de cualquier sitio de Internet, ya que es el encargado de

generar y enviar la información a los usuarios finales.

Realizamos los siguientes análisis de servidores:

24

Page 77: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.2. SERVIDORES

2.2.1. Servidor de Páginas "Web Server" y Servidor de

Aplicaciones "Application Server" ?

En un sentido muy estricto un "Web Server" no es lo mismo que

"Application Server", pero últimamente estos dos términos se prestan a

una gran confusión especialmente en la elección de uno de ellos para la

realización de Páginas Web.

Cuando se crearon los primeros Servidores de páginas ("Web Server")

como Apache, éste solo era encargado de enviar los datos al usuario final,

pero cualquier otra información que requiriera de algún tipo de

personalización era realizada por un interpretador que ejecutaba un "script"

(programa), generalmente en Perl .Sin embargo, conforme las demandas

de los Servidores de páginas ("Web Server's") incrementaron fue necesario

eficientizar este proceso, ya que el llamar un interpretador para que

ejecutara otro programa (en el caso Perl) ponía una demanda muy fuerte

sobre el "Host" que mantenía el Servidor de Páginas ("Web Server")

25

Page 78: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Hoy en día, se pudiera decir que TODOS los "Servidores de Páginas" ya

son "Servidores de Aplicaciones" ya que se les ha desarrollado alguna

funcionalidad especial que les permite realizar, valga la redundancia,

aplicaciones de servidor. Y para agregar a la confusión en la Industria hoy

día ya abundan los "Java Application Servers" que son otra cosa muy

diferente y malamente ya son designados "Application Servers" o

"Servidores de Aplicaciones" a solas.

Dependiendo de la funcionalidad se trae consigo complejidad al sistema,

ya sea en la forma de requerimientos del sistema (memoria, procesadores),

carga administrativa (configuración, tiempo de desarrollo) o alguna

otra. Requisición común:

En el diagrama anterior se puede observar que un navegador ("Netscape" o

"Explorer") solicita información al servidor de páginas, esta solicitud

inicial se lleva acabo mediante HTTP , sin embargo, una vez que esta

solicitud llega al Servidor ésta puede tomar varias acciones. En el

esquema las lineas punteadas ( -- -- ) representan un proceso/programa

dentro del "Host" (computadora física), bajo esta hipótesis se

describirán los "Servidores de Páginas".

26

Page 79: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.2.2. Apache

Apache es uno de los Servidores de páginas más utilizados, posiblemente

porque ofrece instalaciones sencillas para sitios pequeños y si se requiere

es posible expandirlo hasta el nivel de los mejores productos

comerciales. Si se utiliza para un sitio pequeño que solo contenga

archivos en HTML, esto es, no requiera de aplicaciones de servidor su

funcionalidad es excelente, pero que sucede cuando se requiere una

aplicación de Servidor ? La aplicación de servidor implica lo siguiente:

Cuando el servidor de páginas (Apache) recibe la requisición para "x"

página éste reconoce cuando debe enviar un documento estático (HTML) o

ejecutar algún tipo de aplicación, en el diagrama se puede observar que la

solicitud de "x" página invoca (llama) un programa en Perl y este a su vez

solicita información a una base de datos, por lo tanto para llevar acabo esta

operación debieron iniciarse 2 procesos nuevos, quizás esto no sea de gran

27

Page 80: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

importancia para un sitio de 100 visitas diarias, pero que sucedería con uno

de 2 visitas por segundo ?

Si no se tienen los suficientes recursos en cuanto a memoria y

procesadores se refiere, seguramente caerá el servidor de páginas o bien

se queme el "Host" (computadora física) por la demanda excesiva. Apache

tiene tanto tiempo de desarrollo que han sido desarrolladas diferentes

soluciones para evitar estas ineficiencias, algunas:

Es capaz de utilizar otros interpretadores y lenguajes como "Tcl", "PhP" y

"Python" .

Puede conectarse directamente a una Base de datos.

Entre otras, posee diversos módulos que le permiten utilizar una gran

gamma de lenguajes y desarrollar funcionalidades avanzadas.

Cabe mencionar que muchos sitios de alto tráfico aún permanecen bajo

este tipo de Arquitectura, en ocasiones si se tienen los recursos

suficientes continua siendo costeable esta metodología a migrar a otro tipo

de desarrollo, sin embargo, siempre es conveniente conocer otras

alternativas.

28

Page 81: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.2.3. AOLServer

AOLServer al igual que Apache es un producto open-source pero a

diferencia de este último, fue diseñado conociendo varias deficiencias que

existían en el modelo inicial utilizado por Apache.

AOLServer desde sus versiones iniciales fue desarrollado con "Threading"

en mente, esto es, compartir la memoria del Proceso general en varios sub-

procesos o "Threads", esto no solo eficientiza las conexiones al servidor

de páginas sino también reduce la carga sobre el mismo.

Además de "Threading" AOLserver integra un Interpretador en su estructura

interna evitando generar un proceso nuevo por aplicación de servidor y

mantiene grupos de conexiones latentes ("pools") hacia bases de datos

también para evitar generar procesos nuevos.

Otra ventaja de AOLServer es el ofrecimiento de ADP ("Aol Dynamic

Pages") que son muy similares a las ASP's (Active Server Pages) de

29

Page 82: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Microsoft o JSP's (Java Server Pages) de Sun, la diferencia estriba que

ADP's utilizan el lenguaje Tcl y un API especialmente diseñado para

accesar los elementos del servidor, pero su funcionamiento es igual al de

ADP y JSP: mezclar elementos de HTML con elementos de programación

para generar contenido dinámico.

Como último punto es utilizado por una de las empresas con mayor tráfico

en Internet America Online, el proveedor de Servicios de Internet (ISP)

más grande del mundo. Un poco más en Ventajas y Desventajas

comparado con Apache

2.2.4. IIS (Information Server)

IIS es el servidor de páginas desarrollado por Microsoft para Windows

NT/2000, a diferencia de los dos servidores de páginas mencionados

anteriormente, IIS solo puede operar en plataformas Windows. El punto

más favorable de este servidor son ASP's que facilitan el desarrollo de

aplicaciones y la "sencillez" de instalación, sin embargo, existen alternativas

como ADP's de Aolserver y JSP's para Java. Desafortunadamente debido

a la presencia de Microsoft en el Mercado seguirá siendo necesario

interactuar con este producto a pesar de todas sus desventajas:

30

Page 83: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Plataforma: Solo esta disponible para Windows. Historia de Sistemas

Operativos para Red y Porque es mas fácil y Económico configurar Unix

que Windows en Red

Costo: Porque pagar licencia si existen productos flexibles y open-

source mejores.

Confiabilidad: Menos confiable que otros productos , tan confiable

que ni sus mejores técnicos podían utilizarlo cuando se encontraba bajo

uno de los tantos ataques que sufren sitios de Internet:

Seguridad: Aún plagado de fallas en versiones de producción:

2.2.5. Otros Servidores Similares

1. Zope : Zope es un servidor de páginas open-source que utiliza Python

como su "Scripting Language" y es capaz de acceder un gran numero de

bases de datos

"Servlet Engines" y "Java Application Servers"

31

Page 84: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.2.6. Servlet Engines

Quizás el nombre que más salga a relucir con "Servlet Engines" es Tomcat

o Jakarta Apache. Tomcat surgió de Sun Microsystem's cuando

desarrollaban un "Servidor de Páginas" que utilizara "Java",y

posteriormente cedieron el código fuente a la fundación Apache.

A pesar del nombre Apache-Tomcat; Tomcat no requiere de Apache para su

funcionamiento (solo requiere de un JDK ("Java Development Kit") y es

aquí donde dista un poco de las previas implementaciones:

En la figura anterior la línea roja demuestra que el Servlet engine (también

llamado "Web Container") es capaz de responder a requisiciones de

Internet, en efecto actuando como "Servidor de Páginas", sin

embargo, aunque esto sea posible la gran mayoría de las

implementaciones de Servlet Engines no funcionan tan eficiente como un

"Servidor de Páginas", es por esto (y otras razones que a continuación se

mencionan) que se opta por utilizar un "Servidor de Páginas" (Apache, Aol,

Netscape..) en conjunción con un "Servlet Engine".

32

Page 85: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

La linea verde demuestra la utilización de un "Servidor de Páginas" con un

"Servlet Engine" (Web-Container), esta implementación suele utilizarse

cuando se requiere utilizar encriptación o se tiene un sitio que contiene

documentos puros en HTML , las cuales son dos areas que un "Servidor

de Páginas" supera en desempeño comparado con un "Servlet Engine". La

comunicación entre el "Servidor de Páginas" y el "Servlet Engine" se lleva

acabo mediante el protocolo denominado ajp12 y recientemente con su

sucesor ajp13 .

Que hace el Servlet Engine ?

El "Servlet Engine" ofrece un "Ambiente" donde habitan los JSP y Servlets,

es ahí donde se contemplan una gran cantidad de funcionalidades como:

threading, manutención de sesiones, conectividad con el "Servidor de

Páginas", es por esto al "Servlet Engine" también se le denomina "Web-

Container".

Dos "Servlet Engines" (Web-Containers) que están en amplio uso y son

utilizados con "Servidores de Páginas" son: Tomcat y ServletExec, donde el

primero es open-source y el último es un producto cerrado; otro "Servlet

Engine" es Resin (Open-Source) el cual permite: utilizar JavaScript

como "Scripting Language" dentro de JSP's y acceso a XSL una

extensión de XML .

33

Page 86: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Como se observa en el diagrama también se requiere de un JDK ("Java

Development Kit") , el cual llevará acabo la ejecución de los programas

("Servlets" y "JSP's") en Java; como toda otra implementación existen

diversas versiones de JDK's, esto se debe a que cada JDK debe ser

diseñado alrededor de un Sistema Operativo (para ser más exactos es el

JVM "Java Virtual Machine" el que debe ser diseñado alrededor del Sistema

Operativo ), algunos JDK's son: J2SE's (Java 2 Standard Edition) de Sun

y JDK's de IBM

2.2.7. Java Application Servers

"Java Application Servers" hoy en día ya denominados "Application Servers"

ofrecen una manera de Integrar y ofrecer las funcionalidades requeridas por

la gran mayoría de sistemas empresariales, una de las razones por las

cuales el mercado ha sido inundado con estos "Application Servers" es que

están diseñados alrededor de J2EE, que es solo un grupo de

especificaciones definidas por Sun.

Estos "Application Servers" comúnmente llamados Middleware se

encuentran compuestos de la siguiente manera:

34

Page 87: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Como su denominación lo implica ("Middleware") se encuentran en la

parte media de una arquitectura de sistema, su flexibilidad reside en la

posibilidad de accesar información en sistemas empresariales (EIS) como

SAP, JdEdwards, bases de datos o alguna aplicación escrita en COBOL u

otro lenguaje.

Dependiendo de la empresa que desarrolle el "Application Server" éste

puede contener inclusive hasta un "Servidor de Páginas" o algún otro

desarrollo propietario, sin embargo, los dos elementos primordiales (aunque

no sean comercializados como tal) son el "Servlet Engine" (Web-

Container) y "Enterprise Bean Engine" (Bean-Container).

Que hace el Servlet Engine y Enterprise Bean Engine ?

35

Page 88: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

El Servlet Engine (Web-Container) en un "Application Server" realiza las

mismas funcionalidades que fueron mencionadas anteriormente.(Ofrecer

un ambiente para JSP y Servlets).

El "Enterprise Bean Engine" (Bean-Container) ofrece un "ambiente"

donde residen EJB's ("Enterprise Java Beans") , es mediante "Enterprise

Java Beans" que se ejecuta la lógica de negocios sobre la información

que reside en los sistemas empresariales ("EIS"). En el "Bean Container"

(al igual que en el "Web Container") se contemplan varias

funcionalidades: "Pooling" hacia bases de Datos (JDBC),control de

transacciones(JTA-JTS),conectividad con ERP(Connectors),aplicaciones

legacy(CORBA),entre otras cosas.

La mayor ventaja de este tipo de arquitectura se debe a la separación de

funcionalidades y uso de protocolos de red como RMI/CORBA , esto

facilita que puedan existir 4 o 5 "Hosts" en diferentes regiones geográficas,

cada uno empleando cualquiera de los componentes antes mencionados.

Por último, existen diversos "Application Servers" que son denominados

"Fully J2EE Compliant" esto indica que cumplen con todas las

especificaciones J2EE indicadas por Sun.

36

Page 89: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.3. DISEÑO DEL SISTEMA

2.3.1. Casos de Uso

2.3.1.1. Introducción

El diagrama de casos de uso representa la forma en como un Cliente

(Actor) opera con el sistema en desarrollo, además de la forma, tipo y orden

en como los elementos interactúan (operaciones o casos de uso).

Un diagrama de casos de uso consta de los siguientes elementos:

Actor.

Casos de Uso.

Relaciones de Uso, Herencia y Comunicación.

2.3.1.2. Elementos

Actor:

Una definición previa, es que un Actor es un rol que un usuario juega con

respecto al sistema. Es importante destacar el uso de la palabra rol, pues con

37

Page 90: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

esto se especifica que un Actor no necesariamente representa a una persona

en particular, sino más bien la labor que realiza frente al sistema.

Como ejemplo a la definición anterior, tenemos el caso de un sistema de

ventas en que el rol de Vendedor con respecto al sistema puede ser

realizado por un Vendedor o bien por el Jefe de Local.

Caso de Uso:

Es una operación/tarea específica que se realiza tras una orden de algún

agente externo, sea desde una petición de un actor o bien desde la

invocación desde otro caso de uso.

Relaciones:

o Asociación

Es el tipo de relación más básica que indica la invocación desde un actor o

caso de uso a otra operación (caso de uso). Dicha relación se denota con

una flecha simple.

o Dependencia o Instanciación

Es una forma muy particular de relación entre clases, en la cual una clase

depende de otra, es decir, se instancia (se crea). Dicha relación se denota

con una flecha punteada.

38

Page 91: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

o Generalización

Este tipo de relación es uno de los más utilizados, cumple una doble función

dependiendo de su estereotipo, que puede ser de Uso (<<uses>>) o de

Herencia (<<extends>>).

Este tipo de relación esta orientado exclusivamente para casos de uso (y no

para actores).

extends: Se recomienda utilizar cuando un caso de uso es similar a otro

(características).

Uses: Se recomienda utilizar cuando se tiene un conjunto de características

que son similares en más de un caso de uso y no se desea mantener

copiada la descripción de la característica.

De lo anterior cabe mencionar que tiene el mismo paradigma en diseño y

modelamiento de clases, en donde esta la duda clásica de usar o heredar.

2.3.1.3 Elaboración de los casos de uso del proyecto

Interfase Web para interactuar remotamente con los módulos del sistema

cadémico de la Carrera de Ingeniería en Sistemas Computacionales de la

Universidad de Guayaquil.

39

Page 92: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

La interfase web debe permitir el acceso a Sistemas académico dándole al

usuario las opciones dinámicas de:

Registrarse como usuario del sistema académico.

Visualizar el menú de opciones del sistema académico:

a. Biblioteca Virtual

b. Prestamos de equipos

c. Sysllabus

d. Mail

e. Profesor

f. Matriculación

g. Estadisticas

h. Forum

Un usuario tiene privilegios para acceso a opciones:

a. El usuario alumno

b. El usuario profesor

c. El usuario administrativo

El usuario desea cambiar tipo de apariencia de su pagina:

a. Usando una plantilla de iconos, fuentes y fondos.

b. Visualizar con iconos las opciones del menú en una barra de

tareas

El usuario desea descargar archivos importantes:

a. Deberes o talleres

40

Page 93: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

b. Reportes de notas

c. Otras opciones de los menús

El usuario debe poder añadir una foto suya en :

a. La ventana visualizada

b. En el archivo de registro de estudiantes en la base de datos

2.3.2. FLUJO DE VENTANAS

2.3.2.1. Flujo de procesos de ventanas: Estadísticas de evaluación de

profesores.

Nombre: Evaluación de profesores.

Actores: Profesores - Administradores

Función: Presentar la calificación de los profesores considerando las

evaluaciones realizadas a los alumnos en cada una de las materias que

imparten.

Descripción: El usuario podrá visualizar la calificación luego de las

evaluaciones que se realizan a los alumnos sobre la calidad, capacidad y

comportamiento de los docentes en las materias que tienen asignadas. El

gráfico mostrará la calificación de 5 categorías, excelente, muy bueno, bueno

regular y malo.

41

Page 94: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

FORMATOS DE EVENTOSFORMATOS DE EVENTOS

Evento: Presentación de evaluación de profesores.

1. Escoger la forma de cómo se desea mostrar la información, todos, por

nombre, identificación, o fecha de ingreso.

2. Ejecución de sentencias SQL para mostrar datos en pantalla de

acuerdo al requerimiento.

3. Listado de profesores y las materias asignadas a cada uno.

4. Escoger una materia de un profesor, o escoger el profesor para ver la

situación de todas sus materias.

5. Ejecución de los Bean de Datos: mostrará el gráfico dependiendo de

la opción escogida.

2.3.2.2. Flujo de procesos de ventanas: Estadísticas de Materias

Nombre: Notas por materia.

Actores: Profesores - Administradores

Función: Presenta el rendimiento de los alumnos en la materia o materias

presentadas.

Descripción: El usuario podrá visualizar el rendimiento de los alumnos en

una materia específica, lo que permitirá conocer el número de alumnos

aprobados, reprobados y aquellos que van a recuperación.

42

Page 95: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

FORMATOS DE EVENTOSFORMATOS DE EVENTOS

Evento: Presentación de Notas por Materias.

1. Escoger la forma de cómo se desea mostrar la información, todas, o

por nombre.

2. Ejecución de sentencias SQL para mostrar datos en pantalla de

acuerdo al requerimiento.

3. Listado de las materias.

4. Escoger una materia.

5. Ejecución de los Bean de Datos: mostrará el gráfico dependiendo de

la materia escogida.

2.3.2.3. Flujo de procesos de ventanas: Estadísticas de Alumnos

Nombre: Estadísticas por alumnos.

Actores: Profesores - Administradores

Función: Presenta el rendimiento de los alumnos en la materia o materias

presentadas.

Descripción: El usuario podrá visualizar el rendimiento de los alumnos en

las materias que cursa durante un período de clases, y su comportamiento

en períodos anteriores.

FORMATOS DE EVENTOSFORMATOS DE EVENTOS

Evento: Presentación de Estadísticas por alumnos.

43

Page 96: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

6. Escoger la forma de cómo se desea mostrar la información, todos, por

nombre o identificación.

7. Ejecución de sentencias SQL para mostrar datos en pantalla de

acuerdo al requerimiento.

8. Listado de alumno(s).

9. Escoger un alumno.

10.Ejecución de los Bean de Datos: mostrará el gráfico dependiendo del

alumno escogida.

2.3.3. DIAGRAMA DE FLUJO DE DATOS (DFD)

El diagrama de flujo de datos es un modelo que describe los flujos de datos o

tuberías, los procesos que cambian o transforman los datos en un sistema,

las entidades externas que son fuente o destino de los datos (y en

consecuencia los límites del sistema) y los almacenamientos o depósitos de

datos a los cuales tiene acceso el sistema, permitiendo así describir el

movimiento de los datos a través del sistema.

44

Page 97: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

En síntesis, el Diagrama de Flujo de datos describe:

Los lugares de origen y destino de los datos(los límites del

sistema)

Las transformaciones a las que son sometidos los datos(los procesos

internos)

Los lugares en los que se almacenan los datos dentro del sistema

Los canales por donde circulan los datos

2.3.3.1. Características

Relevante: ya que posibilita comunicar diferentes modelos para así

facilitar el entendimiento entre el usuario y el analista de sistemas

Lógico: ya que no identifica soporte físico

Descendente: Se construye en forma descendente de lo general a

lo particular

El DFD posee niveles de desagregación o explosión o apertura de burbujas.

El Nivel 0 o Diagrama de Contexto es aque que muestra una sola burbuja y

las entidades externas o terminadores con los que interactúa el sistema.

45

Page 98: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.3.3.2. SIMBOLOGÍA

2.3.3.2.1 Entidad Externa

Son generalmente clases lógicas de cosas o de personas, las cuales

representan una fuente o destino de transacciones, como por ejemplo

clientes, empleados, proveedores, etc., con las que el sistema se comunica.

También pueden ser una fuente o destino específico, como por ejemplo

Departamento Contable.

Como el sistema que esta bajo análisis acepta datos de otro sistema o bien

se los provee, este otro sistema es una Entidad Externa.

Mediante la designación de alguna cosa o de algún sistema como Entidad

Externa estamos estableciendo implícitamente que se encuentra fuera de los

límites del sistema que estamos considerando por lo cual no nos interesa la

transformación o proceso que se realiza dentro de ellos, es decir que están

fuera del control del sistema que se está modelando. Son sólo proveedores o

requeridores de datos del sistema bajo consideración.

Por todo ello, ni el analista ni el diseñador pueden cambiar ni los contenidos

ni la forma de trabajo de un terminador.

46

Page 99: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.3.3.2.2. Proceso

Indican aquellos lugares dentro del sistema en donde la información (flujos

de datos) que ingresan se procesan o transforman. Es decir, son las

funciones o procesos que transforman entradas de datos en salidas de

información.

Su nombre deberá ponerse mediante una frase imperativa, que consistirá

idealmente de un verbo activo seguido por una claúsula objeto, cuanto mas

simple mejor. Al analista le servirá pensar que la descripción de la función es

"una orden a un empleado sin conocimiento del tema". Estas frases

imperativas no tienen sujeto; tan pronto como se introduce un sujeto se habrá

indicado como deberá realizarse físicamente la función ("El operador

ingresará los datos del alumno").

Un proceso puede ser físicamente una oficina repleta de empleados, un

procedimiento, o una combinación de actividades manuales y automatizadas.

47

Page 100: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.3.3.2.3. Flujo de datos

Representa un transporte de paquetes de datos desde su origen hasta su

destino, es decir que representa una estructura de datos en movimiento de

una parte del sistema a otro.

Un flujo muestra las interfaces entre los elementos del DFD.

Puede imaginarse como una tubería por donde se envían paquetes de datos,

pero deberá tener una descripción de su contenido la cual deberá elegirse de

forma que sea lo más útil posible a los usuarios que revisen el DFD.

La flecha indica la dirección del flujo.

Puede estar contenido físicamente en una nota, una factura, una llamada

telefónica, de programa a programa, etc. Es decir, en cualquier medio por el

cual los datos pasan de una entidad o proceso a otra.

2.3.3.2.4. Almacén o archivo

Representa un archivo lógico en donde se agregan o de donde se extraen

datos. Es una estructura de datos, pero estática.

48

Page 101: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Puede ser físicamente un archivo de tarjetas, una microficha, un archivo, o

un archivo en cinta o diskette.

Deberá elegirse el nombre que sea más descriptivo para el usuario, que

identifique los paquetes de datos que contiene.

Implica escritura, actualización o borrado de datos.

Implica lectura o recuperación de información almacenada.

2.3.3.2.5. Guías para construir un DFD

Primero se deberán identificar las entidades externas ya que ello

implica definir los límites del sistema.

Se deberán elegir nombres con significado tanto para procesos

como también para flujos de datos, almacenes y entidades

externas. Si es posible a partir del vocabulario del usuario evitando

terminologías técnicas.

Identificar el papel del proceso del sistema, no quien lo realiza.

49

Page 102: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Numerar los procesos, mediante un esquema de numeración

consistente que implique, para los lectores del DFD, una cierta

secuencia de ejecución.

Se deberán, en la medida de lo posible, evitar los DFD

excesivamente complejos. Deberán ser comprensibles, digeribles

y agradables a la vista sin demasiados elementos.

Todos los elementos se relacionan entre sí a través de flujos de

datos.

Procesos: Se relacionarán con:Almacenes, Entidades

externas,Otros Procesos. Deberán tener almenos una Entrada y

una Salida, no son manantiales de datos

Almacenes: Se relacionarán solamente con Procesos.

Entidades Externas: Se relacionarán solamente con Procesos.

En todos los niveles del Diagrama de Flujo de Datos deberá haber

igual cantidad de Entradas y de Salidas.

Niveles del DFD: Nivel de Partida o Diagrama de Contexto: No

existirán almacenes o archivos, se representarán las entidades

externas que son fuente y destino de los datos, el sistema será

50

Page 103: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

representado como un proceso simple, sefdibujarán sólo los flujos

de datos de comunicación exterior-sistema. Nivel 1 y

subsiguientes: Deberá haber igual cantidad de archivos. Aunque

podrá existir mayor cantidad de almacenamientos en el nivel 2

debido a la explosión de algún proceso. En el último nivel, cada

proceso realizará una función específica y concreta.

Cada proceso en el DFD de alto nivel de un sistema puede ser

"explotado" para convertirse en un DFD en si mismo.

Cada proceso en el nivel inferior deberá estar relacionado,

inversamente, con el proceso del nivel superior. Es decir que, cada

proceso “padre” que se detalla en el DFD, ha de estar balanceado.

La regla del balanceo consiste en que cada proceso debe tener

exactamente los mismos datos de entrada/salida netos que el

DFD hijo.

Los flujos de datos pueden descomponerse en la “explosión” del

proceso en un DFD hijo.

No se deberá prestar atención a las condiciones de tiempo,

excepto a las naturales precedencias lógicas y a los

almacenamientos de datos necesarios desde el punto de vista

lógico. Se deberá dibujar un sistema que nunca comience ni pare.

51

Page 104: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Para evitar el cruzamiento de las líneas de flujo de datos, la misma

entidad (o el mismo almacén) se podrá dibujar mas de una vez en

el mismo diagrama; las dos (o mas) casillas por entidad pueden

identificarse con dos líneas inclinadas en el ángulo superior

izquierdo de las mismas.

Elegir nombres con significado para todos los componentes: Para

los procesos: Identificar las funciones que el sistema está llevando

a cabo. Usar un verbo y un objeto. Evitar verbos ambiguos: hacer,

manejar, procesar, etc.

Numerar los procesos:como forma abreviada de identificar las

burbujas, base para la numeración jerárquica.

Redibujar el DFD tantas veces como sea necesario para que sea:

Técnicamente correcto, Aceptable para el usuario,Estar lo

suficientemente bien dibujado para mostrarlo a la dirección de la

organización

Evitar los DFD demasiado complejos, deben ser leídos y

comprendidos

Todos los flujos y procesos deben estar etiquetados

52

Page 105: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Tener cuidado con los almacenes de “sólo lectura” o “sólo

escritura”

En sistemas típicos, simples 2 o 3 niveles, medianos 3 a 6, grande

5 a 8.

Un enfoque que tiene más éxito es identificar los acontecimientos

externos a los cuales debe responder el sistema y utilizarlos para

crear un primer borrador del DFD. De ahí puede partirse hacia

arriba (para crear DFD de mayor nivel de abstracción) y hacia

abajo.

53

Page 106: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

CAPITULO 3

3.1. DESARROLLO Y PRUEBA DEL SISTEMA

3.1.- Desarrollo del Sistema

a. Definición de Reportes a generar.

Los grupos consideraos para la

generación de reportes son: Profesores,

alumnos y materias, esta información se

encuentra almacenada en la base de

datos Sistema _ académico.

54

Page 107: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

3.2 DESCRIPCIÓN DE LOS REPORTES.

3.2.1 Reporte de profesores

Para generar los Reportes de profesores, la información debe ser

alimentada a través de los Módulos profesores y matriculación Web ya que

ellos se encargaran de almacenar la información personal y académica de

los docentes y las calificaciones obtenidas por las evaluaciones hechas por

los alumnos, así como también las calificaciones obtenidas por los alumnos

en las diferentes materias que imparten los profesores. Los gráficos que se

generen serán de dos tipos, gráficos de barra y gráficos tipo pie. Al momento

de consultar la información se mostrara un listado de todos los profesores o

el profesor seleccionado con cada una de las materias que el imparte, de

esta forma se puede conocer la situación de los alumnos (aprobados,

reprobados y recuperación), en cada una de las materias asignadas; y

también el usuario conocerá en que categoría se encuentra luego de la

evaluación que realiza la administraron de la carrera a los alumnos de todos

los semestres.

55

Page 108: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

3.2.2 Reporte de alumnos

Para generar los Reportes de alumnos, la información debe ser

alimentada a través de los Módulos alumnos y matriculación Web ya que

ellos se encargaran de almacenar la información personal de los alumnos

para que el docente pueda avaluar a los alumnos y así asimilar el

rendimiento de las materias que ha tomado durante un periodo determinado,

considerando las calificaciones de cada una de las materias que el cursa. La

información se mostrara en gráficos de barra. También se podrá optar por ver

el rendimiento de alumno en periodos pasados.

3.2.3 Reporte de materias

Para generar los Reportes de materias, la información debe ser

alimentada a través de matriculación Web ya que se encarga de la definición

de periodos, ciclos y almacenamiento de las calificaciones de los alumnos.

La información mostrara el rendimiento de los profesores en una o varias

materias y en cualquiera de los periodos registrados; mostrando el

rendimiento de los alumnos en dicha materia.

56

Page 109: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

3.3. PRUEBAS DEL SISTEMA

En el trayecto del sistema se pudo apreciar las características de los

gráficos que iban cambiando de acuerdo a la información que se iba

ingresando en la base de datos. Depende principalmente de los datos que se

vayan tomando de los módulos de profesores, materias y matriculación Web.

Dando como resultado varios tipos de gráficos ya sea en 2 dimensiones o

tres dimensiones, llegando a su forma ideal.

3.3.1. MODELO DE PRUEBA

Se ha basado en el siguiente flujo para pruebas como se detalla a

continuación:

Configuración del software

Modelo de fiabilidad

Configuración de prueba

Resultadosesperados

Correcciones

Prueba Evaluación DepuraciónResultados Errores

Datos detasa de error

Predicción de fiabilidad

57

Page 110: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Se proporcionan dos clases de entradas al proceso de prueba: una

configuración del software que especifica los requisitos del software, diseño

y el código fuente; La otra es una configuración de prueba que incluye un

plan de procedimiento de prueba.

Se realizan las pruebas correspondientes y se evalúan los resultados, se

comparan los resultados de la prueba con los esperados. Si encontramos

errores se comienza con la depuración.

A medida que se van recopilando y evaluando los resultados de la prueba,

van surgiendo medidas de la calidad y de la fiabilidad del software; Si se

encuentran con regularidad serios errores que requieren de modificaciones

en el diseño, la calidad y la fiabilidad quedan en entredicho, siendo necesaria

a posteriores pruebas. Si por otro lado, el funcionamiento parece ser

correcto y los errores que se encuentran son fáciles de corregir, entonces, la

calidad y la fiabilidad son aceptables, o las pruebas son inadecuadas para

descubrir errores serios.

Finalmente, si la prueba no descubre errores, éstos serán descubiertos por

el usuario y corregidos por el profesional durante la fase de mantenimiento.

58

Page 111: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

La evaluación se lleva a cabo conforme progresa el desarrollo en los

módulos del programa, la evaluación se realiza a diferentes niveles y a varios

intervalos, aún antes de que el sistema entre en operación, todos los

programas deben de examinarse en cuanto a su diseño con datos de

prueba y verificar si los módulos se enlazan entre sí, tal y como fue

planeado.

3.3.2. Objetivos de la prueba

Verificar que los datos ingresados por los módulos (Profesores, Alumnos y

Matriculación Web) relacionados al nuestro sean los correctos. Y a su vez

revisar que los resultados mostrados sean los solicitados.

El objetivo es diseñar pruebas que saquen a la luz diferentes clases de

errores en el sistema, haciéndolo en la menor cantidad de tiempo y esfuerzo.

Si la prueba se lleva a cabo con éxito se descubrirán errores en el sistema,

otra ventaja es que la prueba demuestra hasta qué punto el sistema

funciona de acuerdo con las especificaciones y alcanza los requisitos de

rendimiento deseados. Además los datos que se van recogiendo a medida de

que se lleva a cabo la prueba proporcionan una buena indicación de la

fiabilidad del sistema e indican la calidad del mismo como un todo.

59

Page 112: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

60

Page 113: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

CAPÍTULO 4

4. IMPLEMENTACION DE SISTEMAS

4.1. Implementación de Sistemas

Se realiza en primera instancia un diseño de

la solución o del sitio web utilizando

estrategias y seleccionando las mejores

opciones en software y recursos.

Luego el diseño de nuestro sitio, con toda la

información necesaria y un diseño de alto

nivel.

61

Page 114: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Y finalmente la entrega del servicio, la puesta en marcha del

proyecto a través de Internet.

4.2. Elementos Físicos

equipos hardware (servidores, portátiles, pendrives,

impresoras,, etc).

Soportes de software (CDs, cintas, diskettes, discos

duros fijos o extraíbles).

4.3. Elementos Lógicos

Espacio del sitio donde se encuentran las bases de datos,

las páginas web, los gráficos, etc. Todos los elementos

que conforman mi sitio web.

Dentro de las pruebas, se realizaron una para verificar que

la opción escogida muestre los datos adecuados y la otra

62

Page 115: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

es que el grafico mostrado muestre en forma condensada

lo solicitado por medio de la consulta.

4.4. Elementos Humanos

Las personas:

Administradores, usuarios, personal de

mantenimiento.

Usuarios: pueden ser estudiantes, personal

académico y administrativo.

4.5. Infraestructuras

En la medida en que los negocios enfocan sus operaciones y esfuerzos de TI

en adicionar valor al negocio y alinearlos con los objetivos del mismo, se

enfrentan con el reto de una infraestructura que se incrementa en

complejidad.

Aspectos de seguridad y disponibilidad, respaldos, almacenamiento,

requerimientos de aprovisionamiento y muchos otros, que demandan cada

63

Page 116: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

vez más mantener los costos bajos y la disponibilidad alta, con este proyecto

queremos.

Se ofrece soluciones predefinidas que integran a la mejor tecnología,

implantación, definiciones de tareas y roles, procedimientos de usuario,

ayudas. Este proyecto esta destinado a agilizar las consultas, generación de

reportes académicos de profesores y alumnos durante un periodo

determinado y así convertirse en una herramienta de toma de decisiones en l

aparte administrativa.

4.6. Capacitación de los Usuarios

Obviamente, toda la infraestructura implementada puede ser dejada a un tipo

de administración local. Por esto, hemos pensado en una pequeña

capacitación de los usuarios finales y de los administradores para mantener

en correcto orden el funcionamiento del sistema.

64

Page 117: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

65

Page 118: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

CAPÍTULO 5

5. RECOMENDACIONES Y CONCLUSIONES DE LA TESIS

5.1. Recomendaciones

5.1.1. Hardware

Computadores Pentium IV de 3.0 Ghz

Disco duros de 80 Giga bites de

capacidad.

Dispositivos multimedia como CD-

WRITER

66

Page 119: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Combo de teclado y mouse óptico.

Puertos Seriales, Paralelos y USB

Monitor de 15” CRT.

Drive 3½ “

5.1.2. Software

Sistema Operativo Windows / Linux

Jasper Reports

Programación en JSP, SERVLETS, XML

Base de Datos POSTGRESS

5.1.3. Cableado

No hay cableado la conexión es vía Internet.

67

Page 120: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

5.1.4. Puesta en marcha

Poner en marcha el módulo desarrollado y someterlo a un proceso de

evaluación.

Al comenzar la operación del nuevo sistema ya estaban incorporados los

datos históricos.

Se realizó los detalles de los pasos a seguir para instalar el nuevo módulo.

Nivel Técnico.

Se detalló los procedimientos. Nivel Usuario operador y administrador.

Luego se operó el nuevo sistema con datos reales, a fin de efectuar los

ajustes que sean necesarios antes de dar por entregado el sistema.

Las áreas usuarias deben analizar las salidas del nuevo sistema y formular

todas aquellas observaciones que pudieran surgir.

68

Page 121: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

5.2 Factores Estructurales

Instalaciones: control de acceso, riesgo de desastre (inundación,

incendio, etc.)

Suministro eléctrico a los sistemas informáticos.

5.2.1 Factores Tecnológicos

Arquitectura de la red: redundancia de equipamiento electrónica,

cableado, suministradores...

Equipos: configuración física de los equipos, redundancia.

Contratos de mantenimiento y soporte con terceras empresas.

5.2.2 Factores Humanos

Recursos humanos: funciones, coordinación, formación.

69

Page 122: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

5.2.3 Factores Organizativos

Procedimientos para la gestión y control de seguridad.

70

Page 123: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

CONCLUSIÓN

La Carrera de Ingeniería en Sistemas Computacionales debe contar con un

Sistema Académico que cumpla con todas sus necesidades y acorde a las

nuevas tecnologías informáticas existentes en nuestro mercado.

El Sistema Académico que se ha desarrollado proporcionara mayor agilidad

al proceso de matriculación y se adaptara a los cambios futuros en los

reglamentos académicos de la Carrera.

El módulo estadístico se convertirá en la herramienta del sistema académico

indispensable para las tomas de decisiones, ya que permitirá conocer el

rendimiento académico de los docentes al momento de impartir cada una de

las cátedras habilitadas en los períodos de clases y la forma receptiva de los

alumnos a través de las evaluaciones que se realizan periódicamente; así, se

garantiza que los alumnos adquieran los conocimientos necesarios para

convertirse en profesionales de la mas alta calidad académica. El módulo

estadístico presenta la información de forma condensada, gráfica y fácil de

entender.

71

Page 124: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

Podemos garantizar que este módulo es la principal herramienta para las

tomas de decisiones académicas para el personal administrativo y docente

que utilice el sistema académico.

72

Page 125: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

INDICE GENERAL - MANUALES

1. PROCESOS DEL MÓDULO ESTADÍSTICO

1.1. FLUJO DE PROCESO DE VENTANAS

1.1.1 CONSULTA DE ESTADÍSTICAS PRINCIPAL

1.1.2 FORMATO DE EVENTOS

1.2.1 CONSULTA DE ESTADÍSTICAS DE PROFESORES

1.2.2. FORMATO DE EVENTOS

1.3.1. CONSULTA DE ESTADÍSTICAS DE EVALUACIÓN DE PROFESORES

1.3.2 FORMATO DE EVENTOS

1.4.1.CONSULTA DE ESTADÍSTICAS DE MATERIAS

1.4.2. FORMATO DE EVENTOS

1.5.1 CONSULTA DE ESTADÍSTICAS DE ALUMNOS

1.5.2. FORMATO DE EVENTOS

2. DESCRIPCION DE PROGRAMAS

2.1.DESCRIPCION DE PROGRAMAS DE CONSULTA

2.1.1. PROGRAMA: LISTAR_PROFESORES.JSP

2.1.2. PROGRAMA: LISTAR_EVALUACIONES.JSP

Page 126: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.1.3. PROGRAMA: LISTAR_ALUMNOS.JSP

2.1.4. PROGRAMA: LISTAR_MATERIAS.JSP

2.1.5. PROGRAMA:MOSTRAR_ESTADISTICAS.JSP

2.2 CLASES JAVA

2.2.1. ACTIONS

2.2.1.1. PROGRAMA: ESTADISTICASACTION.JAVA`

3. DESCRIPCION DE VENTANAS

3.1. VENTANAS DE CONSULTAS

3.1.1. VENTANA PRINCIPAL DE CONSULTA

3.1.2. NOTAS POR MATERIAS

3.1.3. PROFESOR POR MATERIAS

3.1.3. EVALUACIÓN DE PROFESORES

3.1.4. ESTADÍSTICAS POR ALUMNOS

CAPÍTULO 4

4 MANUAL TÉCNICO

ANEXOS

ANEXO A

Page 127: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

AGRADECIMIENTO

A Dios por permanecer a cadainstante a nuestro lado y guiar lospasos que hemos tenido en estetiempo.A nuestros padres por ser nuestroapoyo incondicional y porque con susexperiencias nos dan lo mejor parasuperarnos.A la Universidad de Guayaquil, ungran centro de enseñanza, que nos hadado la oportunidad de sentirnosparticipes de sus reconocimientos.A los docentes de la Carrera deIngeniería en Sistemas, por compartirsus conocimientos y prepararnosprofesionalmente.A nuestros amigos, por ser un apoyomas, escuchando sus experiencias,anécdotas y levantar nuestro espíritude luchar por la vida.A ti que estas leyendo nuestroagradecimiento y especialmentenuestra tesis.A toda la gente que hemos conocido,a los que conocemos y los queconoceremos, porque todos los díasaprendemos algo nuevo y hasta elúltimo día de nuestras vidasobtenemos nuevos conocimientos.

i

Page 128: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

DEDICATORIA

Dedicamos este trabajo fruto denuestro esfuerzo y de todos estosaños de estudio, a nuestras familiasque siempre confiaron en nosotros yacompañaron con amor en todas lasetapas que vivimos para alcanzar unpresente lleno de éxitos y anhelos detriunfos y superación

ii

Page 129: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

TRIBUNAL DE GRADUACIÓN

PRESIDENTE DEL TRIBUNAL PRIMER VOCAL

SEGUNDO VOCAL SECRETARIO

iii

Page 130: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

DECLARACION EXPRESA

“La autoría de la tesis de grado corresponde exclusivamente a los suscritos,

perteneciendo a la Universidad de Guayaquil los derechos que generen la

aplicación de la misma”

(Reglamento de Graduación de la Carrera de Ingeniería en Sistemas

Computacionales, Art.26).

__________________ _______________ _______________

Carlos A. Delgado E. Rommel Mila Tito Ramos

iv

Page 131: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

RESUMEN

El modulo de ESTADISTICAS, fue desarrollado para permitir que los datos

que se administraran dentro del sistema académico de la Universidad de

Guayaquil, sean presentados de una forma visual ágil, precisa y clara a

través de gráficos e informes estadísticos, es la tarea primordial de este

módulo. A través de los datos generados por este sistema, el personal

administrativo y académico de las facultades de la Universidad, podrán

conocer el desenvolvimiento de cada una de las áreas que las comprende.

Considerando que la tecnología a utilizar es Open Source, tanto sistema

operativo, base de datos como herramientas de desarrollo, el costo del

sistema es extremadamente bajo, ya que no se pagan licencias y el

requerimiento de equipo es mínimo con respecto a su capacidad de

procesamiento.

v

Page 132: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

INDICE GENERAL

AGRADECIMIENTO

DEDICATORIA

TRIBUNAL DE GRADUACION

DECLARACION EXPRESA

RESUMEN

INDICE GENERAL

INTRODUCCIÓN

1. TECNOLOGIA OPEN SOURCE

1.1. PROBLEMÁTICA

1.2. SOLUCIÓN DE LA PROBLEMÁTICA

1.3. DEFINICION DEL PROYECTO

1.4 MISIÓN Y VISIÓN

1.4.1. MISIÓN

1.4.2. VISIÓN

1.5. OBJETIVOS DEL PROYECTO

1.5.1.OBJETIVOS GENERALES

vi

Page 133: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

1.5.2. OBJETIVOS ESPECÍFICOS

1.6. ALCANCE DEL PROYECTO

1.6.1. MÓDULO ESTADÍSTICO DE SISTEMA ACADÉMICO

1.7. CRONOGRAMA

1.8. ESTUDIO DE FACTIBILIDAD

1.8.1. FACTIBILIDAD OPERATIVA

1.8.2. FACTIBILIDAD TECNICA

1.8.3. FACTIBILIDAD ECONOMICA

1.9. ADQUISICIÓN DE HARDWARE.

1.9.1. ADQUISICIÓN DE SOFTWARE.

1.10. RECURSOS

1.10.1 RECURSOS FÍSICOS:

1.10.2. RECURSOS TECNOLÓGICOS

1.10.3. RECURSOS HUMANOS

1.10.4 RECURSOS FINANCIEROS:

1.10.5. PRESUPUESTO

1.11. METODOLOGÍA

2. ANALISIS

vii

Page 134: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.1.LEVANTAMIENTO DE INFORMACIÓN

2.1.1. TIPOS DE GRAFICO

2.1.2. GENERACION DE REPORTES FACILMENTE

2.1.3. FACIL IMPLEMENTACION

2.2. SERVIDORES

2.2.1. SERVIDOR DE PAGINAS

2.2.2. APACHE

2.2.3. AOL SERVER

2.2.4. IIS

2.2.5. OTROS SERVIDORES SIMILARES

2.2.6. SERVLET ENGINES

2.2.7. JAVA APPLICATION SERVERS

2.3. DISEÑO DEL SISTEMA

2.3.1 CASOS DE USO

2.3.1.1. INTRODUCCION

2.3.1.2. ELEMENTOS

2.3.1.3. ELABORACION DE CASOS DE USO DEL PROYECTO

2.3.2. FLUJO DE VENTANAS

viii

Page 135: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

2.3.2.1. FLUJO DE VENTANAS: EVALUACION DE PROFESORES

2.3.2.2. FLUJO DE VENTANAS: ESTADISTICAS DE MATERIAS

2.3.2.3. FLUJO DE VENTANAS: ESTADISTICAS DE ALUMNOS

2.3.3. DIAGRAMA DE FLUJO DE DATOS

2.3.3.1. CARACTERISITCAS

2.3.3.2. SIMBOLOGIA

2.3.3.2.1. ENTIDAD EXTERNA

2.3.3.2.2. PROCESO

2.3.3.2.3. FLUJO DE DATOS

2.3.3.2.4. ALMACEN O ARCHIVO

2.3.3.2.5. GUIAS PARA CONSTRUIR UN DFD

3. DESARROLLO Y PRUEBAS

3.1. DESARROLLO Y PRUEBA DEL SISTEMA

3.1.1. DESARROLLO DEL SISTEMA

3.2. DESCRIPCION DE LOS REPORTES

3.2.1. REPORTE DE PROFESORES

3.2.2. REPORTE DE ALUMNOS

3.2.3. REPORTE DE MATERIAS

3.3. PRUEBAS DEL SISTEMA

3.3.1. MODELO DE PRUEBA

3.3.2. OBJETIVOS DE LA PRUEBA

4.IMPLEMENTACION DEL SISTEMA

4.1. IMPLEMENTACION DE SISTEMAS

ix

Page 136: MANUAL DE USUARIO 1. PROCESOS DEL MÓDULO ...repositorio.ug.edu.ec/bitstream/redug/18952/1/UG-FCMF-B...Listado de profesores y las materias asignadas a cada uno. 4. Escoger una materia

4.2. ELEMENTOS FISICOS

4.3. ELEMENTOS LOGICOS

4.4. ELEMENTOS HUMANOS

4.5. INFRAESTRUCTURAS

4.6. CAPACITACION DE LOS USUARIOS

5. RECOMENDACIONES Y CONCLUSIONES

5.1. RECOMENDACIONES

5.1.1. HARDWARE

5.1.2. SOFTWARE

5.1.3. CABLEADO

5.1.4. PUESTA EN MARCHA

5.2. FACTORAS ESTRUCTURALES

5.2.1. FACTORAS TECNOLOGICOS

5.2.2. FACTORAS HUMANOS

5.2.3. FACTORAS ORGANIZATIVOS

CONCLUSIÓN

x