• No se han encontrado resultados

CAPÍTULO 3 CONSTRUCCIÓN Y OBTENCIÓN DE SOLUCIONES REUTILIZABLES

3.3.2 Caso de Estudio 2

Al igual que para el caso de estudio 1, en la definición de cada requisito se diferencia el fragmento que es afectado al incluir la funcionalidad del MU, utilizando un estilo de letra diferente, permitiendo que la funcionalidad de usabilidad esté totalmente integrada y documentada durante todo el proceso de desarrollo. En la Tabla 3.7 se puede ver la descripción del CU03 Modificación de variables para el sistema de generación de variables

de pago. En el Anexo E se encuentra la definición de otros casos de uso en los que se resalta también la funcionalidad del MU.

Figura 3.26. Diseño de la aplicación de gestión de indicadores con la funcionalidad del MU AO La relación entre las preguntas de educción y los CU se pueden ver en la Tabla 3.8. Se identifican cuáles casos de estudio son afectados por las preguntas de la guía de educción y cuáles no, además de la justificación en cada caso. Un resultado del análisis de los requisitos es que igual que en el caso de estudio 1, las funcionalidades relacionadas con el MU AO se encuentran definidas como caminos alternativos, por lo tanto las funcionalidades del MU no quedaron reflejadas en los diagramas de secuencia iniciales de la aplicación.

Se elaboraron nuevos diagramas de secuencia que reflejan los caminos alternativos y por lo tanto la funcionalidad del MU. Del análisis de la relación se concluye que la funcionalidad del MU AO tiene un impacto alto sobre las funcionalidades de la aplicación, ya que el 100% de las funcionalidades son afectadas al incluir las recomendaciones IPO a nivel de aplicación, a nivel de operación afecta el 28,5% y 0% a nivel de comando.

A nivel de operación la funcionalidad del MU AO se encuentra asociada a las funcionalidades de creación y edición de variables diarias, en la que se incluyeron los botones Limpiar y Cancelar. En el caso del botón limpiar se presenta una modificación respecto a la interpretación dada en el caso de estudio 1, y es que los usuarios decidieron que no querían habilitar la opción de guardar al momento de limpiar, solo que se les informara si se había hecho alguna modificación, y poder cancelar el limpiar si fuese necesario.

Tabla 3.7. CU03 Modificación de variables

Identificador: CU03 Indispensable/Deseable:

Indispensable Prioridad: Alta Nombre Caso de Uso: Modificación de variables.

Autor/Modificación: Francy Rodríguez Fecha: 15-06-2011

Categoría(Visible/No visible): Visible Actores involucrados: Usuario Resumen:

 Permite a un usuario modificar los valores de variables de pago (extras, complementarias, diurnas,

nocturnas) de un empleado dependiendo del tipo de contrato. Pre-condiciones:

 El usuario es válido en el sistema, y tiene los permisos necesarios para ejecutar la operación.  Se ha hecho una consulta previa que permite visualizar empleados y variables del período vigente.

Post-condiciones:

 Las modificaciones hechas sobre las variables se guardan en la base de datos.

Curso Básico de Eventos

Usuario Sistema

1. El actor oprime la opción Editar. 2. El sistema activa las casillas que el actor puede editar.

3. El actor modifica los valores que desee de los valores que el sistema ha dejado editables. 4. El actor oprime el botón Actualizar.

5. El sistema guarda los valores de las nuevas variables.

Caminos Alternativos

4.1 El actor oprime el botón “Cancelar”, si hay cambios muestra un mensaje que pregunta si se desean guardar, si se desean guardar, el sistema guarda, desactiva los campos editables y permanece en la página, si el usuario descarta los cambios o si no hay cambios por guardar, el sistema desactiva los campos editables y

permanece en la página.

4.2 El actor oprime el botón “Limpiar”, si hay cambios se informa al usuario y se da la opción de “cancelar” el limpiar, para permanecer en la página con los mismos datos, si no hay cambios, se advierte al usuario que se limpiaran todos los valores y se da la opción de “cancelar” el limpiar, si el usuario continua con el

limpiar se limpian todos los valores editables.

4.3 El actor oprime la opción “Salir” de la aplicación, si hay cambios sin guardar, se consulta si se desean guardar, y en caso afirmativo se guardan y va a la pantalla de autenticación. Si no se guardan cambios o

no hay cambios pendientes por guardar, va directamente a la pantalla de autenticación.

4.4 El actor escoge otra opción de la aplicación (ir a inicio) si hay cambios sin guardar, se consulta si se desean guardar, y en caso afirmativo se guardan y va a la pantalla solicitada. Si no se guardan cambios o no hay

