17
INSTITUTO UNIVERSITARIO POLITECNICO “SANTIAGO MARIÑO” EXTENSION - PORLAMAR REALIZADO POR: Acosta Lenin C.I: 23.591.623 INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Embed Size (px)

Citation preview

Page 1: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

INSTITUTO UNIVERSITARIO POLITECNICO “SANTIAGO MARIÑO”

EXTENSION - PORLAMAR

REALIZADO POR:Acosta Lenin

C.I: 23.591.623

INGENIERÍA DE REQUISITOS E

INGENIERÍA DE REQUERIMIENTOS

Page 2: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

IntroducciónSeguidamente se tienen dificultades

cuando tratamos de obtener los requisitos de nuestros clientes, ya que se tienen problemas al momento de comprender la información que se adquiere. La comprensión de los requisitos de un problema es una de las dificultades a las que se enfrenta un ingeniero de software, ya que el cliente no siempre sabe lo que se requiere y los usuarios finales no siempre entienden las características que le proporcionan beneficios, así como también los requisitos suelen cambiar durante el proyecto.

Page 3: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Ingeniería de Requisitos

La ingeniería de requisitos constituye el enlace entre las necesidades reales de los clientes, usuarios y otros participantes vinculados al sistema. La ingeniería de requisitos consiste en un conjunto de actividades y transformaciones que pretenden comprender las necesidades de un sistema software y convertir la declaración de estas necesidades en una descripción completa, precisa y documentada de los requerimientos del sistema siguiendo un determinado estándar.

Page 4: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Definición de Requerimientos

Un requerimiento es una necesidad documentada sobre el contenido, forma o funcionalidad de un producto o servicio.

Los requerimientos son declaraciones que identifican atributos, capacidades, características o cualidades que necesita cumplir un sistema (o un sistema de software) para que tenga valor y utilidad para el usuario. En otras palabras, los requerimientos muestran qué elementos y funciones son necesarias para un proyecto.

Page 5: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Características de los Requerimientos

a. Actual: el requerimiento no debe volverse obsoleto con el paso del tiempo.

b. Cohesión: el requerimiento debe dirigirse a solo una única cosa.

c. Completo: el requerimiento debe estar completamente declarado en un único lugar, sin información faltante.

d. Consistente: el requerimiento no debe contradecir ningún otro requerimiento y debe ser completamente consistente con toda la documentación.

e. Correcto: el requerimiento debe cumplir con la necesidad declarada por los interesados en el sistema/software.

Page 6: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

f. Factible: el requerimiento debe poder ser implementado.

g. No ambiguo: el requerimiento debe estar concisamente declarado. Debe expresar hechos objetivos, no opiniones subjetivas. Debe poder ser interpretado de una única manera.

h. Obligatorio: el requerimiento debe representar una característica definida por el grupo interesado en el desarrollo del sistema/software, su ausencia no puede ser reemplazada.

i. Observable externamente: el requerimiento debe especificar una característica observable externa o experimentable por el usuario del producto.

j. Verificable: La implementación del requerimiento debe poder ser resuelta en alguno de estos cuatro métodos: inspección, análisis, demostración o prueba.

Page 7: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Ingeniería de Requerimientos

La Ingeniería de Requerimientos en si cumple un papel primordial en el proceso de construcción y producción de un software, es decir que, estará basado en función de las necesidades planteadas por los clientes en un nivel muy general, donde se descubre, documenta, analiza y se define los servicios o componentes de lo que se desea producir, además de las restricciones que tendrá el producto o software. Su principal tarea consiste en la definición del proceso a seguir en la construcción de un software, y de facilitar la comprensión de lo que el cliente requiera. La obtención correcta de los requerimientos puede llegar a describir con claridad, sin ambigüedades, en forma consistente y compacta, el comportamiento de un sistema.

Page 8: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Técnicas principales aplicadas en la Ingeniería de Requisitos

Existen varias técnicas para la ingeniería de requisitos, sin embargo, mencionaremos algunas de las mas importantes y cada una de estas técnicas pueden ser aplicadas, pero en la practica el uso de la técnica dependerá del proyecto a desarrollar.

1. Entrevistas y cuestionarios : Las entrevistas son un método común. Por lo general no se entrevista a toda la gente que se relacionará con el sistema, sino a una selección de personas que represente a todos los sectores críticos de la organización, con el énfasis puesto en los sectores más afectados o que harán un uso más frecuente del nuevo sistema.

2. Talleres: Los requisitos tienen a menudo implicaciones cruzadas desconocidas para las personas implicadas individuales y que a menudo no se descubren en las entrevistas o quedan incompletamente definidas durante la misma.

Page 9: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

3. Forma de contrato: En lugar de una entrevista, se pueden llenar formularios o contratos indicando los requisitos. En sistemas muy complejos éstos pueden tener centenares de páginas.

4. Prototipos: Un prototipo es una pequeña muestra, de funcionalidad limitada, de cómo sería el producto final una vez terminado. Ayudan a conocer la opinión de los usuarios y rectificar algunos aspectos antes de llegar al producto terminado.

5. Casos de uso: Un caso de uso es una técnica para documentar posibles requisitos, graficando la relación del sistema con los usuarios u otros sistemas. Dado que el propio sistema aparece como una caja negra, y sólo se representa su interacción con entidades externas, permite omitir dichos aspectos y determinar los que realmente corresponden a las entidades externas. El objetivo de esta práctica es mejorar la comunicación entre los usuarios y los desarrolladores, mediante la prueba temprana de prototipos para minimizar cambios hacia el final del proyecto y reducir los costes finales.

Page 10: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Fases de la Ingeniería de requerimientos

