SlideShare ist ein Scribd-Unternehmen logo
1 von 73
Desarrollo de software
orientado a objetos
Unidad 3: Modelo de
Requerimientos
Agenda
 Introducción al modelo de
requerimientos
 Identificación y clasificación
 Métodos de obtención de
requerimientos
 Documentación
 Administración
Introducción al modelo de
requerimientos
Modelo de requerimientos
EMPRESA
¿Cuáles son los
procesos de
negocios?

SISTEMA

ARTEFACTOS
Casos de Uso
del Negocio

Análisis de
requerimientos

Casos de Uso
Introducción
Introducción
 Objetivos:
 Establecer y mantener la conformidad de las
necesidades de los clientes y usuarios acerca
de lo que el sistema debe hacer.
 Proporcionar a los desarrolladores una mejor
comprensión de los requerimientos del
sistema.
 Definir las fronteras del sistema.

............
Introducción
 ..........Objetivos:
 Proporcionar la base del planeamiento
de los contenidos técnicos de las
iteraciones.
 Proporcionar la base de la estimación de
costos y tiempo de desarrollo del sistema.
 Definir una interfaz de usuario para el
sistema centrada en las necesidades y
metas de los usuarios.
Workflow de requerimientos
[Viejo sistema]

[Nuevo sistema]

Analizar el
problema
[Problema
incorrecto]

Comprender las
necesidades del
usuario

[Problema
encausado]

[Mas
iteraciones]

Definir el
sistema

Manejar el
alcance

[Definición completa
de requerimientos]

[Nuevo input]

[No se puede
manejar alcance]
Manejar cambios
en requerimientos

[Trabajo dentro
de alcances]

Refinar la definición
del sistema
Los roles y sus actividades
Los roles y los artefactos
Identificación y clasificación
de los Requerimientos
Requerimientos
Un requerimiento se define como
“una condición o capacidad con
la cual un sistema debe estar en
conformidad”
¿De dónde provienen los
requerimientos?
Especificaciones Reqs.
Planes de Negocio
Metas de Personal

Socios

Clientes

Analistas
Dominio del Problema
Usuarios

Reporte de Problemas
Req. De Cambio

Expertos Dominio
Analistas Industria
Visitas al WEB
Modelo de Negocios
Clases de requerimientos
Una manera de categorizar los
requerimientos está descrito en el
modelo FURPS+:






Functionality (Funcionalidad)
Usability (Capacidad de Uso)
Reliability (Fiabilidad)
Performance (Desempeño)
Supportability (Capacidad de Soporte)
Clases de Requerimientos
Clases de Requerimientos
 El signo “+” incluye consideraciones
de restricciones como:





Restricciones de diseño.
Restricciones de implementación.
Restricciones de interfaz.
Restricciones físicos.
Clases de Requerimientos
Requerimientos Funcionales.
 Especifican acciones que el sistema
debe ser capaz de desarrollar sin tener
en cuenta restricciones físicas. Estos se
describen en un modelo de casos de uso.
 Estos requerimientos especifican los
comportamientos de entradas y salidas
del sistema.
Clases de Requerimientos
Requerimientos Funcionales.
 Están dentro de esta categoría:
 Los conjuntos de características.
 Las capacidades.
 La seguridad.
Clases de Requerimientos
Requerimientos NO Funcionales.
 Describen atributos del sistema o del
ambiente en donde éste se
desarrolla.
 Se pueden capturar en los casos de
uso pero no se necesitan
especificar de manera detallada.
Clases de Requerimientos
Requerimientos NO Funcionales.
 De capacidad de uso (Usability)
Estan incluidos en las siguientes sub-categorías:
 factores humanos
 estética
 consistencia de la interfaz de usuario
 ayudas en línea
 agentes y wizards
 documentación de usuario y material de
entrenamiento
Clases de Requerimientos
Requerimientos NO Funcionales.
 De fiabilidad (Reliability)
Están incluidos en las siguientes sub-categorías:
 frecuencia / severidad de los errores
 capacidad de recuperación
 capacidad predictiva
 exactitud
 tiempo promedio entre fallas (MTBF)
Clases de Requerimientos
Requerimientos NO Funcionales.
 De rendimiento (Performance)
Estos requerimientos afectan a los funcionales en
la medida de parámetros como:
 velocidad
 eficiencia
 disponibilidad
 exactitud
 tiempo de respuesta
 tiempo de uso de recursos
Clases de Requerimientos
Requerimientos NO Funcionales.
 De soporte (Supportability)
Incluyen la capacidad de:
 prueba
 extensión
 adaptación
 mantenimiento
 compatibilidad
 configuración
 instalación y localización
Métodos para obtener los
requerimientos
Métodos para capturar
requerimientos
 La información en una organización no
siempre es fácil de obtener, más bien es un
proceso lento y costoso, que exige tiempo y
dedicación por parte del analista de
sistemas y los usuarios.
 Las fases de búsqueda de información en
cualquier proyecto, suelen ser grandes
consumidoras de tiempo, y el éxito de los
resultados depende en gran medida de la
calidad de la información.
Métodos para capturar
requerimientos
 Es muy común que la información requerida
no se encuentre escrita, o inclusive que ésta
no se conozca. Esto hace necesaria la
interacción del analista con las personas
del negocio para identificar y/o generar la
información faltante.
Métodos para capturar
requerimientos
 Aprenderemos a capturar requerimientos
a partir de:
 El modelo de negocio
 Procesos, actores, trabajadores y workflows del
negocio.

 Técnicas de recopilación de información
 Entrevistas
 Trabajo grupal

 Análisis de la documentación obtenida
 Formularios
 Reportes

 Benchmarking
Análisis del modelo de negocio
 La principal fuente de captación de los
requerimientos funcionales son los procesos
del negocio.
 En el encontraremos elementos de
información importantes:

 Las funciones derivadas de las actividades a
automatizar.
 Los roles que van a interactuar con el sistema.
 Los recursos que se usan en el negocio y de
cuyo estudio podremos más adelante identificar
las clases del sistema.
Análisis del modelo de casos de
uso del negocio
 Exploración de los diagramas
Análisis del modelo de casos de
uso del negocio
 Transición natural (AS IS)
Análisis del modelo de negocio
 Análisis del diagrama de actividades
GV : BA-Gerente Ventas

AV : BW -Asistente Ventas

Sol ici ta revi si ón de
lista de preci os

Consulta información
del mercado
Si
Define productos
para l a venta

Hay nuevos
productos?
No

No

Es campaña
SI

Aprueba?

No

Busca productos a
ofertar

P1 : BE-Producto

Si

Remite Nueva
Lista a T iendas

Realiza ajuste de preci os de
productos y ofertas

Envia l ista a
Gerente de Ventas

PO : BE-Precio
Análisis del modelo de negocio
 Análisis del diagrama de actividades
GV : BA-Gerente Ventas

AV : BW -Asistente Ventas

Sol icita revi sión de
l ista de precios

Consul ta i nformaci ón
del mercado
Si
Define productos
para la venta

Hay nuevos
productos?
No

No

Es campaña
SI

Aprueba?

No

Busca productos a
ofertar

P1 : BE-Producto

Si

Remi te Nueva
Lista a T iendas

Real iza ajuste de precios de
productos y ofertas

Envia li sta a
Gerente de Ventas

PO : BE-Precio
Matriz de actividades y
requerimientos
 Luego de identificar las actividades a
