SlideShare una empresa de Scribd logo
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Ingeniería de Requerimientos
Estableciendo lo que el cliente
requiere de un Sistema de
Software.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Curva de Fallo del Software
• Todo el mundo exige que se realicen cambios sobre el Software
como respuesta a pequeños cambios del entorno.
• Además no es fácil comprender su comportamiento, según
Pressman:
– La curva de fallos del Hardware.
– La curva ideal de fallos del Software.
– La curva real de fallos del Software.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Tiempo
Indicedefallos
Defectos fabricación Estropeado
Obsolescencia
Curva de Fallo del Hardware
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Indicedefallos
Defectos fabricación
Mismo nivel hasta obsoleto
Obsolescencia
Tiempo
Curva de Fallo del Hardware
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Tiempo
Indicedefallos
Defectos fabricación
Curva ideal
Cambio Cambio Cambio
Curva
realObsolescencia
Curva de Fallo del Hardware
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Etapas De Un Proyecto De Software
1. Planificación y/o Levantamiento de requerimientos
Productos que se obtienen de esta etapa:
• Requerimientos del sistema
• Especificaciones generales del sistema
• Costo y tiempos de ejecución del proyecto
• Recursos requeridos para el sistema
• Factibilidad del sistema
2. Análisis y diseño
Análisis y diseño
Productos generales que se obtienen de esta etapa:
• Modelos de casos de uso (reglas del negocio)
• Interfaces de entrada y salida del sistema
• Modelo relacional de la base de datos
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Definición de Requisitos y Requerimientos
Los requisitos de un sistema son los aspectos que el sistema desarrollado
debe cumplir. Surgen de las necesidades del cliente, de las limitaciones
del entorno donde se va a implantar o de la propia gestión de la
información que debe realizar el sistema.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Características del Software
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Tipos de Requerimientos
Los requisitos van a delimitar cómo quiere el cliente que se comporte el sistema,
que información tiene que manejar y cómo la debe procesar y presentar. Para
identificar todos estos aspectos se deben estudiar y analizar los requerimientos
funcionales y no funcionales:
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Los Requerimientos pueden ser Funcionales o
No-Funcionales
• Los Requerimientos funcionales describen servicios o funciones
• Los Requerimientos No-funcionales son un límite en el sistema
o en el proceso de desarrollo.
Requerimientos de Dominio
• Requerimientos que se obtienen de el dominio de la
aplicacion del sistema y que reflejan sus
caracteristicas.
Tipos de Requerimientos
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
.
1.1 Requisitos de Actores
Son los que afectan a los diferentes actores del sistema, que van a
proporcionarle la información de entrada y van a recibir la información de
salida del sistema. Por ejemplo:
Usuarios Son los responsables de interactuar con el sistemaSon los responsables de interactuar con el sistema
Grupos
Permite realizar conjuntos de usuarios con
características comunes, para simplificar las reglas de
interacción entre los usuarios y el sistema
Permite realizar conjuntos de usuarios con
características comunes, para simplificar las reglas de
interacción entre los usuarios y el sistema
Perfiles
Permite agrupar todas las características que distinguen
a un usuario o grupo
Permite agrupar todas las características que distinguen
a un usuario o grupo
Papeles
(roles)
Permite asignar grupos de funcionalidades a los
usuarios y grupos, permitiendo diferenciar el
comportamiento de los usuarios con el sistema según la
actividad o proceso a realizar en el mismo
Permite asignar grupos de funcionalidades a los
usuarios y grupos, permitiendo diferenciar el
comportamiento de los usuarios con el sistema según la
actividad o proceso a realizar en el mismo
Tipos de Requerimientos
1. REQUERIMIENTOS FUNCIONALES
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
1.2 Requisitos de Interfaz
Refleja todos los requisitos que definen la forma de enviar la información a
procesar por los usuarios al sistema, y la forma de recibir la respuesta del
sistema por el usuario. Entre ellos podemos distinguir:
Medios de
interacción
Aplicación de escritorio, páginas Web,Aplicación de escritorio, páginas Web,
Pantallas formularios y demás elementos de la interfaz de usuarioformularios y demás elementos de la interfaz de usuario
Mensajes
intercambios y protocolos de comunicación,
fundamentales para describir las interacciones entre
sistemas
intercambios y protocolos de comunicación,
fundamentales para describir las interacciones entre
sistemas
CLAMB
Pantallas de gestión normalizadas: consultas, listados,
altas, modificaciones y bajas.
Pantallas de gestión normalizadas: consultas, listados,
altas, modificaciones y bajas.
Informes
documentos, archivos y datos en general generados por
el sistema.
documentos, archivos y datos en general generados por
el sistema.
Tipos de Requerimientos
1. REQUERIMIENTOS FUNCIONALES
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
2.1 Requisitos de Rendimiento
Se tiene en cuenta las métricas de rendimiento, pues suelen ser fácilmente medibles.
Entre ellos podemos sugerir los siguientes:
• Velocidad de las peticiones al sistema (número de peticiones que debe responder
en cierto tiempo)
• Tiempo medio de respuesta por tipo de petición, que sería el tiempo máximo (en
media) que debería tardar el sistema en contestar a una petición
• Velocidad en la comunicación con el sistema
• Velocidad en la gestión de la interfaz del usuario
Tipos de Requerimientos
2. REQUERIMIENTOS NO FUNCIONALES
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
2.3 Requisitos de Calidad
Aquí recogemos los requisitos que afectan a la gestión de la Calidad en el
desarrollo del proyecto. Entre ellos podemos destacar:
• Normativas y procedimientos de gestión del proyecto
• Normativas y procedimientos de desarrollo
• Normativas y procedimientos de documentación
• Normativas y Procedimientos de generación de entregables
• Normativas de calidad del Cliente
• Pruebas de Certificación de Calidad que deben superar los entregables.
Tipos de Requerimientos
2. REQUERIMIENTOS NO FUNCIONALES
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
2.4 Requisitos de Almacenamiento
Aquí se recogen todos los requisitos que especifican el cómo, dónde y
cuándo guardar los datos persistentes del sistema, así como la capacidad
del sistema de almacenamiento de los mismos, su seguridad, su fiabilidad,
su protección contra fallos o intento de acceso no autorizado y su política
de respaldo.
Tipos de Requerimientos
2. REQUERIMIENTOS NO FUNCIONALES
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
2.5 Requisitos de Seguridad
Aquí se recogen todos los requisitos relativos a la seguridad del sistema, como
pueden ser:
• Control de acceso al sistema y autenticación de usuarios.
• Políticas de usuarios y contraseñas, si las hubiere.
• Desactivación de usuarios.
• Control y auditoría de las acciones de los usuarios.
• Políticas de gestión de la seguridad y de los elementos y funcionalidades del
sistema.
Tipos de Requerimientos
2. REQUERIMIENTOS NO FUNCIONALES
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
2.5 Requisitos de Seguridad
• Métodos de agrupación de usuarios, y de permisos. Esquemas de administración y
almacenamiento de la seguridad.
• Gestión de los roles de los usuarios, si hubiese.
• Medidas de protección del sistema frente a ataques externos.
• Normativas y protocolos de seguridad que debe cumplir el sistema.
• Auditorías de seguridad y alarmas.
Tipos de Requerimientos
2. REQUERIMIENTOS NO FUNCIONALES
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
2.6 Requisitos de Escalabilidad
Aquí se recogen los requisitos de capacidad del sistema y cómo se debe
poder ampliar si es necesario. Si el sistema es utilizado por múltiples
usuarios simultáneos, debe disponer de un plan para redimensionar el
sistema al crecer el número de usuarios.
Tipos de Requerimientos
2. REQUERIMIENTOS NO FUNCIONALES
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
2.7 Requisitos Legales y Normativas
En este apartado se recogen los requisitos legales que debe cumplir el
sistema, es decir, toda la normativa legal que aplica al sistema, las
restricciones legales de su uso y las normativas de gestión de la
información confidencial. También se incluyen los requisitos de destrucción
de información confidencial al final del ciclo de vida de la misma.
Tipos de Requerimientos
2. REQUERIMIENTOS NO FUNCIONALES
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Recogen todos los requisitos que debe cumplir el sistema,
independientemente de la funcionalidad que debe cubrir.
3.1 Requisitos de Arquitectura
Estos requisitos definen arquitectura y componentes del sistema, cuando es
un sistema creado a partir de varios, modúlalos.
Tipos de Requerimientos
3. REQUERIMIENTOS DEL SISTEMA
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
3.2 Requisitos de Software
Se recogen todos los requisitos de software que se aplicarán al sistema,
como pueden ser:
•Sistemas operativos de los diferentes módulos que forman el sistema,
incluyendo versiones y actualizaciones.
•Software adicional necesario en el sistema
•Requisitos de actualización del software de base del sistema
Tipos de Requerimientos
3. REQUERIMIENTOS DEL SISTEMA
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
3.3 Requisitos de Hardware
Se recogen los requisitos de hardware de los componentes del sistema.
Entre ellos; tipos de servidores, configuración de los mismos, tipos de
unidades de disco y configuración, sistemas de backup, etc.
Tipos de Requerimientos
3. REQUERIMIENTOS DEL SISTEMA
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
3.4 Requisitos de Comunicaciones
Aquí se recogen los requisitos para interconectar el sistema se definen los
parámetros de red requeridos, topología, tipos de enlace, anchos de banda,
etc.
Tipos de Requerimientos
3. REQUERIMIENTOS DEL SISTEMA
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
3.5 Requisitos de Integración
Se recogen los requisitos de integración del sistema con otros sistemas
externos o del cliente. Se debe incluir los protocolos que se deben
soportar, los servicios que nos proporcionan o que debemos proporcionar,
las aplicaciones con las que debemos interactuar, etc.
Tipos de Requerimientos
3. REQUERIMIENTOS DEL SISTEMA
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
3.6 Requisitos de Contingencia
Aquí enunciaremos los requisitos que debe cumplir nuestro sistema en caso
de contingencia, y que servirán de base para desarrollar el plan de
contingencia del sistema.
Tipos de Requerimientos
3. REQUERIMIENTOS DEL SISTEMA
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Riesgo, incertidumbre, perdida
Incertidumbre: Puede o no
ocurrir, no hay riesgos del 100%
de probabilidad.
Pérdida: Si el riesgo ocurre, hay
pérdidas.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Categorías
de riesgos
de software
1. Riesgos del proyecto:
2. Riesgos del producto:
3. Riesgos del negocio:
Amenazan al plan del proyecto; la
planificación temporal y los costos.
Ej: Pérdida de un diseñador
experimentado.
Amenazan la calidad y la
planificación temporal; la
implementación puede llegar a ser
difícil o imposible. Ej: Rendimiento
de un componente menor al
esperado.
Amenazan la viabilidad del
software a construir. Ej: Un
competidor introduzca un nuevo
producto.
Riesgo del Software
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
28
Ingenieria de Requerimientos: Pasos principales
1. Entender el problema: definicion
2. Describir el problema: especificacion
3. Verificar la naturaleza del problema: validacion
4. Ponerse de acuerdo en los limites del problema:
negociacion
Este es un proceso iterativo
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
29
Marco del proceso de requerimientos
definicion
negociacion
especification
validaciondoc & admon
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Características de los requerimientos
En principio los requerimientos deben ser
precisos, completos y consistentes.
Precisos
• Deben extraer con precisión lo que se desea del sistema
Completos
• Deben incluir todas las descripciones y componentes requeridos
Consistente
• No debe haber conflictos o contradicciones en las descripciones
de los requerimientos
En la practica es difícil producir un documento
con estas características.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Especificaciones de Requerimientos
1.1 El usuario debe proporcionar facilidades para definir el tipo de archivos
externos.
1.2 Cada tipo de archivo externo puede tener una herramienta asociada. La
cual, será
aplicada para el archivo.
1.3 Cada tipo de archivo externo será representado como un icono específico
mostrado al usuario.
1.4 Las facilidades proporcionadas para la representación del icono en un tipo
de archivo
externo será definido por el usuario.
1.5 Cuando un usuario selecciona una representación de icono de un archivo
externo, el
efecto de la selección es aplicar las herramientas asociadas con el tipo de
archivo externo al archivo representado por la selección del icono.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Lectores de Requerimientos
Gerencia de Cliente
Usuarios Finales del Sistema
Ingenieros de Clientes
Gerencia de Contratistas
Arquitectos del Sistema
Definición de
Requerimientos
Especificacion de
Requerimientos
Usuarios Finales del Sistema
Ingenieros de Cliente
Arquitectos del Sistema
Desarrolladores de Software
Especificación de
Software
Ingenieros de Clientes
Arquitectos del Sistema
Desarrolladores de Software
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Razones de Inconsistencia
Los sistemas de software grandes deben permitir una
mejora en la situación actual de la empresa. Es difícil
anticipar los efectos que el sistema tendrá en la
organización.
Usuarios diferentes tienen requerimientos y prioridades
diferentes. Hay constantemente cambios en los
requerimientos.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Razones de Inconsistencia
Los usuarios finales del sistema y la organización que
paga por el sistema tienen requerimientos diferentes.
El prototipado es requerido para clarificar requerimientos
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Proceso de Ingeniería de Requerimientos
Estudio de Factibilidad
• Encontrar si las necesidades de los usuarios son satisfechas
dada la tecnología y el presupuesto disponible?
Análisis de Requerimientos
• Detallar que es lo que los usuarios requieren del sistema.
Definición de Requerimientos
• Definir los requerimientos en una forma comprensible para el
cliente.
Especificación de Requerimientos
• Define los requerimientos en detalle.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
El Proceso de Ingeniería de Requerimientos
Estudio de
Factibilidad
Análisis de
Requerimientos
Definición de
Requerimientos
Especificación
de Requerimientos
Reporte de
Factibilidad
Modelos del
Sistema
Documento de
Requerimientos
Definición de
Requerimientos
Especificación de
Requerimientos
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Documento de Requerimientos
Es la declaración oficial de lo que es requerido
para que el sistema sea desarrollado.
Incluye la definición y especificación de
requerimientos.
No es un documento de diseño. Tanto como sea
posible, es un conjunto de lo que es el sistema y
no de como lo hará.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Requerimientos del Documento
Especificación del comportamiento externa del
sistema.
Especificar las restricciones de la implementación.
Fácil de cambiar.
Sirve como una herramienta de referencia para el
mantenimiento.
Registro del ciclo de vida del sistema, con el fin de
predecir cambios.
Caracteriza respuestas a eventos inesperados.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Estructura del Documento de Requerimientos
Introducción.
• Describe la necesidad de crear el sistema y cuales son sus
objetivos de negocio.
Glosario.
• Define los términos técnicos usados.
Modelos del Sistema.
• Define los modelos mediante los cuales se muestran los
componentes del sistema y las relaciones entre ellos.
Definición de Requerimientos Funcionales.
• Define los servicios que serán proporcionados.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Definición de Requerimientos No-funcionales.
• Definir las restricciones del sistema y el proceso de desarrollo.
Evolución del Sistema.
• Definir las suposiciones fundamentales en las cuales el sistema se basa
y los cambios que preveen.
Especificación de Requerimientos.
• Especificación detallada de los requerimientos funcionales del sistema.
Apéndices.
• Descripción de la plataforma de Hardware del Sistema.
• Requerimientos de la base de Datos (quizá como un modelo Entidad
Relacion)
Indice.
Estructura del Documento de Requerimientos
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
El Analista de Requerimientos
Analista de Requerimientos
Patrocinador del Proyecto Administrador del Proyecto
Desarrolladores
PruebasOtros interesados
en el sistema
Cliente y
Usuarios
requerimientos
del negocio
requerimientos
del cliente/usuario
restricciones y
requerimientos
requerimientos funcionales
y no-funcionales
requerimientos funcionales
y no-funcionales
Factibilidad,
Tiempos y costos
Analista de Requerimientos
Patrocinador del Proyecto Administrador del Proyecto
Desarrolladores
PruebasOtros interesados
en el sistema
Cliente y
Usuarios
requerimientos
del negocio
requerimientos
del cliente/usuario
restricciones y
requerimientos
requerimientos funcionales
y no-funcionales
requerimientos funcionales
y no-funcionales
Factibilidad,
Tiempos y costos
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
El Analista de Requerimientos
Actividades:
Definir los objetivos del proyecto y los beneficios al negocio.
Identificar el problema a resolver y obtener los requerimientos.
Identificar a los involucrados en el desarrollo del proyecto así
como a las clases de clientes y usuarios.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
El Analista de Requerimientos
Actividades:
Identificar el ambiente del dominio a desarrollar y estar
preparado para desarrollar el sistema requerido.
Administrar los requerimientos utilizando un proceso y un plan
de requerimientos.
Modelar los requerimientos.
Realizar control de cambios en los requerimientos.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Habilidades:
Capacidad de comunicación.
Capacidad de análisis y observación.
Capacidad de organización.
Analizar los riesgos del desarrollo del software.
El Analista de Requerimientos
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
El Cliente
Actividades y responsabilidades:
Educar al analista de requerimientos acerca del negocio y sus
objetivos.
Ser claro y preciso acerca del problema que se quiere resolver.
Colaborar con el analista en la definición de los requerimientos.
Revisar los documentos de requerimientos y el avance del proyecto.
Comunicar a los analistas sobre cambios en los requerimientos.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Actividades y responsabilidades:
Plantear costos y tiempos esperados de desarrollo y estar abierto a
discutir cambios en los costos y tiempos de entrega.
Estar siempre dispuesto a reunirse con los desarrolladores para
discutir distintos aspectos del proyecto.
Respetar los procesos que implementarán los desarrolladores para
implementar el producto
El Cliente
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
El Usuario
Clasificación de los usuarios:
La frecuencia con la que usan el sistema.
Las funciones que usan del sistema y su frecuencia.
La experiencia en el dominio de la aplicación y su experiencia con
otros sistemas similares.
El tipo de uso que le dan al sistema (operación, administración,
mantenimiento, supervisión).
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
El Usuario
Clasificación de los usuarios:
Las tareas que desempeñan en soporte de los procesos de la
organización.
Sus privilegios de acceso o niveles de seguridad (tales como usuario
invitado, administrador o usuario de nivel interno).
Tipo de usuarios necesarios para operar el sistema (persona, grupo de
personas, robot, u otra computadora).
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Problemas asociados al proceso
Problemas de alcance, en los cuales se describen
el ámbito y los límites de operación del software.
En esta categoría algunos de los problemas
podrían ser, que el ambiente del sistema no esta
bien delimitado, o que no exista información
suficiente del flujo de información de la
organización.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Problemas asociados al proceso
Problemas de comprensión de lo que se quiere construir,
con los clientes, usuarios y con los grupos de
desarrolladores. En esta categoría podrían aparecer
distintos problemas:
• Los clientes y usuarios no entienden completamente todo lo que
requieren o no cuentan con toda la información que de soporte a
sus necesidades.
• Los clientes y usuarios tienen poco conocimiento de las
capacidades y limitaciones de los sistemas de cómputo.
• Los analistas de requerimientos tienen poco conocimiento del
dominio de la aplicación.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Problemas de volatilidad debidos a los
continuos cambios en los requerimientos. En esta
categoría se trata de resolver los problemas que
existen cuando los requerimientos deben cambiar
razones tecnológicas, por errores, o por mejoras.
Problemas de conflictos entre requerimientos.
Problemas asociados al proceso
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Validación de Requerimientos
Demostración de que los requerimientos que definen el
sistema son lo que el cliente realmente quiere.
Los costos de errores en los requerimientos son altos, por
lo cual, la validación es muy importante.
• Fijar un error de requerimiento después del desarrollo puede resultar
en un costo 100 veces mayor que fijar un error en la implementación.
El Prototipado es una técnica importante en la validación
de requerimientos.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Chequeo de Requerimientos
Validez. Provee al sistema las funciones que mejor
soportan las necesidades del cliente?
Consistencia. Existen conflictos en los
requerimientos?
Completitud. Están incluidas todas las funciones
requeridas por el cliente?
Realismo. Pueden los requerimientos ser
implementados con la tecnología y el presupuesto
disponible?
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Revisión de Requerimientos
Revisiones frecuentes deben llevarse a cabo mientras
la definición de requerimientos está siendo hecha.
Tanto el cliente como el staff de contratistas deben
estar involucrados en la revisión.
La revisión pueden ser formales (con los documentos
completos) o informales. Una buena comunicación
entre desarrolladores, clientes y usuarios puede
resolver problemas en las primeras etapas.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Chequeo de la Revisión
Verificabilidad. Pueden hacerse pruebas de los
requerimientos?
Entendibilidad. Se comprenden los requerimientos?
Busqueda (trace). El origen de los requerimientos
esta claramente establecido?
Adaptabilidad. Puede el requerimiento ser cambiado
sin causar un gran impacto en otros requerimientos?
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Chequeo de Consistencia Automatizado
Requerimientos en un
Lenguaje Formal
Proceso de
Requerimientos
Base de Datos
de Requerimientos
Reporte de los problemas
de Requerimientos
Análisis de
Requerimientos
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Evolución de Requerimientos
Comprensión Inicial
del Problema
Comprensión de los
Cambios del Problema
Requerimientos
Iniciales
Cambios en los
Requerimientos
Tiempo
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Factores sociales y organizacionales
Los sistemas de software se usan dentro de un
contexto social y organizacional. Estos pueden influir
o dominar los requerimientos del sistema.
Los factores sociales y organizacionales tienen
influencia en todos los puntos de vista.
Los analistas deben ser sencibles a estos factores
aunque no exista una forma sistematica de
enfrentarlos.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Ejemplo
Considere un sistema que permite a los administradores
accesar informacion sin consultar con los operadores del
sistema.
• Estatus de la Administracion. Los adminstradores consideran
que ellos son demasiado importantes como para tener que usar
un teclado de computadora. Esto podria limitar el tipo de
interfaz hombre-maquina a diseñar.
• Responsabilidades de la administracion. Los administradores
podrian no tener tiempo para aprender a usar el sistema.
• Resistencia organizacional. Los administradores podrian no dar
informacion completa o incluso dar informacion erronea para
que el sistema falle.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Resumen
Es muy difícil formular una especificación de
requerimientos completa y consistente.
Una definición de requerimientos, una especificación de
requerimientos y una especificación de Software son
una manera de especificar el Software para diferentes
tipos de lectores.
El Documento de Requerimientos es una descripción
para clientes y desarrolladores.
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Algoritmos y Computación Avanzada
Tutor: Eliezer Córdova
Los errores en los requerimientos son usualmente muy
caros de corregir una vez desarrollado el sistema.
La revisión debe involucrar al cliente y al staff de
contratistas para validar los requerimientos del
sistema.
El establecer requerimientos está relacionado con las
actividades del cliente.
Resumen

