scieee Science in your language
[sp] (orig)

Desarrollo de un sistema de control de asistencia de profesorado guiado por pruebas

Abstract

El presente trabajo describe el desarrollo de una aplicación para el registro de las horas de docencia impartidas por el profesorado en la universidad. Con esto se persigue tener la información digitalizada para agilizar las gestiones que se tengan que realizar con ella. Por el lado del profesorado, se enviarán notificaciones vía correo electrónico para confirmar la docencia firmada, a modo de registro personal para que el profesor sepa la docencia que ha impartido y, en caso de sustitución, que también el profesor sustituido tenga constancia de la sustitución. El desarrollo se hará apoyándose en métodos ágiles, utilizando el desarrollo guiado por pruebas los módulos del modelo y persistencia.

Read accessible full text

Desarrollo de un sistema de control de asistencia de profesorado guiado por pruebas

Author: Díaz Martínez, Rubén
Year: 2014
Source: https://accedacris.ulpgc.es/jspui/bitstream/10553/11914/1/0698967_00000_0000.pdf
!
!
!
!
!
!
!
!
!
!
!
!
!
Desa ollo de un sis ema de !
con ol de asis encia de p o eso ado !
guiado po p uebas: Tes D i en De elopmen
!
!
!
G ado en Ingenie ía In o má ica
T abajo Fin de G ado
Junio de 2014
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Au o Rubén Díaz Ma ínez
Tu o es José Juan He nández Cab e a. Dp o. In o má ica y Sis emas
F ancisco José San ana Pé ez. Dp o. In o má ica y Sis emas
!
!
!
!
!
!
!
!
!
!
!
!
!
!
1. Obje i os!1!..............................................................................................
2. Es ado ac ual!3!.......................................................................................
3. Resul ados!4!...........................................................................................
3.1. P opues a de alo !4!...............................................................................
3.2. Requisi os!5!.............................................................................................
3.2.1. Casos de Uso!5!....................................................................................
3.2.2.No ma i a y legislación!7!.......................................................................
3.2. Diseño!9!..................................................................................................
3.2.1. Diseño del sis ema!9!............................................................................
3.2.2. Diseño de la base de da os!10!.............................................................
3.2.3.Diseño del so wa e!11!..........................................................................
3.2.4.Diseño de la in e az de usua io!17!.......................................................
4. Desa ollo!22!...........................................................................................
4.1.Mé odo de desa ollo!22!...........................................................................
4.1.1.Desa ollo Guiado po P uebas!23!........................................................
4.1.2.Tes s implemen ados!26!........................................................................
4.2.Tecnología!27!...........................................................................................
4.3. I e aciones!29!..........................................................................................
4.3.1. Idea inicial!29!........................................................................................
4.3.2. I e ación 1. Funcionalidades!31!............................................................
4.3.3. I e ación 2. In e az de usua io!35!........................................................
4.3.4.I e ación 3. Feedback y mejo as!39!......................................................
5. Conclusiones!46!.....................................................................................
6. T abajos u u os!48!................................................................................
7. Fuen es de In o mación!50!....................................................................
Anexo A. Manual de ins alación!51.............................................................
!
1. Obje i os!
!
El p esen e documen o de alla el desa ollo de una aplicación pa a el egis o de la
asis encia de p o eso ado a clase.
!
El p oyec o ha sido u o izado po José Juan He nández Cab e a y F ancisco José
San ana Pé ez. En el es o del documen o, pa a ab e ia , cuando se haga e e encia a
José Juan se le nomb a á como u o y a F ancisco José como p oduc owne
(p opie a io del p oduc o), ya que ac ualmen e eje ce como di ec o de la Escuela de
Ingenie ía In o má ica de la Uni e sidad de Las Palmas de G an Cana ia, po lo que, a
e ec os p ác icos, se le conside a como al.
!
Los obje i os que se pe siguen con la ealización de es e abajo se pueden sepa a en
dos ipos: a ni el adminis a i o pa a el clien e in e esado en el desa ollo del p oduc o
y a ni el pe sonal/académico pa a el es udian e.
!
A ni el adminis a i o, enemos los siguien es obje i os cla e:
!
•Como la in o mación es a á digi alizada, a a con ella se ía mucho más ácil.
En apa ados siguien es comen a emos algunos de los ámi es que pe mi i á
agiliza es a he amien a.
!
•A ni el del p o eso ado, el sis ema no i ica á median e co eos elec ónicos si se
ha i mado su docencia. Es o si e a los p o eso es como egis o de la docencia
que han impa ido, o si les sus i uye o o p o eso , en e a se de que no ha habido
ningún p oblema.
!
A ni el pe sonal y académico, se pe siguen los siguien es obje i os:
!
•Pa icipa en el desa ollo de un p oduc o so wa e de p incipio a in, algo que
no se puede ealiza en las dis in as asigna u as de la ca e a po mo i os
empo ales.
!
•Aplica mé odos de desa ollo ágil is os en la ca e a pe o de un modo más
“ ealis a”, al pode con a con un clien e eal in e esado en el p oduc o que se
es á desa ollando y del que se puede ob ene eedback cons an e.
!
•Aplica el desa ollo guiado po p uebas (Tes -D i en De elopmen ) en el
desa ollo de un so wa e comple o, ya que du an e la ca e a, si bien se explica
es e p oceso y se u iliza en algunas p ác icas, solo se usaba pa a desa olla
ca ac e ís icas aisladas y no in eg a las en un so wa e.
!
!
!1