automatizar es conveniente efectuar
la matriz de actividades y
requerimientos (fase 1).
Caso de
uso de
negocio

Actividades

Responsable

Requerimientos

Caso de
uso

Actor
Técnicas y fuentes de
recopilación de datos
 Existen diferentes técnicas y fuentes para recopilar
datos. Estos incluyen:
 Técnicas







Cuestionarios
Entrevistas
Sondeos
Encuestas
Collage
Dibujos y diagramas

 Fuentes secundarias





Tablas de Organización
Descripción de puestos
Manuales Operativos.
Representación física de las Organizaciones.
La entrevista
 En la entrevista el analista de Sistemas
interroga, de manera verbal al
Cliente/Usuario acerca de lo que el se
plantea como problema y de los
requisitos que se consideran
indispensables.
 Cabe aclarar que aunque aquí las
respuestas pueden no ser escritas, al final
deberá hacerse un reporte de la
información recabada.
La entrevista
Recomendaciones….
 Cuando realice la entrevista elija un lugar
libre de distracciones, agradable, fresco,
cómodo y privado para generar un
ambiente adecuado para el desarrollo
de la misma.
 Al llegar al lugar donde se va a llevar a
cabo la entrevista trate de relacionarse
con el entrevistado para que el se sienta
en confianza.
Fases para realizar entrevistas
1. Leer el material de fondo: Lea y comprenda tanta
información de fondo acerca del entrevistado y su
organización como le sea posible.
2. Establecer los objetivos de la entrevista: Use la
información de fondo que recopiló, así como su
propia experiencia y necesidades, para
establecer los objetivos de la entrevista.
3. Decidir a quién entrevistar: Incluya a gente clave
de todos los niveles que serán afectados por el
sistema en alguna forma.
Fases para realizar entrevistas
4.

5.

Decidir sobre tipos de preguntas y estructura:
Escriba preguntas para tratar aspectos relevantes
y aclarar las dudas. Use técnicas adecuadas
para formular sus preguntas.
Preparar al Entrevistado: Prepare a la persona a
ser entrevistada, llamándole con anticipación y
permitiendo que el entrevistado tenga tiempo
para pensar acerca de la entrevista. Las
Entrevistas deben durar de 45 minutos a 1 hora.
Fases para realizar entrevistas
7. Llegar a tiempo a la cita: De preferencia
con media hora de participación y trate
de establecer un acercamiento con el
entrevistado: “rompa el hielo".
8. Vestir en forma adecuada: Trate de llevar
su vestimenta de acuerdo al lugar donde
será la entrevista.
9. Terminar la entrevista con un compromiso:
o sea un apretón de manos.
Entrevista: Tipos de preguntas
 Pregunta Abierta: “Abierta" permite que el
entrevistado se sienta libre de expresar sus
opiniones.
 Ventajas:

 Es confortable al entrevistado.
 Proporciona riqueza de Detalles.
 Permite más espontaneidad.

 Pregunta Cerrada: Una Pregunta cerrada limita las
respuestas disponibles al entrevistado.
 Ventajas:

 Se ahorra tiempo.
 Se llega al punto.
 Se obtienen datos relevantes.
Entrevista: Estructura de las
preguntas
 Existen tres tipos de estructuras para la
elaboración de preguntas para la
entrevista: rombo, pirámide y
embudo.
Entrevista: Estructura de las
preguntas
 Pirámide
 Se debe de utilizar esta estructura cuando
se considere que el entrevistador
necesita ambientarse en el tema.
 Es útil para obtener cifras y tendencias.
 También es un complemento cuando se
quiere una determinación final acerca
del tema (una segunda o tercera
entrevista).
Entrevista: Estructura de las
preguntas
 Embudo
 La estructura del embudo proporciona una
manera fácil y no intimidante para comenzar
una entrevista.
 También es útil cuando el entrevistado se siente
interesado acerca del tema y necesita libertad
para expresar sus opiniones.
 Se puede organizar de tal forma que se pueda
obtener mucha información detallada y en
consecuencia sean innecesarias las preguntas
cerradas y averiguaciones posteriores.
Entrevista: Estructura de las
preguntas
 Rombo
 Esta estructura combina la fuerza de las
dos anteriores, pero tiene la desventaja
de llevarse a cabo en más tiempo.
 La ventaja principal del uso de esta
estructura es conservar el interés y la
atención del entrevistado por medio de
una diversidad de preguntas.
 Se requiere de mucha habilidad para
estructurarla.
Benchmarking
 Es una técnica que permite analizar los
productos alternativos o de la competencia
con la finalidad de evaluar la pertinencia o
no de un desarrollo en casa.
 Es útil también para capturar requerimientos
sobre sistemas o procesos de los
competidores y que pueden ser
desarrollados o innovados en la empresa.
 El benchmarking debe terminar con un
análisis de las fortalezas y las debilidades
de los productos analizados.
Benchmarking
Consideraciones adicionales
 Con frecuencia, lo que los usuarios creen
que necesitan o lo que parece ser el
problema al principio, resulta ser algo
totalmente diferente después de un análisis
profundo.
 Cuando el analista de sistemas se reúne con
los usuarios y ambos empiezan a escarbar,
surgen nuevos y en ocasiones diferentes
requerimientos que al principio no eran
evidentes.
Consideraciones adicionales
 Los analistas al trabajar con los empleados
de la empresa, deben estudiar el proceso
que se efectúa actualmente para así poder
contestar las preguntas claves de esta fase.
 ¿Qué y cómo se está haciendo?
 ¿Qué tan frecuentemente ocurre?
 ¿Qué tan grande es la cantidad de
transacciones o decisiones?
 ¿Existe algún problema?, sí el problema existe,
 ¿Qué tan serio es y cuál es la principal causa
que lo origina?
Documentación de los
Requerimientos
Técnicas para documentar
requerimientos
 Preparación del documento SRS
(Software Requirements Specification)
 Especificación de los casos de uso.
Especificación de
Requerimientos de Software
(SRS)
DEFINICIÓN
Lo que el usuario
espera que el
sistema haga

ESPECIFICACIÓN
Descripción
técnica de las
características
del Sistema
Documento SRS
 El SRS debe comprender la totalidad
de los requerimientos.
 Los desarrolladores y clientes no
deben realizar presunción alguna.
 Si cualquier requerimiento funcional o
no funcional no es identificado en el
SRS, no es parte del acuerdo y por lo
tanto nadie debe esperar que
aparezca en el producto final.
Prácticas recomendadas para la elaboración
del SRS
 Son prácticas recomendadas para escribir
especificaciones de requerimientos del
software.
 No identifica método, nomenclatura, o
herramienta para preparar el documento de
especificación de requerimientos (ERS).
 El estándar que más se usa es el IEEE Std 830.
Estructura sugerida para un SRS
1. Introducción
1.1 Propósito
Establece el propósito de este documento así como la
audiencia para el mismo.

1.2 Alcance
a) Identificar el producto SW a ser producido por nombre.
b) Explicar lo que hará y no hará el producto SW.
c) Explicar en que se aplicara el producto SW, beneficios,
objetivos, metas.

1.3 Definiciones, siglas y abreviaciones
Definir todos lo s términos, acrónimos, y abreviaciones
requeridas para interpretar el documento.
Estructura sugerida para un SRS
1.4 Referencias
Proveer una lista completa de todos los documentos referidos en
el resto del documento, así como sus fuentes.

