Download 2. Requerimientos de Funcionalidad - Trabajos de grado

Document related concepts
no text concepts found
Transcript
TAVA
ESPECIFICACIÓN SUPLEMENTARIA SRS
Versión 1.2
Luisa Fernanda Barón
María Camila Ronderos
Pontificia Universidad Javeriana
Febrero de 2009
Bogotá D.C.
HISTORIAL DE CAMBIOS
Versión
Fecha
1.0
10/Marzo/2009
1.1
15/Marzo/2009
1.2
23/Marzo/2009
1.3
19/Abril/2009
1.4
01/Junio/2009
Sección
modificada
1, 2, 7
Descripción de
cambios
Se completaron las
secciones
especificadas del
documento.
2, 3, 6 y 10
Se completaron las
secciones
especificadas del
documento
y
reclasificaron los
requerimientos
funcionales.
4, 5, 10.1, 10.3 y Se completaron las
10.4
secciones
especificadas del
documento.
8, 9, 11 y 13
Se completaron las
secciones
especificadas del
documento.
11 y 12
Se completaron las
secciones
especificadas del
documento.
TABLA DE CONTENIDO
1.
Introducción .......................................................................................................................................... 6
1.1.
Propósito ....................................................................................................................................... 6
1.2.
Alcance ......................................................................................................................................... 6
1.3.
Referencias.................................................................................................................................... 6
1.4.
Descripción General...................................................................................................................... 7
2.
Requerimientos de Funcionalidad ......................................................................................................... 8
3.
Requerimientos no Funcionales de Interfaz de Usuario........................................................................ 9
4.
Requerimientos de Usabilidad ............................................................................................................ 10
5.
Requerimientos de Desempeño ........................................................................................................... 10
6.
Requerimientos de Soporte ................................................................................................................. 10
7.
Restricciones de Diseño ...................................................................................................................... 11
7.1.
Restricciones de Lenguaje .......................................................................................................... 11
7.2.
Herramientas y Librerías Disponibles......................................................................................... 11
8.
Documentación en Línea y Requerimientos de Ayuda del Sistema ................................................... 12
9.
Componentes Adquiridos.................................................................................................................... 12
10.
Interfaces ......................................................................................................................................... 12
10.1.
Interfaces de Usuario .............................................................................................................. 12
10.2.
Interfaces de Hardware ........................................................................................................... 14
10.3.
Interfaces de Software ............................................................................................................. 14
10.4.
Interfaces de Comunicación .................................................................................................... 14
11.
Requerimientos de Licencia ............................................................................................................ 14
12.
Aspecto Legal, Derechos de Autor y Otros .................................................................................... 15
13.
Estándares Aplicables ..................................................................................................................... 15
ÍNDICE DE ILUSTRACIONES
Ilustración 1. Convención colores requerimientos ........................................................................................ 7
Ilustración 2. Ventana Principal TAVA ...................................................................................................... 13
Ilustración 3. Opciones Adición/Edición .................................................................................................... 13
Ilustración 4. Sección de Código ................................................................................................................ 13
ÍNDICE DE TABLAS
Tabla 1. Requerimiento Funcional F-01 ....................................................................................................... 8
Tabla 2. Requerimiento Funcional F-02 ...................................................................................................... 8
Tabla 3. Requerimiento Funcional F-03 ....................................................................................................... 8
Tabla 4. Requerimiento Funcional F-04 ....................................................................................................... 8
Tabla 5. Requerimiento Funcional F-05 ....................................................................................................... 8
Tabla 6. Requerimiento Funcional F-06 ....................................................................................................... 9
Tabla 7. Requerimiento Funcional F-07 ....................................................................................................... 9
Tabla 8. Requerimiento de Interfaz de Usuario NFIU-01............................................................................. 9
Tabla 9. Requerimiento de Interfaz de Usuario NFIU-02............................................................................. 9
Tabla 10. Requerimiento de Interfaz de Usuario NFIU-03........................................................................... 9
Tabla 11. Requerimiento de Usabilidad U-01............................................................................................. 10
Tabla 12. Requerimiento de Usabilidad U-03............................................................................................. 10
Tabla 13. Requerimiento de Usabilidad U-04............................................................................................. 10
Tabla 14. Requerimiento de Soporte S-01 .................................................................................................. 11
Tabla 15. Requerimiento de Soporte S-02 .................................................................................................. 11
Tabla 16. Requerimiento de Ayuda del Sistema DL-01 ............................................................................. 12
Tabla 17. Requerimiento de Ayuda del Sistema DL-02 ............................................................................. 12
1. Introducción
1.1. Propósito
Especificar los requerimientos en cuanto a funcionalidad, usabilidad, fiabilidad y disponibilidad
al igual que las restricciones de la herramienta didáctica TAVA la cual tiene como finalidad
apoyar los procesos de enseñanza-aprendizaje de los conceptos de variables de tipos de datos
nativos y apuntadores.
De igual forma esta especificación tiene como propósito servir de guía para tener claridad en los
objetivos y resultados esperados de las fases de implementación y pruebas de la herramienta.
1.2. Alcance
Este documento describe de forma detallada los requerimientos de la herramienta TAVA la cual
se desarrollará como Trabajo de Grado de las estudiantes Luisa Fernanda Barón y María Camila
Ronderos durante los períodos 2008-3 y 2009-1 formando parte de un proyecto del grupo de
investigación ISTAR del departamento de Ingeniería de Sistemas de la Pontificia Universidad
Javeriana llamado “Software Tangible” en donde se pretende facilitar el aprendizaje de los
conceptos de programación utilizando herramientas didácticas basadas en software.
Será utilizado como referencia crucial para el desarrollo de la herramienta, ya que, al especificar
los requerimientos de la herramienta se podrán confrontar los prototipos, casos de prueba y
versión final con estos.
1.3. Referencias
[1]. Gil
T.,
Marcos
A.,
“Apuntadores
en
C
y
C++”,
8
Dic.
2004;
http://www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r43599.PDF
[2]. Adobe
Systems
Incorporated,
“ActionScript
Technology
Center”,
2009;
http://www.adobe.com/devnet/actionscript/
TM
[3]. Sun
Microsystems,
Inc,
“The
Java
Languaje:
An
Overview”;
http://java.sun.com/docs/overviews/java/java-overview-1.html
[4]. Sun
Microsystems,
Inc.,
“Swing
TM
(Java Foundation Classes)”, 2005; http://java.sun.com/javase/6/docs/technotes/guides/swing/
[5]. Pozo, Salvador, “Tipos de variables I”, 2000; http://c.conclase.net/curso/index.php?cap=002
[6]. The
Linux
Information
Project,
“Tooltip
Definition”,
23
Jul.
2005;
http://www.bellevuelinux.org/tooltip.html
[7]. Sun
Microsystems,
Inc.,
“The
Java
Language:
An
Overview”;
http://java.sun.com/docs/overviews/java/java-overview-1.html
[8]. The Eclipse Foundation, “About the Eclipse Foundation”, 2009; http://www.eclipse.org/org/
[9]. Adobe Systems Incorporated, “Adobe® Flash® CS3 Professional Guía del Usuario”, 2007;
http://livedocs.adobe.com/flash/9.0_es/UsingFlash/flash_cs3_help.pdf
[10].
Adobe Systems Incorporated, “Utilización de Fireworks® Introducción”;
http://help.adobe.com/es_ES/Fireworks/9.0/help.html?content=frw_intro_in_21.html
6
[11].
Deckers, Christopher, “The DJ Project”; http://djproject.sourceforge.net/ns/
[12].
The
Eclipse
Foundation,
“SWT:
The
Standard
Widget
Toolkit”;
http://www.eclipse.org/swt/
[13].
JAVASOFT
Software
Engineering,
“What
is
Synthetica?”,
2008;
http://www.javasoft.de/jsf/public/products/synthetica
[14].
Adobe
Systems
Incorporated,
“Adobe
Player
Licensing”,
2009;
http://www.adobe.com/products/players/fpsh_distribution1.html
[15].
Adobe
Systems
Incorporated,
“Adobe
Flash
Player”,
2009;
http://www.adobe.com/es/products/flashplayer/
[16].
Deckers, Christopher, “The DJ Project”, 2007; http://sourceforge.net/projects/djproject/
[17].
JAVASOFT
Software
Engineering,
“Synthetica
Licence”,
2008;
http://www.javasoft.de/jsf/public/products/synthetica/license
[18].
Object Management Group, Inc, “Getting Started With UML”, 2009;
http://www.uml.org/
[19].
Free Software Foundation, Inc., “GNU Operating System Licencias” , 2007;
http://www.gnu.org/licenses/licenses.es.html#GPL
[20].
Sun Microsystems, Inc., “How to Set the Look and Feel”, 2008;
http://java.sun.com/docs/books/tutorial/uiswing/lookandfeel/plaf.html
[21].
Encyclopædia
Britannica,
Inc.,
“C++”;
http://www.britannica.com/EBchecked/topic/688345/C
[22].
Adobe Systems Incorporated, “Adobe Contrato de Licencia de Software”, 2009;
http://www.adobe.com/products/eulas/pdfs/Gen_WWCombined-CS3-20060817_1651.pdf
1.4. Descripción General
Esta especificación define las características de la herramienta que se va a desarrollar para apoyar
los procesos de enseñanza-aprendizaje de algunos conceptos de programación. Incluye la
perspectiva, el alcance y las propiedades funcionales y no funcionales. También se describen
características que definen la presentación de la herramienta a los usuarios finales que
interactuarán con esta.
Permite a las desarrolladoras entender las necesidades de diseño de la aplicación y será una
herramienta para implementar los requerimientos funcionales descritos en detalle en la sección 2.
Adicionalmente, en la definición de requerimientos se utiliza una convención de colores en la
documentación de cada tipo de requerimiento, esta convención se detalla en la Ilustración 1.
Requerimientos de Funcionalidad
Requerimientos no Funcionales de Interfaz de
Usuario
Requerimientos de Usabilidad
Requerimientos de Soporte
Ilustración 1. Convención colores requerimientos
7
2. Requerimientos de Funcionalidad
Id Requerimiento
Descripción
Razón
F-01
CU-1
Caso de Uso Asociado
El sistema debe ofrecer dos tipos de proyectos al iniciar la sesión:
creación y manejo de variable nativas o apuntadores
La población objetivo de la aplicación está dividida en dos cursos
en donde la principal diferencia en temáticas es la definición y
uso de apuntadores, dicha temática tan solo es abordada en uno de
los dos cursos mencionados previamente.
Tabla 1. Requerimiento Funcional F-01
Id Requerimiento
Descripción
Razón
F-02
CU-9
Caso de Uso Asociado
El sistema debe presentar al usuario una sección que se llamará
Sección de Animación, donde se pueda observar el
comportamiento de las variables y apuntadores en tiempo de
compilación y ejecución.
Para que la aplicación pueda cumplir con su objetivo principal
(ser una herramienta didáctica) la explicación de los conceptos no
se hará de una forma convencional, sino a través del uso de
animaciones.
Tabla 2. Requerimiento Funcional F-02
Id Requerimiento
Descripción
Razón
F-03
CU-9
Caso de Uso Asociado
El sistema debe asegurar la consistencia entre los elementos
desplegados en la Sección de Código y la Sección de Animación.
Uno de los objetivos de la aplicación es “brindar apoyo al
proceso de enseñanza-aprendizaje” por lo que el apoyo que puede
ofrecer TAVA está condicionado a que todas las modificaciones
que se realicen sobre la sección de código correspondan a la
animación que se muestra.
Tabla 3. Requerimiento Funcional F-03
Id Requerimiento
Descripción
Razón
F-04
CU-9
Caso de Uso Asociado
El sistema debe permitir al usuario manipular las animaciones por
medio de controles de detener (stop), pausar (pause), reproducir
(play) y depurar (debug).
Los usuarios deben tener control sobre el momento en que se
despliega la animación de una/s línea/s de código definida por el
mismo usuario.
Tabla 4. Requerimiento Funcional F-04
Id Requerimiento
Descripción
Razón
F-05
CU-4, CU-5, CU-7
Caso de Uso Asociado
El sistema debe permitir al usuario adicionar, eliminar y
modificar variables, dichas acciones se deben ver reflejadas tanto
en la Sección de Código como en la Sección de Animación.
Los usuarios deben tener control sobre el contenido que
presentará en la Sección de Código, el cuál debe ser consistente
con el que se presentará en la Sección de Animación (Ver
Requerimiento Funcional F-03)
Tabla 5. Requerimiento Funcional F-05
8
Id Requerimiento
Descripción
Razón
F-06
CU-2, CU-3
Caso de Uso Asociado
El sistema debe permitir a los usuarios guardar y abrir un
proyecto creado previamente.
Se debe permitir a los usuarios retomar un proyecto que haya sido
iniciado en un momento dado.
Tabla 6. Requerimiento Funcional F-06
Id Requerimiento
Descripción
Razón
F-07
CU-6, CU-7
Caso de Uso Asociado
El sistema debe permitir al usuario adicionar y eliminar
operaciones, dichas acciones se deben ver reflejadas tanto en la
Sección de Código como en la Sección de Animación (en tiempo
de ejecución).
Los usuarios deben tener control sobre el contenido que
presentará en la Sección de Código, el cuál debe ser consistente
con el que se presentará en la Sección de Animación (Ver
Requerimiento Funcional F-03)
Tabla 7. Requerimiento Funcional F-07
3. Requerimientos no Funcionales de Interfaz de Usuario
Esta sección hace referencia a los requerimientos no funcionales involucrados con el desarrollo de la
interfaz de usuario, pero no llegan a clasifican como requerimientos de usabilidad.
Id Requerimiento
Descripción
Razón
FIU-01
El sistema deberá desplegar las animaciones en archivos de
reproducción flash embebidos en la aplicación.
De forma que el manejo de las animaciones permita realizar una
mayor cantidad de acciones a los usuarios, al igual que su
presentación sea agradable para estos.
Tabla 8. Requerimiento de Interfaz de Usuario NFIU-01
Id Requerimiento
Descripción
Razón
FIU-02
El sistema debe presentar al usuario una sección que se llamará:
Sección de Código, donde se despliegue el código que
corresponda a las variables y operaciones creadas en lenguaje
C++.
En los programas de cada uno de los cursos donde se encuentra
ubicada la población objetivo el único lenguaje de programación
utilizado es C++.
Tabla 9. Requerimiento de Interfaz de Usuario NFIU-02
Id Requerimiento
Descripción
Razón
FIU-03
La cantidad de variables a ser creadas estará limitada por un
espacio de memoria de 14x16 espacios, donde cada uno de estos
representa un byte.
El espacio de memoria representada fue limitado para que de esta
forma todos los valores de las variables sean desplegados de una
forma correcta y visualmente agradable.
Tabla 10. Requerimiento de Interfaz de Usuario NFIU-03
9
4. Requerimientos de Usabilidad
Puesto que TAVA es una herramienta que adicional a ser definida como: herramienta didáctica, cuenta
con una población objetivo variada en cuanto a edades y conocimientos, los requerimientos de usabilidad
tendrán una alta prioridad.
Por las razones mencionadas previamente, TAVA deberá ofrecer una interfaz grafica que cuente con
controles descriptivos, de tal forma que el usuario pueda comprender fácilmente que acciones se pueden
realizar con cada uno de los controles presentes en la aplicación.
Id Requerimiento
Descripción
Razón
U-01
El sistema cuenta con ToolTipText para fines de ayuda al usuario
El usuario debe poder identificar fácilmente que acciones puede
realizar en la aplicación sobre un elemento específico.
Tabla 11. Requerimiento de Usabilidad U-01
Id Requerimiento
Descripción
Razón
U-02
El sistema debe contar con Demos, los cuales son una simulación
de un proyecto creado previamente con algunas características
específicas.
Los usuarios podrán observar algunos de los elementos que
podrán crear con la aplicación, al igual que podrán enfocarse en el
análisis de las animaciones y código representado.
Tabla 12. Requerimiento de Usabilidad U-03
Id Requerimiento
Descripción
Razón
U-03
El usuario debe poder deshacer una acción realizada, o más
específicamente, eliminar variables y operaciones.
El que los usuarios puedan deshacer una o más acciones
realizadas fomenta la exploración de la aplicación por parte de los
usuarios.
Tabla 13. Requerimiento de Usabilidad U-04
5. Requerimientos de Desempeño
Aunque TAVA no es una herramienta de uso crítico para los usuarios, si deberá tener un tiempo de
respuesta no mayor a veinte (20) segundos por cada acción que realice el usuario, de igual forma esta no
deberá utilizar un espacio significativo en la memoria principal del computador del usuario.
6. Requerimientos de Soporte
Esta sección describe los requerimientos que mejorarán o incrementarán la capacidad de mantenimiento
de la aplicación por personas externas.
Id Requerimiento
Descripción
S-01
Se utilizara el paradigma orientado a objetos en el diseño e
10
Razón
implementación de la aplicación.
Puesto que el lenguaje en el que se desarrollará la aplicación es
orientado a objetos[7], el que el diseño e implementación se
realicen siguiendo este mismo paradigma facilitará su desarrollo y
futuro soporte (de ser el caso).
Tabla 14. Requerimiento de Soporte S-01
Id Requerimiento
Descripción
Razón
S-02
Se utilizarán convenciones tanto en los nombres de las clases
como en los atributos de estas.
Los nombres de las clases y sus atributos deberán ser claros y
expresar lo que representan para facilitar tanto el desarrollo como
el posible soporte que se le llegue a dar a la aplicación, tanto por
parte de los desarrolladores como de otras personas.
Tabla 15. Requerimiento de Soporte S-02
7. Restricciones de Diseño
Esta sección describe las restricciones de diseño para el desarrollo de TAVA, clasificadas de la siguiente
forma:
7.1. Restricciones de Lenguaje
Durante las etapas de diseño e implementación se deberán tener en cuenta las siguientes restricciones
en cuanto a los lenguajes que se utilizarán para el cumplimiento de todos los requerimientos
especificados en este documento.


