• No se han encontrado resultados

Ingeniería de requisitos

N/A
N/A
Protected

Academic year: 2024

Share "Ingeniería de requisitos"

Copied!
190
0
0

Texto completo

Por lo tanto, conseguir los requisitos correctos es uno de los aspectos más críticos de un proyecto de software, independientemente del tipo de proyecto en cuestión, ya que capturarlos mal es la causa del problema. La ingeniería de requisitos es la parte de la ingeniería de software que se ocupa del problema de definir requisitos. Los casos de uso se han convertido en una de las técnicas de modelado más utilizadas para definir y documentar los requisitos funcionales de un sistema de software.

Se dará así una visión global de los diferentes tipos de requisitos, para posteriormente presentar en detalle la notación que propone UML para la técnica de casos de uso. Descriptores Ingeniería de requisitos; requisitos; restricción; obtener (provocar) reclamaciones; análisis de requisitos; especificación de requisitos de software (ERS); modelo de caso de uso; casos de uso;. Acertar con los requisitos es uno de los aspectos más críticos de un proyecto de software, independientemente del tipo de proyecto, como lo es una mala captura de los mismos.

El coste de un cambio de requisitos, una vez entregado el producto, es entre 60 y 100 veces superior a los costes en los que habría incurrido. Tenga en cuenta que todas las disciplinas de ingeniería son similares; El desarrollo de requisitos no está guiado por comportamientos esporádicos, aleatorios o por modas pasajeras, sino que debe basarse en el uso sistemático de enfoques probados [Reifer, 1994].

Proceso de Ingeniería de Requisitos (solo se muestran algunos productos)

Requisitos

Una representación en forma de documento de una condición o capacidad como la expresada en (a) o (b) [IEEE, 1999a].

El software debe proporcionar un medio para la representación y acceso a ficheros externos creados por otras herramientas

  • Hay que proporcionar al usuario utilidades para definir el tipo de los ficheros externos 1.2 Cada tipo de fichero externo tendrá asociado una herramienta que podrá ser aplicada
  • Cada tipo de fichero externo podrá estar representado mediante un icono específico en la interfaz del usuario
  • Se proporcionarán utilidades para que el usuario pueda definirse el tipo de icono que asociará a cada tipo de fichero
  • Cuando un usuario seleccione un icono que representa un tipo de fichero externo, el efecto de la selección será la aplicación de la herramienta asociada con el tipo de fichero

Requisitos no funcionales

Requisitos

Requisitos de usabilidad

Requisitos de fiabilidad

Requisitos de portabilidad

Requisitos de eficiencia

Requisitos de rendimiento

Requisitos de entrega

Requisitos de implementación

Requisitos de estándares

Requisitos de

Requisitos legislativos

Sommerville, 2002]

Especificación de requisitos del software

Una especificación es un documento que define, de manera completa, precisa y verificable, los requisitos, el diseño. ERS es la documentación de los requisitos esenciales (funciones, rendimiento, diseño, limitaciones y atributos) del software y. Dos o más requisitos definen diferente comportamiento del sistema ante las mismas condiciones y el mismo estímulo externo.

Clientes

Gestores

Desarrolladores

Encargados de pruebas

Encargados de mantenimiento

Kotonya y Sommerville, 1998]

Introducción

  • Objetivo 1.2. Ámbito
  • Descripción del resto del documento

Descripción general

  • Perspectiva del producto 2.2. Funciones del producto

Requisitos específicos

  • Requisitos funcionales
  • Requisitos de interfaz externa 3.3. Requisitos de ejecución
  • Restricciones de diseño 3.5. Atributos de calidad

Apéndices

Requisitos funcionales 1. Requisito funcional 1

  • Requisito funcional 2

Requisitos de interfaz externa 1. Interfaces de usuario

  • Interfaces de comunicaciones

Requisitos de ejecución 3.4. Restricciones de diseño

Requisitos no funcionales (atributos de calidad)

  • Mantenimiento

Otros requisitos 1. Base de datos

Portada

Lista de cambios Índice

Participantes en el proyecto 3. Descripción del sistema actual