Obtención : a través de entrevistas o comunicación con clientes o futuros usuarios, para saber cuáles son sus expectativas.

Análisis: detectar y corregir las carencias o falencias comunicativas, transformando los requisitos obtenidos de entrevistas y requisitos, en condiciones apropiadas para ser tratados en el diseño.

Documentación : igual que todas las etapas, los requerimientos deben estar debidamente documentados.

Verificación: consiste en comprobar la implementación de los requerimientos.

Validación: comprobar que los requerimientos implementados sean funcionales para lo que inicialmente se construyó el producto.

Page 11: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Requerimientos de software de la Ingeniería de Requerimientos

Muchos proyectos de Software fracasan porque no se realiza un estudio previo de los requerimientos del usuario, no se hace una definición completa del alcance del proyecto. No realizamos el modelado del negocio antes de desarrollar el software, esto significa que el analista  no se involucra en el problema; aunque tiene claro que el sistema debe desarrollarse para dar soporte a los procesos de la organización, sino se involucra en la problemática corre el riesgo de que los requisitos identificados no correspondan a las necesidades para lo que se debe crear.

La ingeniería de requerimientos cumple un papel primordial en el proceso productivo ya que se enfoca en el área fundamental: "LA PRODUCCION", siendo su tarea la generación de especificaciones correctas que describan con claridad, sin ambigüedades y en forma compacta las necesidades del cliente, cumpliendo lo antes expresado se obtendrá un proyecto que minimizará  los problemas relacionados con la gestión de dichos requerimientos.

Page 12: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Respondiendo a la pregunta inicial entonces podemos decir que los requerimientos son importantes debido a que son el hilo conductor de todo desarrollo de software. Obtener requerimientos de calidad demuestra que el trabajo realizado culminará con éxito, esto se debe a dos factores:

1. La utilización adecuada de las técnicas de captura de requerimientos con los clientes.

2.  Las experiencias de los analistas del proyecto.

Esto sucede porque la experiencia de trabajo en el rol le permite al equipo de Analistas del Proyecto establecer que técnicas van a utilizar a la hora de la entrevista con el cliente debido a que los clientes no entienden el lenguaje informático, es por eso que se debe tener en cuenta el lenguaje el cual se va a aplicar a la hora de la entrevista con el cliente.

Page 13: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Los procesos utilizados en Ingeniería de Requerimientos varían dependiendo del dominio de aplicación, de la gente implicada y de la organización que desarrolla los requisitos.

Sin embargo, hay un número de actividades genéricas comunes a todos los procesos:

1. Estudio de viabilidad.2.Elicitación(extracción o captura) de Requerimientos. �3. Análisis de Requerimientos. �4. Validación de Requerimientos. �5. Gestión de Requerimientos.

Actividades de la Ingeniería de Requerimientos

Page 14: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Dificultades para definir los Requerimientos

Durante la etapa de especificación de requerimientos se pueden presentar muchos inconvenientes los cuales son importantes de identificar y prevenir, a continuación se presenta un listado con los problemas más comunes en este proceso:

a. Los requerimientos no son obvios y vienen de muchas fuentes. b. Son difíciles de expresar en palabras (el lenguaje es ambiguo).

c. La cantidad de requerimientos en un proyecto puede ser difícil de manejar.

d. Un requerimiento puede cambiar a lo largo del ciclo de desarrollo.

e. El usuario no puede explicar lo que hace, Tiende a recordar lo excepcional y olvidar lo rutinario, Hablan de lo que no funciona, los usuarios tienen distinto vocabulario que los desarrolladores.

Page 15: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

Técnicas y herramientas utilizadas en la Ingeniería de Requerimientos.

Observación y análisis social: La observación permite a los

investigadores observar lo que los usuarios hacen actualmente en un

determinado contexto.

Lluvia de Ideas: Son sesiones donde todos los participantes brindan

sus ideas para obtener una solución a una problemática.

Modelos: Esquema teórico, generalmente en forma matemática, de un

sistema o de una realidad compleja, como la evolución económica de un

país, que se elabora para facilitar su comprensión y el estudio de su

comportamiento.

Y muchos mas antes mencionados.

Page 16: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

ConclusiónLa Ingeniería de Requisitos formalizarlas actividades

relacionadas con obtener la especificación de requisitos formales del sistema a desarrollar a base de interactuar y negociar con el cliente. Especialmente en las metodologías del desarrollo de software es crucial contar con un conjunto de requisitos muy estables sobre los que construir el resto del proyecto.

Es importante tomarse el tiempo necesario para conocer a nuestros clientes y usuarios, así como su ambiente de trabajo. Esto, también ayuda a establecer una buena relación de trabajo y comunicación entre el equipo de desarrollo y los clientes. 

Entregar software de calidad, a tiempo y dentro del presupuesto, hará que nuestros clientes confíen y asegurará el crecimiento y madurez de la relación de negocio.

Page 17: INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS

ReferenciasReferencias Electrónicas Técnicas principales aplicadas en la Ingeniería de Requisitoshttp://tecnologicofch.blogspot.com/2013/03/22-tecnicas-de-la-ingenieria-de.htmlDificultades para Definir los Requerimientoshttp://phigux.blogspot.com/2012/03/dificultades-para-definir-los.htmlActividades de la Ingeniería de Requerimientoshttp://fundamentosdeingenieriahg.blogspot.com/p/actividades-de-la-ingenieria-de.htmlFases de implementaciónhttps://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_requisitosRequerimientos de software de la Ingeniería de Requerimientoshttps://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_requisitosLa ingeniería de requisitoshttps://ennovi221.wordpress.com/2011/06/10/ensayo-la-ingenieria-de-requisitos/