5 Evaluación de la Conversión a Ficheros de UML 2 FP
5.4 Resultados
Dado que los casos empleados para cada técnica no fueron los mismos, éstos se clasificaron según el tipo de relación que debería emplearse en un diagrama de clases: asociación, agregación, composición, generalización o clase asociación; con el fin de comparar los resultados obtenidos. Como en los diagramas E-R no se emplean relaciones de composición ni de agregación, se clasificaron en una categoría denominada composición/agregación a aquellos casos en los que se emplearía ese tipo de relaciones si se utilizara un diagrama de clases de análisis en vez de un diagrama E-R.
Para ambas técnicas, se emplearon dos casos para la categoría de asociación, un caso para clase asociación, un caso para generalización y tres casos para composición/agregación. En esta última categoría, uno de los tres casos utilizados fue el mismo para ambas técnicas; por ello, no se consideraron los resultados de ese caso, para eliminar la amenaza a la validez interna relacionada a efectos de aprendizaje.
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
134 |P á g i n a José Antonio Pow Sang Portillo
Por cada caso, se calificó con un “1” (uno) si el estudiante identificó correctamente el número de ficheros lógicos y RET, y “0” (cero) si el participante no lo identificó correctamente. Esto quiere decir que para la categoría de asociación, el alumno podría obtener un máximo de “2”, ya que son dos casos para este tipo de relación; un máximo de “2” en la categoría de composición/agregación, ya que son dos casos para este tipo de relación (no se consideró el caso que fue el mismo para las dos técnicas, porque sino tendría que ser un máximo de “3”); un máximo de “1” para la categoría de clase asociación, ya que solo fue un caso; y un máximo de “1” para la categoría de generalización, ya que fue un solo caso.
La Tabla 5-3 muestra un ejemplo de cómo se mostrarán los resultados que se obtuvieron en cada experimento controlado. Por categoría, la primera columna muestra los resultados obtenidos con la técnica del Ifpug, que emplea diagramas E-R, y la segunda columna, con la UML2PF, que emplea diagramas de clases.
Tabla 5-3. Ejemplo de resultados obtenidos por categoría en experimentos controlados para evaluar UML2FP
Participante Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
1 1 1 1 1 1 1 1 1
2 1 0 1 1 1 0 1 0
3 2 1 2 2 0 1 1 0
4 2 1 2 2 0 0 0 1
5 1 1 2 2 0 1 0 1
Debido a que las reglas para las categorías de asociación, clase asociación y generalización son similares entre la técnica del Ifpug y UML2FP, las hipótesis estadísticas formuladas para probar ambas técnicas fueron:
H
o: μ
1=μ
2,
α=0.05
H
a: μ
1≠μ
2Donde μ1 es la media del cantidad de aciertos obtenido con la técnica del Ifpug y μ2, con UML2FP, ambas para la misma categoría. α representa el 5% de significancia, esto quiere decir que existe un 0.05 de probabilidad de aceptar la hipótesis alternativa cuando la hipótesis nula es verdadera (error de tipo I). La herramienta que se empleó para el análisis estadístico de los experimentos controlados incluidos en esta sección fue XLStat 2009.
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
José Antonio Pow Sang Portillo P á g i n a | 135
5.4.1
EC1-PROF: Primer experimento controlado con profesionales
En este experimento participaron dieciséis profesionales con al menos dos años de experiencia en proyectos de desarrollo de software. Muchos de ellos trabajaban en compañías que están mejorando sus procesos de desarrollo de software. La Tabla 5-4 presenta el detalle de los resultados obtenidos por cada participante.
Tabla 5-4. Resultados obtenidos por cada participante en EC1-PROF
Participante Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
1 1 1 1 1 1 1 1 1 2 1 0 1 1 1 0 1 0 3 2 1 2 2 0 1 1 0 4 2 1 2 2 0 0 0 1 5 1 1 2 2 0 1 0 1 6 2 1 2 2 1 1 1 1 7 2 2 2 2 1 1 1 1 8 2 1 2 2 0 0 1 1 9 2 1 2 2 1 1 1 1 10 2 1 1 2 0 1 1 1 11 1 0 2 2 1 1 1 1 12 1 2 2 2 1 1 1 1 13 1 1 2 2 0 1 1 1 14 1 2 2 2 1 1 0 0 15 2 1 2 2 1 1 1 0 16 2 1 2 2 1 1 1 1
La Tabla 5-5 presenta la información estadística obtenida luego de procesar los datos contenidos en la Tabla 5-4. Por categoría, la primera columna muestra los resultados obtenidos con la técnica del Ifpug y la segunda columna, con UML2FP.
Tabla 5-5. Valores estadísticos de los resultados obtenidos en EC1-PROF
Variable Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
Observaciones 16 16 16 16 16 16 16 16
Mínimo 1 0 1 1 0 0 0 0
Máximo 2 2 2 2 1 1 1 1
Media 1.563 1.063 1.813 1.875 0.625 0.813 0.813 0.750
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
136 |P á g i n a José Antonio Pow Sang Portillo
Como se puede observar en la tabla anterior, las medias que se obtuvieron con las dos técnicas son similares. Sin embargo, en la categoría de asociación, se puede notar que hay una diferencia mayor,; obteniéndose mejores resultados con la técnica del Ifpug, técnica que emplea diagramas E-R, que con UML2FP, técnica que emplea diagramas de clases de análisis. Para obtener resultados más concluyentes, se tuvieron que aplicar más pruebas estadísticas, las cuales se detallan a continuación.
Antes de poder utilizar pruebas estadísticas para comparar las medias obtenidas para las categorías de asociación y de composición/agregación, se tiene que establecer si estas muestras siguen una distribución normal. Para ello, se aplicó la prueba de Shapiro-Wilk. La Tabla 5-6 muestra los resultados obtenidos con este tipo de prueba. Para las categorías restantes, no se aplicó este tipo prueba, porque los valores que podrían tomar es cero o uno; por lo tanto no siguen una distribución normal.
Tabla 5-6. Resultados de la prueba de Shapiro-Wilk para asociación y composición/agregación en EC1-PROF
Variable Asociación
Composición/ Agregación Ifpug UML2FP Ifpug UML2FP
W 0.638 0.748 0.484 0.398
p-valor <0.0001 0.001 <0.0001 <0.0001
Dado que el p-valor computado fue menor que el nivel de significación establecido (α =0.05), se rechaza la hipótesis de distribución normal para todas las técnicas. Debido a resultados obtenidos, no se pudieron utilizar técnicas paramétricas para probar esos resultados. Por ello, se utilizó la prueba no paramétrica de los rangos señalados de Wilcoxon, considerando las hipótesis estadísticas definidas al inicio de esta sección (ver inicio de la Sección 5.4)
Tabla 5-7. Resultados de la prueba de los rangos señalados de Wilcoxon en EC1-PROF por categoría
Variable Asociación Clase
asociación Generalización Composición /agregación V 105.000 14.000 42.000 0.000 Valor esperado 63.000 35.000 35.000 8.0000 Varianza (V) 330.750 245.000 245.000 64.000
p-valor (dos colas) 0.011 0.190 0.678 0.174
Como se puede observar en la Tabla 5-7, el p-valor calculado para las categorías de clase asociación, generalización y composición/agregación fue
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
José Antonio Pow Sang Portillo P á g i n a | 137
mayor al nivel de significación
α
=0.05. Esto quiere decir que se puede afirmar con un 95% de nivel de confianza que no hay diferencias significativas entre los resultados obtenidos con la técnica propuesta por Ifpug y con UML2PFSin embargo, para la categoría de asociación, el p-valor calculado fue menor al nivel de significación
α
=0.05. Esto quiere decir con un 95% de nivel de confianza que sí hay diferencias, cuando se pensaba que no debería haber; porque ambas técnicas proponen reglas similares. Por ello, se cambiaron las hipótesis estadísticas para determinar cuál de las dos técnicas ofrecía mejores resultados. Las hipótesis estadísticas definidas fueron:H
o: μ
1≤ μ
2,
α=0.05
H
a: μ
1> μ
2Donde μ1 es la media de cantidad de aciertos obtenido con la técnica del Ifpug y μ2, con la técnica propuesta, ambas para la misma categoría. Para estas hipótesis, el p-valor obtenido fue 0.0055; por ello, se puede afirmar que para esta categoría, se obtuvieron mejores resultados con la técnica del Ifpug. Debido a que las técnicas son similares para esta categoría, se esperaba que no hubiera diferencias significativas en los resultados obtenidos por ambas.
En conclusión, para esta primera ejecución, se pudo comprobar estadísticamente que ambas técnicas producen los mismos resultados para los casos de las categorías composición/agregación, clase asociación y generalización. Sin embargo, para la categoría asociación, se obtienen mejores resultados con Ifpug; cuando se esperaba que se obtuvieran resultados parecidos, ya que ambas técnicas son similares.
5.4.2
EP2-DOC: Experimento piloto con docentes y asistentes de
docencia
Debido a los resultados obtenidos en el primer experimento EC1-PROF, se realizó un estudio piloto con profesores y jefes de práctica para determinar si había algún problema con la descripción de los casos, en especial con los empleados para la categoría de asociación. La forma de ejecución fue similar a un experimento controlado. En este estudio piloto, se intercambiaron las situaciones utilizadas en EC1-PROF (experimento controlado con profesionales), de tal manera que los casos empleados en E-R se adaptaron para OO y los de OO se adaptaron para E-R. La Tabla 5-8 presenta el detalle de los resultados obtenidos por cada participante.
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
138 |P á g i n a José Antonio Pow Sang Portillo
Tabla 5-8. Resultados obtenidos por cada participante en EC2-DOC
Participante Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
1 1 2 2 2 1 1 1 1
2 1 2 1 2 1 1 1 1
3 2 2 1 2 1 1 1 1
4 1 2 1 2 1 1 1 1
La Tabla 5-9 muestra la información estadística obtenida luego de procesar los datos contenidos en la Tabla 5-8. Como se puede observar en la tabla, las medias que se obtuvieron con las dos técnicas son diferentes para las categorías de asociación y composición/agregación. Los resultados en la categoría asociación son contradictorios a los obtenidos en la primera ejecución (ver sección 5.4.1). Por ello, se revisaron las situaciones de esta categoría y se conversó con los participantes del estudio. Se pudo concluir que al caso 1 le faltaba más información.
Tabla 5-9.Valores estadísticos de los resultados obtenidos en EC2-DOC
Variable Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
Observaciones 4 4 4 4 4 4 4 4
Mínimo 1 2 1 2 1 1 1 1
Máximo 2 2 2 2 1 1 1 1
Media 1.25 2 1.25 2 1 1 1 1
Desv. Estándar 0.5 0 0.5 0 0 0 0 0
La Tabla 5-10 muestra el caso 1 antes y después de la modificación. La columna de la izquierda presenta el caso 1 que se empleó en el experimento con profesionales EC1-PROF y la columna de la derecha muestra la misma situación a la que se le ha añadido un texto aclaratorio que se encuentra resaltado en gris y subrayado. En cuanto al diagrama empleado, la columna de la izquierda presenta un diagrama de clases y el de la derecha, un diagrama E-R.
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
José Antonio Pow Sang Portillo P á g i n a | 139
Tabla 5-10. Situación 1 que se empleó originalmente en EC1-PROF y su actualización.
Situación Original Empleada en EC1- PROF (Diag. Clases)
Situación Modificada para Emplear en Siguientes Experimentos (Diag. E-R)
Una compañía decide realizar un programa de “adopción” de niños, de manera que un trabajador pueda “adoptar” la cantidad de niños que quiera para darles juguetes en Navidad y en su cumpleaños. Un niño no puede ser adoptado por más de un trabajador y todos los niños siempre deberán tener un padre o madre adoptivo.
Una compañía decide realizar un programa de “adopción” de niños, de manera que un trabajador pueda “adoptar” la cantidad de niños que quiera para darles juguetes en Navidad y en su cumpleaños. Un niño no puede ser adoptado por más de un trabajador y todos los niños siempre deberán tener un padre o madre adoptivo. Si a un empleado se le retira de la empresa, el o los niños que fueron adoptados por ese empleado son asignados a otra persona.
La información del empleado es la siguiente: código de trabajador, nombre del trabajador, apellido paterno, apellido materno, fecha de nacimiento, dirección y teléfono. La información del niño adoptado es la siguiente: nombre, apellido paterno, apellido materno, dirección y fecha de nacimiento.
La información del empleado es la siguiente: código de trabajador, nombre del trabajador, apellido paterno, apellido materno, fecha de nacimiento, dirección y teléfono. La información del niño adoptado es la siguiente: nombre, apellido paterno, apellido materno, dirección y fecha de nacimiento.
5.4.3
EC3-PREG: Tercer experimento controlado con estudiantes de
pregrado
Debido a la experiencia obtenida en el segundo experimento EC2-DOC y luego de haber actualizado las situaciones, se realizó una tercera ejecución con estudiantes de pregrado. Cabe resaltar que se intercambiaron los casos que originalmente se utilizaron en el primer experimento realizado con profesionales EC1-PROF. Esto quiere decir que que los casos que se utilizaron para aplicar la técnica del Ifpug en ese experimento controlado, se adaptaron para orientación a objetos, de tal manera que puedan ser empleadas con UML2FP y viceversa. Empleado - codigo - nombre - apellido_paterno - apellido_materno - fecha - dirección - telefono Niño Adoptado - nombre - apellido_paterno - apellido_materno - direccion - fecha_nacimiento 0..* 1 1 0..* Empleado - codigo - nombre - apellido_paterno - apellido_materno - fecha - dirección - telefono Niño Adoptado - nombre - apellido_paterno - apellido_materno - direccion - fecha_nacimiento (0:N) (1:1)
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
140 |P á g i n a José Antonio Pow Sang Portillo
Los estudiantes de pregrado que participaron en el experimento pertenecían al cuarto año de la carrera de Ingeniería Informática de la Pontificia Universidad Católica del Perú (PUCP) del semestre 2009-2, quienes estaban matriculados en la asignatura Ingeniería de Software. En esta asignatura, se les enseña a los alumnos técnicas de estimación y planificación de proyectos de software. La Tabla 5-11 muestra los conocimientos y experiencias de estos estudiantes.
Tabla 5-11. Conocimientos y experiencia de los estudiantes de pregrado que participaron en EC3-PREG
Características Conocimiento y/o experiencia
Lenguajes de programación Java, C#, Pascal, C and Prolog. Técnicas de modelado de base de
datos
Diagramas Entidad-Relación, , IDEF 1X Técnicas de análisis y diseño Estructurado y orientado a objetos
Gestión de Proyectos Experiencia en gestión de pequeños proyectos de desarrollo que incluían proyectos de programación (equipos de 3 ó 4 estudiantes).
No tenían experiencia previa en estimación.
La Tabla 5-12 presenta el detalle de los resultados obtenidos por cada participante. Por categoría, la primera columna muestra los resultados obtenidos con la técnica del Ifpug, que emplea diagramas E-R, y la segunda columna, con la UML2PF, que emplea diagramas de clases.
Tabla 5-12. Resultados obtenidos por cada participante en EC3-PREG
Participante Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
1 2 1 1 2 0 0 0 0 2 2 2 1 2 1 1 1 1 3 1 1 1 1 0 0 1 1 4 2 1 1 2 0 0 1 1 5 1 2 1 1 0 1 0 0 6 2 1 1 2 0 0 1 1 7 1 2 0 1 0 0 0 0 8 1 1 2 2 1 1 1 1 9 2 1 0 1 0 0 0 0 10 2 1 1 2 1 1 0 0 11 2 1 1 1 1 1 0 0 12 1 2 2 2 1 1 1 1 13 2 1 1 1 1 1 0 0
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
José Antonio Pow Sang Portillo P á g i n a | 141
Participante Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
14 2 2 1 1 1 1 1 1 15 1 2 1 2 0 0 0 1 16 2 1 1 2 0 1 1 1 17 1 2 1 2 1 1 1 1 18 2 1 1 2 1 1 1 1 19 2 2 2 2 1 1 1 1 20 1 2 1 2 1 1 1 1 21 2 2 1 2 1 1 1 1 22 2 2 1 2 1 1 1 1
En la Tabla 5-13 se muestra la información estadística obtenida luego de procesar los datos contenidos en la Tabla 5-12.
Tabla 5-13. Valores estadísticos de los resultados obtenidos en EC3-PREG
Variable Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
Observaciones 22 22 22 22 22 22 22 22
Mínimo 1 1 0 1 0 0 0 0
Máximo 2 2 2 2 1 1 1 1
Media 1.636 1.5 1.045 1.682 0.591 0.682 0.636 0.682
Desv. Estándar 0.492 0.592 0.486 0.477 0.503 0.477 0.492 0.477
Según los resultados obtenidos y que se muestran en la Tabla 5-13, las medias que se obtuvieron con las dos técnicas son similares. Sin embargo, en la categoría de composición/agregación, se puede observar que existe diferencias mayores que con las otras categorías y la media obtenida con UML2FP es mejor que con la técnica propuesta por el Ifpug. Para obtener resultados más concluyentes, se tuvieron que aplicar más pruebas estadísticas las cuales se muestran a continuación.
Se utilizó la prueba estadística de Shapiro-Wilk para determinar si las muestras obtenidas para las categorías de asociación, composición/agregación, siguen una distribución normal. En el caso de las categorías restantes, no es necesario aplicar esta prueba porque como los valores podrían tomar valores de 0 ó 1, no siguen una distribución normal. La Tabla 5-14 muestra los resultados obtenidos con este tipo de prueba.
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
142 |P á g i n a José Antonio Pow Sang Portillo
Tabla 5-14. Resultados de la prueba de Shapiro-Wilk para asociación y composición/agregación en EC3-PREG
Variable Asociación
Composición/ Agregación Ifpug UML2FP Ifpug UML2FP
W 0.613 0.640 0.661 0.590
p-valor <0.0001 <0.0001 <0.0001 <0.0001
Según los resultados obtenidos que se muestran en la tabla anterior, como el p-valor obtenido en todas las muestras es menor que el nivel de significación establecido (α =0.05), se puede afirmar que las muestras no siguen una distribución normal. Por ello, se tuvo que aplicar la prueba no paramétrica de los rangos señalados de Wilcoxon.
Tabla 5-15. Resultados de la prueba de los rangos señalados de Wilcoxon en EC3-PREG por categoría excepto composición/agregación
Variable Asociación Composición /
agregación Generalización Clase asociación V 135 0 0 0 Valor esperado 112.5 108.500 21.5 11 Varianza (V) 843.75 840.875 231.125 121 p-valor (dos colas) 0.449 < 0.0001 0.678 0.340
Como se puede observar en la Tabla 5-15, el p-valor calculado para las categorías de asociación, de clase asociación y de generalización fue mayor al nivel de significación α =0.05. Esto quiere decir que se puede afirmar con un 95% de nivel de confianza que no hay diferencias significativas entre los resultados obtenidos con Ifpug y UML2FP. Los resultados obtenidos son comprensibles, ya que para estas categorías, ambas técnicas son similares. Según los resultados presentados en la Tabla 5-15, el p-valor calculado la categoría de composición/agregación es menor que el nivel de significación de 0.05 . Por lo tanto, podemos rechazar la hipótesis nula en este caso. Esto quiere decir que hay diferencias significativas en los resultados obtenidos en ambas técnicas. Por ello, se cambiaron las hipótesis estadísticas para determinar cuál de las dos técnicas ofrecía mejores resultados. Las hipótesis estadísticas definidas fueron:
H
o: μ
1≥ μ
2,
α=0.05
H
a: μ
1 <μ
2Donde μ1 es la media de cantidad de aciertos obtenido con la técnica del Ifpug y μ2, con la técnica propuesta, ambas para la misma categoría. Para estas
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
José Antonio Pow Sang Portillo P á g i n a | 143
hipótesis, el p-valor obtenido fue menor a 0.00001; por ello, se puede afirmar con un 95% de nivel de confianza que UML2FP produjo mejores resultados que la técnica del Ifpug para los casos de composición/agregación en el experimento controlado con estudiantes de pregrado EC3-PREG.
5.4.4
EC4-POST: Cuarto experimento controlado con estudiantes de
posgrado
El experimento realizado a estudiantes de pregrado EC3-PREG fue replicado con profesionales quienes eran alumnos del Curso de Especializacion de Ing. de Software de la PUCP del 2009. Aunque estos estudiantes de posgrado tenían al menos dos años de experiencia en proyectos de software y aunque utilizan herramientas de desarrollo OO en el trabajo, la mayoría de ellos no aplicaban técnicas de análisis y diseño OO o tenían poca experiencia en este tipo de técnicas. Sin embargo, una de las asignaturas dentro del curso de especialización consistía en una introducción sobre análisis y diseño OO, el cual tomaron previamente a la ejecución de este experimento. La Tabla 5-16 presenta el detalle de los resultados obtenidos por cada participante.
Tabla 5-16. Resultados obtenidos por cada participante en EC4-POST
Participante Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
1 2 1 1 2 1 1 0 0 2 2 1 1 2 0 1 1 1 3 2 2 1 1 1 0 0 1 4 2 1 1 1 1 1 0 0 5 2 2 1 2 0 1 1 1 6 1 2 2 2 1 1 0 0 7 1 2 1 2 0 0 0 0 8 2 1 2 2 1 1 0 0 9 1 2 1 2 0 1 0 1 10 0 2 0 2 0 1 1 1 11 0 1 0 2 0 1 1 1 12 2 0 1 1 0 1 0 1 13 0 1 0 0 0 0 1 0 14 1 1 1 1 1 1 0 0
Luego de procesar los datos de la Tabla 5-16, se obtuvo la información estadística que se presenta en la Tabla 5-17.
Capítulo 5. Evaluación de la Conversión a Ficheros de UML2FP
144 |P á g i n a José Antonio Pow Sang Portillo
Tabla 5-17. Valores estadísticos de los resultados obtenidos en EC4-POST
Variable Asociación
Composición/ Agregación
Clase
asociación Generalización Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP Ifpug UML2FP
Observaciones 14 14 14 14 14 14 14 14
Mínimo 0 0 0 0 0 0 0 0
Máximo 2 2 2 2 1 1 1 1
Media 1.285 1.357 0.929 1.571 0.429 0.786 0.357 0.500
Desv. Estándar 0.825 0.633 0.616 0.646 0.514 0.426 0.497 0.519
De manera similar a los resultados obtenidos con los alumnos de pregrado, como se puede observar en la tabla anterior (Tabla 5-17), las medias de las dos técnicas son muy parecidas en casi todas las categorías. Sin embargo, en la categoría de composición/agregación, se puede notar que hay diferencias y los resultados son mejores con UML2FP que con la técnica del Ifpug. Para obtener