1.5 Vista General / Resumen
Describir lo que contiene el resto del documento así como su
organización.
Estructura sugerida para un SRS
2. Descripción General
Esta sección debe describir los factores generales que afectan al
producto y sus requerimientos. Esta sección no establece
requerimientos específicos, establece los antecedentes para
ellos.

2.1 Perspectiva del Producto

Poner en perspectiva al producto con otros relacionados. Si
el producto es independiente y auto-contenido, debe ser
especificado de esa manera.
2.1.1 Interfaces del Sistema
2.1.2 Interfaces con el usuario
2.1.3 Interfaces con el hardware
2.1.3 Interfaces con otros software
2.1.4 Interfaces con dispositivos de comunicación
2.1.5 Operaciones
2.1.6 Requerimientos de adaptación a la ubicación
Estructura sugerida para un SRS
2. Descripción General (cont.)
2.2 Funciones del Producto
Esta sub-sección debe incluir un resumen de todas las funciones
principales que realizara el software sin incluir la gran cantidad
de detalles que cada una de esas funciones requiere.

2.3 Características del Usuario

Detallar las características generales de cada tipo de usuario
incluyendo nivel de educación, experiencia, y nivel de aptitud
técnica.

2.4 Restricciones

Incluir una descripción general de cualquier aspecto que limitara
la opciones del desarrollador.

2.5 Suposiciones y dependencias
Listar cada uno de los factores que afecta n los
requerimientos establecidos en este documento. Estos
factores no son restricciones de diseño para el software.
Estructura sugerida para un SRS
3 Requerimientos Específicos




Esta sección del SRS debe contener todos los requerimientos de
software hasta un nivel de detalle suficiente como para permitir a los
diseñadores diseñar el sistema que satisfaga esos requerimientos, y a
los especialista en pruebas para comprobar que el sistema satisfaga
esos requerimientos.
Estos requerimientos deben incluir como mínimo una descripción de
cada entrada (estimulo) al sistema, toda salida (respuesta) del
sistema, y toda función realizada por el sistema en respuesta a la
entrada o en soporte a una salida.
Estructura sugerida para un SRS

3. Requerimientos específicos
3.1 Interfaces Externos
Esta debe ser una descripción detallada de todas las
entradas y salidas del sistema software. Deberá
complementar la descripción de interfaces en la sección
2 y no repetir la información en esa sección.

3.1.1 Interfaces de usuario
3.1.2 Interfaces de Hardware
3.1.3 Interfaces de Software
3.1.4 Interfaces de comunicación
Estructura sugerida para un SRS
3.2 Característica del Sistema
3.2.1 Caso de Uso 1
3.2.1.1 Introducción/Propósito
3.2.1.2 Secuencia Estimulo/Respuesta
3.2.1.3 Requerimientos funcionales asociados
3.2.1.3.1 Requerimiento Funcional 1 (El sistema deberá ...........)
……..
3.2.1.3.n Requerimiento Funcional n

……
3.2.m Caso de Uso m
Estructura sugerida para un SRS
3.3 Requerimientos de rendimiento

Especificar los requerimientos numéricos estáticos y
dinámicos puestos en el producto software.
(Ej. Número de terminales soportadas, usuarios simultáneos,
cantidad de info., etc.)

3.4 Restricciones de diseño

Especificar restricciones de diseño que pueden ser impuestas
por otros estándares, limitaciones de hardware, etc.

3.5 Atributos del sistema Software

Atributos del sistema que son especificado como
requerimientos para poder ser objetivamente evaluados.

3.6 Otros requerimientos
ERS – Formas de Organización
3. Requerimientos específicos

3. Requerimientos específicos

3.1 Interfaces Externos
3.2 Clases / Objetos

3.1 Interfaces Externos
3.2 Característica del Sistema

3.2.1 Clase / Objeto 1
3.2.1.1 Atributos
3.2.1.1.1 Atributo 1
…..
3.2.1.1..n Atributo n

3.2.1.2 Función
3.2.1.2.1 Requerimientos funcional 1.1
…..
3.2.1.2.m Requerimientos funcional 1.m

3.2.1.3 Mensaje (recibidos y/o
enviados)

…..
3.2.p Clase objeto p

3.3 Requerimientos de rendimiento
3.4 Restricciones de diseño
3.5 Atributos del sistema Software
3.6 Otros requerimientos

3.2.1 Característica 1
3.2.1.1 Introducción/Propósito
3.2.1.2 Secuencia Estimulo/Respuesta
3.2.1.3 Requerimientos funcionales
asociados
3.2.1.3.1 Requerimiento Funcional 1
……..
3.2.1.3.n Requerimiento Funcional n

……
3.2.m Característica m

3.3 Requerimientos de rendimiento
3.4 Restricciones de diseño
3.5 Atributos del sistema Software
3.6 Otros requerimientos
Administración de los
Requerimientos
Administración de los
requerimientos
La administración de
requerimientos es una
aproximación sistemática para
encontrar, documentar,
organizar y localizar los
requerimientos cambiantes de
un sistema.
Administración de los
requerimientos
Problemas:
 Los requerimientos no son siempre obvios
y vienen de diferentes fuentes.
 No siempre se expresan con facilidad.
 Existen muchos tipos diferentes de
requerimientos y distintos niveles de
detalle.
...........
Administración de los
requerimientos
...........Problemas:
 El número de requerimientos en
inmanejable si no se controlan
adecuadamente.
 Se relacionan unos con otros y
también con otros entregables del
proceso de ingeniería de software.
.............
Administración de los
requerimientos
...........Problemas:
 Tienen propiedades únicas con muchos
valores.
 Existen muchas partes interesadas y esto
significa que los requerimientos deben
ser administrados por grupos de personas
con funciones en conflicto.
 Son cambiantes.
Administración de los
requerimientos
Prioridad

Estado

Costo

Dificultad
Categoría

Requerimiento
A
Riesgo

Propietario
Nivel de Test/
precedencia

Iteración #

Los atributos sirven para administrar los requerimientos
Atributos de requerimientos
Prioridad:
 Establece la programación de
requerimientos en un plan de iteraciones
o implementación.
 Puede tomar los valores de:
 A = Alta (debe programarse primero).
 M = Media (puede programarse en otras
iteraciones diferentes a la primera).
 B = Baja (puede programarse en las
últimas iteraciones).
Atributos de requerimientos
Categoría:
 Establece la clasificación de los
requerimientos de acuerdo a la necesidad de
los mismos.
 Puede tomar los valores de:
 P = Primario (no debe faltar).
 S = Secundario (es necesario pero no
indispensable).
 O = Opcional (es alternativo, novedoso,
pero no necesario).
Atributos de requerimientos
Riesgo:
 Establece el nivel de peligro por
inversión o resultados difíciles de
predecir de un requerimiento:
 A = Alto (de alto riesgo o peligro).
 M = Medio (de riesgo medio).
 B = Bajo (no es riesgoso).
Atributos de requerimientos
Dificultad:
 Establece el nivel de dificultad que tiene
un requerimiento en la programación,
porque involucra tecnología nueva o
porque su naturaleza es compleja
 A = Alta (de alta dificultad).
 M = Media (de dificultad media).
 B = Baja (de fácil implementación).
Atributos de requerimientos
Visibilidad:
 Establece el nivel de contacto con el usuario
que tiene un requerimiento.
 V = Visible (de alta interacción con el usuario).