Java, este es el lenguaje seleccionado en el que se desarrollará la mayor parte de la
aplicación, entre las que se encuentran: lógica de la aplicación e interfaz gráfica de usuario.
ActionScript, este es el lenguaje seleccionado para realizar las animaciones propias de la
herramienta.
7.2. Herramientas y Librerías Disponibles






Eclipse[8], IDE (Integrated Development Environment) en el que se desarrollará la
aplicación, en cuanto al componente de Java.
Flash CS3[9], herramienta que será utilizada para el diseño e implementación de la animación
presente en la aplicación.
Fireworks CS3[10], herramienta de diseño que se utilizará para la creación y modificación de
las imágenes presentes en la aplicación.
Librería DJNativeSwing[11], librería utilizada para la integración de Java y Flash.
Librería SWT (Standard Widget Toolkit)[12], esta librería debe ser utilizada para el correcto
funcionamiento de la librería DJNativeSwing.
Librería Synthetica[13], librería utilizada para el manejo del Look And Feel de la aplicación.
11
8. Documentación en Línea y Requerimientos de Ayuda del Sistema
Esta sección especifica las ayudas que deberá incluir la aplicación para facilitar a los usuarios el uso de
esta o como complemento adicional a las explicaciones del profesor serán:
Id Requerimiento
Descripción
Razón
DL-01
La aplicación deberá ofrecer al usuario una variedad de Demos
donde se puedan observar ciertos aspectos claves del manejo de
variables y apuntadores.
El tener los Demos facilitará de cierta forma a los profesores el
proceso de explicación al asegurar que todos los estudiantes están
viendo el mismo código y animación.
Tabla 16. Requerimiento de Ayuda del Sistema DL-01
Id Requerimiento
Descripción
Razón
DL-02
La aplicación deberá ofrecer al usuario la opción Ayuda, donde se
explicará cómo hacer uso de la aplicación.
En caso que los usuarios no comprendan como realizar alguna
acción o donde encontrar una opción, podrán utilizar esta opción
para hacerlo.
Tabla 17. Requerimiento de Ayuda del Sistema DL-02
9. Componentes Adquiridos
En esta sección se describen los componentes utilizados por TAVA que tienen ciertas restricciones de
licenciamiento o que puedan llegar a afectar por alguna circunstancia el funcionamiento de la aplicación.



