mv unidad 2 t1

20
INGENIERÍA DEL SOFTWARE Unidad 2: Especificación de Requerimientos. Trimestre I Ing. Noretsys Rodríguez

Upload: norerod

Post on 24-Jun-2015

2.924 views

Category:

Documents


4 download

DESCRIPTION

Especificación de requisitos

TRANSCRIPT

Page 1: Mv unidad 2 t1

INGENIERÍA DEL

SOFTWAREUnidad 2: Especificación de Requerimientos.

Trimestre I

Ing. Noretsys Rodríguez

Page 2: Mv unidad 2 t1

ESPECIFICACIÓN DE REQUISITOS Los requisitos del software son susceptibles de

cambios, no sólo después de la entrega del producto sino que también durante el proceso de desarrollo iterativo.

La gestión de requisitos es el proceso que administra los cambios en los requisitosdel software.

La gestión de requisitos puede ser un proceso muy costoso, con lo cual, debe planificarse el nivel de detalle que se desea, dependiendo del proyecto.

Es primordial que la recolección de información de trazabilidad y su uso sea acorde con las necesidades específicas del proyecto para así conseguir un resultado positivo respecto del costo-beneficio de esta tarea.

Page 3: Mv unidad 2 t1

TEXTUAL

Tradicionalmente la especificación de requisitos se ha realizado usando sobre todo especificaciones textuales en lenguaje natural.

Las herramientas de apoyo a la gestión de requisitos se han enfocado a la manipulación de trozos de texto.

Estos requisitos expresados textualmente se enlazan formando un grafo de trazabilidad el cual se usa para gestionar los requisitos y su trazabilidad.

En este enfoque, las especificaciones generadas en las otras actividades del desarrollo de software pueden también ser añadidas al grafo de trazabilidad representándolas como texto.

Page 4: Mv unidad 2 t1

DOCUMENTO DE REQUISITOS

El documento de requisitos es un escrito oficial de los requisitos del sistema para los clientes, usuarios finales y desarrolladores de software. Nombres:

Especificación funcional, Definición de requisitos, Especificación de los requisitos de software

Page 5: Mv unidad 2 t1

DOCUMENTO DE REQUISITOS

El documento describe: Los servicios y funciones que el sistema

debería proveer. Las restricciones bajo las cuales el sistema

debe operar Las propiedades generales del sistema, es

decir, restricciones sobre las propiedades emergentes del sistema

Definiciones de otros sistemas con los cuales el sistema se debe integrar.

Información acerca del dominio de aplicación del sistema, por ej. cómo llevar a cabo tipos particulares de cálculos.

Restricciones sobre el proceso usado para desarrollar el sistema

glosario

Page 6: Mv unidad 2 t1

USUARIOS DEL DOCUMENTO DE REQUISITOS

Clientes del sistemaEspecifican los requisitos y los leen para chequear que atienden sus necesidades. Especifican cambios en los requisitos.

Gerentes Usan los documentos de requisitos para planificar una propuesta (oferta) para el sistema

y planificar el proceso de desarrollo.

Ingenieros de sistemas Usan los requisitos para entender qué sistema tiene que ser desarrollado.

Ingenieros de prueba de sistemas

Usan los requisitos para desarrollar pruebas de validación para el sistema.

Ing. de mantenimiento de sistemas

Usan los requisitos para ayudar a entender los sistemas y las relaciones entre sus partes.

Page 7: Mv unidad 2 t1

MODELO IEEE/ANSI 830-1998 Introducción

• 1.1.Propósito del documento de requisitos• 1.2.Alcance del proyecto• 1.3.Definiciones, acrónimos y abreviaturas• 1.4.Resumen del resto del documento

Descripción General• 2.1.Perspectiva del producto• 2.2.Funciones del producto• 2.3.Características de los usuarios• 2.4.Limitaciones generales• 2.5.Suposiciones y dependencias

Requisitos Específicos• 3.1.Requisitos funcionales, no funcionales

Apéndices Índice

Page 8: Mv unidad 2 t1

NOTACIÓN GRÁFICA

Incluye todas las notaciones que pueden demostrar el flujo de información entre requisitos apoyándose en diversas imágenes.

Estas notaciones permiten al usuario del sistema tener mayor comprensión del software lo que hace y como lo hace.

La más utilizada actualmente es el Lenguaje Unificado de modelado (UML).

Otra notación que se puede usar es la notación de requerimientos de usuario (URN),

Page 9: Mv unidad 2 t1

UML

Es un lenguaje para la especificación, visualización, construcción y documentación de los artefactos de un proceso de sistema intensivo.

UML, emergió en los '90 luego de la búsqueda de un lenguaje de modelamiento que unificara a la industria.

A pesar de que UML evolucionó de varios métodos orientados al objeto de segunda generación (en nivel de notación), su alcance extiende su uso más allá de sus predecesores.

Page 10: Mv unidad 2 t1

UML ES Como un lenguaje, es usado para la comunicación.

Es decir, un medio para capturar el conocimiento (semánticas) respecto a un tema y expresar el conocimiento (sintaxis) resguardando el tema propósito de la comunicación.