Más contenido relacionado

La actualidad más candente

Evaluacion de algoritmo
Evaluacion de algoritmoEvaluacion de algoritmo
Evaluacion de algoritmo
SergioERondon
 
ACTIVIDAD 3
ACTIVIDAD 3ACTIVIDAD 3
ACTIVIDAD 3
karliestefania
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicos
cbertolotti
 
Algoritmo Y Pseudocódigo
Algoritmo Y PseudocódigoAlgoritmo Y Pseudocódigo
Algoritmo Y Pseudocódigo
JohanCaro5
 
Diseño Estructurado de Algoritmos
Diseño Estructurado de AlgoritmosDiseño Estructurado de Algoritmos
Diseño Estructurado de Algoritmos
Mary Martínez Morales
 
ACT.- 3 CUESTIONARIO
ACT.- 3 CUESTIONARIOACT.- 3 CUESTIONARIO
ACT.- 3 CUESTIONARIO
Elizabeth Reyna
 
Introduciòn
IntroduciònIntroduciòn
Introduciòn
omarzon
 
Lo básico para programar
Lo básico para programarLo básico para programar
Lo básico para programar
Celestino Duran
 
Programas diseñados para realizar algoritmo
Programas  diseñados para realizar algoritmoProgramas  diseñados para realizar algoritmo
Programas diseñados para realizar algoritmo
TAMELIMAR
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
Marco Chunab
 