A con inuación, se desc ibe la si uación ac ual del con ol de asis encia al p o eso ado
en la Escuela de Ingenie ía In o má ica así como las apo aciones del p oyec o a dicho
p oceso. La pa e cen al del documen o la ocupa la documen ación comple a del
p oduc o, de allando los equisi os y diseño de la aplicación. Después de es o, se de alla
el p oceso de desa ollo desde la idea inicial del p oduc owne , pasando po la elección
de la ecnología pa a el desa ollo has a la implemen ación del p oduc o solici ado. Po
úl imo, se sugie en posibles abajos u u os pa a mejo a el abajo desa ollado o
nue as aplicaciones que se apoyen en los da os ecogidos y las conclusiones ob enidas,
así como las e e encias bibliog á icas.!
!2
2. Es ado ac ual!
!
El desa ollo de es e p oyec o su ge de una idea inicial p esen ada po el p oduc owne
como una de sus p opues as elec o ales pa a la di ección de la Escuela de Ingenie ía
In o má ica (a pa i de aho a, EII).
!
Cuando un p o eso iene una clase que impa i , debe i ma pa a ac edi a que ha dado
esa docencia. Ac ualmen e en la EII, lo que se hace es pone a disposición de odos los
p o eso es una lis a con oda la docencia del día ac ual y los p o eso es deben i ma la
an es de asis i a clase. Es o es una solución que a nues o p oduc owne no le e mina
de con ence po que a a con la in o mación es algo cos oso o dado que se puede
i ma odo de golpe, hab á p o eso es que i men oda la docencia y luego puede su gi
un imp e is o que no les pe mi a impa i la docencia que han i mado. En euniones
con el Vice ec o del P o eso ado ambién se comen ó la si uación ac ual en o as
escuelas uni e si a ias, donde muchas eces ni siquie a se lle aba dicho con ol a cabo.
!
La solución que p opone implemen a el p oduc owne es algo muy sencillo. Coloca
en un pun o del edi icio un sis ema po el que odos los p o eso es engan que pasa
an es de i a clase, iden i ica se en él, mos a la docencia que ienen asignada en la ho a
ac ual y ma ca la como i mada de mane a i ual.
!
La idea de nues o clien e es desa olla el p oyec o pa a la EII y, as un pe íodo de
p ueba, comenza la implan ación en oda la Uni e sidad de Las Palmas de G an
Cana ia.
!
Es a idea su ge de un sis ema simila que se u iliza ac ualmen e en la UNED, según nos
comen a el p oduc owne . Cuando un p o eso en a en la UNED, debe iden i ica se en
un sis ema median e usua io con aseña pa a no i ica que es á en el cen o y ol e a
pasa po ese sis ema cuando a a i se. Es o se usa pa a que los alumnos que ayan a
u o ía puedan consul a desde ese mismo sis ema si el p o eso al que quie en e se
encuen a en el edi icio o no.
!
!3
3. Resul ados!
!
A con inuación, se desc iben los esul ados ob enidos del desa ollo del sis ema. Se
de alla la p opues a de alo a la que se ha llegado inalmen e, los equisi os y el diseño
de la aplicación.
!
3.1. P opues a de alo !
!
El alo que apo a es e p oduc o se puede e de dos o mas dis in as. Desde el pun o
de is a del p oduc owne , el alo que le apo amos es acili a las a eas
adminis a i as a la ho a de consul a da os como pueden se los siguien es:
!
•De ec a si una ho a de docencia no se impa e.
!
•En casos de huelga, la adminis ación iene que comp oba que odos los
p o eso es que no han impa ido clases sean aquellos que han hecho huelga.
Haciendo una simple consul a al sis ema se pueden ob ene los p o eso es que
no impa ie on clase y comp oba con la lis a de los que es aban apun ados a la
huelga.
!
En cambio, pa a los p o eso es, el alo lo apo an las no i icaciones que mande la
aplicación, pa a ene cons ancia de que se ha i mado su docencia, ya sea po ellos
mismos o po o o p o eso .!
!4
3.2. Requisi os!
!
En es e apa ado desc ibimos los equisi os que cumple la aplicación, en o ma de casos
de uso y la no ma i a y legislación que nos concie ne.
3.2.1. Casos de Uso
!
!
Ac edi a asis encia
Pa a que un p o eso ac edi e su asis encia a una clase, debe segui una se ie de pasos
sencillos.
!
•Iden i ica se en el sis ema in oduciendo su núme o de DNI. Una ez
au en i icado en el sis ema end á la posibilidad de ce a sesión en cualquie
momen o. Pasado un minu o de inac i idad, la sesión se ce a á de o ma
au omá ica.
•Selecciona la docencia que a a ac edi a . Po de ec o, se mos a án
seleccionadas las ho as de docencia asignadas al p o eso en la anja ho a ia
ac ual, pudiendo deselecciona las o ol e las a selecciona . Si el p o eso
de ec ase que no se mues a la docencia que debe ía ene aho a, puede en ia
una no i icación.
•Pa a en ia una no i icación, el p o eso selecciona el ipo de no i icación que
quie e en ia y i me sob e la able a e incluye algún de alle si ue a
necesa io.
•Fi ma la docencia. Una ez i mada la docencia, se ce a á la sesión. Si se
ealiza a una i ma y no se pulsa á el bo ón de con i mación en la able a, al
ce a se la sesión de ec a á que hay una i ma y gua da a la docencia i mada.
!
Escena io ípico:
1. El p o eso se iden i ica in oduciendo su DNI.
2. El sis ema mues a la docencia que iene el p o eso en la anja ho a ia.
2.1. Si no hubie a docencia o ya es u ie a i mada, el sis ema mues a un
mensaje de in o mación.
3. El p o eso i ma sob e la able a la docencia que se mues a en pan alla.
!
!
!
!5
applica ion
!
!
!
!
!
!
!
!
!
!
!
!
!
•Rube Applica ion. Es la clase p incipal de la aplicación. Su unción es c ea la
en ana de la aplicación con oda la in o mación y los comandos necesa ios.
!
commands
!
Pa a mejo a la legibilidad, es e diag ama se ha sepa ado en 2. El p ime o ep esen a
la he encia y dependencias comunes a odas las clases, y el segundo las dependencias
que no son comunes. !
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!12

