01 Tem1 SIS-125
01 Tem1 SIS-125
01 Tem1 SIS-125
SIS-125
Proyectos Tecnológicos,
Comunicación, Software, Diseño,
Negocio
Sistemas
Interesados Acuerdo
Necesidades ?
Exigencias ?
Equipo de Desarrollo
REQUERIMIENTOS
• Según Benet (2003:110) “Los requisitos son la especificación de lo que debe hacer
el software, son descripciones del comportamiento, propiedades y restricciones
del software que hay que desarrollar”.
• “Un requisito del software es una característica que debe exhibir para solucionar
cierto problema del mundo real. Por lo tanto, un requisito del software es una
característica que se debe exhibir por el software desarrollado o adaptado para
solucionar un problema particular.” (SWEBOK, 2004:2-1).
REQUERIMIENTOS
• Sobrecosto,
• Reproceso costoso,
• Mala calidad,
• Retraso en la entrega,
• Clientes descontentos,
• Miembros de equipo agotados y desmoralizados.
REQUERIMIENTOS
IMPORTANCIA
CARACTERISTICAS
CARACTERISTICAS
REQUERIMIENTOS
Dificultad y consecuencias
REQUERIMIENTOS
INGENIERIA DE REQUISITOS
Objetivos del
negocio Documento de visión
y alcance
Procesos del
negocio Arquitectura
• Requisitos de organización
Actividades Documento de
requerimientos de
de los usuario criterios de
usuarios calidad
• Requisitos externos
Lo que los desarrolladores necesitan construir
Fragmentos Especificación de
de requisitos de software
funcionalidad
TIPOS DE REQUISITOS
a) Requisitos Funcionales:
• Del sistema: “Establecen con detalle los servicios y restricciones del sistema. El
documento de requerimientos del sistema, algunas veces denominado
especificación funcional, debe ser preciso”. Sommerville, 2005: 118
TIPOS DE REQUISITOS
a) Requisitos Funcionales:
Enunciado: Permitir al usuario registrar los datos de los estudiantes nuevos que se
inscriban al curso.
Enunciado: El sistema debe permitir a los usuarios buscar el producto por nombre,
número de factura, código de barras.
a) Requisitos Funcionales:
b) Requisitos no funcionales
b) Requisitos no funcionales
Los requisitos no funcionales son propiedades que el producto debe tener lo que
no puede ser evidente al usuario, incluyendo atributos de calidad, coacciones, e
interfaces externas. (Gottesdiener E. , 2005) Sommerville, 2005:111; clasifica a
los requisitos no funcionales en: “requisitos de producto, de organización y
externos”.
• Requisitos externos: Son los requisitos que derivan de los factores externos al
sistema y de su proceso de desarrollo, incluyen requerimientos de
interoperabilidad que definen la manera en que el sistema interactúa con los
otros sistemas de la organización.
TIPOS DE REQUISITOS
• El tiempo de aprendizaje del sistema por un usuario deberá ser menor a 4 horas.
• La tasa de errores cometidos por el usuario deberá ser menor del 1% de las
transacciones totales ejecutadas en el sistema.
• El sistema debe contar con manuales de usuario estructurados adecuadamente.
• El sistema debe proporcionar mensajes de error que sean informativos y orientados
a usuario final.
• El sistema debe contar con un módulo de ayuda en línea.
• La aplicación web debe poseer un diseño “Responsive” a fin de garantizar la
adecuada visualización en múltiples computadores personales, dispositivos tableta y
teléfonos inteligentes.
• El sistema debe poseer interfaces gráficas bien formadas.
TIPOS DE REQUISITOS
Dependibilidad
• El sistema debe tener una disponibilidad del 99,99% de las veces en que un usuario
intente accederlo.
• El tiempo para iniciar o reiniciar el sistema no podrá ser mayor a 5 minutos.
• La tasa de tiempos de falla del sistema no podrá ser mayor al 0,5% del tiempo de
operación total.
• El promedio de duración de fallas no podrá ser mayor a 15 minutos.
• La probabilidad de falla del Sistema no podrá ser mayor a 0,05.
TIPOS DE REQUISITOS
Por ejemplo: “El sistema debe asegurar que los datos estén protegidos del acceso no autorizado”
“El sistema incluirá un procedimiento de autorización de usuarios, en el cual los usuarios deben
identificarse usando un nombre de usuario y contraseña. Sólo los usuarios autorizados de esta
forma podrán acceder a los datos del sistema.”
Escrito de esta forma, el requerimiento pasa a ser funcional. Sin embargo, no todos los
requerimientos no funcionales pueden derivarse en requerimientos funcionales, por lo cual es muy
importante definir los criterios de aceptación.
TIPOS DE REQUISITOS
Nº Nivel Descripción
Nivel
b) Diagrama de árbol
FORMAS DE DOCUMENTAR LOS REQUERIMIENTOS
• Correcto: Cada requerimiento debe describir con exactitud la funcionalidad para ser
construida (K.,2003).
• Claro: Pueden ser entendidos de la misma manera por todas las partes interesadas
con un mínimo de explicación complementaria. (Gottesdiener E. , 2005).
• Factible: Debe ser posible poner en práctica cada requerimiento dentro de las
capacidades conocidas y las limitaciones del sistema en su entorno de operaciones
(K., 2003).
CARACTERÍSTICAS DESEABLES DE LOS REQUERIMIENTOS
• Priorización: Dentro del conjunto de requerimientos, alguno de ellos debe ser más
importante que los otros; en este proceso deben intervenir los stakeholders.
• Modificable: Debe ser capaz de ser revisado cuando sea necesario y para
mantener un historial de los cambios realizados de acuerdo a cada necesidad
surgida; cada requisito debe aparecer solo una vez en la especificación.
• Validar continuamente que los requisitos sean correctos con el enfoque del
proyecto.
• Establecer una línea base para los requerimientos, ya que pueden servir para
futuros proyectos.
NOTA IMPORTANTE
Gestión de Requisitos
INGENIERÍA DE REQUERIMIENTOS
a) Elicitación de requisitos:
a) Elicitación de requisitos:
b) Análisis de Requisitos:
c)Especificación de requisitos
• Documento de definición del sistema: Define los requisitos del sistema de alto nivel desde
las perspectiva del dominio, además se incluye información de fondo sobre los objetivos del
sistema, su ambiente, declaración de limitaciones y los requisitos no funcionales.
• Documento de requisitos del sistema: En este documento se manifiesta lo que requieren
los desarrolladores del sistema; además se incluyen los requerimientos del usuario para el
sistema como una especificación detallada de los requerimientos del sistema.
• Documento de requisitos de software: Contiene una descripción completa de las
necesidades y funcionalidades del sistema que se va a desarrollar además determina el alcance
del sistema y la forma en la que realizará las funciones, definiendo los requerimientos
funcionales y los no funcionales.
INGENIERÍA DE REQUERIMIENTOS
c)Especificación de requisitos
d) Validación de requisitos:
Los requisitos deben ser validados para asegurarse que el equipo de desarrollo de software
haya entendido los requisitos; además se verifica que los documentos de los requisitos
contempla estándares, es comprensible, constante y finito. Con esta premisa se puede concluir
que la validación de los requisitos es el proceso de examinar el documento de los requisitos para
asegurarnos que este define el software correctamente.
Gestión de requisitos:
Gestión de requisitos:
a) Establecer una línea base: Se establece una línea de base mediante la documentación del
estado actual de las necesidades a un punto en el tiempo, para usar como punto
de partida. La línea de base muestra una serie de requisitos con los atributos de
estado acordados en un punto determinado en el tiempo y captura atributos
importantes acerca de los requisitos. El desarrollo de una línea de base crea una
referencia a utilizar para realizar un seguimiento de las necesidades evolucionan con el
tiempo.
Stakeholders (interesados)
b) Los interesados más representativos y más fáciles de identificar son los clientes,
usuarios finales y desarrolladores. Sin embargo existen otros que se relacionan con el
proyecto como son: auditores, accionistas, proveedores, directivos, administradores, etc.
Stakeholders (interesados)
d) En (Lamsweerde, 2009) se indica que para abordar una visión compartida de los
problemas que se abordarán en la construcción del sistema se necesita de la cooperación
de los interesados para obtener los requisitos completos, adecuados y realistas. Por tanto,
hay que seleccionar a los interesados apropiados para definir un modus operandi que
permitan superar dificultades en el proyecto. El desarrollo de requisitos y gestión de
requisitos implica a muchos stakeholders en diversos cargos.
Stakeholder Función
• Asigna recursos (personal, materiales y fondos) para el proyecto.
• Asegura que las metas y objetivos del proyecto estén alineados con los de la
organización.
Sponsor del proyecto
• Guía apropiadamente la participación de los clientes y usuarios en el proyecto.
Stakeholder Función
Gerente de • Asegura que el analista y los expertos tengan los recursos, herramientas,
proyecto o producto entrenamiento y conocimiento para desarrollar los requerimientos.
Stakeholder Función
Stakeholder Función
Stakeholder Función
Provee detalles acerca de restricciones de diseño y sugerencias respecto a la
viabilidad de requerimientos no funcionales.
Desarrollador y
Puede contribuir a escribir partes de la especificación de requerimientos de
tester de software.
software
Revisa toda la documentación de requerimientos.
GESTIÓN DE
DESARROLLO DE REQUERIMIENTOS
REQUERIMIENTOS
Gerente del
proyecto o Productor Revisor Revisor Revisor
producto
Propietario,
aprobador, Propietario
Usuario experto Revisor Propietario
productor Revisor
• Pressman, R., (2010). Ingeniería del Software: Un enfoque práctico. México. Editorial McGraw-
Hill.
El texto se presenta como un medio de consulta a nivel general para entender a la ingeniería de
requisitos en el contexto de la ingeniería del software.
• International Institute of Business Analysis. (2009) A Guide to the Business Analysis Body of
Knowledge.
Guía que recoge el análisis de negocios en donde se reflejan las mejores prácticas proporcionando un
marco que describe las áreas de conocimiento, con actividades y tareas asociadas.