Medida de Tamaño en la Etapa de Elicitación de Requerimientos.
-
Citations (0)
-
Cited In (0)
Page 1
Medida de Tamaño en la Etapa de Elicitación de
Requerimientos
M. Elena Centeno1, Alejandro Oliveros2
1Departamento de Informática, Departamento de Matemática,
Facultad de Ingeniería, UNPSJB
malena@ing.unp.edu.ar
2Departamento de Computación, Facultad de Ingeniería, UBA
Magister de Ingeniería de Software, Facultad de Informática, UNLP
oliveros@fibertel.com.ar
Resumen. Establecer mediciones en etapas tempranas del desarrollo del software permite
determinar la bondad del proceso elegido. En este trabajo se proponen mediciones de tamaño
aplicadas al Léxico Extendido del Lenguaje, un producto de la elicitación de requerimientos.
Las definiciones del LEL están expresadas en Lenguaje Natural, entonces al tratar de establecer
mediciones se presenta una dificultad adicional inherente a una de las características del
Lenguaje Natural: su diversidad de formas de expresión. Las mediciones que surgen en forma
inmediata presentan grandes variaciones al aplicarlas a diferentes LEL. Nace así como solución
a este problema el concepto de Palabra Normalizada. Efectuar mediciones teniendo en cuenta
sólo las palabras normalizadas permite una evaluación más objetiva al conseguir abstraerse de
las peculiaridades de cada LEL.
1. Introducción
La medición temprana tiene una importancia crucial para las estimaciones. En este
trabajo se propone medir el atributo tamaño de la entidad Léxico Extendido del
Lenguaje (LEL), un producto del proceso de elicitación de requerimientos expresado
en Lenguaje Natural (LN).
En el LN hay ambigüedad, inexactitud e inconsistencia que pueden devenir en
inconvenientes cuando los stakeholders no comparten los códigos. Sin embargo su
amplitud de vocabulario y la comprensión de sus reglas sintácticas facilita el
intercambio de información [1].
La cantidad de palabras que intervienen en la definición de un símbolo del LEL no es
una medida suficientemente consistente ya que depende del estilo de redacción, del
conocimiento que el ingeniero de requerimientos tiene del dominio y de la
información aportada por los clientes/usuarios. Por lo tanto se obtienen LELs con
diferentes cantidad de palabras. Para reducir el impacto de estas particularidades del
LN se propone como unidad de medida del tamaño del LEL la Palabra Normalizada
que es aquélla imprescindible para transmitir un concepto.
2. Mediciones en la Ingeniería de Requerimientos
La utilidad de los requerimientos se asocia con la posibilidad de medirlos [2]. El éxito
de un programa de mediciones está fuertemente ligado a la elicitación, definición y
Page 2
manipulación tanto de las entidades y actividades del modelo empírico del mundo real
que se quiere medir como de su modelo numérico formal [3].
Conocer el tamaño del producto es crucial para entender el proceso de software y para
controlar restricciones del proceso y otros factores que afectan la satisfacción del
cliente [4].
Un prerrequisito para aceptar y usar una medida es que realmente mida la
característica del software que se supone que mide [5]. Una medida debe especificar
no sólo el dominio y el rango, sino también las reglas que gobiernan el mapeo entre
ellos [6].
En el proceso de elicitación de requerimientos se trata de obtener conocimiento acerca
del problema [7].
Los Escenarios generados a partir de un conjunto de palabras de uso corriente entre
los clientes/usuarios del sistema denominado Léxico Extendido del Lenguaje (LEL)
[8], han probado ser satisfactorios para elicitar el conocimiento del UdD (Universo
del Discurso). El LEL se presenta como un diccionario que contiene definiciones
propias del UdD expresadas en LN. En la Figura 1 se reproduce la plantilla utilizada
para redactar cada una de las entradas.
Nombre1 / Nombre2 / ......
Noción
Explica el significado del símbolo en el contexto en estudio
Impacto
Define la incidencia del símbolo en los otros componentes del sistema
Figura 1. Plantilla de una entrada del LEL [9]
3. Propuestas Relacionadas
Se han propuesto heurísticas para realizar mediciones en diferentes etapas del
desarrollo de software [5], [10], [3], [11]. Las mediciones orientadas por metas GQM
(Goal Question Metric) han recibido una gran atención por parte de la comunidad de
la Ingeniería del Software [12], [13], [14].
En [15], [16] se utilizan Puntos de Función (FP) para determinar el tamaño funcional
de los Escenarios. También se han medido FP en Casos de Uso que si bien tienen
características similares a los Escenarios, se utilizan en la etapa de especificación de
requerimientos [17], [4]. En [18] se exponen mediciones de esfuerzo aplicadas a
Casos de Uso.
4. Teoría de la Medición
En el de desarrollo de software existen procesos, productos y recursos, estas entidades
tienen atributos que los describen [6]. Una entidad es un objeto factible de ser
caracterizado mediante la medición de sus atributos [19] y un atributo es una
propiedad física medible o abstracta de una entidad [20]. Entonces debe existir alguna
relación entre lo que se puede medir y lo que se desea saber.
Las palabras medida, medición y métrica son, muchas veces, consideradas sinónimos,
en este trabajo se las utilizará con una semántica levemente diferente.
Page 3
Según la norma [19] medida (measure) es un “número o categoría asignada a un
atributo de una entidad mediante una medición”. Según la Real Academia Española
es la “acción y efecto de medir”, como primera acepción y en segundo término la
define como “expresión del resultado de una medición” [21]
La palabra métrica (metrics) se define, según la Real Academia Española, como
“perteneciente o relativo al metro (unidad de longitud). Sistema métrico” [21].
En cambio medición (measurement) es según Fenton el “proceso por el cual números
o símbolos se asignan a atributos de las entidades en el mundo real de forma tal de
poder describirlos acorde a reglas claramente definidas” [6] y para la Real
Academia Española, “acción y efecto de medir” que coincide con la definición dada
para medida.
En este trabajo se utilizará la palabra medida como una cualidad o atributo del
artefacto y medición será el proceso para obtener una medida.
Toda medición se basa en la comparación entre entidades del mundo real o
dominio. Existen dos caminos para efectuarlas [22]:
1. Mediciones Subjetivas. Percepción individual de características físicas de la
entidad o atributos Por ejemplo: la clasificación del software como Muy bueno,
Bueno, Regular y Malo.
2. Mediciones Objetivas. Medición de algún atributo de la entidad y asignación de un
valor dentro de un rango de valores preestablecidos. Se comparan las
cuantificaciones del atributo. Por ejemplo: la cantidad de líneas de código.
En cuanto a la cuantificación hay dos formas:
? Mediciones Inmediatas: se efectúan sobre la entidad y se obtiene el valor del
atributo en forma directa [6]. No involucran ningún otro atributo o entidad. Por
ejemplo: la cantidad de palabras que contiene una entrada del LEL.
? Mediciones Calculadas: se obtienen mediante fórmulas que combinan medidas
inmediatas. Por ejemplo: la relación del total de palabras del LEL con la cantidad
de entradas que contiene.
La condición de representación establece que si una relación R mapea entidades con
números y relaciones empíricas con relaciones numéricas de forma tal que las
relaciones empíricas preserven y sean preservadas por las relaciones numéricas,
entonces se podrá definir a esta relación R como una medición para el atributo [6].
Para concluir, se tiene:
1. Relación empírica no mapeable: “la entrada A está mejor redactado que la entrada
B”
2. Relación empírica que se puede mapear: “la cantidad de palabras de la entrada A
es mayor que la cantidad de palabras de la entrada B”
3. Medición de un atributo usando una escala predefinida: “la cantidad de palabras de
la entrada A es ...” Medición inmediata
4. Medición de un atributo como combinación de otros: “la media de palabras usadas
para definir una entrada es de ...” Medición calculada
5. Propuesta
Para medir el tamaño de un texto se pueden considerar diferentes elementos:
caracteres, líneas de texto, palabras o algún tipo específico de palabra. Como el LEL
Page 4
está expresado en LN y un mismo concepto se puede definir con diferentes palabras
en calidad y cantidad, para que una medición de tamaño sea objetiva se requiere
cautela al establecerla.
Se propone el concepto de Palabra Normalizada (PN) como aquélla que dado su peso
semántico es imprescindible para explicar un concepto, sobre esta base el tamaño de
un texto se expresará en función de la cantidad de palabras normalizadas que
contenga.
Las PN se detectan mediante diez Reglas de Normalización y un proceso de ejecución
[23]. Sobre esa base se enunciaron 21 definiciones de medidas inmediatas y/o
calculadas aplicadas a las entradas o al LEL.
Estas mediciones se aplicaron a cuatro casos de estudio: Hotel [24], Pasaporte [25],
LEL & Escenarios [26] y Meeting Scheduler (Agenda) [27], los que se diferencian en
las personas que los elaboraron, la cantidad de entradas y los temas que tratan.
6. Mediciones aplicadas al símbolo del LEL
6.1 Palabra normalizada
Los documentos expresados en LN responden a la estructura (llamada también
sintaxis o gramática) del idioma en el que fueron escritos, esta estructura resulta
demasiado compleja y la cantidad de términos involucrados es muy grande cuando el
objetivo es aplicar algoritmos matemáticos. Es por ello que se debe buscar una forma
de reducir el efecto negativo de estas características en el texto que se desea procesar
Las Reglas de Normalización ayudan a cumplir este objetivo pues se definen de forma
tal que eliminan aquellas palabras que se consideran “prescindibles”.
Una palabra se considera Normalizada si luego de aplicarle las reglas no ha sido
eliminada. Las PN de una entrada del LEL forman un subconjunto de las palabras que
intervienen en ella, se excluye rescribir la entrada obviando las palabras no
normalizadas.
En este trabajo se utiliza un concepto similar al usado en el área de la recuperación de
información (Information Retrieval) que aplica algoritmos de “clustering” o
agrupamiento a los documentos, utilizando vectores [28] [29] [30].
6.2 Reglas de Normalización
Se definieron diez Reglas de Normalización cada una de las cuales establece el
tratamiento de una Clase de Palabra: preposiciones, verbos, palabras compuestas, etc.
[23]. Las Reglas de Normalización son disjuntas, es decir el alcance de cada una no se
solapa con las otras reglas y se aplican sucesivamente. En la Figura 2 se reproduce el
formato general.
El alcance de cada regla está basado en un análisis lingüístico [31] que determina el
peso semántico de las palabras al transmitir un concepto.
Existe una regla que trata sobre los artículos y las palabras coordinativas y otra sobre
el tratamiento de los pronombres. Se ha visto que estas clases de palabras no tienen
relevancia en una definición y pueden ser fácilmente obviadas sin que por ello la idea
pierda claridad.
Page 5
Regla k
Alcance:
Acción:
Razón:
Excepción:
Ejemplo:
especifica la clase de palabra a la que se aplica la regla
indica si corresponde contar o no la palabra como normalizada
motivo por el que se aplica la regla
si la hubiere, indica la situación en la que la regla no se aplica
ilustra la aplicación de la regla
Figura 2.Formato de una regla de normalización
Tres de las reglas se refieren al tratamiento de los verbos. Las formas verbales que
incluyen dos o tres palabras se cuentan como una sola palabra normalizada pues
transmiten el concepto correspondiente a una única acción, por ejemplo ha
construido. Hay algunos verbos que no se consideran palabras normalizadas, por
ejemplo el verbo ser.
Regla 2
Alcance: [pronombres]
Acción: [no se cuentan]
Razón: [son palabras no descriptivas]
Excepción: [los pronombres demostrativos esto, este, aquel y sus formas
masculina, femenina y los correspondientes plurales cuando
llevan acento están usados como sustantivos o adjetivos,
entonces se cuentan]
Figura 3.Regla de normalización Nro. 2
Los conjuntos de palabras que trasmiten un concepto se consideran una sola PN, por
ejemplo lugar físico de la reunión o caja de seguridad. Tienen un tratamiento
especial los números, caracteres especiales y abreviaturas y también las frases de uso
común y estructuras gramaticales, por ejemplo si...entonces o de vez en cuando.
Como ejemplo en la Figura 3 se incluye la Regla de Normalización 2.
6.3 Aplicación de las Reglas de Normalización
Dada la entrada x del LEL se indica con x* el vector binario (x1, x2, ..., xm) con xi = 1
y dimensión igual a la cantidad de palabras de la entrada o CP(x). Para determinar
CP(x) no se consideran las palabras Noción, Impacto ni Nombres de la entrada y se
incluyen todas las ocurrencias de una misma palabra.
Se define el operador Ψ que aplica sucesivamente todas las reglas de normalización
transformando 1 en 0 en los casos en que detecte palabras que no sean normalizadas,
obteniéndose el transformado de x*:
)x ,...,x, x ( )))...) x (
1
R(R (...R) x (
1
=
m21
*
2 10
* 10
k
ΨΨΨ
==Ψ
con
Ψ
i x (
= 0 ó 1)
(1)
El vector resultante tendrá un 1 en aquellas posiciones que correspondan a una
palabra normalizada. La sumatoria de los elementos de Ψ(x*) permite obtener la
cantidad de palabras normalizadas de la entrada x: