Professional Documents
Culture Documents
SOFTWARE EDUCATIVO
Lnea temtica a las que tributa el trabajo: Impacto de las Nuevas Tecnologas Educativas
RESUMEN
Los Software Educativos son aquellos programas didcticos, creados con la finalidad de
ser usados para apoyar el proceso de enseanza aprendizaje. Para su estructura,
diseo y utilizacin se tienen en cuenta caractersticas y elementos fundamentales
especficos que definen este tipo de producto. En la actualidad el desarrollo de software
educativo presenta dificultades a la hora de comprobar el correcto funcionamiento de
los mismos en cuanto a requerimientos no funcionales, ya que solo se realizan acciones
aisladas en este sentido y debido a que se prioriza el desarrollo de las funcionalidades
del software y se le presta menor atencin a los requisitos no funcionales, siendo estos
tan o ms importantes que los funcionales.
Por este motivo en el presente trabajo se traza como objetivo general elaborar un
procedimiento para realizar pruebas a requisitos no funcionales de software educativos
e implementar una herramienta para automatizar la gestin de estas pruebas y que
sirva de apoyo para la aplicacin de este procedimiento. Como resultado de este
trabajo se obtuvo un procedimiento que define detalladamente cmo realizar las
pruebas no funcionales de portabilidad, mantenimiento, fiabilidad, usabilidad y eficiencia
a un software educativo y se desarroll una herramienta para gestionar estas pruebas.
Una vez confeccionada la propuesta, se prob la solucin dada en los laboratorios
virtuales que se desarrollan en el Centro de Informtica Industrial (CEDIN) de la
Universidad de las Ciencias Informticas (UCI), obteniendo muy buenos resultados y
proporcionndole as a estos productos una mejor calidad en cuanto a requisitos no
funcionales.
Palabras Clave: eficiencia, fiabilidad, mantenimiento pruebas no funcionales,
portabilidad, usabilidad.
ABSTRACT
The Educational Software are those didactic programs, created with the purpose to
develop such products with the highest possible quality to support the teaching and
learning process. For its structure, design and operation are taken into account specific
features and elements which defines this type of product. Nowadays the development of
educational software has difficulty to check its correct operation in terms of nonfunctional requirements , since only isolated actions are taken in this regard due to that it
is prioritized the development of software functionalities and pays less attention to nonfunctional requirements , these being as or more important than functional requirements.
For this reason it was created as a general objective, developing a procedure for testing
non-functional requirements of educational software and the implementation of a tool
that automates the management of non-functional testing. As a result of this work we
obtained a procedure that defines in detail how to test non-functional requirements of
portability, maintainability, reliability, usability and efficiency of educational software and
it was developed a tool to manage these tests. After the establishment of the proposal
was tested to the solution of virtual laboratories that it has been developed in Centro de
Informtica Industrial (CEDIN) Universidad de las Ciencias Informticas (UCI), obtaining
very good results and providing these products a better quality in terms of non-functional
requirements.
Keywords: efficiency, reliability, maintenance, non-functional testing, procedure,
portability, usability.
1. INTRODUCCIN
Actualmente el desarrollo tecnolgico crece a pasos gigantescos, provocando que las
industrias para mejorar la productividad y la calidad de los servicios a sus clientes
automaticen sus procesos. Debido a este crecimiento continuo de la produccin de
software la competencia cada da es ms potente, por lo que se hace vital que el
producto se desarrolle con la mayor calidad.
Cuando se trata de un software educativo, es de suma importancia que estos se
desarrollen con un alto grado de calidad y se le realicen las pruebas no funcionales,
puesto a que el desarrollo de este tiene como base, el poder desarrollar herramientas
que soporten efectivamente el proceso de enseanza-aprendizaje y no cumplira
objetivo si el software no fuera fcil de usar, seguro y fiable.
En la actualidad, los software educativos, presenta dificultades a la hora de comprobar
el correcto funcionamiento de los mismos en cuanto a requerimientos no funcionales, ya
que solo realiza acciones aisladas en este sentido, debido a que se prioriza el
desarrollo de las funcionalidades del software, siempre buscando cumplir con las
entregas y minimizar costos por retrasos. Esto provoca que se aparte la atencin de la
realizacin de estas pruebas y que no sean evaluados los requisitos no funcionales con
objetividad, generando problemas en cuanto a la utilidad del software, el tiempo de
respuesta de las funcionalidades, la seguridad de este, entre otras, ya que el error
encontrado en tiempo de ejecucin es ms costoso que el descubierto en un ambiente
controlado.
Por la situacin anteriormente planteada sera factible que los equipos de desarrollo de
software educativos contaran con una secuencia de pasos lgicos que guen cmo
llevar a cabo pruebas no funcionales, convirtiendo a los software en productos ms
confiables, usables y libre de errores. Estas pruebas pueden ser ejecutadas de
diferentes tipos, tales como pruebas de seguridad, rendimiento, usabilidad y
portabilidad.
Luego de un anlisis de las necesidades reales existentes y con el fin de solucionar la
situacin anterior, se plantea como problema cientfico realizar pruebas de software
para comprobar el cumplimiento de los requisitos no funcionales en software
1
2. CONTENIDO
A continuacin se describe el procedimiento para la realizacin de pruebas no
funcionales para software educativo. Dicho procedimiento fue creado para dar
cumplimiento a los objetivos planteados en la investigacin, se centra en definir los
roles y sus responsabilidades, las actividades correspondientes, los artefactos de
entrada y salida que intervienen en la evaluacin de los requisitos no funcionales,
especficamente de portabilidad, mantenimiento, fiabilidad, usabilidad y eficiencia. Se
describe adems una herramienta que se desarrollar para gestionar las pruebas no
funcionales que se describen en el procedimiento.
2.1.
2.1.1. Objetivos
de
trabajo
Habilidades
Dominar
tcnicas
Dominar
el
ciclo
pruebas.
desarrollo de software.
gestin
de
software.
Dominar la programacin.
de
de
suite de office.
Dominar
los
tipos
de
proyecto.
el proyecto.
Probador
[11].
planes de pruebas.
Encargado
de
seguir
los
Conocer
los
tipos
Dominar
y
las
de
pruebas
la documentacin.
definidas.
Genera No conformidades.
pruebas.
pruebas realizadas.
de software y errores ms
comunes.
especificar una forma de probar el sistema que incluya las entradas, los resultados
esperados y las condiciones bajo las que ha de probarse.
Ticket: Tarea.
2.1.6. Descripcin general del Procedimiento para realizar pruebas a requisitos
no funcionales de software educativos
El procedimiento para la realizacin de pruebas no funcionales de software educativos
se centra en definir los roles y responsabilidades, las actividades correspondientes y los
artefactos de entrada y salida que intervienen en la evaluacin de los requisitos no
funcionales, especficamente de portabilidad, mantenimiento, fiabilidad y eficiencia,
evaluando estos a travs de las mtricas establecidas para medir estas caracterstica
de calidad (Ver Anexos 1, 2, 3 y 4). Verifica tambin el cumplimiento de la
caracterstica: usabilidad, a partir de una lista de chequeo de usabilidad (Anexo 5). El
procedimiento puede ser aplicado en las tres iteraciones de pruebas que se le deben
realizar al software.
Dicho procedimiento contiene cinco actividades generales, ellas son:
1. Preparar el entorno de la prueba.
2. Ejecutar la prueba segn el requerimiento no funcional a evaluar.
3. Existen No Conformidades?
4.
5.
Anlisis de resultados.
del Plan
de proyecto.
y pruebas.
del
1. Preparar el
entorno de la
Ticket.
(actualizado)
prueba.
probador.
Probador
(Depende del
requerimiento
a evaluar)
2. Ejecutar la
prueba segn el
requerimiento no
funcional a evaluar.
Aplicacin
probada.
3.Existen No
Conformidades?
Probador
Probador
[si]
Plantilla de no 4. Registrar las no
conformidades conformidades y
asignar
y Registro de
responsabilidades.
No
[No]
Conformidades.
(Depende del Aplicacin para 5. Anlisis de
requerimiento la Gestin de resultados
a evaluar)
Pruebas
no
Ticket
(No
conformidades
asignadas).
Registro de No
conformidades.
Reportes
de
resultados
de
la aplicacin.
Funcionales.
Instalador de la aplicacin.
Para la ejecucin de la prueba, que es la actividad 2 se desglosa en varias actividades
para apoyar la ejecucin de esta, tales como
2.1 Existe una versin de la aplicacin?
2.2. Ejecutar la versin anterior.
2.3. Ejecutar la Aplicacin que se est probando.
Para la realizacin de estas actividades se deben tener en cuenta artefactos como:
Plantilla de especificaciones complementarias del software que se est
probando.
Plantilla de control de versiones.
2.1.6.2.
2.1.6.4.
11
2.3.
Resultados
Para validar los resultados de esta investigacin se realiz un anlisis estadstico de los
resultados arrojados al aplicar una encuesta a una muestra formada por un grupo de 7
especialistas en calidad y pruebas de software. Todo este proceso ayud a la mejora de
la presente investigacin, el trabajo con los especialistas no solo aport valores
cuantitativos sino que tambin brind anlisis de los resultados que hicieron madurar
ms la propuesta. Luego del anlisis de resultados de la validacin se obtuvo una alta
probabilidad de xitos de la propuesta.
Posteriormente se aplic el procedimiento descrito, con el uso de la herramienta para la
Gestin de Pruebas no Funcionales en el proyecto Laboratorios Virtuales, proyecto
donde se obtienen software educativos de este tipo y que se desarrollan en el Centro
de Informtica Industrial (CEDIN), de la Universidad de las Ciencias Informticas (UCI),
obtenindose parmetros que hasta el momento se pensaban buenos pero que por la
aplicacin del procedimiento se constat que aun deban ser mejorados.
De esta forma se demostr la utilidad del procedimiento realizado para el desarrollo de
software educativo y la necesidad de aplicarlo a cuanto software de este tipo se
desarrolle para que estos productos en el futuro sean entregados a sus clientes con la
mayor calidad posible en cuanto al cumplimiento de los requisitos no funcionales.
CONCLUSIONES
En el presente trabajo se elabora y describe un procedimiento con el fin de desarrollar
pruebas no funcionales de un software educativo, haciendo uso de la herramienta para
la Gestin de Pruebas no Funcionales, herramienta desarrollada por las autoras de esta
investigacin, para apoyar dicho procedimiento.
Para dar cumplimiento a los objetivos planteados, se desarrollaron un grupo de tareas
de las que se puede concluir, de forma general, lo siguiente:
REFERENCIAS
1.
PRESSMAN, R. Ingeniera del Software. Un enfoque prctico. Edtion ed., 2005.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
14
ANEXOS:
Anexo 1. Mtricas para la medicin de la caracterstica portabilidad.
Nombre
Facilidad
Definicin
de
Metas
Procedimiento de anlisis
X = A/B
Observe el comportamiento
instalacin
fcilmente el producto de
(Instalabilidad)
software en su ambiente de
instalar
operacin?
software en su ambiente de
el
producto
de
conveniencia.
operacin
resultar mejor.
su conveniencia.
Facilidad
de
X = A/B
Puede el usuario o
reintento
de
Serviciador
ejecucin
del
reintentar
ejecutar
el
instalador
ejecutar el instalador.
programa
instalador
del
(Instalabilidad)
software?
Observe el comportamiento
fcilmente
del
usuario
serviciador
resultar mejor.
X = 1 - A/ B
Cun
conforme
es
portabilidad
software
aplicables?
con
la
0 <= X <= 1
A mayor cercana al 1 mejor.
las
conformidad.
Funcin
de
la
X=A/B
Puede el usuario o
inclusin.
Mantenedor
(Reemplazabilidad)
resultados
similares
comportamiento
del
mantenedor
similares
un
uno anterior?
anterior?
probadas
0<= X <=1
de software un xito?
las
los
el
similares
como
fcilmente
funciones
despus
de
la
software
cuando
con
el
uno
de
(Analizabilidad).
Definicin
de
fallos
Metas
Procedimiento de anlisis
X = 1- A / B
Se puede identificar la
Observar el comportamiento de
caus el fracaso?
mantenimiento responsable de
Puede el personal de
mantenimiento
encontrar
la
fcilmente
causa
del
cercano al 1, mejor.
fallo?
15
Tiempo empleado en
(Tout Tin) / N
Puede el personal de
implementar
mantenimiento
usuario
fcilmente
cambio
un
por
personal
el
de
realizar
cambios
al
el
mantenimiento
personal
al
tratar
de
de
mantenimiento.
problemas de fracaso?
(Cambiabilidad)
de resolucin de problemas o el
eliminados.
informe de mantenimiento.
0 < Tp.
Entre ms se acerque a cero
mejor.
Fallos
encontrados
X = Na/Ta
(Estabilidad)
fallos
de
mantenimiento?
cambiado.
El
Ta = El tiempo de funcionamiento
fcilmente
efectos
es cambiado.
mantenimiento?
Pruebas
sin
despus
de
su
software
despus
de
su
mantenimiento.
mantenedor
puede
reducir
las
secundarios
0<=X
Cuanto ms pequeo y cercano a
0 es mejor.
de
X = Sum(T)/N
Puede el usuario y el
esfuerzo.
mantenedor
(Facilidad de prueba)
realizar
sido o no resuelto.
funcionamiento
determinar si el software
mejor.
fcilmente
pruebas
de
y
estn
probando
el
sistema
no?
Procedimiento de anlisis
Madurez (Prueba de
Nombre
X=A/B
Definicin
Es el producto de pruebas
Madurez).
de pozos?
de
Este
el producto alcanzar en la
prueba en el futuro.
realizarse
comentario
es
para
prueba
realmente
que
fueron
ejecutados
segn
los
requisitos.
0 <= X<=1, el ms cercano a
1.0 es la mejor
Tolerancia
fallos
Desglose)
ante
(Evitar
X=1-A/B
Con
el
qu
frecuencia
fallos.
averas
nmero de fallos.
con
respecto
al
16
X = A/B
Cmo
las
funcionamiento
la
incorrecto)
Tolerancia
fallos
(Evitar
ante
un
ejecutados
de
los
patrones
muchas
capacidad
de
de
evitar
operaciones incorrectas?
de
de
casos
de
prueba
X= { To / (To+Tr) }
Cmo
encuentra
(Disponibilidad)
Y= A1/A2
To = Operacin de tiempo
Tr = tiempo de reparacin
tiempo especificado?
se
xito.
tiempo.
ms cercano a 1.0 es la
mejor.
Definicin.
El objetivo de esta mtrica es conocer el valor de la subcaracterstica debido a que hay varios casos donde existe ms
de una mtrica para la misma sub-caracterstica, se pretende
Descripcin.
Definicin.
frmula.
Nivel
Intervalo
Porciento Final
Alto
0.8 X 1
80% ----100%
Medio
50%----79%
Bajo
X < 0.5
17
Tiempo de
respuesta
Definicin
Metas
Procedimiento
T = Tiempo empleado en
obtener el resultado.
sistema
responda
una
determinada operacin?
intento.
0 < T a mayor prontitud (menor tiempo)
resultar mejor.
Tiempo de espera
X = Ta/Tb
Ejecutar
situaciones
a esperar.
los
casos
de
pruebas
caractersticas
en
tareas
Tb = Tiempo consumido
por la tarea.
X = A/T
errores
A = Nmero de mensajes
de
memoria
de
y
el
alerta
fallos
del
tiempo (Utilizacin
sistema.
de recursos).
T = Tiempo de operacin
recursos especificada?
con
una
utilizacin
de
del usuario.
Objetivo.
El objetivo general de la lista de chequeo de usabilidad es evaluar los atributos y propiedades de usabilidad para determinar si se
les dio cumplimiento en el desarrollo del producto <nombre del producto>. Esta planilla ha sido confeccionada para guiar a
desarrolladores, especialistas o expertos tcnicos en la verificacin y evaluacin de las especificaciones de usabilidad del software.
Recoger los puntos eficientes e ineficientes que tienen los elementos chequeados.
1.2.
Alcance.
Esta planilla es aplicable a cada una de las revisiones de especificaciones de usabilidad del software educativo que se desarrolle.
1.3.
Definiciones y acrnimos.
Evaluacin (Eval): Es la forma de evaluar el indicador en cuestin. Este se evala de 1 en caso de mal y 0 en caso de
que no presente errores.
Cantidad de elementos afectados: Especifica la cantidad de errores encontrados sobre el mismo indicador.
Comentario: Especifica los sealamientos o sugerencias que quiera incluir la persona que aplica la lista de chequeos.
1.4.
NP. (No procede): Se usa para especificar que el indicador a evaluar no se puede evaluar en ese caso.
Referecia.
IEEE.1991 IEEE Standard Glossary of Software Engineering Terminology. Spring 1991 Edition. 1991. IEEE Standard 610.12-1990.
18
4.
Pantalla de Bienvenida
Peso
Indicador a evaluar
Eval
(NP)
Cantidad
de
Comentarios
elementos afectados
El software presenta un identificador visual?
Presenta la versin del producto?
Presenta la entidad que desarrolla el producto?
Presenta la informacin de soporte: informacin de los
telfonos, correos, equipo de soporte?
Presenta la pertenencia legal del producto: Especificacin de
la propiedad intelectual y comercial del producto?
La pgina de bienvenida est diseada profesionalmente y
va a crear una primera impresin positiva?
Minimizar carga de usuarios
Crtico
Crtico
Crtico
Son pocos los pasos que el usuario tiene que efectuar para
realizar una accin especfica?
Crtico
5. Evaluacin.
Se aborta la revisin del software evaluado si:
Incumple ms del 50% de los indicadores a evaluar de la seccin Estructura de la lista de chequeo.
Se evala de regular la calidad usabilidad del software revisado si no cumple los criterios para ser abortado y:
Evaluacin: ___________
Nombre y apellidos del evaluador: _____________________________________________
19