Catálogo de requisitos del sistema 1 Requisitos de información

  • Requisitos funcionales
  • Requisitos no funcionales

Matriz de rastreabilidad objetivos/requisitos 7. Glosario de términos

Conflictos pendientes de resolución [opcional, pueden ir en un documento aparte]

Apéndices [opcionales]

Durán y Bernárdez, 2002]

MDB: Una metodología de

Vista de casos de uso

Un diagrama de casos de uso es un gráfico de actores, un conjunto de casos de uso rodeados por los límites de un sistema. un rectángulo), asociaciones entre actores y casos de uso y relaciones de generalización entre actores. Un actor también puede representarse mediante un símbolo de clase con el estereotipo "actor".

Cliente

Estereotipo de actor

Símbolo de clase con estereotipo

Generalización de actores

El actor 3 o el actor 4 se pueden comunicar con el caso de uso cu3

Un caso de uso es una forma, patrón o ejemplo de uso específico, un escenario que comienza cuando algún usuario del sistema lo inicia. Un caso de uso es una unidad coherente de funcionalidad visible externamente proporcionada por un clasificador (llamado sistema) y expresada por secuencias de mensajes intercambiados por el sistema y uno o más.

Enfoque de los casos de uso en UML

Asociación La línea de comunicación entre un actor y el caso de uso en el que participa. Extensión Insertar comportamiento adicional en el caso de uso base que no conoce. Inclusión Insertar comportamiento adicional en el caso de uso base que describe explícitamente la inserción.

Tipos de relaciones en los diagramas de casos de uso

Comportamiento de caso de uso para padre, verificar identidad El padre es abstracto, no hay secuencia de comportamientos. Un descendiente específico debe proporcionar el comportamiento del caso de uso para el niño, Verificar contraseña: obtener la contraseña en la base de datos maestra. Comportamiento de casos de uso para niños Explore Retina: obtenga la firma de retina en la base de datos maestra.

Caso de uso base para la sesión CA mostrar el anuncio del día

Caso de uso incluido para Identificar cliente obtener nombre cliente

Caso de uso incluido para Validar cuenta establecer conexión con la BD de cuentas

La base debe formarse sin extensión, pero si la extensión está presente, una instancia de la base puede realizar la extensión. La base puede estar bien formada o no sin la inclusión, pero una instanciación de la base realiza la inclusión. El niño puede acceder al estado de la base y cambiarlo (mediante los mecanismos de herencia habituales).

La base ve la inclusión y puede depender de sus efectos, pero no puede acceder a sus propiedades.

Rumbaugh et al., 1999]

Catálogo Telefónico

Paquetes de casos de uso del sistema

Requisitos en el Proceso Unificado

Inicio Elaboración Construcción Transición

Disciplinas

Requisitos Análisis

Implementación Prueba

Fases

Objetos del dominio

Subsistemas

Objetos del dominio de

Código

Diseño del

Modelo de casos de uso

Análisis de requisitos

Bruegge y Dutoit, 2000]

Elicitación de Requisitos

Modelo análisis :Model

Especificación sistema

Model

Análisis

Jacobson et al., 1999]

Larman, 2002]

  • Caso de estudio
  • El cliente selecciona “Obtener Catálogo”
  • Se muestra la pantalla de “Obtener Catálogo”
  • El usuario introduce el nombre y su dirección postal
  • El usuario selecciona enviar
  • El sistema crea un pedido para un catálogo de productos con un coste de 0€
  • El sistema graba el pedido

El caso de uso subyacente (B) necesita el caso de uso base (obtiene la funcionalidad básica de A) y determina qué se ejecuta desde A y qué cambios.

