4. Comprensión del Vocabulario del UdeD
4.2. El proceso de creación del LEL
Modelo del LEL (ver Figura 2) usando información obtenida del dominio de la aplicación. La intuición, apoyada con una buena comprensión del modelo del LEL, puede usarse para crear el léxico, pero esto puede o no llevar a un documento bien concebido. Con lo cual, se necesitan heurísticas para permitir que cualquiera pueda llevar a cabo este proceso con éxito y, además, para evitar debilidades que normalmente se presentan en LELs de aparentemente buena calidad. Estas debilidades van desde símbolos relevantes omitidos hasta la inserción innecesaria de algunos otros, así como la inclusión de exceso de detalles en las descripciones de símbolos o la falta de ellos.
Figura 11. Proceso de creación del LEL
El LEL no es meramente una enumeración de entradas; su proceso de creación se concibe como un enfoque comprensivo. El proceso [Hadad 08], graficado en la Figura 11, consiste de cinco actividades independientes: 1) Planear, 2) Recolectar, 3) Describir, 4) Verificar y 5) Validar.
Como se observa en la Figura 11, el proceso muestra un flujo principal compuesto de tres actividades: Planear, Recolectar y Describir, habiendo retroalimentaciones bien establecidas cuando la verificación y la validación tienen lugar. Después de verificar y validar el LEL, el proceso retorna a la actividad Recolectar y/o a la actividad Describir, donde se hacen correcciones
CLIENT-USER
Notion:
- Person or group of persons, belonging to UofD, who interacts with the requirements engineer Behavioral Response: - He supplies the documentation or he participates in
the interviews - He participates in the LEL validation - He participates in the scenarios validation
CLIENT-USER
Notion:
- Person or group of persons, belonging to UofD, who interacts with the requirements engineer Behavioral Response: - He supplies the documentation or he participates in
the interviews - He participates in the LEL validation - He participates in the scenarios validation
CLIENT-USER
Notion:
- Person or group of persons, belonging to UofD, who interacts with the requirements engineer Behavioral Response: - He supplies the documentation or he participates in
the interviews - He participates in the LEL validation - He participates in the scenarios validation
LEL Heurísticas
Verificar
Validar
Describir
Planear Recolectar
y tener informción fehaciente de los cajeros que venden y conocer los tiempos en cada paso de la gestión y llevar un seguimiento de los servicios brindados a clientes Plant Supervisor Personal Chief Contract Truck Dispatcher Enterprise Documents Legal Documentation Objetivos del Sistema UdeD Modelo del LEL N a m e / S y n o n y m N o t i o n : B e h a v i o r a l R e s p o n s e :FICHA DE REQUISITO CANDIDATO ESPONTANEO Proyecto: ____________________ Fecha: __/__/____ Ingeniero de Requisitos: ________ Descripción:___________________ ______________________________ ______________________________ Prioridad: Obligatorio Deseado Tipo: RF RNF: ____________ Fuente de Información: ____________ Etapa del Proyecto: _______________ Observación: ____________________
FICHA DE REQUISITO CANDIDATO ESPONTANEO Proyecto: ____________________ Fecha: __/__/____ Ingeniero de Requisitos: ________ Descripción:___________________ ______________________________ ______________________________ Prioridad: Obligatorio Deseado Tipo: RF RNF: ____________ Fuente de Información: ____________ Etapa del Proyecto: _______________ Observación: ____________________
FICHA DE REQUISITO CANDIDATO ESPONTANEO Proyecto: ____________________ Fecha: __/__/____ Ingeniero de Requisitos: ________ Descripción:___________________ ______________________________ ______________________________ Prioridad: Obligatorio Deseado Tipo: RF RNF: ____________ Fuente de Información: ____________ Etapa del Proyecto: _______________ Observación: ____________________
Lista de Fuentes de Información
Fichas Información Anticipada
basadas en la lista de defectos producida (denominada lista de DEOs1). En el caso de Validar, el proceso puede también retornar a la actividad Planear si se descubren fuentes de información faltantes. Para una fácil lectura, el gráfico de la Figura 11 no muestra todos los pasos de retroceso que pueden ocurrir durante el proceso de construcción. Por ejemplo, mientras se está describiendo un símbolo puede descubrirse que se le asignó mal el tipo, luego un paso atrás ocurre para reclasificarlo (dentro de la actividad Recolectar). Otro ejemplo de retroceso puede deberse a la aparición de un nuevo término mientras se está describiendo otro. Es decir, la estrategia no es lineal sino un proceso iterativo donde la retroalimentación es un mecanismo constante. Además de esta retroalimentación continua, el flujo principal no sigue completamente un modelo de cascada dado que en la práctica real las tres actividades principales se superponen parcialmente. Por ejemplo, un símbolo puede describirse completamente mientras se identifican nuevas fuentes de información para clasificar o describir otros símbolos.
El léxico debe adaptarse para que refleje la última comprensión lograda del dominio de la aplicación; como tal evoluciona a medida que el proceso de la IR evoluciona. Las siguientes fases de la estrategia también pueden producir una lista de DEOs sugiriendo cambios y agregados en el LEL.
A continuación se detallan las actividades graficadas en la Figura 11.
(1) Planear
Para establecer cómo elicitar información del UdeD, se deben seguir tres pasos: primero identificar las fuentes de información, segundo evaluarlas, y finalmente seleccionar las estrategias para elicitar los símbolos. La Figura 12 muestra el flujo de estas tres actividades. Los productos de esta fase son una lista de fuentes de información con las estrategias seleccionadas.
1
Una lista de DEOs contiene las discrepancias, errores y omisiones encontradas durante las actividades de verificación y de validación, donde se sugieren correcciones.
Figura 12. Actividad PPllaanneeaar en el proceso del LEL r
(1.1) Identificar Fuentes de Información
En este paso se identifican las fuentes de información para todas las actividades de la IR y no sólo para la creación del LEL.
La heurística general para identificar las fuentes de información indica primero establecer quiénes son los solicitantes del software, luego las personas que se presume serán impactadas por la operación del software y finalmente a cualquier documento relacionado con el UdeD.
Las fuentes de información están contenidas en el UdeD, por lo tanto, el primer paso es definir el contexto dónde el proceso de IR tiene lugar, para ello se tiene como fuente inicial el documento de objetivos y alcance del sistema (de existir) y los solicitantes del sistema del software. A partir de éstas comienza el descubrimiento de nuevas fuentes de información, armándose una lista con ellas. Al finalizar esta actividad deben poder responderse las siguientes preguntas:
9 ¿Quién es el cliente?
9 ¿Quiénes serán los usuarios?
9 ¿Quiénes son usuarios “claves”?
9 ¿Existe alguna solución (paquete) ya disponible en el mercado? Heurísticas Seleccionar Estrategias Identificar Fuentes de Información Evaluar Fuentes de Información y tener informción fehaciente de los cajeros que venden y conocer los tiempos en cada paso de la gestión y llevar un seguimiento de los servicios brindados a clientes Plant Supervisor Personal Chief Contract Truck Dispatcher Enterprise Documents Legal Documentation Lista de Fuentes de Información Objetivos del Sistema UdeD
9 ¿Existe la posibilidad de reusar software?
9 ¿Cuáles son los documentos más referenciados por los actores del UdeD?
9 ¿Cuáles son los libros relacionados con la aplicación?
(1.2) Evaluar Fuentes de Información
Después de identificar las fuentes de información, deben darse prioridades a las mismas, principalmente cuando se dispone de un gran número de fuentes dado que en algunos casos es casi impracticable el acceso a todas ellas.
Una fuente de información puede considerarse desde varios puntos de vista. Desde el punto de vista de la vigencia, se clasifica la información en actual y formal. La información formal es acerca de lo que debe hacerse o debe ocurrir, pero no necesariamente información actualizada o acerca de la práctica corriente. Mientras que la información actual involucra prácticas o estados corrientes, es decir, lo que realmente está en uso.
Este tipo de punto de vista está muy cercano a la naturaleza de la fuente de información. Es decir, los usuarios, los formularios y el software actual son ciertamente fuentes que proporcionan información con un sesgo a lo actual, mientras que los manuales de procedimientos y las políticas del negocio presentan información con un sesgo formal. En este último caso, debe controlarse la información para identificar cuál es información actual (“lo que es”), información obsoleta (“lo que ya no es”) o un tercer tipo: información no obsoleta pero en desuso (“lo que debe ser pero no es”). La información obsoleta no debe ser completamente desechada pues un efecto de la etimología puede existir en algunos símbolos que pueden facilitar la comprensión de su significado actual.
(1.3) Seleccionar Estrategias
Este paso apunta a seleccionar la estrategia o conjunto de estrategias más adecuadas para elicitar los símbolos del dominio de la aplicación. Las técnicas principales para recolectar información son lectura de documentos, entrevistas,
observaciones, encuestas, reuniones, enfoque antropológico, reuso de requisitos, recupero desde el diseño del software, entre otras. Pero para la creación del LEL, algunas de ellas son menos útiles.
La etnografía ayuda a los ingenieros de requisitos a sumergirse en la cultura del UdeD facilitando la comprensión del vocabulario pero agregando el riesgo de dificultar después el establecer qué palabras o frases son peculiares o muy repetidas. El recupero desde el diseño del software puede contener mucho vocabulario computacional. La observación es una técnica excelente para capturar el comportamiento actual pero no tan apropiada para capturar el vocabulario. El uso del resto de las estrategias depende principalmente de las fuentes de información previamente identificadas y de los objetivos y alcance del sistema, aunque las entrevistas y la lectura de documentos son los mecanismos más comunes para recolectar símbolos.
Las entrevistas permiten a los ingenieros reconocer fácilmente el vocabulario que los clientes y usuarios emplean en su ambiente. Se recomienda el uso de entrevistas no estructuradas (también llamadas entrevistas abiertas), haciendo preguntas sólo para motivar a que los clientes y usuarios hablen. La técnica entrevista normalmente se combina con la lectura de texto, principalmente formularios, comprobantes, informes, manuales y políticas de la organización.
(2) Recolectar Símbolos
Para identificar y registrar los símbolos del lenguaje de la aplicación, deben seguirse tres pasos: identificar los símbolos, organizarlos en una lista y finalmente clasificarlos.
La Figura 13 muestra el flujo de estas tres actividades. El producto de esta fase es una lista de símbolos.
Figura 13. Actividad RReeccoolleeccttaar en el proceso del LEL r
(2.1) Identificar Símbolos
Esta tarea apunta a capturar los símbolos del léxico del UdeD aplicando las estrategias seleccionadas a las fuentes de información identificadas. Los ingenieros de requisitos identifican esos símbolos y construyen una lista de símbolos candidatos.
Como se ha mencionado, algunas técnicas para la captura de información, como la observación o el recupero desde el diseño del software, pueden no proporcionar la mejor información para recolectar símbolos. Este paquete de información puede examinarse con un criterio diferente en las restantes actividades de definición de requisitos. También, las entrevistas y la lectura de documentos pueden proporcionar más información que la actualmente necesaria. Los documentos pueden estar disponibles al principio del proceso, sin embargo se obtienen habitualmente durante y después de las primeras entrevistas.
Normalmente, las primeras entrevistas son no estructuradas, dejando que los Heurísticas Clasificar Símbolos Identificar Símbolos Organizar Lista y tener informción fehaciente de los cajeros que venden y conocer los tiempos en cada paso de la gestión y llevar un seguimiento de los servicios brindados a clientes Plant Supervisor Personal Chief Contract Truck Dispatcher Enterprise Documents Legal Documentation Lista de Fuentes de Información Lista de Símbolos Clasificada UdeD Fichas Información Anticipada
FICHA DE REQUISITO CANDIDATO ESPONTANEO Proyecto: ____________________ Fecha: __/__/____ Ingeniero de Requisitos: ________ Descripción:___________________ ______________________________ ______________________________ Prioridad: Obligatorio Deseado Tipo: RF RNF: ____________ Fuente de Información: ____________ Etapa del Proyecto: _______________ Observación: ____________________
FICHA DE REQUISITO CANDIDATO ESPONTANEO Proyecto: ____________________ Fecha: __/__/____ Ingeniero de Requisitos: ________ Descripción:___________________ ______________________________ ______________________________ Prioridad: Obligatorio Deseado Tipo: RF RNF: ____________ Fuente de Información: ____________ Etapa del Proyecto: _______________ Observación: ____________________
FICHA DE REQUISITO CANDIDATO ESPONTANEO Proyecto: ____________________ Fecha: __/__/____ Ingeniero de Requisitos: ________ Descripción:___________________ ______________________________ ______________________________ Prioridad: Obligatorio Deseado Tipo: RF RNF: ____________ Fuente de Información: ____________ Etapa del Proyecto: _______________ Observación: ____________________
clientes y usuarios se expresen libremente. En las siguientes entrevistas, se recomienda generar una lista de preguntas guiadas para profundizar en los temas y ahorrar tiempo. El objetivo principal de las primeras entrevistas es recoger palabras o frases con un significado especial en el dominio de la aplicación, pero sin entender su semántica. Las entrevistas generalmente se llevan a cabo en el lugar de trabajo de los clientes y usuarios. El número de entrevistas depende principalmente de:
Ö la complejidad del problema;
Ö la experiencia de los ingenieros de requisitos creando un léxico; Ö el conocimiento de los clientes y usuarios sobre el UdeD;
Ö el número de clientes y usuarios seleccionados para entrevistar.
Cuando se usan fuentes de información humanas, toda la información capturada debe registrarse (grabando, filmando o transcribiendo) teniendo en cuenta una posible indisponibilidad de esa fuente posteriormente.
Debajo se enumeran algunas reglas para seleccionar símbolos:
9 Seleccione exclusivamente palabras o frases pertenecientes al dominio de la aplicación.
9 Seleccione palabras o frases frecuentemente usadas por los clientes y usuarios o con alta repetición en los documentos.
9 Seleccione palabras o frases “significativas” en el dominio de la aplicación.
9 Excluya palabras o frases demasiado obvias que son de dominio público y no particulares del dominio de la aplicación.
9 Considere aquellas palabras o frases que parecen estar fuera de contexto, desconocidas o confusas como términos dudosos para luego ahondar en ellos
9 Identifique el nombre completo del término no importa cuán largo sea. Sin embargo, una abreviatura o un acrónimo puede ser el nombre de un término.
9 Tenga presente que una abreviatura, un acrónimo o un nombre parcial pueden ser un sinónimo de un símbolo con un nombre largo.
parcial como sinónimo de un símbolo con un nombre largo, asegúrese de su existencia en el UdeD.
9 Al emplear la técnica de lectura de documentos, escoja los símbolos dentro del alcance de un párrafo, en lugar del texto entero.
La recomendación principal para este paso es “evite excluir términos antes de tiempo”, pues recién se está comenzando con la actividad de elicitar información.
Aunque obvia, la siguiente recomendación es siempre oportuna: “tenga siempre presente el objetivo general del sistema”. Aún cuando éste fuese concebido impreciso al inicio, sirve para guiar el proceso de captura de símbolos, concentrando la actividad en la adquisición de información útil para el estudio del UdeD con una visión orientada por dicho objetivo.
Toda información extra que implique un pedido o necesidad referida al software, o un detalle de lo actual que excede la información de un glosario, debe registrarse en las Fichas de Información Anticipada.
(2.2) Organizar la Lista
El objetivo de este paso es obtener una única lista de símbolos de las listas candidatas. Puede producirse más de una lista candidata por varias razones, como ser, listas parciales de diferentes ingenieros de requisitos con la misma fuente de información o listas parciales obtenidas de diferentes fuentes de información. Por consiguiente, esas varias listas deben unificarse en una.
Se debe recordar que todos los nombres dados a un término, es decir los sinónimos, son una sola entrada en el léxico. Por lo tanto, se debe organizar la lista de nombres del símbolo de manera tal que el nombre más frecuentemente usado en el dominio de la aplicación aparezca primero. Es decir, si uno de los nombres del símbolo raramente se usa, éste debe ubicarse al final.
búsqueda de símbolos.
(2.3) Clasificar Símbolos
La tarea de clasificación ayuda a la integridad y homogeneidad de las descripciones de los símbolos. Los siguientes pasos deben realizarse: establecer una clasificación, definir cada tipo de la clasificación y aplicarlo a los símbolos, produciendo una lista de símbolos clasificada. Establecer una clasificación significa adoptar la clasificación estándar o crear una nueva ad-hoc. La segunda opción no es necesaria en la mayoría de los casos y sólo debe aplicarse en tales dominios específicos que hacen inutilizable la clasificación general. La Figura 14 describe en detalle la actividad Clasificar
Símbolos.
Figura 14. Actividad CCllaassiiffiiccaarrSSíímmbboolloos en el proceso del LEL s
(2.3.1) Establecer la Clasificación
El criterio de clasificación está dado por la clasificación general propuesta en [Leite 90] o por una clasificación particular dependiente del dominio de la aplicación. En la mayoría de los casos, la clasificación general se adecua perfectamente dando suficiente soporte para producir un léxico homogéneo con la información apropiada.
La clasificación general agrupa los símbolos en cuatro tipos: Sujeto, Verbo,
Aplicar Clasificación Establecer
Clasificación Definir Tipos
Lista de Símbolos Clasificada Clasificación General Lista de Símbolos Organizada y tener informción fehaciente de los cajeros que venden y conocer los tiempos en cada paso de la gestión y llevar un seguimiento de los servicios brindados a clientes y tener informción fehaciente de los cajeros que venden y conocer los tiempos en cada paso de la gestión y llevar un seguimiento de los servicios brindados a clientes S ujeto: xxxxxxxx O bjeto : xxxxxxxx V erb o: xxxxxxxx E stado : xxxxxxxx
Objeto y Estado. Estos tipos representan cada uno lo siguiente:
Ö Tipo Sujeto: una entidad activa, por ejemplo, una persona, organización, máquina o sistema, que realiza actividades en el dominio de la aplicación.
Ö Tipo Objeto: una entidad pasiva a la que se le aplican acciones en el dominio de la aplicación, sin realizar acciones por sí misma.
Ö Tipo Verbo: una actividad o acción que ocurre en el dominio de la aplicación.
Ö Tipo Estado: una condición o situación en la cual sujetos, objetos o verbos del dominio de la aplicación están o pueden estar en un momento dado.
Cuando se tiene un gran número de símbolos y/o un equipo de ingenieros de requisitos, puede considerarse refinar algunos tipos de la clasificación general o crear algunos nuevos, ajustando la clasificación al dominio específico de la aplicación. Esto ayuda a hacer más precisa la definición de cada símbolo y por consiguiente, a garantizar una sintaxis homogénea del léxico. En este caso, deben definirse cuidadosamente los tipos particulares basándose en la lista de símbolos. Esta circunstancia puede tener lugar cuando parte del equipo de ingenieros tiene poca experiencia en la tarea, por lo tanto, requieren más ayuda, la cual puede proporcionarse introduciendo tipos basados en el dominio de la aplicación. Por ejemplo, los símbolos que comparten algunos atributos pueden describirse mejor usando una plantilla diseñada exclusivamente para ellos, en lugar de usar la plantilla del tipo general correspondiente.
(2.3.2) Definir Tipos
Las plantillas para definir los cuatro tipos generales son:
9 Símbolo Sujeto: la noción tiene que definir quién es y el impacto debe registrar las responsabilidades o actividades que ejecuta o recibe.
9 Símbolo Objeto: la noción debe definir qué representa, sus características e identificar otros objetos con los que se relaciona. El impacto debe describir las actividades o acciones que se aplican al
objeto o que se realizan con él.
9 Símbolo Verbo: la noción debe describir concisamente la actividad que representa, su propósito e identificar quién lo ejecuta, cuándo (cronológicamente o relativo a otras actividades) y dónde se realiza. El impacto debe registrar las acciones, operaciones o procedimientos involucrados en la actividad y debe identificar las situaciones que impiden la ocurrencia de la actividad, qué otras actividades se desencadenan en el UdeD y qué situaciones ocurren debido a esta actividad.
9 Símbolo Estado: la noción tiene que expresar claramente lo que significa y los estados y actividades o acciones que llevaron a este estado. El impacto debe identificar otros estados y actividades o acciones que pueden ocurrir a partir de este estado.
En la Figura 15 se presenta un ejemplo de cada tipo de símbolo del LEL, extraído del caso Juzgado Laboral.
Figura 15. Ejemplo de símbolos de cada tipo
Símbolo Tipo OBJETO Símbolo Tipo SUJETO
A
ACCTTOORR//PPAARRTTEEAACCTTOORRAA
Noción:
Es la persona que decide iniciar
demanda.
Impacto:
Presenta un escrito contra el
demandado.
Puede ampliar la demanda.
Puede apelar.
Puede consultar un expediente en mesa
de entradas.
E
EXXPPEEDDIIEENNTTEEEENNLLEETTRRAA
Noción:
Condición por la cual un expediente se
encuentra en mesa de entradas para su consulta.
Impacto:
El expediente puede ser consultado
por un letrado, los peritos o las partes.
Puede pasar a expediente no en letra
a pedido del juez.
E
EXXPPEEDDIIEENNTTEE Noción:
Es el documento originado por la
presentación de una demanda.
Impacto:
Se le asigna por sorteo el juzgado.