Adobe® Flash® Player: Es necesario que esta aplicación esté instalada previo a utilizar TAVA,
pues esta es fundamental para la reproducción de la animación. Es necesario aclarar que
actualmente la instalación de esta aplicación no tiene ningún costo[14].
Librería DJNativeSwing: Esta librería es necesaria para el paso de mensajes de Java hacia Flash®,
por lo que es fundamental para el funcionamiento de la aplicación. En cuanto al licenciamiento,
Ver Sección 11.
Librería Synthetica: Aunque el uso de esta librería es opcional pues su uso no tiene de ninguna
implicación sobre los requerimientos funcionales descritos en este documento, una vez esta sea
utilizada en la aplicación el funcionamiento de la aplicación dependerá de esta librería. En cuanto
al licenciamiento, Ver Sección 11.
10. Interfaces
10.1. Interfaces de Usuario
Teniendo en cuenta que el tema de usabilidad es de gran importancia para esta aplicación, se decidió
que el diseño de la interfaz sería de forma tal que redujera la cantidad de ventanas con las que tuviera
que interactuar el usuario.
12
Igualmente, vale la pena mencionar que la interfaz está configurada preferiblemente para una
resolución de 1280 x 800 aunque no tiene inconvenientes con mayores o menores resoluciones.
Igualmente, como se detalló en secciones anteriores (requerimientos) contará con elementos
desarrollados tanto en flash como en java.
La distribución de la venta se puede observar en la Ilustración 2.
Ilustración 2. Ventana Principal TAVA
A continuación se describirán cada uno de los elementos resaltados en la Ventana Principal de TAVA
(Ver Ilustración 2):

Opciones Adición/Edición: Ilustración 3, en estas pestañas los usuarios encontrarán todas las
opciones necesarias para ejecutar las acciones que ofrece TAVA, tan solo se desplegarán ventanas
adicionales como mensajes de confirmación o información.
Ilustración 3. Opciones Adición/Edición

Sección de Código: Ilustración 4, en esta sección (parte inferior izquierda de la ventana) se
desplegará el código en C++ que se genere con las acciones realizadas por los usuarios,
igualmente incluye los elementos gráficos para controlar la animación de flash.
Ilustración 4. Sección de Código
13

Sección de Animación: Esta sección se implementará usando flash, y el usuario podrá
observar la metáfora en ejecución, al igual que ciertos detalles sobre las variables.
10.2. Interfaces de Hardware
El único requerimiento de hardware, aunque no necesario, será contar como mínimo con una tarjeta
gráfica de mediana calidad (128 Mb) pues aunque la aplicación manejará un nivel relativamente alto
en cuanto al componente grafico, no requiere un alto porcentaje de memoria de dicha tarjeta para
poder funcionar adecuadamente.
10.3. Interfaces de Software
En esta sección se describirán los componentes adicionales de software con los que interactuará la
herramienta:

Adobe® Flash® Player[15]: TAVA interactuará de forma constante con este software para
la creación, actualización y ejecución de la animación. Esta interacción se llevará a cabo
a través de un paso de mensajes hacia Flash® con los valores necesarios para la
representación de la animación.
10.4. Interfaces de Comunicación
La única comunicación que debe manejar la aplicación es entre Flash® y Java, la cual se hará usando la
librería DJNativeSwing (Ver Sección 7.2), esta librería que forma parte del proyecto DJ Project y
tiene como propósito la integración de algunos componentes (en este caso Flash®) con aplicaciones
Swing. La comunicación que establece entre Java y Flash es a través del paso de mensajes que en
Flash® se interpretan como invocación a métodos de clases creadas con ActionScript.
11. Requerimientos de Licencia
En esta sección se definirán y especificarán las características de la licencia bajo la cual estará regida
TAVA, todo esto con el fin de dar claridad respecto al uso de esta herramienta para futuros trabajos de
grado o demás usos que se le quieran dar.
Una de las restricciones que se deben tener en cuenta para definir el licenciamiento son las otras
aplicaciones o librerías que utiliza la herramienta, estas se detallan a continuación:


