Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Garcia Chavez Daniel Aplicacion Movil Asistencia Estudiantil PDF
Garcia Chavez Daniel Aplicacion Movil Asistencia Estudiantil PDF
Tema N :
Alumno
Cdigo
: 19982069
Asesor
Introduccin:
El uso de tecnologas actuales como PDAs para satisfacer necesidades de
movilidad y ubicuidad las hace adecuadas para sistemas de registros y control
de asistencia a eventos. En particular las instituciones educativas tienen la
necesidad de monitorear la asistencia de sus alumnos, adems, permite obtener
estadsticas que podrn relacionarse con el rendimiento acadmico de los
alumnos y el nivel de xito de los cursos.
La necesidad de controlar la asistencia del alumnado ha conllevado a la
creacin de diferentes estrategias para sanear el problema. En muchos casos,
un simple papel que circula por el aula o auditorio es suficiente y en otros casos
con la ayuda de una hoja de clculo se obtiene lo deseado. En el caso de la
Universidad Catlica se usa una hoja elaborada donde se indica la fecha y la
lista de alumnos que deben asistir. Hay otras formas un poco ms complejas,
que incluyen lectoras de barras, pero en este caso se necesita que la persona
cuente con un cdigo asociado.
En la presente tesis se propone el uso de tecnologas actuales como lo son las
PDAs para satisfacer la necesidad del control de asistencia. Una PDA es un
dispositivo mvil muy ligero, fcil de manejar, y de transportar se puede
aprovechar para la creacin de una solucin prctica para la toma de asistencia.
La presente tesis expone el trabajo de anlisis, diseo y desarrollo llevado a
cabo para el sistema de informacin que permite el registro y seguimiento de la
asistencia de los alumnos de una institucin de educacin superior cuya
implementacin ha sido exitosamente probada en la Pontificia Universidad
Catlica del Per.
Objetivos
Facilitar al docente y Jefe de Prctica una herramienta que les permita un
seguimiento actualizado y en tiempo real de la asistencia a clases del
alumnado.
Permitir al docente la creacin, eliminacin y modificacin de sesiones.
Permitir al docente realizar anotaciones especficas sobre alumnos en
particular durante el desarrollo de las clases.
Alcances
Estar desarrollado en un ambiente Web, que permite a los usuarios
accederlo desde cualquier computadora personal (PC) y plataforma, en
cualquier momento y en cualquier lugar.
Se dispondr de una versin reducida que podr correr en dispositivos
mviles como Personal Digital Administrator (PDAs) y telefona celular 3G.
Permitir al docente y sus colaboradores registrar la asistencia a los alumnos
que estn bajo su tutela, adems de ingresar comentarios individualizados y
calificar la participacin del alumno por sesin.
Mostrar estadsticas de asistencia por sesin, indicando el porcentaje de
asistencia e inasistencia por cada alumno.
ndice
Introduccin
Objetivos y alcances
Metodologa de desarrollo del software
Anlisis y requerimientos
- Visin del proyecto
- Requerimientos del sistema
- Diagrama de casos de uso
Diseo
- Modelo conceptual
- Comportamiento del sistema
- Diagrama de estados
- Diagrama de interaccin
- Diagrama de clases
- Modelo fsico de datos
- Arquitectura del sistema
- Prototipo de pantallas
Conclusiones y recomendaciones
Bibliografa
Anexos
MXIMO 100 PGINAS
Tabla de Contenido
1.
Introduccin............................................................................................................... - 1 1.1
Control de asistencia en la educacin................................................................ - 3 1.1.1
Definicin de la asistencia......................................................................... - 3 1.1.2
Para qu controlar la asistencia?.............................................................. - 3 1.1.3
Formas de controlar asistencia .................................................................. - 4 1.2
Objetivos............................................................................................................ - 6 1.3
Alcances ............................................................................................................ - 7 2 Metodologa de desarrollo de software ..................................................................... - 9 3
Requerimientos y anlisis........................................................................................ - 13 3.1
Visin de proyecto........................................................................................... - 13 3.1.1
Posicionamiento ...................................................................................... - 13 3.1.1.1 Oportunidad de negocio ...................................................................... - 13 3.1.1.2 Definicin del problema ...................................................................... - 13 3.1.2
Descripcin de los usuarios ..................................................................... - 14 3.1.2.1 Perfiles de usuarios ............................................................................. - 14 3.1.2.2 Ambientes de usuario .......................................................................... - 14 3.1.3
Vista general del sistema ......................................................................... - 14 3.1.3.1 Perspectiva del sistema ....................................................................... - 15 3.1.3.2 Beneficios del sistema.......................................................................... - 17 3.1.3.3 Dependencias del sistema.................................................................... - 18 3.1.3.4 Recursos del software y hardware ...................................................... - 18 3.2
Requerimientos del sistema ............................................................................. - 19 3.2.1
Funciones del sistema.............................................................................. - 19 3.2.1.1 Requerimientos funcionales................................................................. - 19 3.2.1.2 Requerimientos no funcionales............................................................ - 21 3.3
Casos de uso .................................................................................................... - 22 3.3.1
Diagrama de casos de uso........................................................................ - 22 3.3.2
Paquete: Toma de Asistencia................................................................... - 24 3.3.2.1 Caso de Uso: Crear Sesin ................................................................. - 25 3.3.2.2 Caso de Uso: Modificar Sesin ........................................................... - 26 3.3.2.3 Caso de Uso: Eliminar Sesin............................................................. - 26 3.3.2.4 Caso de Uso: Tomar Asistencia .......................................................... - 27 3.3.2.5 Caso de Uso: Consultar alumnos por horario .................................... - 28 3.3.3
Paquete: Consultar Asistencia ................................................................. - 29 3.3.3.1 Caso de Uso: Asistencia del alumno ................................................... - 30 3.3.3.2 Caso de Uso: Asistencia por alumno .................................................. - 30 3.3.3.3 Caso de Uso: Asistencia general......................................................... - 31 3.3.4
Paquete: Sincronizacin .......................................................................... - 32 3.3.4.1 Caso de Uso: Obtener datos del Sistema ............................................ - 33 3.3.4.2 Caso de Uso: Obtener datos asociados al usuario ............................. - 33 3.3.4.3 Caso de Uso: Actualizar informacin de sesiones .............................. - 34 3.3.4.4 Caso de Uso: Enviar Correos ............................................................. - 35 3.3.5
Paquete: Toma de Asistencia PDA.......................................................... - 36 3.3.5.1 Caso de Uso: Ingresar al sistema ....................................................... - 37 -
3.3.5.2 Caso de Uso: Cambiar contrasea ..................................................... - 38 3.3.5.3 Caso de Uso: Mantener sesiones ........................................................ - 38 3.3.5.4 Caso de Uso: Crear correo electrnico .............................................. - 40 3.3.5.5 Caso de Uso: Tomar asistencia........................................................... - 40 3.3.5.6 Caso de Uso: Modificar informacin del alumno ............................... - 41 3.3.5.7 Caso de Uso: Enviar correo electrnico............................................. - 42 3.3.5.8 Caso de Uso: Cargar cursos al dispositivo mvil............................... - 43 3.3.5.9 Caso de Uso: Cargar informacin del sistema ................................... - 44 3.3.5.10
Caso de Uso: Sincronizar al Campus Virtual ................................. - 44 3.4
Modelo conceptual .......................................................................................... - 46 3.4.1
Identificacin de conceptos o clases........................................................ - 46 3.4.2
Diagrama de clases de anlisis ................................................................ - 47 4
Diseo...................................................................................................................... - 48 4.1
Arquitectura del sistema .................................................................................. - 48 4.1.1
Arquitectura del sistema Web ................................................................. - 48 4.2
Clases de diseo .............................................................................................. - 51 4.2.1
Identificacin de las clases de diseo ...................................................... - 52 4.2.2
Diagrama de clases de diseo.................................................................. - 55 4.2.3
Identificacin a detalle de conceptos o clases ......................................... - 56 4.3
Comportamiento del sistema ........................................................................... - 66 4.3.1
Diagramas de secuencia del sistema........................................................ - 66 4.3.2
Diagrama de estados................................................................................ - 72 4.4
Diseo de pantallas.......................................................................................... - 74 4.4.1
Mapa de navegacin ................................................................................ - 74 4.4.2
Pantallas del sistema................................................................................ - 77 4.4.2.1 Pantallas Web (Campus Virtual)......................................................... - 77 4.4.2.2 Pantallas PDA ..................................................................................... - 85 4.5
Modelo de datos .............................................................................................. - 93 4.5.1
Modelo lgico.......................................................................................... - 93 4.5.2
Modelo fsico de datos............................................................................. - 94 4.5.3
Especificaciones del modelo fsico de datos ........................................... - 95 5
Conclusiones y recomendaciones............................................................................ - 96 6
Bibliografa.............................................................................................................. - 98 6.1
Referencias bibliogrficas ............................................................................... - 98 6.2
Referencias de Internet .................................................................................... - 98 -
ii
ndice de Figuras
Figura 1
Figura 2
Figura 3
Figura 4
Figura 5
Figura 6
Figura 7
Figura 8
Figura 9
Figura 10
Figura 11
Figura 12
Figura 13
Figura 14
Figura 15
Figura 16
Figura 17
Figura 18
Figura 19
Figura 20
Figura 21
Figura 22
Figura 23
Figura 24
Figura 25
Figura 26
Figura 27
Figura 28
Figura 29
Figura 30
Figura 31
Figura 32
Figura 33
Figura 34
Figura 35
Figura 36
Figura 37
Figura 38
Figura 39
Figura 40
Figura 41
Figura 42
Figura 43
- 9-12-15-22-23-24-29-32-36-47-48-51-51-55-66-67-68-69-70-71-72-73-73-74-75-76-76-77-78-79-80-81-82-83-84-85-85-86-86-87-87-88-88-
iii
Figura 44
Figura 45
Figura 46
Figura 47
Figura 48
Figura 49
Figura 50
Figura 51
Figura 52
Figura 53
Figura 54
Lista de Alumnos...................................................................................
Toma de asistencia.................................................................................
Elegir curso ............................................................................................
Sincronizar informacin ........................................................................
Actualizar informacin ..........................................................................
Envo de mensajes .................................................................................
Cambio de contrasea............................................................................
Modelo lgico del sistema mvil...........................................................
Modelo lgico del sistema Web ............................................................
Modelo fsico del sistema mvil............................................................
Modelo fsico del sistema Web..............................................................
-89-89-90-90-91-91-92-93-94-94-95-
iv
1. Introduccin
En muchas instituciones, tanto laborales como educativas, se tiene la necesidad de
saber qu personas han asistido al trabajo, a clases o a alguna actividad donde la presencia
de la persona es obligatoria. En el caso de los centros de educacin, sean universidades,
colegios, academias, etc., la presencia del alumno es crucial para su educacin y por lo
tanto, se requiere monitorear su asistencia. El control de asistencia permite adems, obtener
estadsticas que podrn relacionarse con el rendimiento acadmico de los alumnos y el
nivel de xito de los cursos.
En la presente tesis se propone el uso de tecnologas actuales como lo son las PDAs
para satisfacer la necesidad del control de asistencia. Una PDA es un dispositivo mvil muy
ligero, fcil de manejar, y de transportar; se puede aprovechar para la creacin de una
solucin prctica para la toma de asistencia y para anotaciones de otra ndole como
participacin en clase.
-1-
-2-
Definicin de la asistencia
El control de asistencia es un proceso sistematizado al igual que permanente que
1.1.2
1.1.3
simples como son las formas manuales, hasta las de ltima generacin que utilizan los
adelantos tecnolgicos de los dispositivos biomtricos.
Uno de los ms usados en muchos lugares es una lista con los nombres de los
participantes en ella y con una persona encargada de anotar la asistencia. Este mtodo es
utilizado en escuelas, universidades e incluso en charlas donde la persona antes de ingresar
se registra en una de estas hojas. Este mtodo de control es econmico pero a la vez tedioso
-4-
para hacer un seguimiento ya que se necesitara de mucho tiempo para poder procesar toda
la informacin y sacar estadsticas de los datos antes de poder ser analizados.
Estos mtodos descritos anteriormente, como todo sistema manual, estn expuestos
a vulnerabilidad de los registros de entrada y salida, as como errores en la captura de
informacin. Adicionalmente, los relojes mecnicos se descomponen con frecuencia.
-5-
1.2 Objetivos
El desarrollo de un software para el Control de Asistencia Estudiantil por medio de
una Intranet y dispositivos mviles debe cumplir los siguientes objetivos:
Objetivos Generales
Objetivos especficos
-6-
1.3 Alcances
El sistema de Control de Asistencia Estudiantil est desarrollado para la Pontificia
Universidad Catlica del Per, por lo que est integrado al Campus Virtual (Intranet) de la
PUCP.
Los puntos que se han considerado para el desarrollo del sistema son los siguientes:
Permite al docente el uso de esta aplicacin nicamente para el (los) curso(s) que
est actualmente dictando.
Est desarrollado para un ambiente Web, que permite a los usuarios accederlo desde
cualquier computadora personal (PC) y plataforma con acceso a Internet en
cualquier momento y en cualquier lugar.
Se dispone de una versin reducida que puede correr en dispositivos mviles como
Personal Digital Administrator (PDAs) y telefona celular 3G. De esta manera
permite al usuario desligarse de una PC esttica y poder tomar la asistencia de sus
alumnos sin la necesidad de estar enfrente de una PC y sin estar conectado a la
Internet.
-7-
La recepcin y envo de la informacin por parte del dispositivo mvil se realiza en forma
encriptada a travs de una red inalmbrica.
-8-
-9-
Una aplicacin Web, al igual que una aplicacin para dispositivos mviles, tiene un
ciclo de desarrollo como cualquier otro producto de software en el que se pueden encontrar
las fases descritas por el UML [2][3][4][6].
Concepcin: se define los diferentes alcances del proyecto y se describen con los casos
de uso.
- 10 -
Puntos a favor
Microsoft
.NET Compact
Framework
CodeWarrior
J2ME
complicada.
Windows CE.
Programacin en .NET.
Costo Elevado.
Metrowerks
Puntos en contra
Costo Moderado.
Programacin en C.
Programacin en Java.
correr la aplicacin.
Costo Nulo.
No maneja Conduits1
Dentro de la tecnologa J2ME existen una variedad de tecnologas que son usadas
para diferentes propsitos. Una de ellas es el CLDC (Connected Limited Device
Configuration) [7][8] la cual define una base de interfases de aplicaciones para programar y
una mquina virtual para dispositivos con recursos limitados como son los telfonos
mviles, beepers, asistentes personales digitales (PDA).
- 11 -
3 Requerimientos y anlisis
3.1 Visin de proyecto
En esta seccin se busca reunir, analizar y definir las necesidades y caractersticas
claves del sistema.
3.1.1
Posicionamiento
Problema general:
Problema especfico
Grupo afectado:
Una solucin
exitosa:
- 13 -
3.1.2
Docente
Asistente
Alumno
En caso que el docente o asistente utilice una PDA, se necesitar que esta cuente
con una tarjeta de red inalmbrica, o de lo contrario el dispositivo cuente con esta
tecnologa, en ambos casos es necesario un punto de acceso para el caso de obtencin y
envo de informacin.
3.1.3
- 14 -
Las aplicaciones desarrolladas para los sistemas del Campus Virtual se encuentran
alojadas en los servidores de aplicaciones que trabajan con el software WebSphere
Application Server sobre el sistema operativo Windows 2000 Server. El Servidor HTTP
enva la solicitud hacia uno de estos servidores de aplicaciones que tambin pertenecen a un
cluster de servidores y son identificados mediante un identificador de sesin (jsessionid).
Cada servidor de aplicacin cuenta con un contenedor web J2EE, el cual permite la
ejecucin de aplicaciones usando Java Servlets y Java Server Pages (JSP). Adicionalmente
tienen instalado un cliente Oracle, el cual permite establecer conexiones con el servidor de
bases de datos, el cual usa el software Oracle9i sobre el sistema operativo AIX.
El uso de de clusters para el manejo de los servidores HTTP as como para los
servidores de aplicaciones facilita la estabilidad, brinda un mejor rendimiento, proporciona
una alta confiabilidad y una mayor disponibilidad en el eventual caso que se produzca un
corte de servicio en alguno de los servidores.
El balanceador guarda en memoria el registro del servidor del cluster que se est
encargando de servir la solicitud (asocia la IP del cliente con el servidor HTTP) y garantiza
que todas las futuras solicitudes realizadas desde una misma sesin, sern atendidas por el
mismo servidor.
- 16 -
crear
sesiones
adicionales
sin
puede
acceder
al
sistema
desde
se facilita la
sistema
muestra
porcentajes
de
- 17 -
Los usuarios del sistema Web necesitarn de un navegador Web que sea soportado por
el Campus Virtual sin importar el sistema operativo de la PC.
El tiempo de conexin depender del tipo de conexin que tenga el usuario a Internet y
del trfico existente en la red.
Se requiri la adquisicin de 2 PDAs, una Palm con sistema operativo Palm OS y una
Pocket PC con sistema operativo Windows CE para la realizacin de pruebas.
- 18 -
3.2.1
Requerimiento
R1
Se debe poder visualizar las sesiones existentes por cada curso horario.
R2
R3
R4
El docente debe poder crear una nueva sesin en caso sea necesaria.
R5
R6
R7
R8
R9
Se debe de poder poner como asistido o falto a toda la lista un solo clic.
R10
R11
R12
- 19 -
correspondiente al da.
R13
R14
Consultas
Referencia
R15
Requerimiento
Se debe poder tener una vista general de la asistencia de los alumnos
para un curso horario.
R16
La vista general debe poder estar agrupada por tipo de sesin y por
horario en caso el docente tenga ms de un horario a su cargo.
R17
R18
R19
Dispositivo Mvil
Referencia
R20
Requerimiento
El ingreso a la aplicacin debe ser mediante la verificacin del usuario
(uso de contraseas).
R21
Slo sern utilizados para la toma de asistencia por parte del Docente,
Jefe de Prctica o Instructor.
R22
R23
R24
- 20 -
R26
Requerimiento
La asistencia por Internet debe ser accedido sin importar el sistema
operativo ni versin del navegador de Internet.
R28
R29
R30
R31
R32
R33
- 21 -
3.3.1
acuerdo a los roles que cumplen con el sistema. La clasificacin es como se muestra a
continuacin.
U su a ri o d e l
S i st e m a
D o c e n te o
A si st e n t e
D o c e n te
A lu m n o
A si ste n te
- 22 -
Para una mejor organizacin y presentacin, los casos de uso se han agrupado en
cuatro paquetes:
Toma de
Asistencia
Consulta de
Asistencia
Sincronizacin
Toma de
Asistencia PDA
- 23 -
3.3.2
<<include>>
Tomar asistencia
Docente o
Asistente
(f rom Use Case View)
Modificar sesin
Crear sesin
Docente
(f rom Use Case View)
Eliminar sesin
- 24 -
Actores
Docente
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 25 -
Actores
Docente o Asistente
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
Actores
Docente
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 26 -
Actores
Docente o Asistente
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 27 -
Actores
Docente o Asistente
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 28 -
3.3.3
asistencia, por los alumnos, docentes y asistentes realizada desde el Campus Virtual.
Docente o
Asistente
<<include>>
<<include>>
Asistencia general
Alumno
<<include>>
- 29 -
Actores
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
Actores
Docente o Asistente
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 30 -
Actores
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 31 -
3.3.4
Paquete: Sincronizacin
En este paquete se encuentran los casos de uso necesarios para la sincronizacin de
<<include>>
Carga de informacin del sistema
(from Toma de Asistencia PDA)
<<include>>
Carga de cursos a PDA
Obtener datos asociados al usuario
Docente o
Asistente
<<include>>
<<include>>
Sincronizar al Campus Virtual
(from Toma de Asistencia PDA)
- 32 -
Actores
Docente o Asistente
Descripcin
Precondicin
No aplica.
Flujo Bsico
Flujo Alterno
Actores
Docente o Asistente
Descripcin
Precondicin
Flujo Bsico
- 33 -
Flujo Alterno
Actores
Docente o Asistente
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 34 -
Actores
Docente o Asistente
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 35 -
Ingresar al sistema
Cambiar contrasea
Mantener sesiones
<<include>>
Docente o
Asistente
(f rom Use Case View)
<<include>>
Enviar correo electrnico
Sincronizar al Campus Virtual
<<include>>
- 36 -
Actores
Docentes o asistentes
Descripcin
Precondicin
No aplica
Flujo Bsico
Flujo Alterno
- 37 -
Actores
Docentes o asistentes
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
Actores
Docentes o asistentes
Descripcin
Precondicin
Flujo Bsico
- 38 -
un comentario.
c. El sistema verifica que en la fecha y hora de la nueva sesin
no exista otra sesin.
d. Se crea la nueva sesin, ordenado por fecha descendente.
2. El usuario solicita la modificacin de una sesin.
a. El sistema muestra los datos de la sesin. Slo se permite la
modificacin del comentario.
b. El usuario hace la modificacin.
c. El sistema actualiza la sesin.
3. El usuario solicita la eliminacin de una sesin
a. El sistema verifica que la sesin no se encuentre creada en el
Campus Virtual.
b. El sistema muestra un mensaje de confirmacin.
c. Si el usuario desea continuar el sistema elimina la tabla de la
asistencia asociada a la sesin.
d. Se elimina el registro de la tabla de sesiones y reordena las
sesiones para que mantengan su orden.
Flujo Alterno
- 39 -
Actores
Docentes o asistentes
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
Actores
Docentes o asistentes
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 40 -
Actores
Docentes o asistentes
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 41 -
Actores
Docentes o asistentes
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 42 -
Actores
Docentes o asistentes
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
- 43 -
Actores
Docentes o asistentes
Descripcin
Precondicin
Flujo Bsico
Flujo Alterno
Actores
Docentes o asistentes
Descripcin
Precondicin
Flujo Bsico
- 44 -
- 45 -
3.4.1
Clases
Descripcin
Alumno
Asistencia
Curso
Docente
Horario
Sesion
Estos conceptos son las clases base sobre las cuales se explotar y crecer hasta
llegar a obtener un grupo de clases con las cuales se podr tener un buen manejo del
sistema de control de asistencia.
- 46 -
3.4.2
Docente
idDocente
nombre
estado
Curso
Dicta
*
idCurso
nombreCurso
verificaUsuario()
cambiaEstado()
Horario
idHorario
email
Contiene
delSesiones()
*
Inscrito
Sesion
Alumno
codigo
nombre
email
estado
foto
*
Asiste
*
idSesion
fechaSesion
tipoSesion
asignacion
fechaEntregaAsig
observaciones
delAsistencias()
Asistencia
asistencia
intervencion
nota
comentario
- 47 -
4 Diseo
4.1 Arquitectura del sistema
En esta seccin se muestran los componentes del software significativos para el
desarrollo del sistema, la organizacin de los componentes y su interaccin entre s para
cumplir con los requerimientos establecidos.
La arquitectura del sistema PDA es de una sola capa, es decir, la presentacin, parte
lgica y el acceso a los datos en se encuentran en una nica capa; en otras palabras, todo el
sistema corre desde el propio dispositivo mvil sin necesidad de conectarse con un servidor
central.
4.1.1
- 48 -
Los componentes que representan el modelo son las clases entidad que estn
contenidas en el paquete Beans. Cada clase mostrada en los diagramas de clases de este
paquete ser separada en dos clases; una que almacene los datos (Bean de datos) y otra
clase que almacene los mtodos que permitan obtener y transformar los datos y adems
permita la comunicacin con la base de datos (Bean de funciones).
- 49 -
del usuario. Adems se incluyen archivos que almacenan funciones en lenguaje javascript
(archivos JS) que son los que ayudan con la validacin de datos de entrada por el lado del
cliente.
Los siguientes pasos son utilizados en el caso de una comunicacin por Web para la
atencin de una solicitud:
Desde una pgina HTML se hace una peticin, la cual es dirigida a un Servlet
correspondiente a un servidor establecido.
El JSP, usando los objetos recientemente almacenados en el mbito del Request del
Servlet, da la informacin para poder llenar una pgina HTML de respuesta, la cual
es enviada al Browser que inici el pedido.
- 50 -
Los archivos que implementan las aplicaciones del sistema de Control de Asistencia
estn almacenados en los servidores de aplicaciones del Campus Virtual. La forma en que
estn organizados estos archivos (clases compiladas, JSP, JS e imgenes) se muestran en la
siguiente figura.
JSPs
Clases
- 51 -
4.2.1
Clases
Descripcin
Alumno
Asistencia
BeanData
Curso
Docente
FrmAlumno
FrmCargaDocente
- 52 -
FrmListaCursos
FrmLogin
Propiedades de cursos
FrmMail
FrmNuevaSesion
FrmSendMail
FrmSesiones
FrmSincroniza
FrmTomaAsistencia
- 53 -
una opcin que permite poner a todos los alumnos como asistido o
quitarles la asistencia.
GestorAlumno
GestorAsistencia
GestorCurso
GestorSesion
Horario
Sesion
TipoIntervencion
TipoSesion
- 54 -
4.2.2
FrmSendMail
codDocente
pas s Old
pas s New1
pas s New2
loginIntranet
pass Intranet
codDocente
verificarPass ( )
...
getXm l ( )
...
*
Docente
docente
nom bre
es tado
login
pas s
las tLogin
num Intentos
rowID
idCurs o
idHorario
docente
nom breCurs o
em ailCurs o
tipoCurs o
rowID
FrmSincroniza
loginIntranet
pas s Intranet
gCurso
codDocente
sincronizar ( )
getSes iones ( )
getAs is tencia ( )
getError ( )
actualizaDataExis tente ( )
cargaDocentes ( )
cargaCurs os ( )
cam biarPas s word ( )
actualizarInfoSis tem a ( )
s incronizar ( )
propiedades Curs o ( )
enviarMail ( )
lis taCurs o
*
pars e ( )
getRecord ( )
addCurs o ( )
delCurs o ( )
delLas t ( )
size ( )
Sesion
idTipoSes ion
indSes ion
fechaSes ion
horaIni
com entario
tablaAs is
es tado
rowID
getRecord ( )
Asistencia
FrmSesiones
curs o
gSes ion
us uario
tipoSes iones
codTipoSes iones
GestorSesion
lis taSes ion
*
parse ( )
getRecod ( )
addSes ion ( )
delSes ion ( )
delLas t ( )
s ize ( )
cargaTipoSesiones ( )
elim inarSes ion ( )
nuevaSes ion ( )
m odificarSesion ( )
alum no
as is tencia
idIntervencion
com entario
es tado
getRecord ( )
from
to
s ubject
msg
form Padre
TipoSesion
enviarMail ( )
idTipoSesion
des cTipoSes ion
pars e ( )
...
*
*
FrmMail
GestorCurso
BeanData
getDocentes ( )
parse ( )
ins ertarDocentes ( )
FrmListaCursos
...
cargarInfo ( )
pars e ( )
obtenerTipoSesiones ( )
...
gCurs os
codDocente
getRecord ( )
GestorAlumno
loginIntranet
pass Intranet
codDocente
Curso
Alumno
FrmCargaDocente
FrmCargainfoSistema
loginIntranet
pas s Intranet
pars e ( )
...
alum no
nombre
em ail
tipoSes ion
loginIntranet
pas sIntranet
fechaIni
gCurs o
codDocente
FrmNuevaSesion
gSes iones
codDocente
fecha
hora
tipoSes ion
codTipoSes ion
verificaDatos ( )
verificaUnicidadSes ion ( )
grabaSesion ( )
...
to
from
s ubject
msg
rowID
pars e ( )
...
FrmAlumno
FrmListaAlumnos
curs o
ses ion
codDocente
gAlum no
gAs is tencia
pars e ( )
addAlumno ( )
delAlum no ( )
delLas t ( )
size ( )
getAlum no ( )
getAlumnos ( )
getAs istenciaAlum no ( )
1
FrmTomaAsistencia
gAsis tencia
gAlum no
codDocente
...
alumno
as istencia
gAs is tencia
codDocente
tipoIntervencion
codTipoIntervencion
enviarMail ( )
grabarAlum no ( )
llenaTipoIntervenciones ( )
GestorAsistencia
lis taAs is tencia
pars e ( )
getRecod ( )
addAs istencia ( )
delAs is tencia ( )
delLas t ( )
size ( )
getObjAs is tencia ( )
TipoIntervencion
idTipoIntervencion
des cTipoIntervencion
pars e ( )
...
4.2.3
Alumno
Contiene la informacin relacionada a un alumno.
Atributo
Descripcin
alumno
nombre
tipoSesion
Listado de tos tipos de sesiones por los cuales el alumno est asociado
al docente.
Asistencia
Contiene la informacin relacionada a la asistencia de un alumno.
Atributo
Descripcin
alumno
asistencia
comentario
estado
idIntervencion
- 56 -
Curso
Contiene la informacin relacionada a un curso.
Atributo
Descripcin
idCurso
idHorario
docente
nombreCurso
emailCurso
tipoCurso
rowId
Docente
Contiene la informacin relacionada a un docente.
Atributo
Descripcin
docente
nombre
estado
login
pass
lastLogin
numIntentos
rowId
- 57 -
Email
Contiene la informacin relacionada a un correo electrnico a enviarse.
Atributo
Descripcin
to
from
subject
msg
rowId
FrmAlumno
Muestra la informacin concerniente al alumno seleccionado. La informacin del alumno
no puede ser modificada pero se tiene la opcin de enviarle un correo electrnico, adems
de aadir comentarios o calificar su participacin en clase.
Atributo
Descripcin
alumno
asistencia
gAsistencia
codDocente
- 58 -
FrmCambiaContrasena
Se cambia la contrasea del3 usuario. La contrasea por cambiarse es la utilizada para el
ingreso a la PDA, mas no la usada por el Campus virtual.
Atributo
Descripcin
codDocente
passOld
passNew1
passNew2
FrmCargaCurso
Se carga los cursos activos asociados al docente, adems de las sesiones respectivas desde
la fecha indicada y se carga la asistencia asociada a cada sesin.
Atributo
Descripcin
loginIntranet
passIntranet
fechaIni
gCurso
codDocente
FrmCargaDocente
Se carga la lista de docentes2 que estn asociados al dispositivo mvil (PDA). En caso de
olvido de la contrasea usada en la PDA, se cambia la contrasea mediante el Campus
Virtual y se vuelve a usar esta opcin para actualizar la informacin.
Atributo
Descripcin
loginIntranet
passIntranet
codDocente
Se maneja una lista de docentes para flexibilizar el sistema y permitir el uso comn del equipo mvil
(Equipo provisto por la facultad para sus docentes).
- 59 -
FrmCargaDocente
Se carga la lista de docentes que estn asociados al dispositivo mvil (PDA). En caso de
olvido de la contrasea usada en la PDA, se cambia la contrasea mediante el Campus
Virtual y se vuelve a usar esta opcin para actualizar la informacin.
Atributo
Descripcin
loginIntranet
passIntranet
codDocente
FrmCargaInfoSistema
Se carga la informacin que concierne solamente a la aplicacin. En este caso son los tipos
de Sesiones y los tipos de Intervencin.
Atributo
Descripcin
loginIntranet
passIntranet
FrmCurso
Muestra la informacin concerniente al curso seleccionado. La informacin no puede ser
modificada pero se tiene la opcin de mandar un correo electrnico a los participantes del
curso.
Atributo
Descripcin
curso
codDocente
- 60 -
FrmListaAlumnos
Muestra la lista de los alumnos asociados a un curso y una sesin especifica. Se tiene la
opcin de tomar asistencia o de aadir un comentario al alumno.
Atributo
Descripcin
curso
sesion
codDocente
gAlumno
gAsistencia
FrmListaCursos
Muestra la lista de los cursos asociados al docente.
Atributo
Descripcin
gCursos
codDocente
FrmLogin
Se encarga de verificar al usuario que intenta ingresar al sistema. Debe ingresar un nombre
de usuario y una contrasea.
Atributo
Descripcin
login
password
- 61 -
FrmMail
Se escribe el correo electrnico. Slo es necesario ingresar el Asunto y el Mensaje ya que le
procedencia del mensaje es por el mismo usuario y el correo es enviado a una cuenta
previamente seleccionada (alumno o curso).
Atributo
Descripcin
to
from
subject
msg
formPadre
FrmNuevaSesion
Permite la creacin y/o modificacin de una sesin. En caso de la modificacin, slo se
permite el ingreso de un comentario.
Atributo
Descripcin
gSesiones
codDocente
fecha
hora
tipoSesion
codTipoSesion
FrmSendMail
Se encarga de enviar los correos electrnicos generados por el usuario. Slo se envan los
del usuario actual.
Atributo
Descripcin
loginIntranet
passIntranet
codDocente
- 62 -
FrmSesiones
Muestra la lista de sesiones asociadas al curso seleccionado.
Atributo
Descripcin
curso
gSesiones
usuario
tipoSesion
codTipoSesion
FrmSincroniza
Enva la informacin modificada o creada por el usuario al servidor. La informacin
transmitida son las sesiones por curso y la asistencia.
Atributo
Descripcin
loginIntranet
passIntranet
gCursos
codDocente
- 63 -
FrmTomaAsistencia
Muestra una lista de los alumnos asociados al curso y sesin seleccionada donde se indica
si el alumno ha asistido o no. Existe una opcin que permite poner a todos los alumnos
como asistido o quitarles la asistencia.
Atributo
Descripcin
gAlumno
gAsistencia
codDocente
GestorAlumno
Maneja una lista de alumnos que pertenecen a un curso y sesin seleccionada previamente.
Atributo
Descripcin
listaAlumnos
GestorAsistencia
Maneja la lista de asistencia que pertenece a un curso y sesin seleccionada previamente y
cada asistencia est relacionada a un alumno.
Atributo
Descripcin
listaAsistencia
GestorCurso
Maneja la lista de cursos que son asignados al usuario.
Atributo
Descripcin
listaCurso
- 64 -
GestorSesion
Maneja la lista de sesiones que pertenece a un curso seleccionado previamente.
Atributo
Descripcin
listaSesion
Sesion
Contiene la informacin relacionada a una sesin de un curso.
Atributo
Descripcin
idTipoSesion
indSesion
fechaSesion
horaIni
comenatrio
tablaAsis
estado
rowId
TipoIntervencion
Contiene la informacin relacionada a un tipo de intervencin existente.
Atributo
Descripcin
idTipoIntervencion
TipoSesion
Contiene la informacin relacionada a un tipo de sesin existente.
Atributo
Descripcin
idTipoSesion
descTipoSesion
- 65 -
Los diagramas de secuencia del sistema muestran los pasos generales que el sistema
toma cuando se llama a una accin de ste.
Login
: profe
: formIngreso
: formMain
tablaDoc :
BDManager
ingresar(login, pass)
tablaDoc = BDManager("docente")
tam = tablaDoc.getTamano()
* [Mientras i<tam ]
record = getRecord(i)
doc : Docente
doc = Docente(record)
* [Fin de Mientras]
* [Si (i >= tam) ]
mensajeError(msg)
Figura 15. Caso de Uso Login. El docente ingresa su usuario y contrasea, el sistema
busca al usuario y verifica que pueda acceder al sistema.
- 66 -
: Profesor
: formActualizar
actualizarDataSistema(
login, pass)
: Servidor PUCP
encriptar( )
actualizaBDdelSistema( strCadena )
Figura 16. Caso de Uso Cargar informacin del sistema. El docente ingresa su usuario y
contrasea, el sistema encripta la informacin, hace el pedido al Campus Virtual, obtiene
la informacin requerida y la almacena en las tablas correspondientes.
- 67 -
Crear sesin
: Profesor
:
formCrearSesion
crearSesion(fecha,
hora, tipoSesion)
: formSesion
* [Mientras i<listaSesion.length()]
compara(lstaSesion(i), fecha, hora)
ses : Sesion
* [Si es nica]
ses = Sesion(fecha, hora, tipoSesion)
strRecord = getRecordAInsertar()
con :
BDManager
con = BDManager("Sesion")
addRecord( )
listaSesion.add(ses)
Figura 17. Caso de Uso Crear sesin. El docente ingresa los datos de la nueva sesin, el sistema
verifica que la nueva sesin no tenga conflictos con otras sesiones y almacena la informacin en
la tabla correspondiente.
- 68 -
: Docente o
Asistente
: FrmSincroniza
sincronizar(loginIntranet,
passIntranet)
: GestorCurso
: GestorSesion
: GestorAsistencia
: FrmListaCursos
gCursos = obtenetCursos()
[Por cada curso] *
gSes = obtenerSesiones()
[Por cada Sesion] *
gAsis = obtenerAsistencias()
Figura 18. Caso de Uso Sincronizar al Campus Virtual El docente ingresa su usuario y
contrasea, el sistema encripta la informacin, luego por cada curso obtiene las sesiones y
por cada sesin las asistencias tomadas. Con esta informacin genera un archivo el cual es
enviado al Campus Virtual para su almacenamiento.
- 69 -
: FrmCargaC urso
: GestorCurso
: GestorSesion
: GestorAs istencia
: GestorAlumno
eliminarTablasExistentes( )
Figura 19. Caso de Uso Eliminar informacin almacenada en la PDA El sistema por cada
curso obtiene las sesiones y por cada sesin elimina la asistencia, luego elimina la sesin.
Una vez eliminada todas las sesiones de un curso se elimina este ltimo al igual quelos
alumnos relacionados a este curso.
- 70 -
Eliminar sesin
: Docente
: FrmSesiones
: GestorSesion
: GestorAsistencia
delSesion(pos)
getSesion(pos)
delSesion(pos)
Figura 20. Caso de Uso Eliminar sesin. El docente selecciona la sesin a eliminar, el
sistema verifica que la sesin se cre en la PDA, luego elimina la asistencia de esa sesin y
finalmente elimina la sesin.
- 71 -
Modificar sesin
: Profesor
: formEditarSesion
modificarSesion( fecha,
hora, tipoSesion)
: formSesion
* [Mientras i<listaSesion.length()]
compara(lstaSesion(i), fecha, hora)
ses : Sesion
* [Si es nica]
ses = Sesion(fecha, hora, tipoSesion)
strRecord = getRecordAInsertar()
con :
BDManager
con = BDManager("Sesion")
updateRecord( listaSesion[i].getRowID(), listaSesion[i].getRecord() )
Figura 21. Caso de Uso Modificar sesin. El docente modifica los datos de la sesin, el
sistema verifica que la nueva no tenga conflictos con otras sesiones y almacena la
informacin en la tabla correspondiente.
4.3.2
Diagrama de estados
En esta seccin se muestra el comportamiento de algunas clases. Se indica las
- 72 -
Sesin
Carga de cursos a PDA
En el
servidor
Sincronizar infromacin
Sincronizar informacin
Actualizar Sesin
Nueva sesin
Modificar sesin
Nueva
Modificada
Asistencia
Carga de cursos a PDA
En el
servidor
Sincronizar informacin
Actualizar asistencia
Sincronizar informacin
Nueva asistenacia
Modificar asistenacia
Nueva
Modificada
4.4
Diseo de pantallas
4.4.1
Mapa de navegacin
El mapa de navegacin muestra el camino que el usuario normalmente tomara para
hacer uso del sistema de Control de Asistencia. sta se representa de una forma jerrquica
en donde el nmero de niveles representa el nmero de clics necesarios para llegar a una
pgina.
En el mapa de navegacin se muestran las pginas HTML que son mostradas a los
usuarios. Las vistas mostradas estn separadas por cada actor del sistema (docente, jefe de
prctica y alumno, Figuras 24 - 27).
Docente
Asistencia
Control de
asistencia
Nueva sesin
Editar sesin
Asistencia por
alumno
Visualizacin de
sistencia
Estadstica
Estadstica por
alumno
Editar asistencia
- 74 -
Docente
Login
Lista de cursos
Lista de
sesiones
Aadir sesion
Listar alumnos
Tomar
asistencia
Enviar mensajes
almacenados
Sincronizar con el
Campus Virtual
Modificar
sesion
Cargar cursos
a la PDA
Cargar informacin
de sistema
Cambiar
contrasea
Propiedades
del curso
Enviar email al
curso
Propiedades
del alumno
Enviar email al
alumno
75
Jefe de Prctica
Asistencia
Control de
asistencia
Editar sesin
Asistencia por
alumno
Visualizacin de
asistencia
Estadstica
Estadstica por
alumno
Editar asistencia
- 76 -
4.4.2
asignados al curso.
- 77 -
- 78 -
En caso el docente tenga la necesidad de crear una sesin, ste lo puede hacer
haciendo clic en el botn de nuevo (Figura 29) y llenando el formulario mostrado en la
Figura 30.
- 79 -
Y en caso se quiera modificar los datos de una sesin futura o aadir comentarios,
slo debe hacer clic en el botn de editar (Figura 29) y hacer los cambios necesarios
permitidos (Figura 31).
- 80 -
Cuando se desea ver informacin almacenada de una de las sesiones, se hace clic
sobre la sesin deseada (Figura 29) y se mostrar un listado con todos los alumnos del
curso y horario elegido y se mostrar las asistencias, al igual que comentarios por cada uno
de ellos (Figura 32).
- 81 -
Para tomar la asistencia se hace clic sobre el botn de editar (Figura 32) y se
mostrar una pantalla (Figura 33) donde se permitir modificar la informacin de los
alumnos con respecto a su asistencia, se permitir calificar las intervenciones que tengan, y
a su vez, se puede aadir un comentario personalizado.
- 82 -
Este consolidado se muestra por horario y tipo de sesin. En caso se quiera ver otro
horario o tipo se sesin, nicamente se debe de elegir la opcin deseada para hacer efectivo
el cambio.
- 83 -
En caso se necesite ver el consolidado por alumno, se hace clic sobre el nombre del
alumno (Figura 34) y se mostrar una pantalla (Figura 35) en la que se muestra la asistencia
de un alumno agrupado por cada uno de los diferentes tipos de sesiones y un porcentaje de
asistencia al final.
Tanto esta pantalla (Figura 35) como la anterior (Figura 34) podrn ser vistas por
los alumnos para ayudarlos a controlar su propia asistencia y dedicacin al curso.
- 84 -
- 85 -
- 86 -
- 87 -
- 88 -
- 89 -
- 90 -
- 91 -
- 92 -
4.5.1
Modelo lgico
El modelo lgico ilustra el significado de las entidades de informacin del sistema y
- 93 -
4.5.2
modelo fsico y los atributos de estas entidades como columnas de un determinado tipo de
dato, segn el DBMS (Sistema de gestin de base de datos) especfico sobre el que se
implantar el sistema.
4.5.3
- 95 -
5 Conclusiones y recomendaciones
Se ha cumplido con el objetivo de desarrollar un sistema de Control de Asistencia
que satisface las necesidades de un centro universitario tanto para una Intranet como para
dispositivos mviles. La implantacin de este sistema fue realizado satisfactoriamente en la
Intranet de la Pontificia Universidad Catlica del Per (PUCP) llamada Campus Virtual.
Actualmente el uso de este sistema no es obligatorio pero no obstante esta siendo usado por
los docentes de la universidad.
El sistema de Control de Asistencia est diseado para ser utilizado con cursos
regulares y no regulares que actualmente estn vigentes. En caso de la informacin
almacenada para cursos no vigentes, esta informacin se est manteniendo en un ambiente
diferente al usado para los cursos actualmente vigente, de esta forma se garantiza una
- 96 -
rpida respuesta al usuario. La informacin histrica almacenada podr ser utilizada para
futuras estadsticas de desempeo de un curso e incluso del docente.
Una PDA tiene como naturaleza ser unipersonal, es decir que est diseada para
tener una nica persona como usuario, pero la aplicacin mvil de Control de Asistencia ha
sido diseada para romper esta barrera y poder ser usada por un nmero mayor de usuarios.
Es por esta razn que una facultad podra utilizar este sistema sin la necesidad de proveer
con un dispositivo mvil a cada uno de sus docentes.
- 97 -
6 Bibliografa
6.1 Referencias bibliogrficas
1. Pressman, R.S. Ingeniera del software, un enfoque prctico. 4 ed. Editorial
Concepcin Fernndez. Madrid, Espaa. 581 p. 1998.
2. Arlow, J.; Neustad, I. UML and the unified process: practical object-oriented analysis
and design. Editorial Addison-Wesley Professional. Fairford, GLO, United Kingdom.
416 p. 2001.
3. Jacobson, I.; Booch, G.; Rumbauch, J. El proceso Unificado de desarrollo de software.
4ta ed. Editorial Pearson Educacin S.A. Madrid, Espaa. 448 p. 2000.
4. Larman, C. Applying UML and Patterns: An Introduction to Object-Oriented Analysis
and Design and the Unified Process. 2nda ed. Prentice Hall PTR. USA. 656 p. 2002.
5. Reed, P. R. Developing Applications with Java and UML. Editorial Addison-Wesley
Professional, Inc.Indianpolis, USA. 512 p. 2002.
6. Rembaugh, J.; Jacobson, I.; Booch, G. El lenguaje unificado de modelado, manual de
referencia. 3ra ed. Editorial Addison Wesley Publishing Company. Madrid, Espaa.
1296 p. 2000.
7. Muchow J. W. Core J2ME Technology. Editorial Sun Microsystems Press and Prentice
Hall. California, USA. 736 p. 2002.
8. Ayers D.; Machin R.; Taylor R.; Richard; Ashiri R. Professional Java Mobile
Programming. Editorial Peer Information Inc. USA 1000p. 2001.
9. Piroumian V. Wireless J2ME Platform Programming. Editorial Prentice Hall PTR.
USA. 400p. 2002.
- 98 -
12. The Magic of Midlets: A Pocket Guide to the Java 2 Platform, Micro Edition (J2ME)
Technology
http://java.sun.com/features/2001/06/golden.j2me.html
13. Introduction to Mobility Java Technology (Wireless communication)
http://developers.sun.com/techtopics/mobility/getstart/
14. MIDP Programming with J2ME
http://www.developer.com/java/j2me/article.php/10934_1561591_1
15. Client-Server Communications between MIDlets and Servlets
http://developers.sun.com/techtopics/mobility/midp/ttips/clientserv/
16. Core J2ME - J2ME Developer resources
http://www.corej2me.com/DeveloperResources/index.shtml
17. W3School XML Tutorial
http://www.w3schools.com/xml/default.asp
18. MIDP for Palm OS 1.0: Developing Java Applications for Palm OS Devices
http://developers.sun.com/techtopics/mobility/midp/articles/palm/
19. Parsing XML in J2ME
http://developers.sun.com/techtopics/mobility/midp/articles/parsingxml/
20. kXML Project
http://kxml.objectweb.org/
21. The Legion of the Bouncy Castle
http://www.bouncycastle.org/
- 99 -