ACTIVIDAD NUMERO 3
ACTIVIDAD NUMERO 3ACTIVIDAD NUMERO 3
ACTIVIDAD NUMERO 3
areliyesica
 
Act 3
Act 3Act 3
Act 3w
Act 3wAct 3w
Act 3w
Claudio Cruz
 
Unidad II Algoritmo y Metodoligia para resolver problemas utilizando el compu...
Unidad II Algoritmo y Metodoligia para resolver problemas utilizando el compu...Unidad II Algoritmo y Metodoligia para resolver problemas utilizando el compu...
Unidad II Algoritmo y Metodoligia para resolver problemas utilizando el compu...
JosAngelLaraMendoza
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
justo morales
 
Teoria Algoritmia
Teoria AlgoritmiaTeoria Algoritmia
Teoria Algoritmia
darioc77
 
ALGORITMOS Y PSEUDOCODIGOS
ALGORITMOS Y PSEUDOCODIGOSALGORITMOS Y PSEUDOCODIGOS
ALGORITMOS Y PSEUDOCODIGOS
eliaaaramos
 
Algoritmos, dfd, pseudocodigo
Algoritmos, dfd, pseudocodigoAlgoritmos, dfd, pseudocodigo
Algoritmos, dfd, pseudocodigo
AdolfoReyes24
 