•Clea F ameCommand. Comando enca gado de einicia la en ana de la
aplicación al es ado inicial, sesión ce ada y mos ando el eclado. Si se hubiese
i mado docencia y no se hubiese gua dado, se gua da ía au omá icamen e an es
de ce a .
•LoadP o esso Command. Inicia sesión pa a el p o eso asociado al DNI
in oducido.
•SendNo i ica ionCommand. Almacena la no i icación que haya mencionado el
p o eso .
•ShowReplacemen P o esso Lis Command. Mues a los p o eso es con docencia
sin i ma en la anja ho a ia ac ual.
•ShowReplacemen TeachingLis Command. Mues a las asigna u as sin i ma
pa a el p o eso al que se a a sus i ui .
•SignTeachingsCommand. Fi ma las asigna u as seleccionadas y mues a un
mensaje de con i mación.
!
model
!
!
!
!
!
!
!
•Obse able y Obse e . Clases pa a implemen a el pa ón de diseño Obse e .
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
•P o esso . Rep esen ación de un p o eso con su DNI, nomb e y co eo
elec ónico.
•P o esso Lis .
•Schedule. Ho a io de la docencia, compues o po la ho a de inicio, in y el aula.
•Subjec . Asigna u a, compues a po su nomb e y la i ulación a la que pe enece.
•Teaching. Docencia, la cual se ep esen a median e un p o eso que da una
asigna u a a un g upo en un ho a io conc e o.
•TeachingLis .
!13
!
no i ica ion !
!
!
!
!
!
!
!
!
!
•MailSende . Se enca ga de en ia un co eo al p o eso que ha i mado la
docencia pa a con i ma dicha i ma. Si hubiese sus i uido a o o p o eso ,
ambién en ia á un co eo al o o p o eso pa a no i ica le que su docencia ha
sido cubie a.
!
pe sis ence !
!
•No i ica ionSa e . In e az pa a gua da una no i icación egis ada po un
p o eso .
•P o esso Lis Loade . In e az pa a ep esen a la ca ga de oda la lis a de
p o eso es median e un mé odo load().
•TeachingLis Loade . In e az pa a la ca ga de la docencia del día ac ual.
•SignedTeachingLis Sa e . In e az pa a gua da la lis a de la docencia i mada
po un p o eso .
!
!
!14
pe sis ence_db !
!
!
!
!
!
!
!
!
!
!
•Da abaseNo i ica ionSa e . Implemen ación pa a gua da una no i icación en
una base de da os.
•Da abaseP o esso Lis Loade . Implemen ación pa a ca ga la lis a de p o eso es
desde una base de da os.
•Da abaseTeachingLis Loade . Implemen ación pa a ca ga la lis a de docencia
del día ac ual desde una base de da os.
•Da abaseSignedTeachingLis Sa e . Implemen ación pa a almacena la docencia
i mada po un p o eso .
!
!
iewcon olle s !
!
!
!
!
!
!
!
!
!
!
!
!
!
!
•Rube F ameCon olle . Con olado p incipal de la en ana de la aplicación al
cual acceden los comandos.
!
!
!15
iews !
!
!
!
!
!
!
!
!
•Command. In e az que implemen an las clases del paque e commands pa a
ejecu a acciones en el sis ema.
•E en s. Con iene odos los ipos de e en os que pueden lanza se du an e la
ejecución de la aplicación pa a que los cap u en los con olado es.!
!16
3.2.4.Diseño de la in e az de usua io
!
Pa a mos a el diseño de la in e az de usua io, explica emos el eco ido que hab ía
que segui pa a ealiza cada uno de los casos de uso. Al inicia la aplicación, la pan alla
inicial es siemp e la misma pa a solici a el DNI del p o eso .
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Pa a el caso de uso de ac edi a asis encia, el p oceso se ía el siguien e. Una ez
in oducido el DNI, se ocul a el eclado y se mues a la o o y nomb e del p o eso ,
jun o con las asigna u as que iene en la anja ho a ia ac ual. Las asigna u as apa ecen
ma cadas po de ec o po comodidad, aunque pueden desma ca se si el p o eso no a a
asis i a una de las clases.
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!17