Un ejemplo típico es el registro de dato.
 O = Oculto (de baja o nula interacción con el
usuario). Un ejemplo son los cálculos o
procesos ocultos al usuario.
Atributos de requerimientos
Precedencia:
 Permite establecer que requerimientos son
necesarios para que otros se inicien o
sucedan.
 Este atributo permite establecer la cadena
de implementaciones y que requerimientos
no pueden funcionar sin otros.

Weitere ähnliche Inhalte

Was ist angesagt?

*Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1**Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1*venusprinz583
 
Tecnicas y herramientas de desarrollo de software(1)
Tecnicas y herramientas de desarrollo de software(1)Tecnicas y herramientas de desarrollo de software(1)
Tecnicas y herramientas de desarrollo de software(1)Gustavo Gualsema
 
Presentación Modelo de Datos
Presentación Modelo de DatosPresentación Modelo de Datos
Presentación Modelo de DatosEnrique Cabello
 
Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionalesAngel Minga
 
Introducción a las bases de datos relacionales
Introducción a las bases de datos relacionalesIntroducción a las bases de datos relacionales
Introducción a las bases de datos relacionaleskdulcey
 
Lenguajes de Descripción de Arquitecturas
Lenguajes de Descripción de Arquitecturas Lenguajes de Descripción de Arquitecturas
Lenguajes de Descripción de Arquitecturas Shelisse De la Cruz
 
Requerimientos Funcionales y No Funcionales
Requerimientos Funcionales y No FuncionalesRequerimientos Funcionales y No Funcionales
Requerimientos Funcionales y No FuncionalesCarlos Macallums
 
Tipos de Requerimientos en Ingeniería de Software
Tipos de Requerimientos en Ingeniería de SoftwareTipos de Requerimientos en Ingeniería de Software
Tipos de Requerimientos en Ingeniería de SoftwareLeo Ruelas Rojas
 
Diagrama de Flujo de Datos
Diagrama de Flujo de DatosDiagrama de Flujo de Datos
Diagrama de Flujo de DatosInés Andara
 
Diagramas de caso de uso
Diagramas de caso de usoDiagramas de caso de uso
Diagramas de caso de usoTensor
 
Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftChuyito Alvarado
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 CapasFani Calle
 
Desarrollo iterativo e incremental
Desarrollo iterativo e incrementalDesarrollo iterativo e incremental
Desarrollo iterativo e incrementalnoriver
 
Diagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegueDiagramas UML: Componentes y despliegue
Diagramas UML: Componentes y desplieguejoshell
 

Was ist angesagt? (20)

*Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1**Diagramas de flujo nivel 0-1*
*Diagramas de flujo nivel 0-1*
 
Diagramas De Caso De Uso
Diagramas De Caso De UsoDiagramas De Caso De Uso
Diagramas De Caso De Uso
 
Tecnicas y herramientas de desarrollo de software(1)
Tecnicas y herramientas de desarrollo de software(1)Tecnicas y herramientas de desarrollo de software(1)
Tecnicas y herramientas de desarrollo de software(1)
 
Presentación Modelo de Datos
Presentación Modelo de DatosPresentación Modelo de Datos
Presentación Modelo de Datos
 
Requerimientos no funcionales
Requerimientos no funcionalesRequerimientos no funcionales
Requerimientos no funcionales
 
Vista lógica
Vista lógicaVista lógica
Vista lógica
 
Introducción a las bases de datos relacionales
Introducción a las bases de datos relacionalesIntroducción a las bases de datos relacionales
Introducción a las bases de datos relacionales
 
Lenguajes de Descripción de Arquitecturas
Lenguajes de Descripción de Arquitecturas Lenguajes de Descripción de Arquitecturas
Lenguajes de Descripción de Arquitecturas
 
Requerimientos Funcionales y No Funcionales
Requerimientos Funcionales y No FuncionalesRequerimientos Funcionales y No Funcionales
Requerimientos Funcionales y No Funcionales
 
Tipos de Requerimientos en Ingeniería de Software
Tipos de Requerimientos en Ingeniería de SoftwareTipos de Requerimientos en Ingeniería de Software
Tipos de Requerimientos en Ingeniería de Software
 
Diagrama de Flujo de Datos
Diagrama de Flujo de DatosDiagrama de Flujo de Datos
Diagrama de Flujo de Datos
 
Pt7seccion2
Pt7seccion2Pt7seccion2
Pt7seccion2
 
Programando en capas
Programando en capasProgramando en capas
Programando en capas
 
Diagramas de caso de uso
Diagramas de caso de usoDiagramas de caso de uso
Diagramas de caso de uso
 
Diagramas uml
Diagramas umlDiagramas uml
Diagramas uml
 
Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoft
 
Trabajo Casos de Uso
Trabajo Casos de Uso Trabajo Casos de Uso
Trabajo Casos de Uso
 
Arquitectura 3 Capas
Arquitectura 3 CapasArquitectura 3 Capas
Arquitectura 3 Capas
 
Desarrollo iterativo e incremental
Desarrollo iterativo e incrementalDesarrollo iterativo e incremental
Desarrollo iterativo e incremental
 
Diagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegueDiagramas UML: Componentes y despliegue
Diagramas UML: Componentes y despliegue
 

Andere mochten auch

Tecnicas para representar informe de requerimientos
Tecnicas para representar informe de requerimientosTecnicas para representar informe de requerimientos
Tecnicas para representar informe de requerimientosDuber Collazos
 
Presentación Planificacion y organizacion dominio
Presentación Planificacion y organizacion   dominioPresentación Planificacion y organizacion   dominio
Presentación Planificacion y organizacion dominiokattycastro
 
Arquitectura Basada En Componentes
Arquitectura Basada En ComponentesArquitectura Basada En Componentes
Arquitectura Basada En Componentesurumisama
 
1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseñolandeta_p
 
Procesos de construcción del software
Procesos de construcción del softwareProcesos de construcción del software
Procesos de construcción del softwareUTPL UTPL
 
Modelo de requerimientos
Modelo de requerimientosModelo de requerimientos
Modelo de requerimientosUTPL UTPL
 
Guia Instructor Actividades Induccion3
Guia Instructor Actividades Induccion3Guia Instructor Actividades Induccion3
Guia Instructor Actividades Induccion3dolly valbuena
 
Ingeniería del software basada en componentes
Ingeniería del software basada en componentesIngeniería del software basada en componentes
Ingeniería del software basada en componentesjose_macias
 
Metodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentesMetodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentesEmmanuel Fontán
 
Analisis de requerimientos, Ingenieria de Software
Analisis de requerimientos, Ingenieria de SoftwareAnalisis de requerimientos, Ingenieria de Software
Analisis de requerimientos, Ingenieria de SoftwareMarvin Romero
 
Unidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De RequerimientosUnidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De RequerimientosSergio Sanchez
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentesUlises Cruz
 

Andere mochten auch (20)

Representacion Grafica
Representacion Grafica Representacion Grafica
Representacion Grafica
 
Tecnicas para representar informe de requerimientos
Tecnicas para representar informe de requerimientosTecnicas para representar informe de requerimientos
Tecnicas para representar informe de requerimientos
 
Presentación Planificacion y organizacion dominio
Presentación Planificacion y organizacion   dominioPresentación Planificacion y organizacion   dominio
Presentación Planificacion y organizacion dominio
 
Componentes
ComponentesComponentes
Componentes
 
Rup
RupRup
Rup
 
