Clase 1
Clase 1
Tecnologías Software
Ingeniería de
Requerimientos
Tema Nº1:
TEMA 01 a la Ingeniería
Introducción Teoría
de de los
Requerimientos
Subtema 1.1:
1.2. Requerimientos
Los Requerimientos fueron definidos por la IEEE como [IEEE90]:
2
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
Método CORE
El método Controlled Requirements Expression (CORE) [Norris] es un conjunto de
notaciones textuales y gráficas, con guías especificadas para la captura y validación
de requerimientos del sistema, en las etapas iniciales del diseño del sistema. CORE
ha sido, por tradición, pensado como puramente una técnica de captura y análisis
de requerimientos (RCA), aunque soporta algunos aspectos de diseño tales como
estructuras de datos. CORE está basada en el principio de primero definir el
problema a ser analizado (definición del problema), y luego dividirlo en unidades o
puntos de vista a considerar.
El método CORE consiste en siete etapas. Cada una produce salidas que alimentan
a la etapa subsecuente como entrada o que forman parte de la especificación de
requerimientos final. CORE pretende examinar el sistema y su ambiente en un
número de niveles, con detalles más finos progresivamente en cada nivel. Las siete
etapas se presentan a continuación:
3. Colección tabular.
Esta etapa es cuando la información sobre los flujos de datos entre los puntos de
vista y el procesamiento de éstos son reunidos. Esto ayuda a establecer la totalidad
y consistencia.
3
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
4. Estructuración de datos.
En la etapa previa, los elementos de información que pasan entre los puntos de vista
son referidos por sus nombres generales. En esta etapa, se da una vista más
cercana al contenido, a la estructura y a la derivación de datos, al producir
diagramas de estructura de datos.
7. Análisis de restricciones.
En esta etapa, se consideran restricciones adicionales tales como desempeño y
seguridad. Éstas pueden afectar los diagramas de puntos de vista ya producidos.
Las restricciones se documentan en una especificación de restricción del sistema.
2. Evaluación y síntesis
En esta etapa el analista debe centrarse en el flujo y estructura de la información,
definir las funciones del software, determinar los factores que afectan el desarrollo
de nuestro sistema, establecer las características de la interfaz del sistema y
descubrir las restricciones del diseño. Todas las tareas anteriores conducen
fácilmente a la determinación del problema de forma sintetizada.
3. Modelización
Durante la evaluación y síntesis de la solución, se crean modelos del sistema que
servirán al analista para comprender mejor el proceso funcional, operativo y de
contenido de la información. El modelo servirá de pilar para el diseño del software y
como base para la creación de una especificación del software.
4
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
4. Especificación
Las tareas asociadas con la especificación intentan proporcionar una
representación del software. Esto más adelante permitirá llegar a determinar si se
ha llegado a comprender el software, en los casos que se lleguen a modelar se
pueden dejar plasmados manuales.
5. Revisión
Una vez que se han descrito la información básica, se especifican los criterios de
validación que han de servir para demostrar que se ha llegado a un buen
entendimiento de la forma de implementar con éxito el software. La documentación
del análisis de requerimientos y manuales, permitirán una revisión por parte del
cliente, la cual posiblemente traerá consigo modificaciones en las funciones del
sistema por lo que deberán revisarse el plan de desarrollo y las estimaciones
previstas inicialmente.
• Comprender el problema
• Describir formalmente el problema
• Obtener un acuerdo sobre la naturaleza del problema
Esto nos llevaría a simplificar el proceso a tres etapas para obtener los
requerimientos del problema que estamos atacando, estas etapas son las
siguientes:
• Elicitación de requerimientos
• Especificación
• Validación
Elicitación de requerimientos
El propósito de la Elicitación de requerimientos es ganar conocimientos relevantes
del problema, que se utilizarán para producir una especificación formal del software
necesario para resolverlo. “Un problema puede ser definido como la diferencia entre
las cosas como se perciben y las cosas como se desean”. Aquí vemos nuevamente
la importancia que tiene una buena comunicación entre desarrolladores y clientes;
de esta comunicación con el cliente depende que entendamos sus necesidades.
Al final de la fase de análisis de requerimientos el analista podría llegar a tener un
conocimiento extenso en el dominio del problema.
Especificación
Una especificación puede ser vista como un contrato entre usuarios y
desarrolladores de software, que define el comportamiento funcional deseado del
artefacto de software (y otras propiedades de éste, tales como performance,
confiabilidad, etc.), sin mostrar cómo será alcanzada tal funcionalidad.
Validación
5
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
1.5. Enfoques:
6
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
Iterativo e incremental
Se divide el proyecto en fase que busca realizar entregas parciales y sucesivas para
llegar al producto final y completo
7
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
1. No se asume que todo el trabajo de una disciplina debe estar completado antes
de que haya actividades de otra disciplina.
2. Los cambios se abordan más fácilmente a través de la planificación de las
siguientes iteraciones.
3. La disciplina de requerimientos se lleva en todo el proyecto.
8
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
Subtema 1.2:
Explícitos:
Los requerimientos establecidos explícitamente se reflejan en el documento de
Especificación de Requerimientos del Sistemas (ERS)
Requerimientos funcionales: Funciones a realizar el software
Requerimientos no funcionales: requerimientos de seguridad, rendimiento, interfaz,
etc. Describen restricciones que limitan opciones de soluciona el problema.
Restricciones cuantitativas o precisión
Pseudorequerimientos: Impuestos por el cliente que restringen la implementación
del sistema
Implícitos:
Los requerimientos implícitos no aparecen en la ERS, pero si no se cumplen con ellos
la calidad del software queda en entredicho.
9
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
Ejemplos:
La empresa RAFMA. C.A. quiere abrir su mercado a cualquier usuario
interesado en la adquisición de monedas antiguas.
La aplicación oldcurrency.com deberá contribuir a abrir el mercado e
incrementar el volumen de ventas anuales de monedas antiguas.
2.1.2. Requerimientos de Usuarios:
Se expresan desde la perspectiva del usuario
Describen las necesidades que los usuarios tienen y las tareas que los
usuarios deben realizar con el sistema y la aplicación.
Expresan lo que el usuario será capaz de hacer con el sistema.
Ejemplos:
Hojear los catálogos de monedas antiguas
Visualizar una moneda
Comprar una moneda.
10
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
Ejemplos:
11
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
Ejemplos:
Ejemplos:
Oldcurrency.com deberá ser una aplicación web desarrollada con las
herramientas:
Plataforma LAMP: Linux, Apache, MySQL y PHP
Tiempo máximo de desarrollo 6 meses.
Costo máximo de desarrollo $10000.
2.2.4. Atributos de Calidad
Expresan las propiedades de calidad que el sistema debe satisfacer
El rendimiento que la aplicación debe tener
La confiabilidad que debe poseer
La seguridad que debe proveer
La utilidad que debe garantizar.
12
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
Ejemplos:
Oldcurrency.com deberá tener una confiabilidad del 95%
Oldcurrency.com deberá ser fácil de usar.
2.3. DIFERENCIAS ENTRE LOS TIPOS DE REQUERIMIENTOS
REQUERIMIENTOS REQUERIMIENTOS NO FUNCIONALES
FUNCIONALES
Establecen los objetivos de negocio No están relacionados con la
respecto al sistema. funcionalidad o comportamiento del
sistema
Establecen los servicios que el
sistema debe proporcionarle al Restringen el diseño del sistema (la
sistema. solución)
Determinan la funcionalidad del Describen:
sistema
Las restricciones que se imponen al
Determinan lo que le sistema sistema
deberá hacer, es decir: Los atributos de calidad que el
sistema debe satisfacer.
Su comportamiento
Las reglas de negocio que el sistema
Su interacción con los usuarios y
debe respetar o implementar.
su dominio de aplicación
Las interfaces con otros sistemas.
(negocio)
Sus respuestas a eventos
13
Guía 1 Escuela de Ingeniería de Requerimientos de
Tecnologías Software
ACTIVIDAD:
Describe e identifica los tipos de Requerimientos bajo el enfoque sistémico
CASO ESTUDIO:
La empresa INFOTEL BUSINESS, es una empresa que se dedica a la
comercialización y distribución de productos informáticos.
Tiene 15 años en el mercado informático y sus procesos principales son Gerencia,
Ventas, Compras y Almacén. Tiene una cartera de clientes muy fidelizada y sus
proveedores les proporcionan los productos informáticos de las mejores marcas y
modelos con tecnología moderna.
Los objetivos planteados para el 2021 son los siguientes:
Gerencia: Incrementar el nivel de rentabilidad de la empresa en un 60%
Ventas: Incrementar el volumen de las ventas en un 50%
Compras: Seleccionar los mejores proveedores de productos para obtener buenos
precios con un margen del 40%
Almacén: Optimizar las entradas y salidas de productos del almacén en un 90%
Se pide elaborar el Diagrama del Modelo de Casos de Uso de Negocio (MCUN)
Solución
a) CUESTIONARIO TÉCNICO
b) CONCLUSIONES DE LA EXPERIENCIA
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_____________________________________________________________________
_________________________________________________
14