!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
En es e momen o el p o eso debe i ma sob e la able a digi alizado a y pulsa sob e el
bo ón "Te mina " de la able a una ez haya acabado de i ma . Cuando haga es o,
apa ece á la siguien e pan alla:
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Es e mensaje apa ece du an e 3 segundos, as los cuales se cie a la sesión y
ol e íamos a la pan alla inicial. Si el p o eso i mase y no pulsa a el bo ón "Te mina "
en la able a, cuando se ce ase la sesión (po pulsa el bo ón "Ce a " o po
inac i idad), se i ma ía au omá icamen e.
!
!18
!
Si el p o eso quisie a en ia una no i icación po que su docencia no apa ece o un
p oblema pa ecido, debe ía pulsa sob e el bo ón "En ia no i icación":
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!19
Pa a el caso de sus i ui a un p o eso no debe ene docencia sin i ma en la anja
ho a ia ac ual, po lo que al inicia sesión debe ía apa ece le es a pan alla.
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Al pulsa "Sus i ui p o eso " e á una lis a de los p o eso es con docencia sin i ma en
la anja ho a ia ac ual, es ando dicha lis a paginada po el nomb e del p o eso ,
haciendo que la búsqueda sea más ápida.
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!20
Una ez seleccionado el p o eso , mos a íamos la docencia que iene dicho p o eso sin
i ma , dando la posibilidad de cambia de p o eso si nos hubiésemos equi ocado.
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Po úl imo, i ma íamos en la able a igual que en el caso de ac edi a asis encia.!
!21
Pasando a la ecnología ha dwa e, pa a ejecu a la aplicación se u iliza un o denado
muy básico (1 GB de memo ia RAM, 1.8 GHz de p ocesado ) con Windows, jun o con
un moni o ác il de 17 pulgadas y un able a Wacom STU 500 pa a cap u a la i ma.
!
!28

