Full text
Una Propuesta para Especificar Cambios de Replicaciones de Experimentos en Ingenier´ıa del Software Margarita Cruz, Beatriz Bern´ardez, Amador Dur´an Dept. Lenguajes y Sistemas Inform´aticos, University of Seville, Avda. Reina Mercedes s/n, 41012, Seville, Spain. {cruz,beat,amador}@us.es Resumen Contexto: La replicaci´on de estudios emp´ıricos en Ingenier´ıa del Software es necesaria para consolidar el conocimiento adquirido. No obstante, para incrementar el conocimiento que se genera mediante la replicaci´on, es necesario que la informaci´on se publique de forma que permita una comprensi´on profunda del estudio. Objetivo: Al dise˜nar una replicaci´on, habitualmente surge la necesidad de introducir cambios. El objetivo de este trabajo es facilitar la especificaci´on de dichos cambios proponiendo una plantilla que permita definirlos sistem´aticamente y documentarlos de forma homog´enea. M´etodo: Se ha definido el metamodelo para formalizar la informaci´on sobre replicaciones y cambios que son relevantes para la plantilla propuesta. Posteriormente, se ha detallado la plantilla y se ha aplicado a una replicaci´on concreta. Resultados y Conclusiones: La aplicaci´on de la plantilla a una replicaci´on concreta ha sido satisfactoria pero se debe aplicar a otras replicaciones o familias de experimentos para su validaci´on y mejora a trav´es de la retroalimentaci´on obtenida. Keywords: replicaci´on, plantilla, patrones ling¨u´ısticos, estudio emp´ırico, ingenier´ıa del software emp´ırica 1. Introducci´on La Ingenier´ıa del Software (IS) emp´ırica permite la evaluaci´on de nuevos m´etodos, t´ecnicas y herramientas para conocer la conveniencia de usarlos en el proceso de desarrollo. Una vez evaluado emp´ıricamente un artefacto por primera vez, el estudio necesita ser replicado en diferentes contextos y condiciones. No solo para consolidar el conocimiento adquirido, sino tambi´en para saber si sus resultados son generalizables [3]. A pesar de la importancia de las replicaciones y aunque en los ´ultimos a˜nos ha aumentado su pr´actica [10], el n´umero de replicaciones en IS sigue siendo bajo [27]. A la hora de identificar las causas de esta situaci´on, son varios los problemas encontrados. Por un lado, la falta de unicidad de criterios para reportar las replicaciones [9]. Por otro lado, el conocimiento t´acito, ya que el investigador tiene conocimiento que no explicita en la publicaci´on [24]. Adem´as, se da una
carencia o incompletitud de los llamados laboratory packages que son necesarios para poder realizar replicaciones [27]. A todo esto se une el esfuerzo y los recursos necesarios para llevar a cabo un experimento [10]. En otras ´areas de conocimiento distintas a la IS como Psicolog´ıa, esta situaci´on se conoce como crisis de replicabilidad [7]. Incluye adem´as problemas con el uso de la estad´ıstica, gran cantidad de falsos positivos publicados y la falta de rigor debido a los sesgos individuales en la recogida de evidencias. Para atenuar esta crisis, en [7] se sugiere ser rigurosos en los aspectos metodol´ogicos y una adecuada transparencia en la transmisi´on de los resultados de la investigaci´on. Seg´un [14], es recomendable que las primeras replicaciones del experimento original sean realizadas por los mismos experimentadores (replicaciones internas), para evitar la influencia de variables que puedan intervenir al cambiar de sitio o de experimentadores. Posteriormente, es valioso realizar replicaciones externas ya que permiten conocer el rango de condiciones bajo las cuales se mantienen los resultados y demuestran que ´estos son independientes de las condiciones del estudio original [25,8]. Tanto si la replicaci´on es interna como externa, es posible la necesidad de incorporar cambios en el experimento original por varios motivos, por ejemplo, ampliar los resultados del estudio inicial [25] o adaptar un experimento a otro entorno distinto del original [3]. Dentro de la documentaci´on a publicar sobre las replicaciones, las gu´ıas de Carver [9] ponen de manifiesto la necesidad de describir dichos cambios mediante una secci´on concreta de cambios al experimento original. Para cada cambio con respecto al experimento original es necesario registrar en qu´e consiste, la situaci´on que ha causado dicho cambio y determinar su impacto en las amenazas a la validez de la replicaci´on. Adem´as, conocer a fondo los cambios facilita ver si se cumple el principio fundamental de independencia base del an´alisis agregado de datos seg´un Kitchenham [18], que promueve la introducci´on de cambios en las replicaciones para evitar propagar problemas del experimento original. En este trabajo se propone un enfoque para la especificaci´on de los cambios en las replicaciones basado en: i) un metamodelo para formalizar la informaci´on, ii) una plantilla que facilita la reusabilidad, la representaci´on visual y evita redundancias y iii) patrones ling¨uisticos que facilitan la redacci´on. El uso de la plantilla propuesta persigue una doble finalidad, por una lado, invita al investigador a hacer expl´ıcito el cambio y sus detalles (reduciendo el conocimiento t´acito) y, por otro, ayuda al lector a comprender mejor la replicaci´on y a seguir la traza de c´omo evoluciona el experimento original en la sucesi´on de experimentos de una familia. El resto del art´ıculo est´a organizado de la siguiente forma: en la secci´on 2 se presenta el metamodelo en el que se sustenta la plantilla; en la secci´on 3 se propone la plantilla para la especificaci´on de los cambios de las replicaciones; los trabajos relacionados se discuten en la secci´on 4 y finalmente, en la secci´on 5 resumimos nuestras conclusiones y las perspectivas para trabajos futuros.
2. Metamodelo sobre replicaciones y cambios En esta secci´on se presenta el metamodelo en el que se basa la plantilla (Fig. 1) usando la notaci´on de diagramas de clases UML. Figura 1. Diagrama de clases UML En el modelo, una replicaci´on es un tipo de estudio emp´ırico, cuya base es otro estudio emp´ırico (bien el original o bien otra replicaci´on). La herencia es parcial ya que los objetos que son instancias del “experimento original” se consideran en el supertipo. Entre los atributos de la clase Replicaci´on, aparecen: Acr´onimo. Se utilizar´a un c´odigo ´o acr´onimo relativo al experimento de referencia. M´etodo emp´ırico. Los tres principales m´etodos emp´ıricos son experimentos controlados,surveys yestudios de caso. El m´etodo emp´ırico cuasi experimentos, en el que la asignaci´on de sujetos a tratamientos no es aleatoria, se incluyen en los experimentos controlados [30]. Aunque menos frecuentes, consideramos adem´as, otros dos m´etodos emp´ıricos: estudios piloto yestudios observacionales.
Tipo de replicaci´on. Atendiendo a qui´en hace la replicaci´on, ´estas se clasifican en internas (son realizadas por los experimentadores originales) y externas (son llevadas a cabo por experimentadores independientes y por tanto su poder de confirmaci´on es mayor que en las internas) [8]. Existen otras taxonom´ıas atendiendo a diversos criterios, por ejemplo una posible clasificaci´on es seg´un el grado en que se sigue el procedimiento del experimento original. En este aspecto, hay autores que hablan de replicaciones exact yconceptual [25], closed ydifferentiated [1] [19] [17]. Basili et al. [5] se refieren a replicaciones strict y presentan una clasificaci´on en tres grupos principales seg´un se var´ıe o no la hip´otesis de investigaci´on o se amplie la teor´ıa. En [15] se propone una clasificaci´on de las replicaciones en literal, operational yconceptual dependiendo de los cambios llevados a cabo y del prop´osito de la replicaci´on. Debido a la falta de acuerdo en la terminolog´ıa [15] y los matices diferenciadores, hemos optado por describir los cambios catalogando las replicaciones como internas ´o externas sin entrar en otras categor´ıas m´as confusas. Objetivo. Para el objetivo de la replicaci´on, se ha definido un tipo enumerado que puede tomar tres posibles valores: i) confirmar resultados, se trata de verificar los resultados obtenidos, ii) generalizar los resultados incluye, entre otros, cambios en los experimentadores para analizar si los resultados son consecuencia de la intervenci´on de dichos experimentadores, cambios en la poblaci´on y m´etricas para verificar si se siguen cumpliendo los resultados o que la hip´otesis sigue siendo v´alida, iii) sobreponerse a ciertas limitaciones del entorno del experimento original, recoge los cambios en las replicaciones que se producen como consecuencia de las limitaciones impuestas y a las que es necesario adaptar el experimento pero que deben de quedar registrados. Para reflejar la relaci´on que hay entre la clase replicaci´on y la clase que describe sus cambios se ha utilizado una composici´on ya que los cambios son parte intr´ınseca de la replicaci´on. Sus atributos son: Descripci´on. Permitir´a describir en qu´e consiste el cambio. Amenaza a la validez abordada. Es un tipo enumerado con los valores: incrementa la validez del constructo,externa,interna y de conclusi´on. Este atributo sirve para indicar c´omo el cambio introducido mitiga la amenaza a la validez de un determinado tipo. Comentarios. Informaci´on adicional sobre el cambio. Cada cambio se lleva a cabo sobre un elemento de la configuraci´on experimental. En [15] se identifican los elementos de la configuraci´on experimental que pueden ser cambiados en una replicaci´on. Dichos elementos se agrupan en dimensiones. En el diagrama de clases, se ha utilizado una jerarqu´ıa para clasificar los elementos configuracionales en las cuatro dimensiones. La clasificaci´on es completa ysin solapamiento. Dimensi´on y elementos. Las dimensiones identificadas en [15] y que en el metamodelo se representan mediante los subtipos son:
•Operacionalizaci´on: engloba a los cambios relacionados con las variables dependientes (cambios en m´etricas y procedimientos de medici´on) eindependientes (cambios en la forma de aplicar el tratamiento). Se corresponde con el subtipo EC Operacionalizaci´on con los atributos: variable (nombre de la variable a modificar) y tipo que puede tomar los valores dependiente oindependiente. •Poblaci´on: incluye los cambios en las propiedades de los sujetos (ej. distinta experiencia, edad, etc.) y de los objetos experimentales (ej. distinto lenguaje de programaci´on, nivel de dificultad, etc). Se corresponde con el subtipo EC Poblaci´on con el atributo poblaci´on que puede tomar los valores sujetos uobjetos. •Instrumentalizaci´on: incluye los cambios en el dise˜no experimental, en el material experimental (al utilizar distintas instancias del mismo tipo de objetos experimentales, ej. cambiar el enunciado de un problema por otro de igual dificultad), en las gu´ıas (ej. cambiar las instrucciones proporcionadas a los sujetos) y en los instrumentos de medici´on (ej. cambiar el cuestionario para recogida de datos). Se corresponde con el subtipo EC Instrumentalizaci´on con el atributo instrumento que puede tomar los valores dise˜no experimental,material experimental,gu´ıas oinstrumentos medida. •Experimentadores: referido a los cambios en los roles de los experimentadores. Se corresponde con el subtipo EC Experimentador con el atributo rol que puede tomar los valores dise˜nador,analista,formador,monitor omedidor. 3. Plantilla para cambios en replicaciones En esta secci´on se propone una plantilla para facilitar la especificaci´on de los cambios de las replicaciones basada en el metamodelo descrito en la secci´on anterior. El uso de plantillas ayuda a estructurar la informaci´on en una forma fija, reduce la ambig¨uedad, promueve la reutilizaci´on y tambi´en sirve de gu´ıa para evitar que falte informaci´on relevante [12]. Para algunos campos de las plantillas se han identificado frases que son habituales y que se han parametrizado. Estas frases se denominadas patrones ling¨u´ısticos, o abreviadamente patrones–L [28]. En la notaci´on usada para describir los patrones–L, las palabras o frases entre <y>deben ser convenientemente reemplazadas, las palabras o frases que se encuentren entre {y}y separadas por |representan opciones de las que se debe escoger una y las palabras entre [ y ] son opcionales, es decir, pueden aparecer o no cuando est´a instanciada la plantilla. En el cuadro 1 se muestra la plantilla propuesta. El significado de los campos que la componen es el siguiente: Acr´onimo de la replicaci´on: Con objeto de conseguir una r´apida identificaci´on de los distintos experimentos de una familia, es conveniente que la descripci´on del conjunto de replicaciones del mismo experimento comience
Cuadro 1. Plantilla para especificar cambios en una replicaci´on <Acr´onimo> #<n> Replicaci´on del experimento <Acr´onimo experimento >#<m> M´etodo emp´ırico {Experimento controlado |Survey |Estudio de caso |Estudio observacional |Estudio piloto } Tipo de replicaci´on {Interna |Externa } Objetivo {Confirmar resultados | Generalizar los resultados | Sobreponerse a ciertas limitaciones del entorno del experimento original } Cambio #<i..j>Originalmente, <descripci´on de la situaci´on en el experimento original.> En la replicaci´on <descripci´on de la situaci´on en la replicaci´on> {con el fin de |debido a }<causa del cambio.> [Dimensi´on modificada] {Operacionalizaci´on [(, en concreto, de la variable {dependiente |independiente}<nombre de la variable>)] | Poblaci´on[(, en concreto, los{sujetos |objetos}experimentales)]| Instrumentalizaci´on [(, en concreto, {dise˜no experimental |material experimental |gu´ıas |instrumentos de medida})] | Experimentadores [(, en concreto, {dise˜nador |analista |formador |monitor |medidor})] } Amenaza abordada El cambio incrementa la validez {del constructo |externa |interna |de conclusi´on } [Comentarios] <Comentarios> por un c´odigo ´o acr´onimo relativo al experimento de referencia y seguido de un n´umero secuencial. Acr´onimo del experimento: El mismo que el de la replicaci´on. Cuando el experimento de referencia sea el experimento original, es conveniente que el n´umero secuencial que le sigue sea el 1; de esta forma, se identificar´a f´acilmente cuando el experimento de referencia sea ya una replicaci´on. M´etodo emp´ırico: Se elegir´a uno de los posibles valores: experimento controlado,survey,estudio de caso,estudio piloto oestudio observacional. Tipo de replicaci´on: Se elegir´a uno de los posibles valores: interna oexterna. Objetivo: Permite seleccionar entre tres posibles valores: confirmar resultados,generalizar los resultados osobreponerse a ciertas limitaciones del entorno del experimento original. Descripci´on del cambio: Los cambios se numeran secuencialmente y su descripci´on contiene un patr´on–L que se debe completar y en el que se recoge la situaci´on en el experimento original, el cambio en s´ı y la causa o consecuencia. En esta ´ultima parte del patr´on, para describir la causa, se elige entre “con el fin de” o “causado por” seg´un suene mejor en espa˜nol al completar la frase. Dimensi´on modificada y elementos: El patr´on–L se completa eligiendo una de las dimensiones propuestas; dentro de la dimensi´on elegida, se puede
concretar el elemento modificado eligiendo alguna de las opciones presentadas. Tanto la dimensi´on como el elemento afectado son opcionales. Es decir, por simplicidad, se permite describir un cambio sin tener la obligatoriedad de identificar la dimensi´on y el elemento al que afecta el cambio Amenaza a la validez abordada: Se elije alguna de las amenazas a la validez: del constructo,externa,interna y de conclusi´on. [30]. Comentarios. Texto libre. 3.1. Aplicaci´on de la plantilla En el cuadro 2 se muestra el resultado de aplicar la plantilla y patronesL para definir los cambios realizados en la replicaci´on descrita en [6]. Se trata de una replicaci´on interna llevada a cabo por parte de los autores del presente art´ıculo que versa sobre el efecto de la pr´actica de mindfulness en el rendimiento de los alumnos al desarrollar modelos conceptuales. Cuadro 2. Ejemplo de aplicaci´on de la plantilla a la replicaci´on [6] Mind #2 Replicaci´on del experimento Mind #1 M´etodo emp´ırico Experimento controlado Tipo de replicaci´on Interna Objetivo El objetivo de la replicaci´on es confirmar resultados Cambio #1 Originalmente, durante 4 semanas se practic´o mindfulness 4 d´ıas a la semana en sesiones de 10 minutos. En la replicaci´on las sesiones fueron de 12 minutos y durante 6 semanas con el fin de hacer m´as evidentes los beneficios de Mindfulness. Dimensi´on modificada Operacionalizaci´on, en concreto, la variable independiente Training Workshop Amenaza abordada El cambio incrementa la validez del constructo Cambio #2 Originalmente, la asignaci´on de sujetos a tratamiento no era aleatoria. En la replicaci´on se hace aleatoria con el fin de subsanar las amenazas a la validez interna de los quasi experimentos. Dimensi´on modificada Instrumentalizaci´on, en concreto, dise˜no experimental Amenaza abordada El cambio incrementa la validez interna Cambio #3 Originalmente, se imparti´o un taller de oratoria al grupo de control a modo de placebo. En la replicaci´on el taller de oratoria se llev´o a cabo despu´es del experimento con el fin de evitar un posible efecto de dicho taller en las mediciones de las variables dependientes. Dimensi´on modificada Operacionalizaci´on, en concreto, la variable independiente Training Workshop Amenaza abordada El cambio incrementa la validez del constructo
Aunque es evidente que la validaci´on de la plantilla necesitar´ıa aplicarse a otras replicaciones, con su estructura actual hemos podido hacer expl´ıcitos los cambios de la replicaci´on citada. 4. Trabajos relacionados En esta secci´on, se analizar´a trabajos relacionados ya sea por i)presentar directrices sobre como reportar cambios en replicaciones en IS; ii)presentar dichos cambios de forma que sean f´acilmente interpretados, por ej. mediante tablas; y iii)definir o utilizar plantillas o patrones. Carver [9] presenta una propuesta inicial de directrices sobre el contenido de las publicaciones que reportan replicaciones. En dicho art´ıculo, se indica el contenido que deber´ıa ser incluido sobre el estudio original, sobre la replicaci´on y la comparaci´on de ambos. Entre la informaci´on sobre la replicaci´on se incluye un apartado de cambios al experimento original pero sin concretar c´omo reportar dichos cambios. Aparte de la propuesta metodol´ogica de Carver, se han encontrado varios estudios que documentan los cambios de las replicaciones haciendo uso de tablas ad-hoc. Entre ellos destacaremos los siguientes: Solari [26] se refiere a identificar los incidentes experimentales que ocurren durante la replicaci´on. Ejemplos de incidentes son cambios imprevistos en cualquiera de las variables definidas para el experimento. En el estudio, se documentan cinco replicaciones del mismo experimento realizadas por diferentes experimentadores en diferentes lugares. Las incidencias se clasifican por replicaci´on y categor´ıa de la incidencia. Con la informaci´on almacenada se presenta una tabla resumen que facilita el an´alisis y la comparaci´on de las replicaciones. El trabajo de Lung et al. [20], es el m´as relacionado con nuestra propuesta. Se documenta una replicaci´on de un experimento con sujetos humanos presentando una tabla resumen de diferencias y cambios realizados para adaptar el procedimiento a las circunstancias locales. Para cada cambio introducido se explica claramente la situaci´on en el experimento original, la situaci´on en la replicaci´on y las razones de hacer dicho cambio. En [1], Almqvist presenta una revisi´on bibliogr´afica de replicaciones. Incluye una plantilla para recoger la configuraci´on de las replicaciones y en una de las filas describe de forma conjunta todos los cambios llevados a cabo en la replicaci´on. En [2], Apa et al. presentan una replicaci´on sobre un experimento de detecci´on de fallos. Los cambios se describen, en una secci´on de cambios en el experimento original, en forma textual y en una tabla donde para cada cambio se compara la situaci´on en el experimento original y en la replicaci´on. En [13], Fucci et al. documentan una replicaci´on externa de un experimento sobre el desarrollo basado en pruebas. Contiene una secci´on de cambios en la configuraci´on original donde presenta una tabla con los ajustes hechos al experimento base. En [16], Juristo et al. documentan ocho replicaciones de un experimento para evaluar la efectividad de tres t´ecnicas de verificaci´on y validaci´on. Se presenta
una tabla donde para cada cambio, se analiza su situaci´on en cada replicaci´on y la decisi´on de dise˜no adoptada. En [22], Quesada et al. describen un experimento controlado sobre an´alisis de puntos de funci´on y sus dos replicaciones. Las diferencias en la configuraci´on experimental entre el experimento y replicaciones se explican mediante una tabla y de forma textual. Por otra parte, est´an los estudios sobre definici´on de plantillas en otras ´areas dentro de (IS). La idea de utilizar plantillas y patrones para definir los cambios en las replicaciones de experimentos, est´a basada en las plantillas propuestas por Dur´an et al. [12] para la elicitaci´on de requisitos. Las plantillas y patrones-L se han aplicado con ´exito en diversas ´areas; Del R´ıo et al. [11] las han utilizado para la definici´on de indicadores de rendimiento de procesos de negocio y Segura et al. [23] para descripci´on de relaciones metam´orficas. En la descripci´on de experimentos, destacar la plantilla Goal–Question–Metric (GQM) de Basili [4], recomendada por Wohlin [30], para la definici´on de objetivos de los experimentos. Por ´ultimo, en la metodolog´ıa Design Science Research (DSR), Wieringa [29] define una plantilla para la especificaci´on de un problema que conducir´a una investigaci´on futura. Cuadro 3. Comparaci´on de trabajos relacionados Trabajos relac. Tema (IS)Emp´ırica Uso plantilla Uso patr´on Carver [9] Gu´ıas 3 7 7 Solari [26] Documenta replicaci´on 3 7 7 Lung et al. [20] Documenta replicaci´on 3 7 7 Almqvist [1] SLR replicaciones 3 7 7 Apa et al. [2] Documenta replicaci´on 3 7 7 Fucci et al. [13] Documenta replicaci´on 3 7 7 Juristo et al. [16] Documenta replicaci´on 3 7 7 Quesada et al. [22] Documenta replicaci´on 3 7 7 Dur´an et al. [12] Elicitaci´on requisitos 7 3 3 Del R´ıo et al. [11] Indicadores rendimiento 7 3 3 Segura et al. [23] Relaciones metam´orficas 7 7 3 Basili [4] GQM 3 7 3 Wieringa [29] DSR 7 7 3 Este trabajo Plantillas cambios 3 3 3 En el cuadro 3 se analiza, para cada uno de los trabajos anteriormente citados: i) el tema sobre el que versan, ii) su pertenencia al ´area de IS Emp´ırica, iii) la utilizaci´on de plantillas para facilitar la reutilizaci´on y presentaci´on visual y iv) la utilizaci´on de patrones para facilitar la redacci´on.