Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Saberes previos
• Categoría de requisitos.
• Mapa conceptual lo de los requisitos
• Atributos de calidad.
• Especificación de los requisitos de atributos de
calidad.
• Atributo de calidad: Rendimiento.
• Atributo de calidad: Modificabilidad.
• Atributo de calidad: Interoperabilidad.
Categoría de requisitos
Requisitos funcionales
• Estos requisitos establecen qué debe hacer el sistema y cómo debe comportarse o
reaccionar ante los estímulos en tiempo de ejecución.
Restricciones
• Una restricción es una decisión de diseño con cero grados de libertad. Es decir, es
una decisión de diseño que ya se ha tomado. Por ejemplo, el requisito de utilizar
un determinado lenguaje de programación o de reutilizar un determinado módulo
existente, o una orden de la dirección para que el sistema esté orientado a servicio.
¿Cuál es la "respuesta" de la arquitectura a cada uno de estos
tipos de requisitos?
Requisitos funcionales
• Se satisfacen asignando una secuencia adecuada de responsabilidades a
lo largo del diseño.
Restricciones
• Se satisfacen aceptando la decisión de diseño y conciliándola con otras
decisiones de diseño afectadas.
Por Lain Cárdenas
Atributos de calidad
Disponibilidad
Caso: Guía Turística
Una empresa, que ofrece servicios de guía turística, está interesado en que se
desarrolle un software para dar soporte a sus actividades.
El software, entre las principales cosas que debe hacer son: reservar un vuelo,
comprar un billete de avión, buscar atracciones turísticas, reservar una habitación
de hotel y reservar un auto. Por otra parte, la opción de reservar un vuelo debe estar
accesible desde la página principal. Además, las respuestas a las consultas deben ser
muy rápidas. Por último, el equipo de desarrollo debe poder realizar un fácil
mantenimiento a funciones del sistema en el tiempo.
Caso: Guía Turística
En base a la descripción de caso de Guía Turística, se obtienen los siguientes requisitos según su
categoría.
Un requisito de atributo de calidad debe ser inequívoco y comprobable. Utilizamos una forma
común para especificar todos los requisitos de atributos de calidad: los escenarios de atributos de
calidad.
Origen del Este es alguna entidad (un ser humano, un sistema informático, o cualquier otro
estímulo actuador) que generó el estímulo.
Estímulo El estímulo es una condición o evento que requiere una respuesta cuando este llega a un
sistema. Es la acción que se quiere llevar a cabo.
Entorno El entorno de un requisito es el conjunto de circunstancias en las que tiene lugar el
escenario.
Artefacto El artefacto es la parte del sistema al que se aplica el requisito. Este puede ser una
colección de sistemas, todo el sistema, o alguna pieza o piezas de la misma.
Respuesta La respuesta es la actividad que brinda un resultado cuando llega un estímulo.
Medida de Cuando se produce la respuesta, debe ser medible de alguna manera para que el
respuesta requisito pueda ser probado.
Proyecto MarketSoft
Requisitos funcionales: Casos de Uso
ID CASOS DE USO
CU1 Procesar Venta
CU2 Generar reporte de ventas mensuales
CU3 Generar reporte de ventas diarias por comprobante
CU4 Generar reporte de ventas diarias por producto
CU5 Gestionar productos
CU6 Gestionar clientes
CU7 Iniciar sesión
Diagrama de Casos de Uso
Atributo de calidad: Rendimiento
Se trata del tiempo y de la capacidad del sistema de software para cumplir los requisitos de tiempo.
Caracterizar los eventos que pueden ocurrir (y cuándo pueden ocurrir) y la respuesta temporal del
sistema o elemento a esos eventos es la esencia de discutir el rendimiento.
Todos los sistemas tienen requisitos de rendimiento, incluso si no están expresados. Por ejemplo, es
posible que una herramienta de procesamiento de texto no tenga ningún requisito de rendimiento
explícito, pero sin duda todos estarían de acuerdo en que esperar una hora (o un minuto o un
segundo) antes de ver aparecer un carácter escrito en la pantalla es inaceptable. El rendimiento
sigue siendo un atributo de calidad fundamentalmente importante para todo el software.
El rendimiento suele estar relacionado con la escalabilidad, es decir, con el aumento de la capacidad
de trabajo de tu sistema, sin dejar de tener un buen rendimiento.
Escenario de rendimiento
“Un usuario realiza una consulta al catalogo de productos en un momento normal de operación del
sistema. El sistema muestra el resultado de la consulta en un tiempo no mayor a tres segundos”.
“El desarrollador desea cambiar la interfaz de usuario modificando el código en tiempo de diseño.
Las modificaciones se realizan sin efectos secundarios en tres horas”.
Estas son algunas de las razones por las que puede querer que los sistemas interoperen:
• Tu sistema proporciona un servicio que va a ser utilizado por un conjunto de sistemas
desconocidos.
• Usted está construyendo capacidades a partir de sistemas existentes.
“Nuestro sistema de venta móvil envía una solicitud de pedido al sistema centralizado de control de
ventas, estos sistemas se conocen antes de la ejecución. El sistema centralizado de control de
ventas valida y registra el pedido para su posterior despacho. La solicitud de pedido es procesado
correctamente en un 100%.
1. ¿Qué aprendí?
2. ¿Cómo lo aprendí?
3. ¿Para qué me sirve lo que aprendí?
4. ¿Cómo hemos distribuido las tareas?
5. ¿Qué dificultades tuve al realizar las tareas?
6. ¿Cómo me sentí en el proceso?
Bibliografía
❖ Len Bass, Paul Clements, Rick Kazman. (2013). Software Architecture in
Practice. Tercera Ed. Addison Wesley.
✓ Capitulo 4 - Comprender los atributos de calidad.
✓ Capitulo 6 - Interoperabilidad.
✓ Capitulo 7 - Modificabilidad.
✓ Capitulo 8 - Rendimiento.