4.3. I e aciones!
!
El desa ollo del p oduc o es a á basado en i e aciones, con euniones ecuen es con el
clien e pa a ecibi eedback de mane a ápida.
!
La p ime a i e ación es a á dedicada a implemen a las uncionalidades que pide el
p oduc owne , es deci , los casos de uso de allados más a iba. Una ez alidadas las
uncionalidades, se ha á una segunda i e ación pa a mejo a aspec os de la in e az de
usua io. Cuando és a haya acabado, se pond á en uncionamien o la aplicación con
algunos p o eso es pa a ob ene eedback de los usua ios. Po úl imo, se ha á una
e ce a i e ación pa a mejo a lo que hayan comen ado los usua ios y algunos cambios
en al in e az g á ica.
!
4.3.1. Idea inicial
!
La idea inicial del p oduc o es que sea una página web a la que se accede á desde un
equipo con pan alla ác il en la conseje ía de la EII. Desde ahí, los p o eso es se
au en i ica án con su usua io y con aseña de MiULPGC. Una ez au en i icado, se
mues a al p o eso su p óxima docencia. Es e e a el concep o que enía el p oduc
owne :
!29
!
Con es o en men e, comenzamos a busca in o mación sob e cómo ob ene odos los
da os necesa ios a a és de la ULPGC, es deci , ho a ios de docencia y un se icio pa a
au en i ica al p o eso ado.
!
Pa a ob ene los ho a ios de docencia, nos pusimos en con ac o con el Se icio de
In o má ica de la ULPGC, el cual nos comunicó que no exis ía aplicación o se icio
pa a ob ene esos da os, po lo que nos los debe ía p opo ciona el di ec o de la EII.
Con ac amos con el p oduc owne , que nos p opo ciona un iche o Excel con odos los
ho a ios de docencia que luego impo amos a una base de da os MySQL p opo cionada
po la EII.
!
Pa a la au en i icación de p o eso ado el cambio u o que se un poco más adical. Hace
pocos meses la ULPGC implan ó un nue o sis ema de au en i icación, CAS (Cen al
Au hen ica ion Sys em), median e el cual odos los se icios de la uni e sidad que
equie an el uso del usua io y con aseña de MiULPGC deben pasa po esa web pa a
au en i ica se. An e io men e exis ía un se icio de au en icación, pe o con es e nue o
sis ema odas las aplicaciones deben pasa po la web del CAS y abaja con “ icke s”
en luga de usua io/con aseña.
!
Es e cambio supone una p oblemá ica po que, dado que la aplicación que amos a
desa olla es a pensada pa a que se ejecu e en un o denado compa ido po odo el
p o eso ado, es a íamos con inuamen e iniciando y ce ando sesión con el CAS, algo
que no es lo que que emos. Únicamen e necesi amos alida un usua io, no inicia una
sesión pa a luego ce a la a los 10 segundos. Además, en con e saciones pos e io es
con el p oduc owne , llegamos a la conclusión de que in oduci dia iamen e a ias
eces el usua io y con aseña de MiULPGC en un moni o ác il es un p oceso
engo oso y pelig oso pa a que o as pe sonas descub an la con aseña.
!
Con es o en men e, p oponemos al p oduc owne o os mé odos pa a au en i ica a los
p o eso es. La idea de ene un PIN pa a cada p o eso no gus a po que al se una
con aseña única pa a es e sis ema es más ácil que los p o eso es la compa an y i men
en nomb e de o os. O a idea plan eada ue au en i ica median e una o o, al llega al
moni o se hace una o o y se egis a quien i mó la asis encia. Al p oduc owne
ampoco le con enció es á opción y al inal se op ó po u iliza una able a
digi alizado a, con la que los p o eso es i men la asis encia como si ue a en papel,
pe o almacenando odo de mane a digi al.
!
!
!30
4.3.2. I e ación 1. Funcionalidades
!
Una ez a la semana, ap oximadamen e, se enía una eunión con el clien e pa a alida
lo que se iba implemen ando. De es a o ma se iban haciendo cambios muy sencillos
sob e la ma cha, como po ejemplo el colo de alguna pa e de la in e az o que se
pe mi ie an i ma asigna u as den o de un ango de iempo de e minado. Si se hubiese
seguido un en oque de desa ollo en cascada, el clien e hubiese is o el p oduc o
e minado al inal y p obablemen e se acumula ían los cambios a ealiza y no se ían an
sencillos.
!
T as las euniones con el p oduc owne , se llegó a un p ime p o o ipo uncional que
enía la siguien e in e az. Al a anca el p og ama se mos aba es a pan alla que
solici aba el DNI. El eclado se hizo simila al eclado numé ico de un o denado ,
añadiendo una X pa a los DNI de ex anje os.
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
T as in oduci el DNI, se mues a el nomb e e imagen de pe il del p o eso , jun o con
las dos opciones disponibles, e la docencia del día o sus i ui . En es e caso, si
pulsamos “Docencia del día” nos apa ece una pan alla acía po que no enemos
docencia y nos da la opción de ol e a ás.
!
!
!
!
!
!
!
!
!31
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!32
!
Al ol e a la página de inicio, si pulsamos en “Sus i ución” nos apa ece la docencia
ac ual, que pa a noso os signi ica que la clase haya empezado como mucho hace 2
ho as o den o de 2 ho as. Tenemos un espacio acío a la de echa que se dejó en blanco
pa a apoya el dedo en esa zona y ealiza un desplazamien o ác il.
!
!
!!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Cuando seleccionamos asigna u as, nos pe mi e la opción de i ma , la cual ab e una
cuad o de diálogo nue o y ac i a la able a digi alizado a.
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!33