Arquitectura Basada En Componentes
Arquitectura Basada En ComponentesArquitectura Basada En Componentes
Arquitectura Basada En Componentes
 
Sistema de produccion
Sistema de produccionSistema de produccion
Sistema de produccion
 
1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño1 3 ingenieria software y patrones de diseño
1 3 ingenieria software y patrones de diseño
 
Procesos de construcción del software
Procesos de construcción del softwareProcesos de construcción del software
Procesos de construcción del software
 
Modelo de requerimientos
Modelo de requerimientosModelo de requerimientos
Modelo de requerimientos
 
Guia Instructor Actividades Induccion3
Guia Instructor Actividades Induccion3Guia Instructor Actividades Induccion3
Guia Instructor Actividades Induccion3
 
Ingeniería del software basada en componentes
Ingeniería del software basada en componentesIngeniería del software basada en componentes
Ingeniería del software basada en componentes
 
Metodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentesMetodología de desarrollo de software basada en componentes
Metodología de desarrollo de software basada en componentes
 
UNIDAD I: Los sistemas de información
UNIDAD I: Los sistemas de informaciónUNIDAD I: Los sistemas de información
UNIDAD I: Los sistemas de información
 
Analisis de requerimientos, Ingenieria de Software
Analisis de requerimientos, Ingenieria de SoftwareAnalisis de requerimientos, Ingenieria de Software
Analisis de requerimientos, Ingenieria de Software
 
Metodologia rup
Metodologia rupMetodologia rup
Metodologia rup
 
Formato ieee830(srs lleno)
Formato ieee830(srs lleno)Formato ieee830(srs lleno)
Formato ieee830(srs lleno)
 
Ieee 830
Ieee 830Ieee 830
Ieee 830
 
Unidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De RequerimientosUnidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De Requerimientos
 
Desarrollo de software basado en componentes
Desarrollo de software basado en componentesDesarrollo de software basado en componentes
Desarrollo de software basado en componentes
 

Ähnlich wie 03 requerimientos

creando la Metodología propia
creando la Metodología propiacreando la Metodología propia
creando la Metodología propiatanyamurillo77
 
Contenido iii parcial analisis y diseño de sistemas
Contenido iii parcial analisis y diseño de sistemasContenido iii parcial analisis y diseño de sistemas
Contenido iii parcial analisis y diseño de sistemasanlucy88
 
Cuestiones de Repaso del capitulo 15
Cuestiones de Repaso del capitulo 15Cuestiones de Repaso del capitulo 15
Cuestiones de Repaso del capitulo 15Fabricio Sanchez
 
Metodologia de gestion de requerimientos ensayo
Metodologia de gestion de requerimientos ensayoMetodologia de gestion de requerimientos ensayo
Metodologia de gestion de requerimientos ensayoSofiaBorrero
 
Desarrollo de prototipos
Desarrollo de prototiposDesarrollo de prototipos
Desarrollo de prototiposTensor
 
analisis modulo de formacion
analisis modulo de formacionanalisis modulo de formacion
analisis modulo de formacionDairon Jaimes M
 
Analisis del modulo de formación
Analisis del modulo de formaciónAnalisis del modulo de formación
Analisis del modulo de formación9krlos
 
Analisis y especificacion de requerimientos
Analisis y especificacion de requerimientosAnalisis y especificacion de requerimientos
Analisis y especificacion de requerimientosUPTP
 
Sistemas de información 2013
Sistemas de información 2013Sistemas de información 2013
Sistemas de información 2013Maestros Online
 
CUESTIONARIO MODULO 1
CUESTIONARIO MODULO 1CUESTIONARIO MODULO 1
CUESTIONARIO MODULO 1jesanchez5
 
CUESTIONARIO MODULO 1.
CUESTIONARIO MODULO 1.CUESTIONARIO MODULO 1.
CUESTIONARIO MODULO 1.jesanchez5
 
Ingenieria de requisitos
Ingenieria de requisitosIngenieria de requisitos
Ingenieria de requisitosJoamarbet
 

Ähnlich wie 03 requerimientos (20)

Tema 1 Ingeniería de Requisitos
Tema 1 Ingeniería de RequisitosTema 1 Ingeniería de Requisitos
Tema 1 Ingeniería de Requisitos
 
Tipos de requerimeintos
Tipos de requerimeintosTipos de requerimeintos
Tipos de requerimeintos
 
creando la Metodología propia
creando la Metodología propiacreando la Metodología propia
creando la Metodología propia
 
Metodología BRAIN
Metodología BRAINMetodología BRAIN
Metodología BRAIN
 
Sistemas de información 2013
Sistemas de información 2013Sistemas de información 2013
Sistemas de información 2013
 
metodojarri
metodojarrimetodojarri
metodojarri
 
Contenido iii parcial analisis y diseño de sistemas
Contenido iii parcial analisis y diseño de sistemasContenido iii parcial analisis y diseño de sistemas
Contenido iii parcial analisis y diseño de sistemas
 
Cuestiones de Repaso del capitulo 15
Cuestiones de Repaso del capitulo 15Cuestiones de Repaso del capitulo 15
Cuestiones de Repaso del capitulo 15
 
Modulo 1
Modulo 1Modulo 1
Modulo 1
 
Trabajo Modulo 1
Trabajo Modulo 1Trabajo Modulo 1
Trabajo Modulo 1
 
Metodologia de gestion de requerimientos ensayo
Metodologia de gestion de requerimientos ensayoMetodologia de gestion de requerimientos ensayo
Metodologia de gestion de requerimientos ensayo
 
Desarrollo de prototipos
Desarrollo de prototiposDesarrollo de prototipos
Desarrollo de prototipos
 
analisis modulo de formacion
analisis modulo de formacionanalisis modulo de formacion
analisis modulo de formacion
 
Analisis del modulo de formación
Analisis del modulo de formaciónAnalisis del modulo de formación
Analisis del modulo de formación
 
Actividad profe edison
Actividad profe edisonActividad profe edison
Actividad profe edison
 
Analisis y especificacion de requerimientos
Analisis y especificacion de requerimientosAnalisis y especificacion de requerimientos
Analisis y especificacion de requerimientos
 
Sistemas de información 2013
Sistemas de información 2013Sistemas de información 2013
Sistemas de información 2013
 
CUESTIONARIO MODULO 1
CUESTIONARIO MODULO 1CUESTIONARIO MODULO 1
CUESTIONARIO MODULO 1
 
CUESTIONARIO MODULO 1.
CUESTIONARIO MODULO 1.CUESTIONARIO MODULO 1.
CUESTIONARIO MODULO 1.
 
Ingenieria de requisitos
Ingenieria de requisitosIngenieria de requisitos
Ingenieria de requisitos
 

Mehr von Omar Beltran Celis Mendoza (8)

Artículo modelamiento de negocios
Artículo  modelamiento de negociosArtículo  modelamiento de negocios
Artículo modelamiento de negocios
 
Artículo modelamiento de negocios
Artículo  modelamiento de negociosArtículo  modelamiento de negocios
Artículo modelamiento de negocios
 
Desarrollo de software orientado a objetos
Desarrollo de software orientado a objetosDesarrollo de software orientado a objetos
Desarrollo de software orientado a objetos
 
05 modelo de diseño
05 modelo de diseño05 modelo de diseño
05 modelo de diseño
 