Algoritmos
Algoritmos Algoritmos
Algoritmos
ANIMEFLV
 
Ingeniería introducción completa
Ingeniería introducción completaIngeniería introducción completa
Ingeniería introducción completa
ANIMEFLV
 

La actualidad más candente (20)

Evaluacion de algoritmo
Evaluacion de algoritmoEvaluacion de algoritmo
Evaluacion de algoritmo
 
ACTIVIDAD 3
ACTIVIDAD 3ACTIVIDAD 3
ACTIVIDAD 3
 
Algorítmos - Conceptos básicos
Algorítmos - Conceptos básicosAlgorítmos - Conceptos básicos
Algorítmos - Conceptos básicos
 
Algoritmo Y Pseudocódigo
Algoritmo Y PseudocódigoAlgoritmo Y Pseudocódigo
Algoritmo Y Pseudocódigo
 
Diseño Estructurado de Algoritmos
Diseño Estructurado de AlgoritmosDiseño Estructurado de Algoritmos
Diseño Estructurado de Algoritmos
 
ACT.- 3 CUESTIONARIO
ACT.- 3 CUESTIONARIOACT.- 3 CUESTIONARIO
ACT.- 3 CUESTIONARIO
 
Introduciòn
IntroduciònIntroduciòn
Introduciòn
 
Lo básico para programar
Lo básico para programarLo básico para programar
Lo básico para programar
 
Programas diseñados para realizar algoritmo
Programas  diseñados para realizar algoritmoProgramas  diseñados para realizar algoritmo
Programas diseñados para realizar algoritmo
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
 
ACTIVIDAD NUMERO 3
ACTIVIDAD NUMERO 3ACTIVIDAD NUMERO 3
ACTIVIDAD NUMERO 3
 
Act 3
Act 3Act 3
Act 3
 
Act 3w
Act 3wAct 3w
Act 3w
 
Unidad II Algoritmo y Metodoligia para resolver problemas utilizando el compu...
Unidad II Algoritmo y Metodoligia para resolver problemas utilizando el compu...Unidad II Algoritmo y Metodoligia para resolver problemas utilizando el compu...
Unidad II Algoritmo y Metodoligia para resolver problemas utilizando el compu...
 
Conceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programaciónConceptos básicos y metodología de la programación
Conceptos básicos y metodología de la programación
 
Teoria Algoritmia
Teoria AlgoritmiaTeoria Algoritmia
Teoria Algoritmia
 
ALGORITMOS Y PSEUDOCODIGOS
ALGORITMOS Y PSEUDOCODIGOSALGORITMOS Y PSEUDOCODIGOS
ALGORITMOS Y PSEUDOCODIGOS
 
Algoritmos, dfd, pseudocodigo
Algoritmos, dfd, pseudocodigoAlgoritmos, dfd, pseudocodigo
Algoritmos, dfd, pseudocodigo
 
Algoritmos
Algoritmos Algoritmos
Algoritmos
 
Ingeniería introducción completa
Ingeniería introducción completaIngeniería introducción completa
Ingeniería introducción completa
 

Similar a Requerimientos

conceptos 1.pdf
conceptos 1.pdfconceptos 1.pdf
conceptos 1.pdf
CESARAS4
 
Requisitos
RequisitosRequisitos
Requisitos
guest90198711
 
Requerimientos tipos-y-definiciones
Requerimientos tipos-y-definicionesRequerimientos tipos-y-definiciones
Requerimientos tipos-y-definiciones
Juan Restrepo
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
Juan Restrepo
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
Juan Restrepo
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definicionesrequerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
Juan Restrepo
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
Juan Restrepo
 
Investigación sobre técnicas que se implementan en las tareas de la Ingenierí...
Investigación sobre técnicas que se implementan en las tareas de la Ingenierí...Investigación sobre técnicas que se implementan en las tareas de la Ingenierí...
Investigación sobre técnicas que se implementan en las tareas de la Ingenierí...
Karim Krystalgami
 
Clasificación de los requerimientos
Clasificación de los requerimientosClasificación de los requerimientos
Clasificación de los requerimientos
FSILSCA
 
IngenieriaDeRequisitos2.pptx
IngenieriaDeRequisitos2.pptxIngenieriaDeRequisitos2.pptx
IngenieriaDeRequisitos2.pptx
ssuser8c00ad
 
Ender mendoza
Ender mendozaEnder mendoza
Ender mendoza
ender mendoza carrillo
 
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdfTema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
NinoskaChuraLlojlla1
 
2007_lunes8_inicio.ppt
2007_lunes8_inicio.ppt2007_lunes8_inicio.ppt
2007_lunes8_inicio.ppt
TICSEPERU1
 
ing de requisitos.ppt
ing de requisitos.ppting de requisitos.ppt
ing de requisitos.ppt
AbrahamPacheco29
 
Requerimientos funcionales y no funcionales
Requerimientos funcionales y no funcionalesRequerimientos funcionales y no funcionales
Requerimientos funcionales y no funcionales
LeidyChavarria8
 
Requerimientos.ppt
Requerimientos.pptRequerimientos.ppt
Requerimientos.ppt
TereBestene
 
2007 lunes8 inicio
2007 lunes8 inicio2007 lunes8 inicio
2007 lunes8 inicio
NAUTICAFOREVER
 
Especificaciones de Requerimientos SRS
Especificaciones de Requerimientos SRSEspecificaciones de Requerimientos SRS
Especificaciones de Requerimientos SRS
sullinsan
 
Analisis y Diseño de Sistemas
Analisis y Diseño de SistemasAnalisis y Diseño de Sistemas
Analisis y Diseño de Sistemas
cardan2007i
 
02 captura de requisitos
02 captura de requisitos02 captura de requisitos
02 captura de requisitos
Mariana Fajardo Estudillo
 

Similar a Requerimientos (20)

conceptos 1.pdf
conceptos 1.pdfconceptos 1.pdf
conceptos 1.pdf
 
Requisitos
RequisitosRequisitos
Requisitos
 
Requerimientos tipos-y-definiciones
Requerimientos tipos-y-definicionesRequerimientos tipos-y-definiciones
Requerimientos tipos-y-definiciones
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definicionesrequerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
 
Investigación sobre técnicas que se implementan en las tareas de la Ingenierí...
Investigación sobre técnicas que se implementan en las tareas de la Ingenierí...Investigación sobre técnicas que se implementan en las tareas de la Ingenierí...
Investigación sobre técnicas que se implementan en las tareas de la Ingenierí...
 
Clasificación de los requerimientos
Clasificación de los requerimientosClasificación de los requerimientos
Clasificación de los requerimientos
 
IngenieriaDeRequisitos2.pptx
IngenieriaDeRequisitos2.pptxIngenieriaDeRequisitos2.pptx
IngenieriaDeRequisitos2.pptx
 
Ender mendoza
Ender mendozaEnder mendoza
Ender mendoza
 
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdfTema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf
 
2007_lunes8_inicio.ppt
2007_lunes8_inicio.ppt2007_lunes8_inicio.ppt
2007_lunes8_inicio.ppt
 
ing de requisitos.ppt
ing de requisitos.ppting de requisitos.ppt
ing de requisitos.ppt
 
Requerimientos funcionales y no funcionales
Requerimientos funcionales y no funcionalesRequerimientos funcionales y no funcionales
Requerimientos funcionales y no funcionales
 
Requerimientos.ppt
Requerimientos.pptRequerimientos.ppt
Requerimientos.ppt
 
2007 lunes8 inicio
2007 lunes8 inicio2007 lunes8 inicio
2007 lunes8 inicio
 
Especificaciones de Requerimientos SRS
Especificaciones de Requerimientos SRSEspecificaciones de Requerimientos SRS
Especificaciones de Requerimientos SRS
 
Analisis y Diseño de Sistemas
Analisis y Diseño de SistemasAnalisis y Diseño de Sistemas
Analisis y Diseño de Sistemas
 