!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Po úl imo, si hubiese iniciado sesión con un p o eso que u ie a docencia en ese
momen o, la pan alla de “Docencia del día” hubiese enido es e aspec o.
!
!!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!34
4.3.3. I e ación 2. In e az de usua io
!
Una ez c eado el p ime p o o ipo con odas las uncionalidades que que ía el p oduc
owne , nos eunimos con el u o pa a conoce su opinión y ecibi eedback ya que, a
in de cuen as, el u o ambién es un p o eso que acaba á usando es e sis ema.
!
El u o p opone a ios cambios en la in e az a modo de hace la más cómoda. Pa a
empeza sugie e coloca el eclado a la izquie da, ya que nues a o ma de lec u a es de
izquie da a de echa, y coloca los núme os en o den no mal como en una calculado a.
También e i amos el concep o de “Con ol de i mas”, ya que la palab a “con ol”
puede ene una conno ación nega i a. Añadimos ambién la ho a y el día como
in o mación adicional jun o con el edi icio en el que se encuen a el disposi i o. En es a
p ime a e sión mos amos siemp e “Edi icio de In o má ica y Ma emá icas”, pe o
cuando se implan e en más escuelas uni e si a ias se c ea á un diálogo que se mues e al
inicia el p og ama y pe mi a elegi la escuela.
!
La pan alla p incipal queda aho a de es a o ma: !
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Una ez se inicia sesión, pa ece lógico pensa que no debe íamos da la opción de
i ma la docencia del día o sus i ui . Si el p o eso que inicia sesión iene docencia hoy,
p ime o debe i ma esa docencia. Una ez i mada (o si no u iese), da emos la opción
de sus i ui a o o p o eso . De es a o ma, si iniciamos sesión y enemos clase nos
apa ece lo siguien e:
!
!
!
!
!35
!!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
En cambio, si ya hemos i mado o no enemos docencia, nos da á la opción de sus i ui .
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!36
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!37
Una ez se ha seleccionado al p o eso , se mues a su nomb e y su o o debajo del
p o eso que ha iniciado sesión, y se lis a la docencia que iene el p o eso sin i ma :
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
En una de las euniones inales con el p oduc owne , uno de los p o eso es p opuso que
la aplicación pe mi ie a en ia no i icaciones, en el sen ido de que a p incipio de cu so
se da mucho que hay p oblemas con los ho a ios de docencia y los p o eso es no ienen
su docencia en la hoja. Al p oduc owne le gus ó la idea y imos que incluso sob e la
misma able a digi alizado a se podía esc ibi un mensaje co o sin mucha complicación.
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!44