cambios pendientes por guardar, va directamente a la pantalla solicitada.

5.1. Si alguno de los campos modificados tiene un valor no válido, el sistema muestra el error correspondiente, marca el campo y permanece en la página en modo edición.

Caminos de Excepción

5.2 Si se presenta un error al guardar, el sistema muestra un mensaje y permanece en la página. Puntos de Extensión

Tabla 3.8. Relación entre preguntas de educción para el MU AO y los CU del caso de estudio 2

Pregunta de educción Caso de uso Aplica Justificación (Responsabilidades del sistema) N iv el de a pl ic ac ió n ¿Dónde y cómo se presentará al usuario la opción de abandonar la aplicación?

Todos SI La opción de salir estará disponible en todas las páginas. Se presentará en el menú principal ubicado en la parte superior de la pantalla.

Si al salir hay cambios ¿Dónde y cómo se le presentará la opción al usuario para guardar estos cambios?

CU03, CU06 SI Este CU corresponde a la edición de

información, el usuario puede haber realizado modificaciones antes de elegir la opción de salir, en este caso se presentará una ventana modal que pregunte si desea guardar o descartar los cambios.

CU04,CU05 SI En estos casos se puede haber iniciado un proceso de generación o cierre de variables, por lo tanto si el usuario va a salir de la aplicación se deberá preguntar si desea cancelar la operación, esto se realizará en una ventana modal.

CU01,CU02,CU07 NO Son opciones de listar información, el usuario no puede realizar cambios.

N iv el de o pe ra ci ón ¿Qué operaciones requieren la opción de cancelar?

CU03, CU06 SI Casos de uso de edición de información. CU04,CU05 NO Casos de uso de generación y cierre. A nivel

de operación se contempla solo la parte en que se eligen las opciones de inicio, en cualquier momento se puede navegar hacia otra opción, y se pierden las opciones establecidas, dado que estas no se guardan de forma permanente.

CU01,CU02,CU07 NO Son opciones de listar información, el usuario no puede realizar cambios.

¿Cómo debe presentarse al usuario la opción de cancelar?

CU03, CU06 SI Edición de información. Se presentan como formularios y tendrán un botón para cancelar, aunque también se puede cancelar navegando hacia otra opción dentro de la aplicación. ¿A qué estado pasará el

sistema luego de que el usuario elija la opción de cancelar?

Todos SI El sistema quedará en la página de autenticación.

CU03, CU06 SI El sistema se quedará en la página actual pero sin permitir cambiar campos.

N iv el de c om an do

¿Qué comandos podrían tardar más de 10 segundos?

Todas NO Ninguna opción se considera que pueda durar más de 10 segundos.

¿Cómo debe presentarse al usuario la opción de cancelar?

Todas NO

¿A qué estado pasará el sistema luego de que el usuario elija la opción de cancelar?

Todas NO

Lo anterior se debe a que en este caso no se crean registros solo se adiciona información a registros ya existentes, y puede existir un número considerable de los mismos, por tal razón al momento de querer limpiar un formulario no tiene sentido guardar primero porque el sistema va a permanecer sobre los mismos registros. Esta diferencia genera una nueva casuística a tener en cuenta cuando se busque una solución reutilizable más general. En la Figura 3.27 se puede observar un ejemplo de la página de edición de variables diarias.

Figura 3.27. Edición de variables de pago diarias

A nivel de análisis y diseño, se encontró que para incluir la funcionalidad asociada al MU AO, era necesario incluir componentes con las siguientes responsabilidades:

- Un componente que escuche las acciones del usuario para determinar cuándo se ha hecho una solicitud de salir de la aplicación o de cancelar una operación o comando. - Un componente cuya responsabilidad sea conocer en todo momento si existen o no

cambios por guardar.

- Un componente que cuando existan cambios en la aplicación pregunte al usuario si desea o no guardar estos cambios y conozca la acción a seguir dependiendo de la respuesta recibida.

Como se puede observar las responsabilidades de los componentes coinciden con las definidas para tres de las clases identificadas en el caso de estudio 1: CFUUndoCancel, CheckerChanges y CancelHandle. La diferencia está en que no es necesaria una clase que mantenga la información del estado actual y anterior del sistema, en primer lugar por las características de la aplicación, ya que no se navega por varios estados, siempre se va de la página de búsqueda inicial a alguna de las otras páginas y regresa, y en segundo lugar porque el lenguaje maneja automáticamente este cambio de estado. En la Figura 3.28, se puede ver la forma en que se relacionan las clases relacionadas con el MU AO con el diseño de la aplicación. Se observa que son clases asociadas a la capa cliente.