Como un lenguaje para modelamiento, se enfoca en la comprensión de un tema a través de la formulación de un modelo del tema (y su contexto respectivo).

Cuidando la unificación, integra las mejores prácticas de la ingeniería de la industria tecnológica y sistemas de información pasando por todos Los tipos de sistemas (software y no - software), dominios (negocios versus software) y los procesos de ciclo de vida.

Page 11: Mv unidad 2 t1

UML ES

En cuanto a cómo se aplica para especificar sistemas, puede ser usado para comunicar "qué" se requiere de un sistema y "cómo" un sistema puede ser realizado.

En cuanto a cómo se aplica para visualizar sistemas, puede ser usado para describir visualmente un sistema antes de ser realizado.

En cuanto a cómo se aplica para construir sistemas, puede ser usado para guiar la realización de un sistema similar a los "planos".

En cuanto a cómo se aplica para documentar sistemas, puede ser usado para capturar conocimiento respecto a un sistema a lo largo de todo el proceso de su ciclo de vida.

Page 12: Mv unidad 2 t1

UML NO ES

Un lenguaje de programación visual, sino un lenguaje de modelamiento visual

Una herramienta o deposito de especificación, sino un lenguaje para modelamiento de especificación.

Un proceso, sino que habilita procesos.

Page 13: Mv unidad 2 t1

TIPOS DE REQUERIMIENTOS

El proceso de requerimientos maneja diferentes tipos de requerimientos, estos se pueden clasificar en:

Requerimientos de hardware. Requerimientos de rendimiento. Requerimientos de interfaz. Requerimientos especiales de la ingeniería. Requerimientos de ambiente. Requerimientos de software:

Requerimientos funcionales. Requerimientos no funcionales. Requerimientos del Dominio. Requerimientos de atributos de calidad.

Page 14: Mv unidad 2 t1

FUNCIONALES

Son los requerimientos del usuario se ocupan para asignar los requerimientos de más alto nivel.

Los requerimientos del sistema se usan para designar la descripción detallada.

Los requerimientos del usuario son declaraciones en lenguaje natural y en diagramas de los servicios que se espera que el sistema provea y de las restricciones que este debe tener.

Los requerimientos del sistema establecen detalladamente los servicios y restricciones del sistema.

Page 15: Mv unidad 2 t1

FUNCIONALES

El documento con estos requerimientos se llama Especificación Funcional, el que debe ser preciso. Es lo más parecido al contrato entre cliente y desarrollador.

Corresponde a una descripción abstracta del diseño de software. Es la base para un diseño e implementación detallado.

Agrega el detalle a la especificación de requerimientos.

Page 16: Mv unidad 2 t1

NO FUNCIONALES

Son prescindibles, condicionan lo que se tiene que hacer pero no son indispensables, indican mediante restricciones globales, de dominio y tecnología como debe construirse o funcionar.

Su fuente principal es tanto el usuario como el cliente. También se especifican en las SRS.

Definido como característica requerida del sistema, del proceso de desarrollo, del servicio prestado o de cualquier otro aspecto del desarrollo, que señala una restricción del mismo.

Page 17: Mv unidad 2 t1

TIPOS DE REQUERIMIENTOS NO FUNCIONALES

Requerimientos del producto

Requerimientos no funcionales

Requerimientos organizacionales

Requerimientos externos

Requerimientos éticos

Requerimientos de interoperabilidad

Requerimientos legislativos

Requerimientos de seguridad

Requerimientos de privacidad

Requerimientos de espacio

Requerimientos de desempeño

Requerimientos de usabilidad

Requerimientos de eficiencia

Requerimientos de fiabilidad

Requerimientos de portabilidad

Requerimientos de entrega

Requerimientos de implementación

Requerimientos de estándares

Page 18: Mv unidad 2 t1

REQUISITOS FUNCIONALES VS. REQUISITOS NO FUNCIONALES

Funcionales: Me identifica, que eventos reconocer, que datos mantener y que transformaciones hacer.

No funcionales: Me identifica las restricciones del productos, De la organización y externos.

Page 19: Mv unidad 2 t1

DEL DOMINIO

Son requerimientos que provienen del dominio de aplicación del sistema y que reflejan las características de ese dominio. Éstos pueden ser funcionales o no funcionales.

Se derivan del dominio del sistema más que de las necesidades especificas de los usuarios. Pueden ser requerimientos funcionales nuevos, restringir los existentes o establecer cómo se deben ejecutar cálculos particulares. Los requerimientos del dominio son importantes debido a que a menudo reflejan los fundamentos del dominio de aplicación. Si estos requerimientos no se satisfacen, es imposible hacer que el sistema trabaje de forma satisfactoria.

Page 20: Mv unidad 2 t1

RESUMEN DE CONTENIDO

Textual, notación gráfica y lenguajes de representación (Lenguaje Unificado de Modelado UML).

Técnicas para escribir requerimientos de alta calidad. Estándares de Documentación.

Tipos de requerimientos: funcionales, no-funcionales, del dominio.