De o ma ápida implemen amos es a uncionalidad, que quedó así:
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Al inicia sesión nos apa ece un bo ón de "En ia no i icación", al pulsa en él nos pide
que esc ibamos nues o mensaje sob e la able a y al pulsa e mina , la no i icación
queda á egis ada.
!
!
!45
5. Conclusiones!
!
La ealización del abajo ha sido bas an e sa is ac o ia ya que se han podido cumpli
odos los obje i os p opues os en un p incipio.
!
Desde el pun o de is a gene al del desa ollo de un p oduc o, ha sido in e esan e e
como ha su gido la p opues a de alo pa a los usua ios a pa i de ellos y no de los
desa ollado es. En un p incipio pa íamos de un p oduc o que a los usua ios no
apo aba nada; apo aba alo al p oduc owne po los da os que ecopilaba, pe o no a
las pe sonas que usaban el p oduc o. Sin emba go, la pues a en ma cha de un p ime
p o o ipo y la ecolección de eedback po pa e de los usua ios hicie on posible
descub i una p opues a de alo que mo i a a los usua ios a usa el p oduc o.
!
Pasando al desa ollo del p oduc o so wa e, ha sido en iquecedo el desa ollo de un
p oduc o eal, en el que hemos enido que i cambiando las ca ac e ís icas que habíamos
pensado en un p incipio pa a adap a nos a los dis in os p oblemas que apa ecían.
Además, se ha podido u iliza en pa e la me odología de desa ollo guiado po p uebas
(TDD) en el desa ollo del modelo de la aplicación.
!
Desde un pun o de is a de apo aciones adminis a i as que da el so wa e, se han
conseguido implemen a las uncionalidades p incipales que p e endíamos, dando la
posibilidad de egis a la asis encia de un p o eso a una clase o la sus i ución de un
p o eso a o o.
!
El mé odo de desa ollo elegido, basado en el agilismo, ha sido muy p o echoso ya que
es una mane a muy cómoda de abaja . No de inimos en un inicio un conjun o ígido de
equisi os y pasados 6 meses en egamos un p oduc o inal al p oduc owne . En luga
de eso, el p oduc owne iba iendo semanalmen e lo que se iba haciendo y alidando
las decisiones que se iban omando, lo que hacía el cambio más ápido que hace
muchos cambios cuando ya el p oduc o es á " e minado".
!
En ando en conc e o con el desa ollo guiado po p uebas, el hecho de ene p uebas
au omá icas nos ha dado la segu idad pa a ealiza cambios en el sis ema sin miedo,
pues o que eníamos los es s que nos de ec a ían si ha habido un allo. A modo de
esumen, y po elaciona un poco con la desc ipción que se dio en apa ados an e io es,
yo di ía que hace TDD me ha apo ado:
!
•Pode comp oba que odo unciona desde el p incipio, sin necesidad de ene un
mé odo main o una in e az de usua io.
•Pode e ac o iza sin miedo algunas secciones de código que en p incipio e an
menos "limpias".
•Sabe po donde empeza a abaja y ene un i mo de abajo más o menos
cons an e.
!
!
!
!
!46
Me hubiese gus ado pode aplica lo al desa ollo de la in e az, ya que había momen os
en los que sí no e que hacía cambios en la in e az con más "miedo" po que enía que
hace las p uebas a mano y aco da me de odo lo que enía que p oba cada ez que
hacía un cambio ya que no enía p uebas au omá icas pa a alida . En u u os abajos
se ía in e esan e aplica es a me odología al desa ollo de los o os módulos de una
aplicación (in e az de usua io, con ol).
!
Todo el diseño de la in e az de usua io se deba ió bas an e con ambos u o es, y se
puede e como la in e az u o muchas e siones dis in as. A lo la go de odas es as
e siones hemos in en ado consegui que el so wa e sea lo más usable posible, sin
necesidad de un manual de usua io. De hecho, cuando se puso en uncionamien o a
modo de p ueba, los p o eso es no u ie on demasiada di icul ad pa a u iliza lo, y las
pocas di icul ades que encon a on nos las comen a on pa a que las pudié amos
soluciona .
!
A ni el del código desa ollado, se ha in en ado consegui una a qui ec u a limpia, con
clases que muy a a ez supe an las 100 líneas de ex ensión. Igualmen e, no es nues a
in ención llega a una a qui ec u a y no ol e a modi ica la nunca. La a qui ec u a aún
puede mejo a se con la in ención de hace la más ácil de en ende pa a u u os
desa ollado es que man engan el p og ama. Esas es una de las apo aciones que nos da
el TDD, pode cambia el p og ama sabiendo que no hemos o o nada.
!
!47
6. T abajos u u os!
!
!
El desa ollo de es e sis ema no acaba en el ámbi o de es e T abajo de Fin de G ado.
Aún al a ían po desa olla una se ie de módulos que hagan uso de la aplicación que se
ha desa ollado.
!
Pa a empeza , hab ía que c ea una aplicación que, con los da os ecogidos a lo la go de
un día lec i o, gene e un iche o PDF con las i mas de odos los p o eso es que han
impa ido docencia en el día ac ual.
!
También pod ía se in e esan e ene o o pequeño módulo que lo único que haga sea
comp oba al inal del día si ha habido alguna al a y no i ica au omá icamen e al
esponsable. Es o ambién se pod ía hace manualmen e haciendo una consul a a la base
de da os, pe o es a o ma pod ía es a au oma izada po un lado la c eación de PDF's
pa a egis a la asis encia y el esponsable del cen o solo iene que p eocupa se cuando
eciba un co eo no i icándosele de que ha habido alguna ausencia.
!
Po úl imo, de ca a a in eg a el sis ema con oda la uni e sidad, lo ideal se ía que el
Se icio de In o má ica de la ULPGC pudie a da nos acceso di ec o a las bases de da os
de la uni e sidad, ya que end íamos la in o mación ac ualizada en odo momen o. Con
el sis ema ac ual, si hubiese un cambio en los ho a ios, el di ec o de la escuela nos lo
end ía que no i ica pa a noso os ac ualiza la base de da os in e na a la aplicación. Si
ya es amos conec ados di ec amen e a la uni e sidad, la ac ualización es inmedia a.
!
Con espec o al abajo ealizado, ambién se pod ían de ini una se ie de
modi icaciones u u as.
!
Po ejemplo, el abajo se ha ealizado sob e un o denado con sis ema ope a i o
Windows 7. Uno de los posibles abajos se ía p oba la aplicación en o os sis emas
ope a i os pa a e i a posibles p oblemas que puedan su gi si al implan a se el sis ema
en o a escuela uni e si a ia no se usa a el mismo sis ema ope a i o.
!
Po es e mismo mo i o ambién se pod ían ealiza p uebas con o as con igu aciones
so wa e, como po ejemplo, modelos dis in os de able as digi alizado as, pa a busca
algunas soluciones ha dwa e más ba a as o que los con olado es es én disponibles en
más sis emas ope a i os.
!
También pod ían añadi se o as uncionalidades, como po ejemplo a la ho a de sus i ui
a o o p o eso , da más opciones de il ado, como el á ea de conocimien o o un
his ó ico de p o eso es pa a que es én más ce ca los p o eso es que son más p obables
pa a sus i ui .
!
Con espec o a las no i icaciones, ambién se pod ían hace modi icaciones pa a elegi
el ipo de no i icación y hace un il ado más e ec i o pa a el esponsable de e isa
esos da os. De p ime as se nos pod ía ocu i no i icaciones de "Fallo en la docencia" o
"P oblema en el aula".
!
!48
!
Po úl imo, hab ía que dedica un iempo a o ma pe sonal pa a adminis a la
aplicación si pasase a man ene la el Se icio de In o má ica de la ULPGC. Se ha
in en ado que la a qui ec u a sea lo más limpia posible pa a que si el código lo coge o o
desa ollado no enga demasiados p oblemas, pe o siemp e es mejo si ese nue o
desa ollado iene a mano al au o o iginal pa a comen a dudas. Además, conside o
que es un p oceso bene icioso ambién pa a el desa ollado o iginal, ya que ecibi á
opiniones de o o p og amado y pod á ap ende cosas nue as pa a hace su código más
legible.!
!49