02 captura de requisitos
02 captura de requisitos02 captura de requisitos
02 captura de requisitos
 

Más de Eliezer Cordova

Tipos de comunicacion
Tipos de comunicacionTipos de comunicacion
Tipos de comunicacion
Eliezer Cordova
 
Presentacion 3
Presentacion 3Presentacion 3
Presentacion 3
Eliezer Cordova
 
Presentacion 2
Presentacion 2Presentacion 2
Presentacion 2
Eliezer Cordova
 
Presentacion 2
Presentacion 2Presentacion 2
Presentacion 2
Eliezer Cordova
 
Presentacion 1
Presentacion 1Presentacion 1
Presentacion 1
Eliezer Cordova
 
Introduccion publisher
Introduccion publisherIntroduccion publisher
Introduccion publisher
Eliezer Cordova
 
Presentaciones efectivas
Presentaciones efectivasPresentaciones efectivas
Presentaciones efectivas
Eliezer Cordova
 
Programación
ProgramaciónProgramación
Programación
Eliezer Cordova
 
Presentacion aula virtual videoconferencia
Presentacion aula virtual videoconferenciaPresentacion aula virtual videoconferencia
Presentacion aula virtual videoconferencia
Eliezer Cordova
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.ppt
Eliezer Cordova
 
3 estructuras no lineales estáticas y dinámicas
3  estructuras no lineales estáticas y dinámicas3  estructuras no lineales estáticas y dinámicas
3 estructuras no lineales estáticas y dinámicas
Eliezer Cordova
 
2 arboles
2 arboles2 arboles
2 arboles
Eliezer Cordova
 
1 árbol
1 árbol1 árbol
1 árbol
Eliezer Cordova
 
Acciones funciones
Acciones funcionesAcciones funciones
Acciones funciones
Eliezer Cordova
 
3 funciones
3 funciones3 funciones
3 funciones
Eliezer Cordova
 
2 estructura programa-c
2 estructura programa-c2 estructura programa-c
2 estructura programa-c
Eliezer Cordova
 
1 estructura programa-c
1 estructura programa-c1 estructura programa-c
1 estructura programa-c
Eliezer Cordova
 
Introduccion ia
Introduccion iaIntroduccion ia
Introduccion ia
Eliezer Cordova
 
Inteligencia artificial
Inteligencia artificialInteligencia artificial
Inteligencia artificial
Eliezer Cordova
 
Sistemas operativos 3
Sistemas operativos 3Sistemas operativos 3
Sistemas operativos 3
Eliezer Cordova
 

Más de Eliezer Cordova (20)

Tipos de comunicacion
Tipos de comunicacionTipos de comunicacion
Tipos de comunicacion
 
Presentacion 3
Presentacion 3Presentacion 3
Presentacion 3
 
Presentacion 2
Presentacion 2Presentacion 2
Presentacion 2
 
Presentacion 2
Presentacion 2Presentacion 2
Presentacion 2
 
Presentacion 1
Presentacion 1Presentacion 1
Presentacion 1
 
Introduccion publisher
Introduccion publisherIntroduccion publisher
Introduccion publisher
 
Presentaciones efectivas
Presentaciones efectivasPresentaciones efectivas
Presentaciones efectivas
 
Programación
ProgramaciónProgramación
Programación
 
Presentacion aula virtual videoconferencia
Presentacion aula virtual videoconferenciaPresentacion aula virtual videoconferencia
Presentacion aula virtual videoconferencia
 
Lenguajes de programación.ppt
Lenguajes de programación.pptLenguajes de programación.ppt
Lenguajes de programación.ppt
 
3 estructuras no lineales estáticas y dinámicas
3  estructuras no lineales estáticas y dinámicas3  estructuras no lineales estáticas y dinámicas
3 estructuras no lineales estáticas y dinámicas
 
2 arboles
2 arboles2 arboles
2 arboles
 
1 árbol
1 árbol1 árbol
1 árbol
 
Acciones funciones
Acciones funcionesAcciones funciones
Acciones funciones
 
3 funciones
3 funciones3 funciones
3 funciones
 
2 estructura programa-c
2 estructura programa-c2 estructura programa-c
2 estructura programa-c
 
1 estructura programa-c
1 estructura programa-c1 estructura programa-c
1 estructura programa-c
 
Introduccion ia
Introduccion iaIntroduccion ia
Introduccion ia
 
Inteligencia artificial
Inteligencia artificialInteligencia artificial
Inteligencia artificial
 
Sistemas operativos 3
Sistemas operativos 3Sistemas operativos 3
Sistemas operativos 3
 

Último

CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIACONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
ginnazamudio
 
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdfAPUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
VeronicaCabrera50
 
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docxLecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Alejandrino Halire Ccahuana
 
La vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primariaLa vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primaria
EricaCouly1
 
Prueba/test conoce tus heridas de la infancia
Prueba/test conoce tus heridas de la infanciaPrueba/test conoce tus heridas de la infancia
Prueba/test conoce tus heridas de la infancia
LudmilaOrtega3
 
Liturgia día del Padre del siguiente domingo.pptx
Liturgia día del Padre del siguiente domingo.pptxLiturgia día del Padre del siguiente domingo.pptx
Liturgia día del Padre del siguiente domingo.pptx
YeniferGarcia36
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
israelsouza67
 
Business Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business TechBusiness Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business Tech
johnyamg20
 
Chatgpt para los Profesores Ccesa007.pdf
Chatgpt para los Profesores Ccesa007.pdfChatgpt para los Profesores Ccesa007.pdf
Chatgpt para los Profesores Ccesa007.pdf
Demetrio Ccesa Rayme
 
Módulo 1 de didactica de la lecto escritura
Módulo 1 de didactica de la lecto escrituraMódulo 1 de didactica de la lecto escritura
Módulo 1 de didactica de la lecto escritura
marilynfloresyomona1
 
Presentación simple corporativa degradado en violeta blanco.pdf
Presentación simple corporativa degradado en violeta blanco.pdfPresentación simple corporativa degradado en violeta blanco.pdf
Presentación simple corporativa degradado en violeta blanco.pdf
eleandroth
 
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
JAVIER SOLIS NOYOLA
 
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBALMATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
Ana Fernandez
 
200. Efemerides junio para trabajar en periodico mural
200. Efemerides junio para trabajar en periodico mural200. Efemerides junio para trabajar en periodico mural
200. Efemerides junio para trabajar en periodico mural
shirherrer
 
MATERIAL ESCOLAR 2024-2025 3 AÑOS CEIP SAN CRISTÓBAL
MATERIAL ESCOLAR 2024-2025 3 AÑOS CEIP SAN CRISTÓBALMATERIAL ESCOLAR 2024-2025 3 AÑOS CEIP SAN CRISTÓBAL
MATERIAL ESCOLAR 2024-2025 3 AÑOS CEIP SAN CRISTÓBAL
Ana Fernandez
 
tema 7. Los siglos XVI y XVII ( resumen)
tema 7. Los siglos XVI y XVII ( resumen)tema 7. Los siglos XVI y XVII ( resumen)
tema 7. Los siglos XVI y XVII ( resumen)
saradocente
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
100078171
 
Camus, Albert - El Extranjero.pdf
Camus, Albert -        El Extranjero.pdfCamus, Albert -        El Extranjero.pdf
Camus, Albert - El Extranjero.pdf
AlexDeLonghi
 
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍACINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
Fernández Gorka
 
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdfCronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
RicardoValdiviaVega
 

Último (20)

CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIACONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
CONTENIDOS Y PDA DE LA FASE 3,4 Y 5 EN NIVEL PRIMARIA
 
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdfAPUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
APUNTES UNIDAD I ECONOMIA EMPRESARIAL .pdf
 
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docxLecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
Lecciones 10 Esc. Sabática. El espiritismo desenmascarado docx
 
La vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primariaLa vida de Martin Miguel de Güemes para niños de primaria
La vida de Martin Miguel de Güemes para niños de primaria
 
Prueba/test conoce tus heridas de la infancia
Prueba/test conoce tus heridas de la infanciaPrueba/test conoce tus heridas de la infancia
Prueba/test conoce tus heridas de la infancia
 
Liturgia día del Padre del siguiente domingo.pptx
Liturgia día del Padre del siguiente domingo.pptxLiturgia día del Padre del siguiente domingo.pptx
Liturgia día del Padre del siguiente domingo.pptx
 
Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024Evaluacion del tercer trimestre del 2023-2024
Evaluacion del tercer trimestre del 2023-2024
 