Procesamiento de pedidos NW

  • El caso de uso se inicia cuando el cliente selecciona “Realizar Pedido”
  • El cliente introduce su nombre y dirección
  • Si el cliente introduce solamente su código postal, el sistema proporciona la ciudad y provincia
  • El cliente introduce los códigos de los productos que desea
  • El sistema proporciona la descripción y el precio para cada artículo
  • El sistema mantiene el control del total de artículos solicitados en el orden en el que se han introducido
  • El cliente introduce la información de la tarjeta de crédito para el pago
  • El cliente selecciona “Enviar”
  • El sistema verifica la información, guarda el pedido como pendiente, y remite la información de pago al sistema de contabilidad
  • Cuando el pago se ha confirmado, el pedido se marca como confirmado, se devuelve al cliente un identificador de pedido y el caso de uso finaliza
  • Si el cliente introduce solamente su código postal
  • El sistema proporciona la ciudad y provincia
  • El sistema mantiene el control del total de artículos solicitados en el orden en el que se han introducido
  • Cuando el pago se ha confirmado, el pedido se marca como confirmado, se devuelve al cliente un identificador de pedido y el caso de uso finaliza
  • Para cada código de producto introducido
  • El sistema proporciona la descripción y el precio para cada artículo
  • El sistema añade el precio del artículo al total fin para
  • El cliente introduce la información de la tarjeta de crédito para el pago
  • El cliente selecciona “Enviar”
  • El sistema verifica la información, guarda el pedido como pendiente, y remite la información de pago al sistema de contabilidad
  • Cuando el pago se ha confirmado, el pedido se marca como confirmado, se devuelve al cliente un identificador de pedido y el caso de uso finaliza
  • Mientras el cliente introduzca códigos de producto
  • El sistema añade el precio del artículo al total fin mientras
  • El sistema verifica la información, guarda el pedido como pendiente, y remite la información de pago al sistema de contabilidad
  • Cuando el pago se ha confirmado, el pedido se marca como confirmado, se devuelve al cliente un identificador de pedido y el caso de uso finaliza
  • Mientras el cliente introduzca códigos de producto
  • El cliente introduce la información de la tarjeta de crédito para el pago
  • El cliente selecciona “Enviar”
  • El sistema verifica la información, guarda el pedido como pendiente, y remite la información de pago al sistema de contabilidad
  • Cuando el pago se ha confirmado, el pedido se marca como confirmado, se devuelve al cliente un identificador de pedido y el caso de uso finaliza
  • El sistema añade el precio del artículo al total
  • El sistema verifica la información, guarda el pedido como pendiente, y remite la información de pago al sistema de contabilidad

A medida que solicita artículos, el sistema administra el número total de artículos solicitados en el orden en que fueron ingresados. Una vez confirmado el pago, el pedido se marca como confirmado y se devuelve un identificador de pedido al cliente. Si el cliente sólo introduce su código postal, el sistema proporciona la ciudad y provincia.

El sistema mantiene control sobre el total de artículos solicitados en el orden en que fueron ingresados. El sistema verifica la información, guarda el pedido como pendiente y envía la información de pago al sistema contable. Cuando se confirma el pago, el pedido se marca como confirmado, se devuelve un identificador de pedido al cliente y finaliza el caso de uso. Se devuelve un identificador de pedido al cliente y finaliza el caso de uso.

El sistema mantiene el control del número total de artículos solicitados en el orden en que fueron ingresados. Una vez confirmado el pago, el pedido se marca como confirmado, se devuelve un identificador de pedido al cliente y se cierra el caso de uso. Se devuelve un identificador de pedido al cliente y se finaliza el caso de uso. El sistema verifica la información, guarda el pedido como pendiente y envía la información de pago al sistema contable.

El sistema verifica los datos, guarda el pedido como pendiente y envía la información de pago al sistema de contabilidad. Información de pago al sistema de contabilidad. Una vez confirmado el pago, el pedido se marca como confirmado, el identificador del pedido se devuelve al cliente y se cierra el caso de uso.

Requisito no funcional

El sistema siempre debe responder a la entrada del usuario en un segundo.

Sistema de contabilidad

El sistema verifica la información, guarda el pedido como pendiente, y remite la

Una vez confirmado el pago, el pedido se marca como confirmado, el identificador del pedido se devuelve al cliente y se cierra el caso de uso. Si no se realiza el pago, el cliente recibe un identificador de pedido y el caso de uso finaliza. Si el cliente elige corregir la información, regrese al paso 5, si el cliente elige cancelar, el caso de uso finaliza.