7. Fuen es de In o mación!
!
A con inuación, se ci an las uen es de in o mación u ilizadas pa a el desa ollo del
p oyec o:
!
Rela i as al uso de Ja aFX
!
•Layou
docs.o acle.com/ja a x/2/layou /buil in_layou s.h m
•CSS
docs.o acle.com/ja a x/2/api/ja a x/scene/doc- iles/css e .h ml
•E en os
docs.o acle.com/ja a x/2/api/ja a x/e en /E en .h ml
•Imágenes
s acko e low.com/ques ions/16990482/ja a-lang-illegala gumen
•Cambios en la IU desde un hilo dis in o al p incipal
s acko e low.com/ques ions/13784333/pla o m- unla e -and- ask-
ja a x
•Con olado es desde FXML
s acko e low.com/ques ions/12543487/ja a x-nes ed-con olle s- xml-
include
•Elimina ba a supe io de la en ana de la aplicación
s acko e low.com/ques ions/9861178/ja a x-p ima ys age- emo e-
windows-bo de s
•Tex o en a ias líneas cuando no cabe en una sola
s acko e low.com/ques ions/20743668/wo d-w apping-inside-a-
i ledpane- ha -is-inside- box
•Cap u a cualquie e en o en la aplicación
docs.o acle.com/ja a x/2/e en s/p ocessing.h m
•Cap u a e en o al ce a aplicación
www.ja a2s.com/Code/Ja a/Ja aFX/S ageclosee en .h m
!
O as uen es e e en es al desa ollo
!
•En ío de co eo desde Ja a
www.mkyong.com/ja a/ja amail-api-sending-email- ia-gmail-sm p-example/
•Ca ga una DLL en Ja a
blog.ceda so .com/2010/11/se ing-ja a-lib a y-pa h-p og amma ically/
!
Rela i as a no ma i a y legislación
!
•Con ol de asis encia ULPGC
www.ulpgc.es/hege/almacen/download/18/18456/
no mas_pa a_el_con ol_de_asis enci.pd
•Ley O gánica de P o ección de Da os
h p://www.agpd.es/po alwebAGPD/jo nadas/dia_p o eccion_2011/
esponsable/index-ides-idphp.php!
!50
Anexo A. Manual de ins alación!
!
La ins alación del so wa e en una máquina es un p oceso muy sencillo y que se
desc ibe a con inuación.
!
Lo p ime o que ecomendamos es que se desac i en las ac ualizaciones au omá icas en
el equipo con Windows, pa a e i a einicios inespe ados. También se ía deseable
desac i a el apagado de pan alla au omá ico pa a que se mues e siemp e la pan alla
inicial de la aplicación y no se quede en neg o.
!
En Windows 7, pa a desac i a las ac ualizaciones au omá icas, debemos i al Panel de
Con ol y en a al menú de Windows Upda e, en la opción Ac i a o desac i a la
ac ualización au omá ica.
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Pa a desac i a el apagado de la pan alla, ambién debemos i al Panel de Con ol, en
Opciones de ene gía. Desde ahí podemos cambia la con igu ación del plan de ene gía y
es ablece que la pan alla no se apague nunca y que el equipo no en e en eposo.
!
!
!
!
!
!
!
!
!
!
!51
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Como equisi os an es de pone en uncionamien o la aplicación, el equipo debe de ene
ins alado el STU SDK de Wacom en el di ec o io "C: P og am Files". Tampoco
debemos ol ida nos de ene conec ada en odo momen o la able a Wacom pa a ealiza
las i mas.
!
!52
A la ho a de a anca la aplicación, és a se encuen a den o de la ca pe a "dis " la cual
con iene las lib e ías necesa ias y las imágenes de pe il del p o eso ado. Haciendo
doble click sob e el iche o Rube .ja , la aplicación debe ía a anca sin ninguna
complicación.
!53