Business Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business TechBusiness Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business Tech
 
Chatgpt para los Profesores Ccesa007.pdf
Chatgpt para los Profesores Ccesa007.pdfChatgpt para los Profesores Ccesa007.pdf
Chatgpt para los Profesores Ccesa007.pdf
 
Módulo 1 de didactica de la lecto escritura
Módulo 1 de didactica de la lecto escrituraMódulo 1 de didactica de la lecto escritura
Módulo 1 de didactica de la lecto escritura
 
Presentación simple corporativa degradado en violeta blanco.pdf
Presentación simple corporativa degradado en violeta blanco.pdfPresentación simple corporativa degradado en violeta blanco.pdf
Presentación simple corporativa degradado en violeta blanco.pdf
 
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
ACERTIJO DESCIFRANDO CÓDIGO DEL CANDADO DE LA TORRE EIFFEL EN PARÍS. Por JAVI...
 
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBALMATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
MATERIAL ESCOLAR 2024-2025. 4 AÑOS CEIP SAN CRISTOBAL
 
200. Efemerides junio para trabajar en periodico mural
200. Efemerides junio para trabajar en periodico mural200. Efemerides junio para trabajar en periodico mural
200. Efemerides junio para trabajar en periodico mural
 
MATERIAL ESCOLAR 2024-2025 3 AÑOS CEIP SAN CRISTÓBAL
MATERIAL ESCOLAR 2024-2025 3 AÑOS CEIP SAN CRISTÓBALMATERIAL ESCOLAR 2024-2025 3 AÑOS CEIP SAN CRISTÓBAL
MATERIAL ESCOLAR 2024-2025 3 AÑOS CEIP SAN CRISTÓBAL
 
tema 7. Los siglos XVI y XVII ( resumen)
tema 7. Los siglos XVI y XVII ( resumen)tema 7. Los siglos XVI y XVII ( resumen)
tema 7. Los siglos XVI y XVII ( resumen)
 
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docxRETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
RETROALIMENTACIÓN PARA EL EXAMEN ÚNICO AUXILIAR DE ENFERMERIA.docx
 
Camus, Albert - El Extranjero.pdf
Camus, Albert -        El Extranjero.pdfCamus, Albert -        El Extranjero.pdf
Camus, Albert - El Extranjero.pdf
 
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍACINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
CINE COMO RECURSO DIDÁCTICO para utilizar en TUTORÍA
 
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdfCronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
Cronica-de-una-Muerte-Anunciada - Gabriel Garcia Marquez.pdf
 