El sistema verifica la información, guarda el pedido como pendiente y envía la información del pago al sistema contable.

El sistema verifica la información, guarda el pedido como pendiente, y remite la información de pago al sistema de contabilidad

Cuando el pago se ha confirmado, el pedido se marca como confirmado, se devuelve al cliente un identificador de pedido y el caso de uso finaliza

Caminos alternativos

El sistema verifica la información, guarda el pedido como pendiente, y remite la información de pago al sistema de contabilidad

Cuando el pago se ha confirmado, el pedido se marca como confirmado, se devuelve al cliente un identificador de pedido y el caso de uso finaliza

Caminos alternativos Alternativa 1: Cancelar

  • En cualquier punto del escenario base del caso de uso, el cliente puede seleccionar “Cancelar”
  • El sistema solicita al cliente que verifique la cancelación
  • El cliente selecciona “Ok” y el caso de uso finaliza
  • Datos incorrectos Alternativa 3: Pago no confirmado
    • Cuando el pago se ha confirmado, el pedido se marca como
    • El sistema verifica la información
    • Guarda el pedido como pendiente
    • Remite la información de pago al sistema de contabilidad
    • Se solicita una actualización de cuenta
    • Se envía la información de la tarjeta de crédito y la cantidad a cargar
    • El sistema de contabilidad envía el conforme
    • Cuando el pago se ha confirmado, el pedido se marca como confirmado, se devuelve al cliente un identificador de pedido y el caso de uso finaliza
    • El caso de uso se inicia cuando el comercial selecciona “Devolver producto”
    • El comercial busca el pedido
    • El sistema muestra el pedido seleccionado
    • El comercial selecciona el producto a devolver
    • El comercial selecciona “Devolver”
    • Se solicita una actualización de cuenta
    • Se envía la información de la tarjeta de crédito y la cantidad a abonar
    • El sistema de contabilidad envía el conforme
    • Se actualiza la cantidad de producto en el almacén
    • Se actualiza el pedido
    • El sistema muestra el conforme y el caso de uso finaliza
    • El caso de uso comienza cuando se recibe una petición de actualizar una cuenta
    • El sistema envía la información de la tarjeta de crédito y la cantidad de crédito o débito al sistema de contabilidad
    • El sistema de contabilidad envía el conforme
    • El caso de uso finaliza

Se pueden descubrir fácilmente varios pasos comunes con el caso de uso anterior. El sistema envía la información de la tarjeta de crédito y el monto del crédito o débito al sistema contable.débito al sistema contable.

Caso de uso: Devolver producto

El caso de uso se inicia cuando el comercial selecciona “ Devolver producto”

Incluir Actualizar Cuenta

Se actualiza la cantidad de producto en el almacén

Se actualiza el pedido

El sistema muestra el conforme y el caso de uso finaliza Caso de uso: Realizar pedido

Incluir Actualizar Cuenta

Cuando el pago se ha confirmado, el pedido se marca como confirmado, se devuelve al cliente un identificador de pedido y el caso de uso finaliza

Realizar pedido

Puntos de extensión

Producto en rebaja: antes del paso 5

Cliente especial: después de que se hayan capturado todos los productos

Caso de uso: Realizar pedido

Etiqueta de la extensión

