ingeniería de requerimientos - wordpress.com...desarrollo del tema de clase 5. retroalimentaciÓn...
TRANSCRIPT
Ingeniería de Requerimientos
Herramientas y Técnicas de la Ingeniería de Requerimientos
Agenda
1. PRESENTACIÓN Y ACUERDOS
2. OBJETIVO DE LA CLASE
3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS
4. DESARROLLO DEL TEMA DE CLASE
5. RETROALIMENTACIÓN DE CONOCIMIENTOS
6. EVALUACIÓN DE CONOCIMIENTOS
7. CONCLUSIONES
3
Agenda
1. PRESENTACIÓN Y ACUERDOS
2. OBJETIVO DE LA CLASE
3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS
4. DESARROLLO DEL TEMA DE CLASE
5. RETROALIMENTACIÓN DE CONOCIMIENTOS
6. EVALUACIÓN DE CONOCIMIENTOS
7. CONCLUSIONES
4
5
Objetivo de la Clase
• Conocer las diferentes Herramientas y Técnicas de la Ingeniería
de Requerimientos.
• Conceptos y fundamentos para su aplicabilidad en desarrollo de
software,
• Mediante la comprensión de textos y manejo de recursos
digitales, para que el alumno sea capaz de aplicar
adecuadamente el proceso de recolección, análisis, verificación y
validación adecuada de las necesidades del cliente.
Agenda
1. PRESENTACIÓN Y ACUERDOS
2. OBJETIVO DE LA CLASE
3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS
4. DESARROLLO DEL TEMA DE CLASE
5. RETROALIMENTACIÓN DE CONOCIMIENTOS
6. EVALUACIÓN DE CONOCIMIENTOS
7. CONCLUSIONES
6
Agenda
1. PRESENTACIÓN Y ACUERDOS
2. OBJETIVO DE LA CLASE
3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS
4. DESARROLLO DEL TEMA DE CLASE
5. RETROALIMENTACIÓN DE CONOCIMIENTOS
6. EVALUACIÓN DE CONOCIMIENTOS
7. CONCLUSIONES
7
8
Introducción
• El desafío está en encontrar los defectos que tendrían mayor
impacto negativo para el negocio del cliente antes de que el
producto se haya entregado.
• Para lograr este objetivo, existen herramientas y técnicas para
minimizar los errores generados en el proceso de abstracciónde los requerimientos.
Procesos + Herramientas + Técnicas +
Estándares
9
Calidad en Software
La calidad del software
es el grado con el que un sistema,
componente o proceso
cumple los requerimientos especificados y
las necesidades o expectativas
del cliente o usuario.
Definición del Instituto de Ingenieros Eléctricos y Electrónicos
(IEEE, Std. 610-1990)
10
Herramientas para la Gestión de Requerimientos
• Tiene la finalidad de mejorar la productividad y calidaden el desarrollo de los proyectos de software.
• Necesidades a cubrir por estas herramientas está la
disponibilidad de la información de los distintos tipos de
requisitos en un repositorio al cual se pueda acceder por los
distintos usuarios con el fin de ser reutilizados.
• Anteriormente las herramientas para la gestión de requisitos
de software se limitaban a editores de texto
11
Tipos de Herramientas
• Herramientas comerciales
• Rational Requisite Pro: Es una herramienta centrada en documentos.
• CaliberRM: Es para sistemas grandes y complejos y proporciona una
base de datos de requisitos con trazabilidad.
• IRqA (Integral Requisite Analizer): Es una de las herramientas de
Gestión de Requisitos más completas del mercado.
• Gather Space: Es una herramienta de administración de
requerimientos en línea, que permite realizar la gestión sin preocuparse
por las actualizaciones y el mantenimiento, además promueve la
colaboración entre el equipo del proyecto para manejar los
requerimientos durante el ciclo de vida del proyecto.
12
Herramienta Cloud Gather Space
13
Tipos de Herramientas
• Herramientas libres• REM (Requisite Management): Aunque es una herramienta de uso
libre puede ser utilizada únicamente sobre Windows, ha sido utilizada con frecuencia para fines educacionales.
• DRES: Está basado en PHP y la administración de los proyectos se lleva a cabo en un navegador web. Puede ser de gran utilidad para grupos de trabajo distribuidos, ya que se puede acceder al trabajo realizado en incluso hacer modificaciones vía Internet.
• OSRMT (Open Source Requeriments Management Tool): es una herramienta diseñada para dar cobertura a todo el ciclo de vida de desarrollo del software. Dispone de control de versiones, permite definir requerimientos derivados entre otras funcionalidades.
14
Herramienta OSRMT
15
Importancia de la Gestión de IR
La Ingeniería de requisitos no es la
solución definitiva a los
inconvenientes y/o problemas
presentados en la crisis del
software, pero ayuda en gran
medida al descubrimiento y
solución de falencias en etapas
tempranas del desarrollo de
proyectos software, reduciendo
costos y tiempo en el ciclo de vida.
16
Técnicas de Revisión de la IR
• ¿Quién hace las revisiones de la IR?
• Los ingenieros de software / requisitos
• ¿Por qué son importantes?
• Evitar que los errores no se transformen en defectos
• Reduce costos y tiempos de entrega al cliente
17
Técnicas para la abstracción de requerimientos
TÉCNICAS EN LA INGENIERÍA DE REQUERIMIENTOS
ENTREVISTAS Y ENCUESTAS
Del Usuario
Del Proceo
Del Producto
PROTOTIPOS
Prototipo Rápido
Prototipo Evolutivo
CASOS DE USOSISTEMAS
EXISTENTESLLUVIA DE IDEAS
Las técnicas de la ingeniería de requerimientos
permiten facilitar el proceso de abstracción de la necesidades del cliente y transformarlas en requisitos para ser implementados en el sistema
18
Casos de Uso
19
Características de un buen requerimiento
• Correcto: No se debe especificar requisitos erróneos.
• No Ambiguo: No se debe especificar requisitos que se presten a varias interpretaciones.
• Completo: Cada requisito debe ser citado de forma completa, esto implica que todos los requisitos deben ser significativos a los usuarios del proyecto.
• Consistente: Cada requisito no debe contradecirse con los definidos anteriormente o posteriormente.
• Verificable: Debe poder corroborarse cada requisito con algún representante de la organización.
• Rastreable: Debe poder identificar el estado del requisito y saber si cumplió con el objetivo de cada uno.
20
Elicitación de Requerimientos
• Una definición más detallada
de elicitación se definiría
como la especificación de
todos los requisitos de un
sistema, restricciones y
condiciones definidas por los
usuarios para el correcto,
eficiente y eficaz
funcionamiento del sistema a
construir.
21
Requisitos de Información y Funcionales
• Recopilan todos los datos con
los que trabaja la organización y
que soportan información.
• Hay que distinguir muy
claramente lo que es
documento (es soporte de
información) de lo que es dato
(es la información).
• Describen la funcionalidad del
sistema
• Dependen del tipo de software,
del sistema a desarrollar y de los
usuarios del mismo
• Los del usuario pueden ser
sentencias muy generales sobre
lo que el sistema debería hacer.
• Los del sistema deben describir
los servicios que hay que
proporcionar con todo detalle.
Requisitos de Información Requisitos Funcionales
22
Requisitos No Funcionales
• Conforman restricciones
de los servicios o
funciones ofrecidos por
el sistema, incluye
restricciones de tiempo,
sobre el proceso de
desarrollo, así como el
cumplimiento de
estándares.
Agenda
1. PRESENTACIÓN Y ACUERDOS
2. OBJETIVO DE LA CLASE
3. DIAGNÓSTICO DE CONOCIMIENTOS PREVIOS
4. DESARROLLO DEL TEMA DE CLASE
5. RETROALIMENTACIÓN DE CONOCIMIENTOS
6. EVALUACIÓN DE CONOCIMIENTOS
7. CONCLUSIONES
23
24
Propósito
• El propósito de la
Ingeniería de
Requerimientos es
entender las
expectativas del
cliente en términos
de calidad, y poner
en práctica un plan
proactivo para
satisfacer esas
expectativas.
25
Recursos Digitales
alexanderguevara.wordpress.com