Requerimientos

  • 1. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Ingeniería de Requerimientos Estableciendo lo que el cliente requiere de un Sistema de Software.
  • 2. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Curva de Fallo del Software • Todo el mundo exige que se realicen cambios sobre el Software como respuesta a pequeños cambios del entorno. • Además no es fácil comprender su comportamiento, según Pressman: – La curva de fallos del Hardware. – La curva ideal de fallos del Software. – La curva real de fallos del Software.
  • 3. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Tiempo Indicedefallos Defectos fabricación Estropeado Obsolescencia Curva de Fallo del Hardware
  • 4. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Indicedefallos Defectos fabricación Mismo nivel hasta obsoleto Obsolescencia Tiempo Curva de Fallo del Hardware
  • 5. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Tiempo Indicedefallos Defectos fabricación Curva ideal Cambio Cambio Cambio Curva realObsolescencia Curva de Fallo del Hardware
  • 6. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Etapas De Un Proyecto De Software 1. Planificación y/o Levantamiento de requerimientos Productos que se obtienen de esta etapa: • Requerimientos del sistema • Especificaciones generales del sistema • Costo y tiempos de ejecución del proyecto • Recursos requeridos para el sistema • Factibilidad del sistema 2. Análisis y diseño Análisis y diseño Productos generales que se obtienen de esta etapa: • Modelos de casos de uso (reglas del negocio) • Interfaces de entrada y salida del sistema • Modelo relacional de la base de datos
  • 7. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Definición de Requisitos y Requerimientos Los requisitos de un sistema son los aspectos que el sistema desarrollado debe cumplir. Surgen de las necesidades del cliente, de las limitaciones del entorno donde se va a implantar o de la propia gestión de la información que debe realizar el sistema.
  • 8. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Características del Software
  • 9. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Tipos de Requerimientos Los requisitos van a delimitar cómo quiere el cliente que se comporte el sistema, que información tiene que manejar y cómo la debe procesar y presentar. Para identificar todos estos aspectos se deben estudiar y analizar los requerimientos funcionales y no funcionales:
  • 10. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Los Requerimientos pueden ser Funcionales o No-Funcionales • Los Requerimientos funcionales describen servicios o funciones • Los Requerimientos No-funcionales son un límite en el sistema o en el proceso de desarrollo. Requerimientos de Dominio • Requerimientos que se obtienen de el dominio de la aplicacion del sistema y que reflejan sus caracteristicas. Tipos de Requerimientos
  • 11. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova . 1.1 Requisitos de Actores Son los que afectan a los diferentes actores del sistema, que van a proporcionarle la información de entrada y van a recibir la información de salida del sistema. Por ejemplo: Usuarios Son los responsables de interactuar con el sistemaSon los responsables de interactuar con el sistema Grupos Permite realizar conjuntos de usuarios con características comunes, para simplificar las reglas de interacción entre los usuarios y el sistema Permite realizar conjuntos de usuarios con características comunes, para simplificar las reglas de interacción entre los usuarios y el sistema Perfiles Permite agrupar todas las características que distinguen a un usuario o grupo Permite agrupar todas las características que distinguen a un usuario o grupo Papeles (roles) Permite asignar grupos de funcionalidades a los usuarios y grupos, permitiendo diferenciar el comportamiento de los usuarios con el sistema según la actividad o proceso a realizar en el mismo Permite asignar grupos de funcionalidades a los usuarios y grupos, permitiendo diferenciar el comportamiento de los usuarios con el sistema según la actividad o proceso a realizar en el mismo Tipos de Requerimientos 1. REQUERIMIENTOS FUNCIONALES
  • 12. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 1.2 Requisitos de Interfaz Refleja todos los requisitos que definen la forma de enviar la información a procesar por los usuarios al sistema, y la forma de recibir la respuesta del sistema por el usuario. Entre ellos podemos distinguir: Medios de interacción Aplicación de escritorio, páginas Web,Aplicación de escritorio, páginas Web, Pantallas formularios y demás elementos de la interfaz de usuarioformularios y demás elementos de la interfaz de usuario Mensajes intercambios y protocolos de comunicación, fundamentales para describir las interacciones entre sistemas intercambios y protocolos de comunicación, fundamentales para describir las interacciones entre sistemas CLAMB Pantallas de gestión normalizadas: consultas, listados, altas, modificaciones y bajas. Pantallas de gestión normalizadas: consultas, listados, altas, modificaciones y bajas. Informes documentos, archivos y datos en general generados por el sistema. documentos, archivos y datos en general generados por el sistema. Tipos de Requerimientos 1. REQUERIMIENTOS FUNCIONALES
  • 13. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 2.1 Requisitos de Rendimiento Se tiene en cuenta las métricas de rendimiento, pues suelen ser fácilmente medibles. Entre ellos podemos sugerir los siguientes: • Velocidad de las peticiones al sistema (número de peticiones que debe responder en cierto tiempo) • Tiempo medio de respuesta por tipo de petición, que sería el tiempo máximo (en media) que debería tardar el sistema en contestar a una petición • Velocidad en la comunicación con el sistema • Velocidad en la gestión de la interfaz del usuario Tipos de Requerimientos 2. REQUERIMIENTOS NO FUNCIONALES
  • 14. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 2.3 Requisitos de Calidad Aquí recogemos los requisitos que afectan a la gestión de la Calidad en el desarrollo del proyecto. Entre ellos podemos destacar: • Normativas y procedimientos de gestión del proyecto • Normativas y procedimientos de desarrollo • Normativas y procedimientos de documentación • Normativas y Procedimientos de generación de entregables • Normativas de calidad del Cliente • Pruebas de Certificación de Calidad que deben superar los entregables. Tipos de Requerimientos 2. REQUERIMIENTOS NO FUNCIONALES
  • 15. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 2.4 Requisitos de Almacenamiento Aquí se recogen todos los requisitos que especifican el cómo, dónde y cuándo guardar los datos persistentes del sistema, así como la capacidad del sistema de almacenamiento de los mismos, su seguridad, su fiabilidad, su protección contra fallos o intento de acceso no autorizado y su política de respaldo. Tipos de Requerimientos 2. REQUERIMIENTOS NO FUNCIONALES
  • 16. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 2.5 Requisitos de Seguridad Aquí se recogen todos los requisitos relativos a la seguridad del sistema, como pueden ser: • Control de acceso al sistema y autenticación de usuarios. • Políticas de usuarios y contraseñas, si las hubiere. • Desactivación de usuarios. • Control y auditoría de las acciones de los usuarios. • Políticas de gestión de la seguridad y de los elementos y funcionalidades del sistema. Tipos de Requerimientos 2. REQUERIMIENTOS NO FUNCIONALES
  • 17. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 2.5 Requisitos de Seguridad • Métodos de agrupación de usuarios, y de permisos. Esquemas de administración y almacenamiento de la seguridad. • Gestión de los roles de los usuarios, si hubiese. • Medidas de protección del sistema frente a ataques externos. • Normativas y protocolos de seguridad que debe cumplir el sistema. • Auditorías de seguridad y alarmas. Tipos de Requerimientos 2. REQUERIMIENTOS NO FUNCIONALES
  • 18. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 2.6 Requisitos de Escalabilidad Aquí se recogen los requisitos de capacidad del sistema y cómo se debe poder ampliar si es necesario. Si el sistema es utilizado por múltiples usuarios simultáneos, debe disponer de un plan para redimensionar el sistema al crecer el número de usuarios. Tipos de Requerimientos 2. REQUERIMIENTOS NO FUNCIONALES
  • 19. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 2.7 Requisitos Legales y Normativas En este apartado se recogen los requisitos legales que debe cumplir el sistema, es decir, toda la normativa legal que aplica al sistema, las restricciones legales de su uso y las normativas de gestión de la información confidencial. También se incluyen los requisitos de destrucción de información confidencial al final del ciclo de vida de la misma. Tipos de Requerimientos 2. REQUERIMIENTOS NO FUNCIONALES
  • 20. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Recogen todos los requisitos que debe cumplir el sistema, independientemente de la funcionalidad que debe cubrir. 3.1 Requisitos de Arquitectura Estos requisitos definen arquitectura y componentes del sistema, cuando es un sistema creado a partir de varios, modúlalos. Tipos de Requerimientos 3. REQUERIMIENTOS DEL SISTEMA
  • 21. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 3.2 Requisitos de Software Se recogen todos los requisitos de software que se aplicarán al sistema, como pueden ser: •Sistemas operativos de los diferentes módulos que forman el sistema, incluyendo versiones y actualizaciones. •Software adicional necesario en el sistema •Requisitos de actualización del software de base del sistema Tipos de Requerimientos 3. REQUERIMIENTOS DEL SISTEMA
  • 22. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 3.3 Requisitos de Hardware Se recogen los requisitos de hardware de los componentes del sistema. Entre ellos; tipos de servidores, configuración de los mismos, tipos de unidades de disco y configuración, sistemas de backup, etc. Tipos de Requerimientos 3. REQUERIMIENTOS DEL SISTEMA
  • 23. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 3.4 Requisitos de Comunicaciones Aquí se recogen los requisitos para interconectar el sistema se definen los parámetros de red requeridos, topología, tipos de enlace, anchos de banda, etc. Tipos de Requerimientos 3. REQUERIMIENTOS DEL SISTEMA
  • 24. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 3.5 Requisitos de Integración Se recogen los requisitos de integración del sistema con otros sistemas externos o del cliente. Se debe incluir los protocolos que se deben soportar, los servicios que nos proporcionan o que debemos proporcionar, las aplicaciones con las que debemos interactuar, etc. Tipos de Requerimientos 3. REQUERIMIENTOS DEL SISTEMA
  • 25. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 3.6 Requisitos de Contingencia Aquí enunciaremos los requisitos que debe cumplir nuestro sistema en caso de contingencia, y que servirán de base para desarrollar el plan de contingencia del sistema. Tipos de Requerimientos 3. REQUERIMIENTOS DEL SISTEMA
  • 26. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Riesgo, incertidumbre, perdida Incertidumbre: Puede o no ocurrir, no hay riesgos del 100% de probabilidad. Pérdida: Si el riesgo ocurre, hay pérdidas.
  • 27. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Categorías de riesgos de software 1. Riesgos del proyecto: 2. Riesgos del producto: 3. Riesgos del negocio: Amenazan al plan del proyecto; la planificación temporal y los costos. Ej: Pérdida de un diseñador experimentado. Amenazan la calidad y la planificación temporal; la implementación puede llegar a ser difícil o imposible. Ej: Rendimiento de un componente menor al esperado. Amenazan la viabilidad del software a construir. Ej: Un competidor introduzca un nuevo producto. Riesgo del Software
  • 28. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 28 Ingenieria de Requerimientos: Pasos principales 1. Entender el problema: definicion 2. Describir el problema: especificacion 3. Verificar la naturaleza del problema: validacion 4. Ponerse de acuerdo en los limites del problema: negociacion Este es un proceso iterativo
  • 29. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova 29 Marco del proceso de requerimientos definicion negociacion especification validaciondoc & admon
  • 30. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Características de los requerimientos En principio los requerimientos deben ser precisos, completos y consistentes. Precisos • Deben extraer con precisión lo que se desea del sistema Completos • Deben incluir todas las descripciones y componentes requeridos Consistente • No debe haber conflictos o contradicciones en las descripciones de los requerimientos En la practica es difícil producir un documento con estas características.
  • 31. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Especificaciones de Requerimientos 1.1 El usuario debe proporcionar facilidades para definir el tipo de archivos externos. 1.2 Cada tipo de archivo externo puede tener una herramienta asociada. La cual, será aplicada para el archivo. 1.3 Cada tipo de archivo externo será representado como un icono específico mostrado al usuario. 1.4 Las facilidades proporcionadas para la representación del icono en un tipo de archivo externo será definido por el usuario. 1.5 Cuando un usuario selecciona una representación de icono de un archivo externo, el efecto de la selección es aplicar las herramientas asociadas con el tipo de archivo externo al archivo representado por la selección del icono.
  • 32. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Lectores de Requerimientos Gerencia de Cliente Usuarios Finales del Sistema Ingenieros de Clientes Gerencia de Contratistas Arquitectos del Sistema Definición de Requerimientos Especificacion de Requerimientos Usuarios Finales del Sistema Ingenieros de Cliente Arquitectos del Sistema Desarrolladores de Software Especificación de Software Ingenieros de Clientes Arquitectos del Sistema Desarrolladores de Software
  • 33. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Razones de Inconsistencia Los sistemas de software grandes deben permitir una mejora en la situación actual de la empresa. Es difícil anticipar los efectos que el sistema tendrá en la organización. Usuarios diferentes tienen requerimientos y prioridades diferentes. Hay constantemente cambios en los requerimientos.
  • 34. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Razones de Inconsistencia Los usuarios finales del sistema y la organización que paga por el sistema tienen requerimientos diferentes. El prototipado es requerido para clarificar requerimientos
  • 35. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Proceso de Ingeniería de Requerimientos Estudio de Factibilidad • Encontrar si las necesidades de los usuarios son satisfechas dada la tecnología y el presupuesto disponible? Análisis de Requerimientos • Detallar que es lo que los usuarios requieren del sistema. Definición de Requerimientos • Definir los requerimientos en una forma comprensible para el cliente. Especificación de Requerimientos • Define los requerimientos en detalle.
  • 36. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova El Proceso de Ingeniería de Requerimientos Estudio de Factibilidad Análisis de Requerimientos Definición de Requerimientos Especificación de Requerimientos Reporte de Factibilidad Modelos del Sistema Documento de Requerimientos Definición de Requerimientos Especificación de Requerimientos
  • 37. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Documento de Requerimientos Es la declaración oficial de lo que es requerido para que el sistema sea desarrollado. Incluye la definición y especificación de requerimientos. No es un documento de diseño. Tanto como sea posible, es un conjunto de lo que es el sistema y no de como lo hará.
  • 38. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Requerimientos del Documento Especificación del comportamiento externa del sistema. Especificar las restricciones de la implementación. Fácil de cambiar. Sirve como una herramienta de referencia para el mantenimiento. Registro del ciclo de vida del sistema, con el fin de predecir cambios. Caracteriza respuestas a eventos inesperados.
  • 39. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Estructura del Documento de Requerimientos Introducción. • Describe la necesidad de crear el sistema y cuales son sus objetivos de negocio. Glosario. • Define los términos técnicos usados. Modelos del Sistema. • Define los modelos mediante los cuales se muestran los componentes del sistema y las relaciones entre ellos. Definición de Requerimientos Funcionales. • Define los servicios que serán proporcionados.
  • 40. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Definición de Requerimientos No-funcionales. • Definir las restricciones del sistema y el proceso de desarrollo. Evolución del Sistema. • Definir las suposiciones fundamentales en las cuales el sistema se basa y los cambios que preveen. Especificación de Requerimientos. • Especificación detallada de los requerimientos funcionales del sistema. Apéndices. • Descripción de la plataforma de Hardware del Sistema. • Requerimientos de la base de Datos (quizá como un modelo Entidad Relacion) Indice. Estructura del Documento de Requerimientos
  • 41. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova El Analista de Requerimientos Analista de Requerimientos Patrocinador del Proyecto Administrador del Proyecto Desarrolladores PruebasOtros interesados en el sistema Cliente y Usuarios requerimientos del negocio requerimientos del cliente/usuario restricciones y requerimientos requerimientos funcionales y no-funcionales requerimientos funcionales y no-funcionales Factibilidad, Tiempos y costos Analista de Requerimientos Patrocinador del Proyecto Administrador del Proyecto Desarrolladores PruebasOtros interesados en el sistema Cliente y Usuarios requerimientos del negocio requerimientos del cliente/usuario restricciones y requerimientos requerimientos funcionales y no-funcionales requerimientos funcionales y no-funcionales Factibilidad, Tiempos y costos
  • 42. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova El Analista de Requerimientos Actividades: Definir los objetivos del proyecto y los beneficios al negocio. Identificar el problema a resolver y obtener los requerimientos. Identificar a los involucrados en el desarrollo del proyecto así como a las clases de clientes y usuarios.
  • 43. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova El Analista de Requerimientos Actividades: Identificar el ambiente del dominio a desarrollar y estar preparado para desarrollar el sistema requerido. Administrar los requerimientos utilizando un proceso y un plan de requerimientos. Modelar los requerimientos. Realizar control de cambios en los requerimientos.
  • 44. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Habilidades: Capacidad de comunicación. Capacidad de análisis y observación. Capacidad de organización. Analizar los riesgos del desarrollo del software. El Analista de Requerimientos
  • 45. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova El Cliente Actividades y responsabilidades: Educar al analista de requerimientos acerca del negocio y sus objetivos. Ser claro y preciso acerca del problema que se quiere resolver. Colaborar con el analista en la definición de los requerimientos. Revisar los documentos de requerimientos y el avance del proyecto. Comunicar a los analistas sobre cambios en los requerimientos.
  • 46. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Actividades y responsabilidades: Plantear costos y tiempos esperados de desarrollo y estar abierto a discutir cambios en los costos y tiempos de entrega. Estar siempre dispuesto a reunirse con los desarrolladores para discutir distintos aspectos del proyecto. Respetar los procesos que implementarán los desarrolladores para implementar el producto El Cliente
  • 47. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova El Usuario Clasificación de los usuarios: La frecuencia con la que usan el sistema. Las funciones que usan del sistema y su frecuencia. La experiencia en el dominio de la aplicación y su experiencia con otros sistemas similares. El tipo de uso que le dan al sistema (operación, administración, mantenimiento, supervisión).
  • 48. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova El Usuario Clasificación de los usuarios: Las tareas que desempeñan en soporte de los procesos de la organización. Sus privilegios de acceso o niveles de seguridad (tales como usuario invitado, administrador o usuario de nivel interno). Tipo de usuarios necesarios para operar el sistema (persona, grupo de personas, robot, u otra computadora).
  • 49. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Problemas asociados al proceso Problemas de alcance, en los cuales se describen el ámbito y los límites de operación del software. En esta categoría algunos de los problemas podrían ser, que el ambiente del sistema no esta bien delimitado, o que no exista información suficiente del flujo de información de la organización.
  • 50. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Problemas asociados al proceso Problemas de comprensión de lo que se quiere construir, con los clientes, usuarios y con los grupos de desarrolladores. En esta categoría podrían aparecer distintos problemas: • Los clientes y usuarios no entienden completamente todo lo que requieren o no cuentan con toda la información que de soporte a sus necesidades. • Los clientes y usuarios tienen poco conocimiento de las capacidades y limitaciones de los sistemas de cómputo. • Los analistas de requerimientos tienen poco conocimiento del dominio de la aplicación.
  • 51. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Problemas de volatilidad debidos a los continuos cambios en los requerimientos. En esta categoría se trata de resolver los problemas que existen cuando los requerimientos deben cambiar razones tecnológicas, por errores, o por mejoras. Problemas de conflictos entre requerimientos. Problemas asociados al proceso
  • 52. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Validación de Requerimientos Demostración de que los requerimientos que definen el sistema son lo que el cliente realmente quiere. Los costos de errores en los requerimientos son altos, por lo cual, la validación es muy importante. • Fijar un error de requerimiento después del desarrollo puede resultar en un costo 100 veces mayor que fijar un error en la implementación. El Prototipado es una técnica importante en la validación de requerimientos.
  • 53. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Chequeo de Requerimientos Validez. Provee al sistema las funciones que mejor soportan las necesidades del cliente? Consistencia. Existen conflictos en los requerimientos? Completitud. Están incluidas todas las funciones requeridas por el cliente? Realismo. Pueden los requerimientos ser implementados con la tecnología y el presupuesto disponible?
  • 54. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Revisión de Requerimientos Revisiones frecuentes deben llevarse a cabo mientras la definición de requerimientos está siendo hecha. Tanto el cliente como el staff de contratistas deben estar involucrados en la revisión. La revisión pueden ser formales (con los documentos completos) o informales. Una buena comunicación entre desarrolladores, clientes y usuarios puede resolver problemas en las primeras etapas.
  • 55. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Chequeo de la Revisión Verificabilidad. Pueden hacerse pruebas de los requerimientos? Entendibilidad. Se comprenden los requerimientos? Busqueda (trace). El origen de los requerimientos esta claramente establecido? Adaptabilidad. Puede el requerimiento ser cambiado sin causar un gran impacto en otros requerimientos?
  • 56. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Chequeo de Consistencia Automatizado Requerimientos en un Lenguaje Formal Proceso de Requerimientos Base de Datos de Requerimientos Reporte de los problemas de Requerimientos Análisis de Requerimientos
  • 57. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Evolución de Requerimientos Comprensión Inicial del Problema Comprensión de los Cambios del Problema Requerimientos Iniciales Cambios en los Requerimientos Tiempo
  • 58. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Factores sociales y organizacionales Los sistemas de software se usan dentro de un contexto social y organizacional. Estos pueden influir o dominar los requerimientos del sistema. Los factores sociales y organizacionales tienen influencia en todos los puntos de vista. Los analistas deben ser sencibles a estos factores aunque no exista una forma sistematica de enfrentarlos.
  • 59. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Ejemplo Considere un sistema que permite a los administradores accesar informacion sin consultar con los operadores del sistema. • Estatus de la Administracion. Los adminstradores consideran que ellos son demasiado importantes como para tener que usar un teclado de computadora. Esto podria limitar el tipo de interfaz hombre-maquina a diseñar. • Responsabilidades de la administracion. Los administradores podrian no tener tiempo para aprender a usar el sistema. • Resistencia organizacional. Los administradores podrian no dar informacion completa o incluso dar informacion erronea para que el sistema falle.
  • 60. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Resumen Es muy difícil formular una especificación de requerimientos completa y consistente. Una definición de requerimientos, una especificación de requerimientos y una especificación de Software son una manera de especificar el Software para diferentes tipos de lectores. El Documento de Requerimientos es una descripción para clientes y desarrolladores.
  • 61. Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Algoritmos y Computación Avanzada Tutor: Eliezer Córdova Los errores en los requerimientos son usualmente muy caros de corregir una vez desarrollado el sistema. La revisión debe involucrar al cliente y al staff de contratistas para validar los requerimientos del sistema. El establecer requerimientos está relacionado con las actividades del cliente. Resumen