Condiciones de guarda

  • El caso de uso comienza cuando el cliente llama al comercial de NW
  • El comercial obtiene un identificador de catálogo del cliente y lo introduce en el sistema
  • El sistema obtiene el nombre y dirección del cliente de la base de datos
  • El comercial verifica esta información con el cliente
  • El comercial le solicita los códigos de productos al cliente y los introduce en el sistema
  • Para cada código de producto introducido
  • El sistema proporciona una descripción de producto y su precio
  • El sistema añade el precio del producto al total
  • El comercial le solicita la información de pago al cliente y la introduce en el sistema
  • El comercial envía la información de pago al sistema
  • El sistema almacena el pedido como pendiente
  • Incluir Actualizar Cuenta
  • Cuando el pago está confirmado, el pedido se marca como confirmado, se envía un identificador de pedido al cliente, y el caso de uso finaliza
  • El caso de uso comienza cuando el cliente selecciona “Realizar pedido” en la página principal de NW
  • El sistema muestra la página principal del catálogo en línea
  • El cliente navega por el catálogo en línea y selecciona los productos a adquirir
  • Para cada producto seleccionado
  • El cliente selecciona añadir el producto a la carta de compras
  • El sistema añade el precio del producto al total de la carta de compras
  • El cliente selecciona “Compra”
  • El sistema solicita al cliente su nombre de usuario y su clave
  • El cliente introduce un nombre de usuario y una clave y selecciona “Enviar”
  • El sistema muestra la dirección de envío y método de pago para esta cuenta de cliente
  • El cliente selecciona “Ok”
  • El sistema almacena el pedido como pendiente
  • Incluir Actualizar Cuenta
  • Cuando el pago está confirmado, el pedido se marca como confirmado, se envía un identificador de pedido al cliente, y el caso de uso finaliza

Los datos necesarios para este caso de uso incluyen la dirección de facturación del cliente, la información de pago y la lista de productos seleccionados. El vendedor solicita los códigos de producto al cliente y los ingresa en el sistema. El vendedor solicita información de pago al cliente y la ingresa al sistema.

Cuando se confirma el pago, el pedido se marca como confirmado, se envía un ID de pedido al cliente y finaliza el caso de uso. El caso de uso comienza cuando el cliente selecciona "Realizar pedido" en la página de inicio de NW NW. El sistema muestra la dirección de envío y el método de pago de esta cuenta de cliente.

Realizar pedido, pero incorporando las variaciones en los casos de uso hijos

El cliente introduce los códigos de los productos que desea

Para cada código de producto introducido

Aportaciones principales del tema

Cuestiones y ejercicios

Tienda en línea

Lecturas complementarias

Campo, “Identification of non-functional requirements in textual specifications: a semi-supervised learning approach,” Information and Software Technology, vol. Davis, “The Role of Requirements Elicitation Techniques in Achieving Software Quality,” presented at the Eighth International Workshop on Requirements. Power, “Variety and Quality in Requirements Documentation,” presentado in Seventh International Workshop on Requirements Engineering: Foundation for Software Quality, REFSQ'2001 (June Interlaken, Switzerland, 2001.

Applying UML and Models: An Introduction to Object-Oriented Analysis and Design and Unified Process.

Ingeniería de Requisitos

Referencias

Documento similar

PORTADA FACULTAD DE INGENIERÍA DE SISTEMAS E INFORMÁTICA ESCUELA DE FORMACIÓN PROFESIONAL DE INGENIERÍA DE SISTEMAS E INFORMÁTICA TESIS SISTEMA DE INFORMACIÓN DE LA DIFUSIÓN DE

El Plan de Desarrollo Estratégico para el periodo 2013 - 2017 de la Carrera de Ingeniería Informática de la Facultad Nacional de Ingeniería, dependiente de la

Informe Ingeniería Civil Informática ICF UNAB INFORME DE AUTOEVALUACIÓN CARRERA DE INGENIERÍA CIVIL INFORMÁTICA UNIVERSIDAD ANDRES BELLO 2013 INFORME DE AUTOEVALUACION 2 INDICE

Proceso de la especificación de los requisitos Cliente Entorno Comunidad Técnica Captura de requisitos Presentar la especificación de requisitos Coleccion de requisitos

software debe tener en cuenta los requisitos funcionales pero, sobre todo, los requisitos no funcionales (atributos de calidad del software).. ƒ No hay una regla definitiva

La presente investigación tiene como finalidad evaluar la pertinencia de los programas de Ingeniería Mecánica e Ingeniería Informática de la Escuela de Aviación Militar de la

El presente trabajo de investigación estuvo orientado al desarrollo de un sistema de gestión basado en una ingeniería de requisitos para el control y manejo

Los elementos fundamentales que componen la mayoría de los cambios automáticos actuales son: un convertidor hidráulico de par que varía y ajusta de forma automática su par de salida,