04 modelo dean�lisis-2
04 modelo dean�lisis-204 modelo dean�lisis-2
04 modelo dean�lisis-2
 
03 casos deuso
03 casos deuso03 casos deuso
03 casos deuso
 
02 modelo delnegocio
02 modelo delnegocio02 modelo delnegocio
02 modelo delnegocio
 
Leccion 03 iv_2013
Leccion 03 iv_2013Leccion 03 iv_2013
Leccion 03 iv_2013
 

03 requerimientos

  • 1. Desarrollo de software orientado a objetos Unidad 3: Modelo de Requerimientos
  • 2. Agenda  Introducción al modelo de requerimientos  Identificación y clasificación  Métodos de obtención de requerimientos  Documentación  Administración
  • 3. Introducción al modelo de requerimientos
  • 4. Modelo de requerimientos EMPRESA ¿Cuáles son los procesos de negocios? SISTEMA ARTEFACTOS Casos de Uso del Negocio Análisis de requerimientos Casos de Uso
  • 6. Introducción  Objetivos:  Establecer y mantener la conformidad de las necesidades de los clientes y usuarios acerca de lo que el sistema debe hacer.  Proporcionar a los desarrolladores una mejor comprensión de los requerimientos del sistema.  Definir las fronteras del sistema. ............
  • 7. Introducción  ..........Objetivos:  Proporcionar la base del planeamiento de los contenidos técnicos de las iteraciones.  Proporcionar la base de la estimación de costos y tiempo de desarrollo del sistema.  Definir una interfaz de usuario para el sistema centrada en las necesidades y metas de los usuarios.
  • 8. Workflow de requerimientos [Viejo sistema] [Nuevo sistema] Analizar el problema [Problema incorrecto] Comprender las necesidades del usuario [Problema encausado] [Mas iteraciones] Definir el sistema Manejar el alcance [Definición completa de requerimientos] [Nuevo input] [No se puede manejar alcance] Manejar cambios en requerimientos [Trabajo dentro de alcances] Refinar la definición del sistema
  • 9. Los roles y sus actividades
  • 10. Los roles y los artefactos
  • 12. Requerimientos Un requerimiento se define como “una condición o capacidad con la cual un sistema debe estar en conformidad”
  • 13. ¿De dónde provienen los requerimientos? Especificaciones Reqs. Planes de Negocio Metas de Personal Socios Clientes Analistas Dominio del Problema Usuarios Reporte de Problemas Req. De Cambio Expertos Dominio Analistas Industria Visitas al WEB Modelo de Negocios
  • 14. Clases de requerimientos Una manera de categorizar los requerimientos está descrito en el modelo FURPS+:      Functionality (Funcionalidad) Usability (Capacidad de Uso) Reliability (Fiabilidad) Performance (Desempeño) Supportability (Capacidad de Soporte)
  • 15. Clases de Requerimientos Clases de Requerimientos  El signo “+” incluye consideraciones de restricciones como:     Restricciones de diseño. Restricciones de implementación. Restricciones de interfaz. Restricciones físicos.
  • 16. Clases de Requerimientos Requerimientos Funcionales.  Especifican acciones que el sistema debe ser capaz de desarrollar sin tener en cuenta restricciones físicas. Estos se describen en un modelo de casos de uso.  Estos requerimientos especifican los comportamientos de entradas y salidas del sistema.
  • 17. Clases de Requerimientos Requerimientos Funcionales.  Están dentro de esta categoría:  Los conjuntos de características.  Las capacidades.  La seguridad.
  • 18. Clases de Requerimientos Requerimientos NO Funcionales.  Describen atributos del sistema o del ambiente en donde éste se desarrolla.  Se pueden capturar en los casos de uso pero no se necesitan especificar de manera detallada.
  • 19. Clases de Requerimientos Requerimientos NO Funcionales.  De capacidad de uso (Usability) Estan incluidos en las siguientes sub-categorías:  factores humanos  estética  consistencia de la interfaz de usuario  ayudas en línea  agentes y wizards  documentación de usuario y material de entrenamiento
  • 20. Clases de Requerimientos Requerimientos NO Funcionales.  De fiabilidad (Reliability) Están incluidos en las siguientes sub-categorías:  frecuencia / severidad de los errores  capacidad de recuperación  capacidad predictiva  exactitud  tiempo promedio entre fallas (MTBF)
  • 21. Clases de Requerimientos Requerimientos NO Funcionales.  De rendimiento (Performance) Estos requerimientos afectan a los funcionales en la medida de parámetros como:  velocidad  eficiencia  disponibilidad  exactitud  tiempo de respuesta  tiempo de uso de recursos
  • 22. Clases de Requerimientos Requerimientos NO Funcionales.  De soporte (Supportability) Incluyen la capacidad de:  prueba  extensión  adaptación  mantenimiento  compatibilidad  configuración  instalación y localización
  • 23. Métodos para obtener los requerimientos
  • 24. Métodos para capturar requerimientos  La información en una organización no siempre es fácil de obtener, más bien es un proceso lento y costoso, que exige tiempo y dedicación por parte del analista de sistemas y los usuarios.  Las fases de búsqueda de información en cualquier proyecto, suelen ser grandes consumidoras de tiempo, y el éxito de los resultados depende en gran medida de la calidad de la información.
  • 25. Métodos para capturar requerimientos  Es muy común que la información requerida no se encuentre escrita, o inclusive que ésta no se conozca. Esto hace necesaria la interacción del analista con las personas del negocio para identificar y/o generar la información faltante.
  • 26. Métodos para capturar requerimientos  Aprenderemos a capturar requerimientos a partir de:  El modelo de negocio  Procesos, actores, trabajadores y workflows del negocio.  Técnicas de recopilación de información  Entrevistas  Trabajo grupal  Análisis de la documentación obtenida  Formularios  Reportes  Benchmarking
  • 27. Análisis del modelo de negocio  La principal fuente de captación de los requerimientos funcionales son los procesos del negocio.  En el encontraremos elementos de información importantes:  Las funciones derivadas de las actividades a automatizar.  Los roles que van a interactuar con el sistema.  Los recursos que se usan en el negocio y de cuyo estudio podremos más adelante identificar las clases del sistema.
  • 28. Análisis del modelo de casos de uso del negocio  Exploración de los diagramas
  • 29. Análisis del modelo de casos de uso del negocio  Transición natural (AS IS)
  • 30. Análisis del modelo de negocio  Análisis del diagrama de actividades GV : BA-Gerente Ventas AV : BW -Asistente Ventas Sol ici ta revi si ón de lista de preci os Consulta información del mercado Si Define productos para l a venta Hay nuevos productos? No No Es campaña SI Aprueba? No Busca productos a ofertar P1 : BE-Producto Si Remite Nueva Lista a T iendas Realiza ajuste de preci os de productos y ofertas Envia l ista a Gerente de Ventas PO : BE-Precio
  • 31. Análisis del modelo de negocio  Análisis del diagrama de actividades GV : BA-Gerente Ventas AV : BW -Asistente Ventas Sol icita revi sión de l ista de precios Consul ta i nformaci ón del mercado Si Define productos para la venta Hay nuevos productos? No No Es campaña SI Aprueba? No Busca productos a ofertar P1 : BE-Producto Si Remi te Nueva Lista a T iendas Real iza ajuste de precios de productos y ofertas Envia li sta a Gerente de Ventas PO : BE-Precio
  • 32. Matriz de actividades y requerimientos  Luego de identificar las actividades a automatizar es conveniente efectuar la matriz de actividades y requerimientos (fase 1). Caso de uso de negocio Actividades Responsable Requerimientos Caso de uso Actor
  • 33. Técnicas y fuentes de recopilación de datos  Existen diferentes técnicas y fuentes para recopilar datos. Estos incluyen:  Técnicas       Cuestionarios Entrevistas Sondeos Encuestas Collage Dibujos y diagramas  Fuentes secundarias     Tablas de Organización Descripción de puestos Manuales Operativos. Representación física de las Organizaciones.
  • 34. La entrevista  En la entrevista el analista de Sistemas interroga, de manera verbal al Cliente/Usuario acerca de lo que el se plantea como problema y de los requisitos que se consideran indispensables.  Cabe aclarar que aunque aquí las respuestas pueden no ser escritas, al final deberá hacerse un reporte de la información recabada.
  • 35. La entrevista Recomendaciones….  Cuando realice la entrevista elija un lugar libre de distracciones, agradable, fresco, cómodo y privado para generar un ambiente adecuado para el desarrollo de la misma.  Al llegar al lugar donde se va a llevar a cabo la entrevista trate de relacionarse con el entrevistado para que el se sienta en confianza.
  • 36. Fases para realizar entrevistas 1. Leer el material de fondo: Lea y comprenda tanta información de fondo acerca del entrevistado y su organización como le sea posible. 2. Establecer los objetivos de la entrevista: Use la información de fondo que recopiló, así como su propia experiencia y necesidades, para establecer los objetivos de la entrevista. 3. Decidir a quién entrevistar: Incluya a gente clave de todos los niveles que serán afectados por el sistema en alguna forma.
  • 37. Fases para realizar entrevistas 4. 5. Decidir sobre tipos de preguntas y estructura: Escriba preguntas para tratar aspectos relevantes y aclarar las dudas. Use técnicas adecuadas para formular sus preguntas. Preparar al Entrevistado: Prepare a la persona a ser entrevistada, llamándole con anticipación y permitiendo que el entrevistado tenga tiempo para pensar acerca de la entrevista. Las Entrevistas deben durar de 45 minutos a 1 hora.
  • 38. Fases para realizar entrevistas 7. Llegar a tiempo a la cita: De preferencia con media hora de participación y trate de establecer un acercamiento con el entrevistado: “rompa el hielo". 8. Vestir en forma adecuada: Trate de llevar su vestimenta de acuerdo al lugar donde será la entrevista. 9. Terminar la entrevista con un compromiso: o sea un apretón de manos.
  • 39. Entrevista: Tipos de preguntas  Pregunta Abierta: “Abierta" permite que el entrevistado se sienta libre de expresar sus opiniones.  Ventajas:  Es confortable al entrevistado.  Proporciona riqueza de Detalles.  Permite más espontaneidad.  Pregunta Cerrada: Una Pregunta cerrada limita las respuestas disponibles al entrevistado.  Ventajas:  Se ahorra tiempo.  Se llega al punto.  Se obtienen datos relevantes.
  • 40. Entrevista: Estructura de las preguntas  Existen tres tipos de estructuras para la elaboración de preguntas para la entrevista: rombo, pirámide y embudo.
  • 41. Entrevista: Estructura de las preguntas  Pirámide  Se debe de utilizar esta estructura cuando se considere que el entrevistador necesita ambientarse en el tema.  Es útil para obtener cifras y tendencias.  También es un complemento cuando se quiere una determinación final acerca del tema (una segunda o tercera entrevista).
  • 42. Entrevista: Estructura de las preguntas  Embudo  La estructura del embudo proporciona una manera fácil y no intimidante para comenzar una entrevista.  También es útil cuando el entrevistado se siente interesado acerca del tema y necesita libertad para expresar sus opiniones.  Se puede organizar de tal forma que se pueda obtener mucha información detallada y en consecuencia sean innecesarias las preguntas cerradas y averiguaciones posteriores.
  • 43. Entrevista: Estructura de las preguntas  Rombo  Esta estructura combina la fuerza de las dos anteriores, pero tiene la desventaja de llevarse a cabo en más tiempo.  La ventaja principal del uso de esta estructura es conservar el interés y la atención del entrevistado por medio de una diversidad de preguntas.  Se requiere de mucha habilidad para estructurarla.
  • 44. Benchmarking  Es una técnica que permite analizar los productos alternativos o de la competencia con la finalidad de evaluar la pertinencia o no de un desarrollo en casa.  Es útil también para capturar requerimientos sobre sistemas o procesos de los competidores y que pueden ser desarrollados o innovados en la empresa.  El benchmarking debe terminar con un análisis de las fortalezas y las debilidades de los productos analizados.
  • 46. Consideraciones adicionales  Con frecuencia, lo que los usuarios creen que necesitan o lo que parece ser el problema al principio, resulta ser algo totalmente diferente después de un análisis profundo.  Cuando el analista de sistemas se reúne con los usuarios y ambos empiezan a escarbar, surgen nuevos y en ocasiones diferentes requerimientos que al principio no eran evidentes.
  • 47. Consideraciones adicionales  Los analistas al trabajar con los empleados de la empresa, deben estudiar el proceso que se efectúa actualmente para así poder contestar las preguntas claves de esta fase.  ¿Qué y cómo se está haciendo?  ¿Qué tan frecuentemente ocurre?  ¿Qué tan grande es la cantidad de transacciones o decisiones?  ¿Existe algún problema?, sí el problema existe,  ¿Qué tan serio es y cuál es la principal causa que lo origina?
  • 49. Técnicas para documentar requerimientos  Preparación del documento SRS (Software Requirements Specification)  Especificación de los casos de uso.
  • 50. Especificación de Requerimientos de Software (SRS) DEFINICIÓN Lo que el usuario espera que el sistema haga ESPECIFICACIÓN Descripción técnica de las características del Sistema
  • 51. Documento SRS  El SRS debe comprender la totalidad de los requerimientos.  Los desarrolladores y clientes no deben realizar presunción alguna.  Si cualquier requerimiento funcional o no funcional no es identificado en el SRS, no es parte del acuerdo y por lo tanto nadie debe esperar que aparezca en el producto final.
  • 52. Prácticas recomendadas para la elaboración del SRS  Son prácticas recomendadas para escribir especificaciones de requerimientos del software.  No identifica método, nomenclatura, o herramienta para preparar el documento de especificación de requerimientos (ERS).  El estándar que más se usa es el IEEE Std 830.
  • 53. Estructura sugerida para un SRS 1. Introducción 1.1 Propósito Establece el propósito de este documento así como la audiencia para el mismo. 1.2 Alcance a) Identificar el producto SW a ser producido por nombre. b) Explicar lo que hará y no hará el producto SW. c) Explicar en que se aplicara el producto SW, beneficios, objetivos, metas. 1.3 Definiciones, siglas y abreviaciones Definir todos lo s términos, acrónimos, y abreviaciones requeridas para interpretar el documento.
  • 54. Estructura sugerida para un SRS 1.4 Referencias Proveer una lista completa de todos los documentos referidos en el resto del documento, así como sus fuentes. 1.5 Vista General / Resumen Describir lo que contiene el resto del documento así como su organización.
  • 55. Estructura sugerida para un SRS 2. Descripción General Esta sección debe describir los factores generales que afectan al producto y sus requerimientos. Esta sección no establece requerimientos específicos, establece los antecedentes para ellos. 2.1 Perspectiva del Producto Poner en perspectiva al producto con otros relacionados. Si el producto es independiente y auto-contenido, debe ser especificado de esa manera. 2.1.1 Interfaces del Sistema 2.1.2 Interfaces con el usuario 2.1.3 Interfaces con el hardware 2.1.3 Interfaces con otros software 2.1.4 Interfaces con dispositivos de comunicación 2.1.5 Operaciones 2.1.6 Requerimientos de adaptación a la ubicación
  • 56. Estructura sugerida para un SRS 2. Descripción General (cont.) 2.2 Funciones del Producto Esta sub-sección debe incluir un resumen de todas las funciones principales que realizara el software sin incluir la gran cantidad de detalles que cada una de esas funciones requiere. 2.3 Características del Usuario Detallar las características generales de cada tipo de usuario incluyendo nivel de educación, experiencia, y nivel de aptitud técnica. 2.4 Restricciones Incluir una descripción general de cualquier aspecto que limitara la opciones del desarrollador. 2.5 Suposiciones y dependencias Listar cada uno de los factores que afecta n los requerimientos establecidos en este documento. Estos factores no son restricciones de diseño para el software.
  • 57. Estructura sugerida para un SRS 3 Requerimientos Específicos   Esta sección del SRS debe contener todos los requerimientos de software hasta un nivel de detalle suficiente como para permitir a los diseñadores diseñar el sistema que satisfaga esos requerimientos, y a los especialista en pruebas para comprobar que el sistema satisfaga esos requerimientos. Estos requerimientos deben incluir como mínimo una descripción de cada entrada (estimulo) al sistema, toda salida (respuesta) del sistema, y toda función realizada por el sistema en respuesta a la entrada o en soporte a una salida.
  • 58. Estructura sugerida para un SRS 3. Requerimientos específicos 3.1 Interfaces Externos Esta debe ser una descripción detallada de todas las entradas y salidas del sistema software. Deberá complementar la descripción de interfaces en la sección 2 y no repetir la información en esa sección. 3.1.1 Interfaces de usuario 3.1.2 Interfaces de Hardware 3.1.3 Interfaces de Software 3.1.4 Interfaces de comunicación
  • 59. Estructura sugerida para un SRS 3.2 Característica del Sistema 3.2.1 Caso de Uso 1 3.2.1.1 Introducción/Propósito 3.2.1.2 Secuencia Estimulo/Respuesta 3.2.1.3 Requerimientos funcionales asociados 3.2.1.3.1 Requerimiento Funcional 1 (El sistema deberá ...........) …….. 3.2.1.3.n Requerimiento Funcional n …… 3.2.m Caso de Uso m
  • 60. Estructura sugerida para un SRS 3.3 Requerimientos de rendimiento Especificar los requerimientos numéricos estáticos y dinámicos puestos en el producto software. (Ej. Número de terminales soportadas, usuarios simultáneos, cantidad de info., etc.) 3.4 Restricciones de diseño Especificar restricciones de diseño que pueden ser impuestas por otros estándares, limitaciones de hardware, etc. 3.5 Atributos del sistema Software Atributos del sistema que son especificado como requerimientos para poder ser objetivamente evaluados. 3.6 Otros requerimientos
  • 61. ERS – Formas de Organización 3. Requerimientos específicos 3. Requerimientos específicos 3.1 Interfaces Externos 3.2 Clases / Objetos 3.1 Interfaces Externos 3.2 Característica del Sistema 3.2.1 Clase / Objeto 1 3.2.1.1 Atributos 3.2.1.1.1 Atributo 1 ….. 3.2.1.1..n Atributo n 3.2.1.2 Función 3.2.1.2.1 Requerimientos funcional 1.1 ….. 3.2.1.2.m Requerimientos funcional 1.m 3.2.1.3 Mensaje (recibidos y/o enviados) ….. 3.2.p Clase objeto p 3.3 Requerimientos de rendimiento 3.4 Restricciones de diseño 3.5 Atributos del sistema Software 3.6 Otros requerimientos 3.2.1 Característica 1 3.2.1.1 Introducción/Propósito 3.2.1.2 Secuencia Estimulo/Respuesta 3.2.1.3 Requerimientos funcionales asociados 3.2.1.3.1 Requerimiento Funcional 1 …….. 3.2.1.3.n Requerimiento Funcional n …… 3.2.m Característica m 3.3 Requerimientos de rendimiento 3.4 Restricciones de diseño 3.5 Atributos del sistema Software 3.6 Otros requerimientos
  • 63. Administración de los requerimientos La administración de requerimientos es una aproximación sistemática para encontrar, documentar, organizar y localizar los requerimientos cambiantes de un sistema.
  • 64. Administración de los requerimientos Problemas:  Los requerimientos no son siempre obvios y vienen de diferentes fuentes.  No siempre se expresan con facilidad.  Existen muchos tipos diferentes de requerimientos y distintos niveles de detalle. ...........
  • 65. Administración de los requerimientos ...........Problemas:  El número de requerimientos en inmanejable si no se controlan adecuadamente.  Se relacionan unos con otros y también con otros entregables del proceso de ingeniería de software. .............
  • 66. Administración de los requerimientos ...........Problemas:  Tienen propiedades únicas con muchos valores.  Existen muchas partes interesadas y esto significa que los requerimientos deben ser administrados por grupos de personas con funciones en conflicto.  Son cambiantes.
  • 67. Administración de los requerimientos Prioridad Estado Costo Dificultad Categoría Requerimiento A Riesgo Propietario Nivel de Test/ precedencia Iteración # Los atributos sirven para administrar los requerimientos
  • 68. Atributos de requerimientos Prioridad:  Establece la programación de requerimientos en un plan de iteraciones o implementación.  Puede tomar los valores de:  A = Alta (debe programarse primero).  M = Media (puede programarse en otras iteraciones diferentes a la primera).  B = Baja (puede programarse en las últimas iteraciones).
  • 69. Atributos de requerimientos Categoría:  Establece la clasificación de los requerimientos de acuerdo a la necesidad de los mismos.  Puede tomar los valores de:  P = Primario (no debe faltar).  S = Secundario (es necesario pero no indispensable).  O = Opcional (es alternativo, novedoso, pero no necesario).
  • 70. Atributos de requerimientos Riesgo:  Establece el nivel de peligro por inversión o resultados difíciles de predecir de un requerimiento:  A = Alto (de alto riesgo o peligro).  M = Medio (de riesgo medio).  B = Bajo (no es riesgoso).
  • 71. Atributos de requerimientos Dificultad:  Establece el nivel de dificultad que tiene un requerimiento en la programación, porque involucra tecnología nueva o porque su naturaleza es compleja  A = Alta (de alta dificultad).  M = Media (de dificultad media).  B = Baja (de fácil implementación).
  • 72. Atributos de requerimientos Visibilidad:  Establece el nivel de contacto con el usuario que tiene un requerimiento.  V = Visible (de alta interacción con el usuario). Un ejemplo típico es el registro de dato.  O = Oculto (de baja o nula interacción con el usuario). Un ejemplo son los cálculos o procesos ocultos al usuario.
  • 73. Atributos de requerimientos Precedencia:  Permite establecer que requerimientos son necesarios para que otros se inicien o sucedan.  Este atributo permite establecer la cadena de implementaciones y que requerimientos no pueden funcionar sin otros.