AdobePlayer®[14]: Esta aplicación es de libre distribución para laptops y computadores
de escritorio, aunque el instalador, ubicación de instalación, etc. no pueden ser
modificados la instalación en este tipo de hardware no tiene implicaciones económicas ni
de licenciamiento restrictivo respecto a su uso.
Adobe Flash®: Esta aplicación fue utilizada para la creación y modificación de los
elementos de la animación de TAVA. La cuál al ser una aplicación propietaria se rige por
una licencia específica, la cual se puede ver en [22].
14


Librería DJNativeSwing[16]: Esta librería se rige bajo las normas de la Licencia Pública
General de GNU (GPL) y de la Licencia Publica General Reducida de GNU (LGPL).
Librería Synthetica[17]: Aunque la Licencia Pública General (GPL) actualmente no es
válida para esta librería, es permitido que las aplicaciones no comerciales, como lo es
TAVA, distribuyan y utilicen esta librería junto con la aplicación de forma gratuita.
Es necesario aclarar que no hubo modificación ni reutilización del código de las librerías regidas por la
licencia GNU GPL, estas tan solo fueron utilizadas a través de la invocación de métodos.
Por lo anteriormente mencionado, ninguna de las aplicaciones y librerías mencionadas restringen la
licencia de TAVA y debido a que esta herramienta hace parte de un trabajo de grado, siendo muy
probable que su código fuente sea modificado o consultado por terceros se decidió que:
Toda la sección de la aplicación desarrollada en Java se regirá bajo las normas de la licencia GNU
GPL[19], teniendo en cuenta que para modificar la animación se debe tener Adobe Flash®, la
adquisición de la licencia para hacer uso de esta aplicación estará bajo la responsabilidad de quien
decida realizar la/las modificaciones.
12. Aspecto Legal, Derechos de Autor y Otros
Con respecto a los derechos de autor, se hablará de derechos morales y patrimoniales, en cuanto a los
derechos morales que se establecerán para este trabajo de grado son:

La autoría será del grupo de investigación ISTAR y de las autoras de este documento,
debido a que la idea original de este trabajo de grado pertenece al grupo de investigación,
dicha autoría será principalmente de ISTAR.
En cuanto a los derechos patrimoniales, se establece que:

Estos derechos serán de la Pontificia Universidad Javeriana, por lo que este trabajo de
grado en su totalidad quedará a disposición de esta entidad.
13. Estándares Aplicables
En esta sección se enumerarán y describirán los estándares a ser utilizados en las etapas de diseño y
desarrollo de TAVA los cuáles permitirán asegurar cierto nivel de mantenimiento de la aplicación
después de haber sido entregada.

UML (Lenguaje Unificado de Modelado)[18]: Haciendo uso de este lenguaje de modelado se
especificará y visualizará la estructura y diseño de la aplicación de forma que se cumpla con
todos los requerimientos especificados en este documento.
15