Descripción de las interacciones previsibles entre los usuarios y un sistema técnico.
En informática , un escenario ( , ; prestado del italiano escenario ( pronunciado [ʃeˈnaːrjo] ), del latín scena 'escena' [1 ] ) es una narrativa de interacciones previsibles de roles de usuario (conocidos en el Lenguaje Unificado de Modelado como ' actores ') y el sistema técnico, que generalmente incluye hardware y software de computadora .
Un escenario tiene un objetivo , que suele ser funcional. Un escenario describe una forma en que se utiliza o se prevé utilizar un sistema en el contexto de una actividad en un período de tiempo definido. El marco temporal para un escenario podría ser (por ejemplo) una única transacción; una operación comercial; un día u otro período; o toda la vida operativa de un sistema. De manera similar, el alcance de un escenario podría ser (por ejemplo) un único sistema o un equipo; un equipo o departamento equipado; o una organización completa.
Los escenarios se utilizan con frecuencia como parte del proceso de desarrollo del sistema. Por lo general, son producidos por especialistas en usabilidad o marketing , que a menudo trabajan en conjunto con usuarios finales y desarrolladores. Los escenarios están escritos en un lenguaje sencillo, con detalles técnicos mínimos, para que las partes interesadas (diseñadores, especialistas en usabilidad, programadores, ingenieros, gerentes, especialistas en marketing, etc.) puedan tener un terreno común en el que centrar sus discusiones.
Cada vez más, los escenarios se utilizan directamente para definir el comportamiento deseado del software: reemplazar o complementar los requisitos funcionales tradicionales . Los escenarios suelen definirse en casos de uso , que documentan formas alternativas y superpuestas de alcanzar un objetivo. [2]
Tipos de escenarios en el desarrollo de sistemas.
En el desarrollo de sistemas se utilizan muchos tipos de escenarios. Alexander y Maiden [3] enumeran los siguientes tipos:
- Historia : "una descripción narrada de una secuencia de eventos o de acciones tomadas causalmente conectadas". [3] : 8–10 Breves historias de usuarios escritas en el estilo ágil de desarrollo de software. [4]
- Situación, Mundo Alternativo : "una situación o instantánea futura proyectada". Este significado es común en planificación, pero menos habitual en desarrollo de software. [3] : 10
- Simulación : uso de modelos para explorar y animar 'Historias' o 'Situaciones', para "dar respuestas precisas sobre si tal escenario podría realizarse con algún diseño plausible" o "evaluar las implicaciones de mundos o situaciones alternativas posibles". [3] : 10–11
- Guión gráfico : un dibujo, o una secuencia de dibujos, que se utiliza para describir una interfaz de usuario o contar una historia. Este significado es común en la interacción persona-computadora para definir lo que verá un usuario en una pantalla. [3] : 12
- Secuencia : una lista de pasos interactivos realizados por agentes humanos o máquinas que desempeñan roles en el sistema. Las muchas formas de escenarios escritos como secuencias de pasos incluyen escenarios operativos, conceptos de operaciones y casos de prueba. [3] : 12-14
- Estructura : cualquier representación estructurada más elaboradamente de un escenario, incluidos diagramas de flujo , 'diagramas de secuencia' UML /ITU y, especialmente, en casos de uso de desarrollo de software . [3] : 14-17
Se pueden escribir escenarios negativos o casos de uso indebido para indicar amenazas probables que deben contrarrestarse para garantizar que los sistemas tengan suficiente seguridad y confiabilidad . Estos ayudan a descubrir requisitos no funcionales . [5]
Usos en el desarrollo de sistemas.
Los escenarios tienen numerosas aplicaciones posibles en el desarrollo de sistemas. Carroll (1995) enumera 10 "roles diferentes de los escenarios en el ciclo de vida del desarrollo del sistema": [6]
- Análisis de requisitos : los escenarios describen el "estado del arte" (a menudo llamado "tal cual"); Los escenarios representados ayudan a descubrir requisitos mientras los analistas "escenifican una situación de trabajo simulada".
- Comunicación usuario-diseñador : los usuarios aportan escenarios importantes para ellos, o situaciones que quieren experimentar o evitar. [6]
- Justificación del diseño : la justificación puede explicar el diseño "con respecto a escenarios particulares de interacción del usuario". [6]
- Visualización : los escenarios "pueden ser un medio para determinar cómo debería verse y funcionar un sistema que se está diseñando". En esta función, los escenarios pueden ser "maquetas gráficas como guiones gráficos o simulaciones basadas en vídeo" y pueden formar prototipos iniciales del sistema que se está diseñando. [6]
- Diseño de software : "se pueden analizar escenarios para identificar los objetos de dominio del problema central" necesarios; Se pueden desarrollar los mismos escenarios para describir el estado, el comportamiento y las interacciones de los objetos. [6]
- Implementación : el software se puede crear en un escenario a la vez, lo que ayuda a "mantener a los desarrolladores enfocados" y "producir código que sea más útil en general". [6]
- Documentación y formación : "escenarios de interacción que sean significativos para los usuarios" pueden cerrar la brecha entre el sistema tal como está construido "y las tareas que los usuarios quieren realizar usándolo". [6]
- Evaluación y pruebas : dado que "un sistema debe evaluarse en función de las tareas específicas del usuario que debe soportar", los escenarios son ideales para la evaluación. [6]
- Abstracción : las reglas generales que se aplican en diferentes tareas (o sistemas) se pueden identificar comparando escenarios. [6]
- Team building : "un conjunto de historias de referencia es un elemento de cohesión importante en cualquier sistema social". [6]
En diferentes estilos de desarrollo de sistemas.
La elección de la representación del escenario varía ampliamente según el estilo de desarrollo, que está relacionado con el contexto industrial.
Ver también
Referencias
- ^ etymonline.com
- ^ Alexander y Beus-Dukic, 2009. Página 120
- ^ abcdefg Alexander y Maiden, 2004. Capítulo 1.
- ^ ab Cohn, 2004.
- ^ Alexander y Maiden, 2004. Capítulo 7.
- ^ abcdefghij Carroll, 1995. Páginas 7-8
- ^ Cockburn, 2011.
Bibliografía
- Alexander, Ian y Beus-Dukic, Ljerka. Descubrimiento de requisitos: cómo especificar productos y servicios . Wiley, 2009.
- Alexander, Ian F. y Maiden, Neil. Escenarios, historias, casos de uso . Wiley, 2004.
- Carroll, John M. (ed) Haciendo uso: Diseño basado en escenarios de interacciones persona-computadora . Prensa del MIT, 2000.
- Carroll, John M. (ed) Diseño basado en escenarios: visión del trabajo y la tecnología en el desarrollo de sistemas . Wiley, 1995.
- Cockburn, Alistair. Redacción de casos de uso eficaces . Addison-Wesley, 2001.
- Cohn, Mike. Historias de usuarios aplicadas: para el desarrollo de software ágil . Addison-Wesley, 2004.
- Fowler, Martín. UML destilado . 3ra edición. Addison-Wesley, 2004.
enlaces externos
- Apuntes sobre la práctica del diseño: historias y prototipos como catalizadores de la comunicación. por Thomas Erickson, en Carroll, 1995.