Ingeniería de requisitos

Zuleima
ZuleimaZuleima
INSTITUTO TECNOLOGICO
                DE TUXTEPEC


 TÉCNICAS QUE SE IMPLEMENTAN EN LAS TAREAS DE LA
            INGENIERÍA DE REQUISITOS.


ASIGNATURA:
             Fundamentos de Ingeniería de Software
UNIDAD II:
                    Ingeniería de Requisitos
INTEGRANTES:
                  Alba Nidya Soto Domínguez
                   Araceli Hernández Castro
                   Arlethe Tenorio Martínez
                    Julio Franco Elías Celis
                     Mónica Moreno Ortiz
                     Zuleima Pérez Ibáñez
DOCENTE:
        L.I. María de los Ángeles Martínez Morales
ESPECIALIDAD:
                             I.S.C
SEMESTRE Y GRUPO:
                             5° “A”


       San Juan Bautista Tuxtepec, Oax., a 19 de Septiembre de 2012.
INDICE

 INTRODUCCIÓN


 INGENIERÍA DE REQUISITOS


 CONCLUSIÓN


 REFERENCIAS
INTRODUCCIÓN


La ingeniería de requerimientos, tiene como objeto disminuir la distancia entre
usuario y programas, de tal forma que el software, comoproducto final refleje
fielmente las necesidades delusuario.

Ayuda a los responsables del proyecto a entender mejor el problema en cuya
solución trabajarán y a utilizar herramientas que les permitan disminuir los riesgos
y sobrecostos en el proceso de desarrollo.

En cuanto al tratamiento de los requerimientos, los analistas usan diferentes
técnicas para recolectar, separar y clasificar los requerimientos.

Existen muchas técnicas disponibles para la aplicación de la Ingeniería de
Requerimientos, con el fin de asegurar que los requerimientos obtenidos cuenten,
al final del proceso de Ingeniería de Requerimientos, con las características
necesarias para ser implementados.
A continuación se describe de manera detallada y precisa cada uno de los
aspectos del ciclo de vida de un conjunto de requerimientos.
TÉCNICAS QUE SE IMPLEMENTAN EN LAS TAREAS DE LA
                       INGENIERÍA DE REQUISITOS

      DEFINICIÓN:

Un requerimiento puede definirse como un atributo necesario dentro de un
sistema, que puede representar una capacidad, una característica o un factor de
calidad del sistema de tal manera que le sea útil a los clientes o a los usuarios
finales.

Los requerimientos son una especificación de lo que debe ser implementado.
Estos son descripciones de cómo el sistema se debe comportar, de las
propiedades y atributos del mismo. Deben ser una restricción del proceso de
desarrollo del sistema (SOMMERVILLE, Ian y SAWYER, Peter).

      INGENIERÍA DE REQUERIMIENTOS:

La ingeniería de requerimientos es un conjunto de actividades en las cuales,
utilizando técnicas y herramientas, se analiza un problema y se concluye con la
especificación de una solución [Ortas 1997].

"Ingeniería de Requerimientos es la disciplina para desarrollar una especificación
completa, consistente y no ambigua, la cual servirá como base para acuerdos
comunes entre todas las partes involucradas y en dónde se describen las
funciones que realizará el sistema" (BOEHM).

Por tanto, la Ingeniería de Requerimientos se utiliza para definir todas las
actividades involucradas en el descubrimiento, documentación y mantenimiento de
los requerimientos para un producto determinado. El uso del término de
“Ingeniería” implica que se deben utilizar técnicas sistemáticas y repetibles para
asegurar que los requerimientos del sistema estén completos y sean consistentes
y relevantes. Tiene como objeto disminuir la distancia entre usuario y programas,
de tal forma que el software, como producto final refleje fielmente las necesidades
del usuario.

      DOCUMENTOS DE REQUERIMIENTOS

Existen dos documentos que emanan del análisis de requerimientos:
       Definición de requerimientos: Es un documento que debe escribirse en
       términos que el cliente pueda entender. Es decir, este documento es un
       listado completo de todas las cosas que el cliente espera que haga el
       sistema propuesto. Este documento es escrito en forma conjunta por el
       cliente y el desarrollador.
Especificación de requerimientos: Documento que reitera la definición de
      los requerimientos en los términos técnicos apropiados para el
      desarrollador del diseño de un sistema. Es la contrapartida técnica al
      documento de definición de requerimientos y es escrito por los analistas de
      requerimientos. A veces un único documento puede servir para ambos
      propósitos, lo que lleva a un entendimiento común entre clientes, analistas
      de requerimientos y diseñadores. A menudo se necesitan ambos
      documentos.

Es muy importante, que al usar ambos documentos exista una correspondencia
directa entre cada requerimiento del documento de definición y aquellos
documentos en la especificación. Esto para que la visión del cliente este unida a la
de los desarrolladores (esto se logra gracias a la gestión de configuración).

      CLASIFICACIÓN DE REQUERIMIENTOS

      Requerimientos funcionales: Describen la funcionalidad o los servicios
      que se espera que el sistema proveerá. Dependen del tipo de software, del
      sistema que se desarrollo y de los posibles usuarios. Cuando se expresan
      como Requerimientos de usuarios, se definen de forma general. Cuando se
      expresan como requerimiento del sistema describen con detalle la función
      de éste, sus entradas y salidas, excepciones, etc.

      Requerimientos no funcionales:Son los requerimientos que no se refieren
      directamente a las funciones específicas que entrega el sistema, sino a las
      propiedades emergentes de éste, como la fiabilidad, la respuesta en el
      tiempo y la capacidad de almacenamiento. Muchos requerimientos no
      funcionales se refieren al sistema como un todo más que a rasgos
      particulares del mismo. A menudo son más críticos que los funcionales.
      Mientras que un incumplimiento de un requerimiento funcional degrada el
      sistema, el de un requerimiento no funcional del sistema lo inutiliza. Según
      su importancia se clasifican en:
      - Del producto: especifican comportamiento del producto. Ej.: de
          desempeño en la rapidez de ejecución del sistema, cuanta memoria se
          requiere; los de fiabilidad que fijan la tasa de fallas para el sistema sea
          aceptable, los de portabilidad y de usabilidad.
      - Organizacionales: se derivan de las políticas y procedimientos
          existentes en la organización del cliente y del desarrollador. Ej.:
          estándares en los procesos que deben utilizarse, requerimientos de
          implementación como los lenguajes de programación o el método de
          diseño a utilizar.
      - Externos: cubre todos los requerimientos que se derivan de los factores
          externos al sistema y de su proceso de desarrollo. Ej.: requerimientos de
          interoperabilidad, requerimientos legales, requerimientos éticos.
Un problema común con los requerimientos no funcionales es que algunas
      veces son difíciles de verificar. De forma ideal se deben expresar de
      manera cuantitativa utilizando métricas que se puedan probar de forma
      objetiva. En la práctica, es difícil. El costo es muy alto.

      Requerimientos del dominio: Se derivan del dominio del sistema más que
      de las necesidades específicas del usuario. Son importantes debido a que a
      menudo reflejan los fundamentos del dominio de la aplicación. Si estos no
      se satisfacen es imposible que el sistema trabaje de forma satisfactoria.
      Estos se expresan utilizando un lenguaje específico del dominio de la
      aplicación que a menudo es difícil de comprender. Ej.: operación para
      calcular desaceleración del tren, para un sistema de control de trenes.


      CARACTERÍSTICAS DE LOS REQUERIMIENTOS

Los requerimientos permiten que el desarrollador explique como ha entendido lo
que el cliente pretende del sistema. Indican a los diseñadores que funcionalidades
y características va a tener el sistema resultante. Indican al equipo de pruebas que
demostraciones llevar a cabo para convencer al cliente de que el sistema que se
le entrega es de hecho lo que había ordenado.

      TECNICAS DE LA INGENIERIA DE REQUISITOS

El proceso de Ingeniería de Requerimientos describe demanera detallada y
precisa cada uno de los aspectos del ciclo de vida de un conjunto de
requerimientos. Este proceso presenta dos grandes ramas:
       Desarrollo de requerimientos.
       Administración de requerimientos.

    DESARROLLO DE REQUERIMIENTOS:
Que tiene como propósito producir y analizarlos requerimientos de cliente, de
producto y de componente de producto, incluye las siguientes actividades:
Recolección, Análisis, Especificación y Verificación.

Recolección: Es el Proceso a través del cual los clientes (compradores y/o
usuarios) y el desarrollador (contratista) de un sistema de software; descubren,
revisan, articulan, y entienden las necesidades de los usuarios del sistema y las
restricciones que se dan sobre el software y el desarrollo del mismo.

Algunas de las técnicas y herramientas más importantes para llevar a cabo la
recolección de requerimientos son:

Entrevistas: método para descubrir hechos y opiniones que tienen los posibles
usuarios y otros participantes dentro del sistema que se está desarrollando. A su
vez se clasifican en:
-   Entrevistas cerradas:las preguntas ya están previstas, tienen un orden y
           una forma de ser planteadas que no pueden ser modificadas por el
           entrevistador. Es en realidad un cuestionario.
       -   Entrevistas abiertas: en las cuales no se preparan preguntas concretas,
           y, por el contrario, se discute con el entrevistado las expectativas que
           este tiene del sistema.

Casos de Uso y/o Escenarios: Los casos de uso describen interacciones entre los
usuarios y el sistema, enfatizando en lo que el usuario necesita del sistema. Los
escenarios son ejemplos de sesiones de interacción entre el sistema y el usuario,
donde un solo tipo de interacción entre los dos participantes es simulada y
descrita.

Observación y análisis social: La observación permite a los investigadores
observar lo que los usuarios hacen actualmente en un determinado contexto. Esto
permite superar problemas con los participantes del proyecto que realizan
descripciones idealizadas o demasiado simplificadas de los procesos que se
llevan a cabo en sus trabajos.

Lluvia de Ideas: Son sesiones donde todos los participantes brindan sus ideas
para obtener una solución a una problemática. Una lluvia de ideas está compuesta
de dos fases: la fase de generación y la fase de evaluación. Durante la generación
las ideas son recolectadas y es importante que no sean criticadas. Durante la
evaluación de las ideas, las propuestas de solución deben ser evaluadas desde
diferentes perspectivas.

Prototipos: Es programa de computador que implementa algunos de los
requerimientos de un sistema. Este prototipo puede ser usado para colaborar con
la definición de los requerimientos, o para facilitar la evaluación de alternativas de
implementación de un sistema.
Existen dos grandes tipos de prototipos. Los prototipos no funcionales o
desechables (Throw away), que sirven para entender la dificultad y aclarar los
requerimientos; y los prototipos funcionales o evolutivos (Evolutionary) que
permiten construir una aproximación del sistema de manera que se pueda proveer
cierta funcionalidad del sistema final y usualmente se convierten en parte del
mismo.

Análisis: Es el proceso de analizar las necesidades de los clientes y los usuarios
para llegar a una definición de los requerimientos de software.
Dentro de las prácticas principales se encuentra:

JAD (Joint Application Development): Esta práctica se basa en la creación de
espacios que permitan celebrar sesiones o reuniones en donde los participantes y
directos interesados dentro del desarrollo del proyecto buscan obtener o generar
conocimiento alrededor del desarrollo que se va a llevar a cabo.
En estas sesiones se trabaja bajo un enfoque común que permite el fácil
entendimiento de los temas expuestos por parte de los invitados a la sesión
(usualmente un enfoque de análisis estructurado), y se persiguen como propósito
diferentes aspectos: definir niveles de detalle del proyecto, diseñar una solución,
monitorear el proyecto, etc.

Priorización de requerimientos: Un potencial remedio para este dilema es la
priorización de requerimientos, que permite manejar la situación descrita
anteriormente. Esto permite controlar las decisiones que se realicen teniendo en
cuenta a la fuente generadora de las necesidades.

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. Existen
dos tipos de modelos.
   - Modelo conceptual: Es el utilizado en la especificación del sistema,
       representa los conceptos más significativos en el dominio del problema….
       Nos describe la parte estática del problema, es una fotografía del mundo
       real.
   - Modelo de Comportamiento: Utilizado en la parte de diseño del sistema,
       define la parte dinámica, es decir, cual debe ser el comportamiento en cada
       situación y la forma de proceder. Los diagramas de secuencia y de estados
       son parte de este modelo.

Especificación: Consiste en el desarrollo de un documento que de manera clara y
precisa contenga y especifique cada uno de los requerimientos del sistema de
software.

Verificación: Es el proceso de asegurar que la especificación de requerimientos
de software sea acorde con los requerimientos del sistema, conforme a los
estándares de documentación de la fase de requerimientos, y que a su vez este
documento sea una base sólida para la arquitectura y el diseño.
Esta actividad representa un punto de control interno y externo; interno,porque se
debe verificar internamente lo que se está haciendo, y externo, porque se debe
validar con el cliente.

    Administración de requerimientos:
Es un proceso que tiene por objetivo comprender y controlar los requerimientos.
Como todo proceso de administración, inicia con la planeación a la par de la
identificación inicial de requerimientos. Este proceso tiene diferentes formas que
dependen del proceso de desarrollo de software que se esté empleando,
independientemente de esto se deben considerar las siguientes etapas:
   1. Requerimientos duraderos y volátiles.
   2. Planeación de la administración de requerimientos.
   3. Administración del cambio de los requerimientos.
CONCLUSIÓN

Como conclusión a esta investigación se puede observar la importancia que tiene
el conocimiento de la Ingeniería de Requerimiento sin dejar de mencionar que el
resultado satisfactorio depende de una intensa comunicación entre clientes y
analistas de requerimientos. La Ingeniería se encarga de establecer y mantener un
acuerdo en qué el sistema debe hacer, demás proporciona al equipo de desarrollo
un entendimiento de los requisitos, hasta definir los límites del sistema.

En cuanto a la investigación realizada de la técnica de Casos de Uso para la
Ingeniería de Requerimientos, puede decirse que los casos de uso son
independientes del método de diseño que se utilice, y por lo tanto, del método de
programación.

Con la administración de Requerimientos se busca encontrar una descripción más
apropiada de las actividades involucradas, a la vez de enfatizar la importancia de
mantener una buena relación entre los afectados y el equipo del proyecto.

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.
REFERENCIAS

Libros proporcionados por la maestra:

   o   Aranguren, S. M. (2012). Técnicas para una mejor Ingeniería de Requerimientos.

   o   Ceria, S. (s.f.). Ingeniería de Software I.



   o   ZAMBRANO, A. N. (Junio, 2005). HERRAMIENTA PARA EL ANÁLISIS DE
       REQUERIMIENTOS. Bogotá D.C.

Recomendados

Ingeniería de requisitos von
Ingeniería de requisitosIngeniería de requisitos
Ingeniería de requisitosZuleima
6.5K views10 Folien
Analisis y-tecnicas-de-recoleccion-de-datos von
Analisis y-tecnicas-de-recoleccion-de-datosAnalisis y-tecnicas-de-recoleccion-de-datos
Analisis y-tecnicas-de-recoleccion-de-datosElvis De Lal Cruz
6.6K views22 Folien
Ingeniería De Requisitos von
Ingeniería De RequisitosIngeniería De Requisitos
Ingeniería De RequisitosssharLudena
11.4K views29 Folien
Guide to the software engineering body of knowledge von
Guide to the software engineering body of knowledgeGuide to the software engineering body of knowledge
Guide to the software engineering body of knowledgeMario César Ramírez Venegas
1.5K views11 Folien
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS von
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSINGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSLuis Anibal
490 views19 Folien
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS von
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSINGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOS
INGENIERÍA DE REQUISITOS E INGENIERÍA DE REQUERIMIENTOSJesus F Rosas
411 views10 Folien

Más contenido relacionado

Was ist angesagt?

Unidad I Requerimientos von
Unidad I RequerimientosUnidad I Requerimientos
Unidad I Requerimientosguest409adc
8.1K views30 Folien
tipos de requisitos von
  tipos de requisitos   tipos de requisitos
tipos de requisitos Juan Henao
21.4K views8 Folien
Ing de req von
Ing de reqIng de req
Ing de reqwhymber
38 views13 Folien
Ingeniería de Requesitos e Ingeniería de Requerimientos von
Ingeniería de Requesitos e Ingeniería de RequerimientosIngeniería de Requesitos e Ingeniería de Requerimientos
Ingeniería de Requesitos e Ingeniería de RequerimientosJuan Carlos Rivas
930 views13 Folien
Ingeniería de requisitos-UDO MONAGAS von
Ingeniería de requisitos-UDO MONAGASIngeniería de requisitos-UDO MONAGAS
Ingeniería de requisitos-UDO MONAGASfernandoUDO
630 views44 Folien
Requerimientos von
RequerimientosRequerimientos
Requerimientoskaresha3
150 views19 Folien

Was ist angesagt?(19)

Unidad I Requerimientos von guest409adc
Unidad I RequerimientosUnidad I Requerimientos
Unidad I Requerimientos
guest409adc8.1K views
tipos de requisitos von Juan Henao
  tipos de requisitos   tipos de requisitos
tipos de requisitos
Juan Henao21.4K views
Ing de req von whymber
Ing de reqIng de req
Ing de req
whymber38 views
Ingeniería de Requesitos e Ingeniería de Requerimientos von Juan Carlos Rivas
Ingeniería de Requesitos e Ingeniería de RequerimientosIngeniería de Requesitos e Ingeniería de Requerimientos
Ingeniería de Requesitos e Ingeniería de Requerimientos
Juan Carlos Rivas930 views
Ingeniería de requisitos-UDO MONAGAS von fernandoUDO
Ingeniería de requisitos-UDO MONAGASIngeniería de requisitos-UDO MONAGAS
Ingeniería de requisitos-UDO MONAGAS
fernandoUDO630 views
Requerimientos von karesha3
RequerimientosRequerimientos
Requerimientos
karesha3150 views
Ingeniería de requisitos y la ingeniería de requerimientos von unrated999
Ingeniería de requisitos y la ingeniería de requerimientos Ingeniería de requisitos y la ingeniería de requerimientos
Ingeniería de requisitos y la ingeniería de requerimientos
unrated9991.1K views
Fundamentos del diseño y Garantías de Calidad del Software von Richard J. Nuñez
Fundamentos del diseño y Garantías de Calidad del SoftwareFundamentos del diseño y Garantías de Calidad del Software
Fundamentos del diseño y Garantías de Calidad del Software
Richard J. Nuñez159 views
Ingeniería de Requerimientos von Naylu Rincón
Ingeniería de RequerimientosIngeniería de Requerimientos
Ingeniería de Requerimientos
Naylu Rincón2.2K views
Tareas de ingenieria de requerimientos(1) von nenyta08
Tareas de ingenieria de requerimientos(1)Tareas de ingenieria de requerimientos(1)
Tareas de ingenieria de requerimientos(1)
nenyta08841 views
ingenieria de requerimientos von jhonier1999
ingenieria de requerimientosingenieria de requerimientos
ingenieria de requerimientos
jhonier199933 views
Tareas de ingenieria de requerimientos von nenyta08
Tareas de ingenieria de requerimientosTareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientos
nenyta0821.1K views
Importancia del Análisis de Requerimientos von pedro tovar
Importancia del Análisis de RequerimientosImportancia del Análisis de Requerimientos
Importancia del Análisis de Requerimientos
pedro tovar2K views

Similar a Ingeniería de requisitos

Centro biotecnologo del sena von
Centro biotecnologo del senaCentro biotecnologo del sena
Centro biotecnologo del senaleydismartinez1
30 views8 Folien
Ingeniería de requisitos y de requerimientos von
Ingeniería de requisitos y de requerimientosIngeniería de requisitos y de requerimientos
Ingeniería de requisitos y de requerimientosunrated999
1.2K views11 Folien
Tecnicas ingenieria de software von
Tecnicas ingenieria de softwareTecnicas ingenieria de software
Tecnicas ingenieria de softwareedsacun
3.9K views10 Folien
Ingenieria de Requerimientos von
Ingenieria de RequerimientosIngenieria de Requerimientos
Ingenieria de RequerimientosMauricio Carrillo Coto
207 views36 Folien
Presentación digital Eliezer Alas von
Presentación digital Eliezer AlasPresentación digital Eliezer Alas
Presentación digital Eliezer AlasEliezer Alas
270 views26 Folien
2. requerimientos del software von
2. requerimientos del software2. requerimientos del software
2. requerimientos del softwareuniv of pamplona
48.7K views37 Folien

Similar a Ingeniería de requisitos(20)

Ingeniería de requisitos y de requerimientos von unrated999
Ingeniería de requisitos y de requerimientosIngeniería de requisitos y de requerimientos
Ingeniería de requisitos y de requerimientos
unrated9991.2K views
Tecnicas ingenieria de software von edsacun
Tecnicas ingenieria de softwareTecnicas ingenieria de software
Tecnicas ingenieria de software
edsacun3.9K views
Presentación digital Eliezer Alas von Eliezer Alas
Presentación digital Eliezer AlasPresentación digital Eliezer Alas
Presentación digital Eliezer Alas
Eliezer Alas270 views
Tareas de ingenieria de requerimientos von Kleo Jorgee
Tareas de ingenieria de requerimientosTareas de ingenieria de requerimientos
Tareas de ingenieria de requerimientos
Kleo Jorgee595 views
Ingenierýa requerimiento -_gustavo_rodrýguez_diez von karolavergara
Ingenierýa requerimiento -_gustavo_rodrýguez_diezIngenierýa requerimiento -_gustavo_rodrýguez_diez
Ingenierýa requerimiento -_gustavo_rodrýguez_diez
karolavergara1K views
Análisis de requerimientos von Gustavo Araque
Análisis de requerimientosAnálisis de requerimientos
Análisis de requerimientos
Gustavo Araque3.4K views
Investigación sobre técnicas que se implementan en las tareas de la Ingenierí... von Karim Krystalgami
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 Krystalgami1.9K views
Desarrollo de prototipos von Tensor
Desarrollo de prototiposDesarrollo de prototipos
Desarrollo de prototipos
Tensor228 views
Unidad 2 Ingeniería de requerimientos von mezcalote
Unidad 2 Ingeniería de requerimientosUnidad 2 Ingeniería de requerimientos
Unidad 2 Ingeniería de requerimientos
mezcalote708 views
Unidad 1.3 Analisis De Requerimientos von Sergio Sanchez
Unidad 1.3 Analisis De RequerimientosUnidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De Requerimientos
Sergio Sanchez231.5K views
IMPORTANCIA DEL ANÁLISIS DE REQUERIMIENTOS PARA EL DESARROLLO DE SISTEMAS von Alcoverify
IMPORTANCIA DEL ANÁLISIS DE REQUERIMIENTOS PARA EL DESARROLLO DE SISTEMASIMPORTANCIA DEL ANÁLISIS DE REQUERIMIENTOS PARA EL DESARROLLO DE SISTEMAS
IMPORTANCIA DEL ANÁLISIS DE REQUERIMIENTOS PARA EL DESARROLLO DE SISTEMAS
Alcoverify1.2K views
Carlos figuera-ci-19897276 von marlev boadas
Carlos figuera-ci-19897276Carlos figuera-ci-19897276
Carlos figuera-ci-19897276
marlev boadas174 views

Más de Zuleima

Equipo iii von
Equipo iiiEquipo iii
Equipo iiiZuleima
271 views3 Folien
Expo taller invii von
Expo taller inviiExpo taller invii
Expo taller inviiZuleima
479 views12 Folien
Escaner von
EscanerEscaner
EscanerZuleima
344 views13 Folien
Justificación von
JustificaciónJustificación
JustificaciónZuleima
255 views2 Folien
Proyecto cbta (1) von
Proyecto cbta (1)Proyecto cbta (1)
Proyecto cbta (1)Zuleima
3.3K views18 Folien
Ensayo telecomunicaciones itzayana_perez_ibañez von
Ensayo telecomunicaciones itzayana_perez_ibañezEnsayo telecomunicaciones itzayana_perez_ibañez
Ensayo telecomunicaciones itzayana_perez_ibañezZuleima
121 views8 Folien

Más de Zuleima(20)

Equipo iii von Zuleima
Equipo iiiEquipo iii
Equipo iii
Zuleima271 views
Expo taller invii von Zuleima
Expo taller inviiExpo taller invii
Expo taller invii
Zuleima479 views
Escaner von Zuleima
EscanerEscaner
Escaner
Zuleima344 views
Justificación von Zuleima
JustificaciónJustificación
Justificación
Zuleima255 views
Proyecto cbta (1) von Zuleima
Proyecto cbta (1)Proyecto cbta (1)
Proyecto cbta (1)
Zuleima3.3K views
Ensayo telecomunicaciones itzayana_perez_ibañez von Zuleima
Ensayo telecomunicaciones itzayana_perez_ibañezEnsayo telecomunicaciones itzayana_perez_ibañez
Ensayo telecomunicaciones itzayana_perez_ibañez
Zuleima121 views
Ensayo telecomunicaciones itzayana_perez_ibañez von Zuleima
Ensayo telecomunicaciones itzayana_perez_ibañezEnsayo telecomunicaciones itzayana_perez_ibañez
Ensayo telecomunicaciones itzayana_perez_ibañez
Zuleima116 views
Ensayo telecomunicaciones itzayana_perez_ibañez von Zuleima
Ensayo telecomunicaciones itzayana_perez_ibañezEnsayo telecomunicaciones itzayana_perez_ibañez
Ensayo telecomunicaciones itzayana_perez_ibañez
Zuleima2.7K views
Telecomunicaciones von Zuleima
TelecomunicacionesTelecomunicaciones
Telecomunicaciones
Zuleima1.3K views
Ensayo telecomunicaciones franco von Zuleima
Ensayo telecomunicaciones francoEnsayo telecomunicaciones franco
Ensayo telecomunicaciones franco
Zuleima856 views
Etapas del Desarrollo Software von Zuleima
Etapas del Desarrollo SoftwareEtapas del Desarrollo Software
Etapas del Desarrollo Software
Zuleima2.4K views
Mapa conceptua ing_soft. von Zuleima
Mapa conceptua ing_soft.Mapa conceptua ing_soft.
Mapa conceptua ing_soft.
Zuleima1.4K views
Introduccion von Zuleima
IntroduccionIntroduccion
Introduccion
Zuleima305 views
Harry potter y_las_reliquias_de_la_muerte von Zuleima
Harry potter y_las_reliquias_de_la_muerteHarry potter y_las_reliquias_de_la_muerte
Harry potter y_las_reliquias_de_la_muerte
Zuleima117 views
Harry potter y_las_reliquias_de_la_muerte von Zuleima
Harry potter y_las_reliquias_de_la_muerteHarry potter y_las_reliquias_de_la_muerte
Harry potter y_las_reliquias_de_la_muerte
Zuleima87 views
Harry potter y_las_reliquias_de_la_muerte von Zuleima
Harry potter y_las_reliquias_de_la_muerteHarry potter y_las_reliquias_de_la_muerte
Harry potter y_las_reliquias_de_la_muerte
Zuleima150 views
Reseña descriptiva von Zuleima
Reseña descriptivaReseña descriptiva
Reseña descriptiva
Zuleima749 views
Codigo de etica 5[1] von Zuleima
Codigo de etica 5[1]Codigo de etica 5[1]
Codigo de etica 5[1]
Zuleima284 views
Profesion y linea del tiempo von Zuleima
Profesion y linea del tiempoProfesion y linea del tiempo
Profesion y linea del tiempo
Zuleima7.8K views
Codigo etico de un ingeniero en sistemas computacionales von Zuleima
Codigo etico de un ingeniero en sistemas computacionalesCodigo etico de un ingeniero en sistemas computacionales
Codigo etico de un ingeniero en sistemas computacionales
Zuleima8K views

Ingeniería de requisitos

  • 1. INSTITUTO TECNOLOGICO DE TUXTEPEC TÉCNICAS QUE SE IMPLEMENTAN EN LAS TAREAS DE LA INGENIERÍA DE REQUISITOS. ASIGNATURA: Fundamentos de Ingeniería de Software UNIDAD II: Ingeniería de Requisitos INTEGRANTES: Alba Nidya Soto Domínguez Araceli Hernández Castro Arlethe Tenorio Martínez Julio Franco Elías Celis Mónica Moreno Ortiz Zuleima Pérez Ibáñez DOCENTE: L.I. María de los Ángeles Martínez Morales ESPECIALIDAD: I.S.C SEMESTRE Y GRUPO: 5° “A” San Juan Bautista Tuxtepec, Oax., a 19 de Septiembre de 2012.
  • 2. INDICE  INTRODUCCIÓN  INGENIERÍA DE REQUISITOS  CONCLUSIÓN  REFERENCIAS
  • 3. INTRODUCCIÓN La ingeniería de requerimientos, tiene como objeto disminuir la distancia entre usuario y programas, de tal forma que el software, comoproducto final refleje fielmente las necesidades delusuario. Ayuda a los responsables del proyecto a entender mejor el problema en cuya solución trabajarán y a utilizar herramientas que les permitan disminuir los riesgos y sobrecostos en el proceso de desarrollo. En cuanto al tratamiento de los requerimientos, los analistas usan diferentes técnicas para recolectar, separar y clasificar los requerimientos. Existen muchas técnicas disponibles para la aplicación de la Ingeniería de Requerimientos, con el fin de asegurar que los requerimientos obtenidos cuenten, al final del proceso de Ingeniería de Requerimientos, con las características necesarias para ser implementados. A continuación se describe de manera detallada y precisa cada uno de los aspectos del ciclo de vida de un conjunto de requerimientos.
  • 4. TÉCNICAS QUE SE IMPLEMENTAN EN LAS TAREAS DE LA INGENIERÍA DE REQUISITOS DEFINICIÓN: Un requerimiento puede definirse como un atributo necesario dentro de un sistema, que puede representar una capacidad, una característica o un factor de calidad del sistema de tal manera que le sea útil a los clientes o a los usuarios finales. Los requerimientos son una especificación de lo que debe ser implementado. Estos son descripciones de cómo el sistema se debe comportar, de las propiedades y atributos del mismo. Deben ser una restricción del proceso de desarrollo del sistema (SOMMERVILLE, Ian y SAWYER, Peter). INGENIERÍA DE REQUERIMIENTOS: La ingeniería de requerimientos es un conjunto de actividades en las cuales, utilizando técnicas y herramientas, se analiza un problema y se concluye con la especificación de una solución [Ortas 1997]. "Ingeniería de Requerimientos es la disciplina para desarrollar una especificación completa, consistente y no ambigua, la cual servirá como base para acuerdos comunes entre todas las partes involucradas y en dónde se describen las funciones que realizará el sistema" (BOEHM). Por tanto, la Ingeniería de Requerimientos se utiliza para definir todas las actividades involucradas en el descubrimiento, documentación y mantenimiento de los requerimientos para un producto determinado. El uso del término de “Ingeniería” implica que se deben utilizar técnicas sistemáticas y repetibles para asegurar que los requerimientos del sistema estén completos y sean consistentes y relevantes. Tiene como objeto disminuir la distancia entre usuario y programas, de tal forma que el software, como producto final refleje fielmente las necesidades del usuario. DOCUMENTOS DE REQUERIMIENTOS Existen dos documentos que emanan del análisis de requerimientos: Definición de requerimientos: Es un documento que debe escribirse en términos que el cliente pueda entender. Es decir, este documento es un listado completo de todas las cosas que el cliente espera que haga el sistema propuesto. Este documento es escrito en forma conjunta por el cliente y el desarrollador.
  • 5. Especificación de requerimientos: Documento que reitera la definición de los requerimientos en los términos técnicos apropiados para el desarrollador del diseño de un sistema. Es la contrapartida técnica al documento de definición de requerimientos y es escrito por los analistas de requerimientos. A veces un único documento puede servir para ambos propósitos, lo que lleva a un entendimiento común entre clientes, analistas de requerimientos y diseñadores. A menudo se necesitan ambos documentos. Es muy importante, que al usar ambos documentos exista una correspondencia directa entre cada requerimiento del documento de definición y aquellos documentos en la especificación. Esto para que la visión del cliente este unida a la de los desarrolladores (esto se logra gracias a la gestión de configuración). CLASIFICACIÓN DE REQUERIMIENTOS Requerimientos funcionales: Describen la funcionalidad o los servicios que se espera que el sistema proveerá. Dependen del tipo de software, del sistema que se desarrollo y de los posibles usuarios. Cuando se expresan como Requerimientos de usuarios, se definen de forma general. Cuando se expresan como requerimiento del sistema describen con detalle la función de éste, sus entradas y salidas, excepciones, etc. Requerimientos no funcionales:Son los requerimientos que no se refieren directamente a las funciones específicas que entrega el sistema, sino a las propiedades emergentes de éste, como la fiabilidad, la respuesta en el tiempo y la capacidad de almacenamiento. Muchos requerimientos no funcionales se refieren al sistema como un todo más que a rasgos particulares del mismo. A menudo son más críticos que los funcionales. Mientras que un incumplimiento de un requerimiento funcional degrada el sistema, el de un requerimiento no funcional del sistema lo inutiliza. Según su importancia se clasifican en: - Del producto: especifican comportamiento del producto. Ej.: de desempeño en la rapidez de ejecución del sistema, cuanta memoria se requiere; los de fiabilidad que fijan la tasa de fallas para el sistema sea aceptable, los de portabilidad y de usabilidad. - Organizacionales: se derivan de las políticas y procedimientos existentes en la organización del cliente y del desarrollador. Ej.: estándares en los procesos que deben utilizarse, requerimientos de implementación como los lenguajes de programación o el método de diseño a utilizar. - Externos: cubre todos los requerimientos que se derivan de los factores externos al sistema y de su proceso de desarrollo. Ej.: requerimientos de interoperabilidad, requerimientos legales, requerimientos éticos.
  • 6. Un problema común con los requerimientos no funcionales es que algunas veces son difíciles de verificar. De forma ideal se deben expresar de manera cuantitativa utilizando métricas que se puedan probar de forma objetiva. En la práctica, es difícil. El costo es muy alto. Requerimientos del dominio: Se derivan del dominio del sistema más que de las necesidades específicas del usuario. Son importantes debido a que a menudo reflejan los fundamentos del dominio de la aplicación. Si estos no se satisfacen es imposible que el sistema trabaje de forma satisfactoria. Estos se expresan utilizando un lenguaje específico del dominio de la aplicación que a menudo es difícil de comprender. Ej.: operación para calcular desaceleración del tren, para un sistema de control de trenes. CARACTERÍSTICAS DE LOS REQUERIMIENTOS Los requerimientos permiten que el desarrollador explique como ha entendido lo que el cliente pretende del sistema. Indican a los diseñadores que funcionalidades y características va a tener el sistema resultante. Indican al equipo de pruebas que demostraciones llevar a cabo para convencer al cliente de que el sistema que se le entrega es de hecho lo que había ordenado. TECNICAS DE LA INGENIERIA DE REQUISITOS El proceso de Ingeniería de Requerimientos describe demanera detallada y precisa cada uno de los aspectos del ciclo de vida de un conjunto de requerimientos. Este proceso presenta dos grandes ramas: Desarrollo de requerimientos. Administración de requerimientos.  DESARROLLO DE REQUERIMIENTOS: Que tiene como propósito producir y analizarlos requerimientos de cliente, de producto y de componente de producto, incluye las siguientes actividades: Recolección, Análisis, Especificación y Verificación. Recolección: Es el Proceso a través del cual los clientes (compradores y/o usuarios) y el desarrollador (contratista) de un sistema de software; descubren, revisan, articulan, y entienden las necesidades de los usuarios del sistema y las restricciones que se dan sobre el software y el desarrollo del mismo. Algunas de las técnicas y herramientas más importantes para llevar a cabo la recolección de requerimientos son: Entrevistas: método para descubrir hechos y opiniones que tienen los posibles usuarios y otros participantes dentro del sistema que se está desarrollando. A su vez se clasifican en:
  • 7. - Entrevistas cerradas:las preguntas ya están previstas, tienen un orden y una forma de ser planteadas que no pueden ser modificadas por el entrevistador. Es en realidad un cuestionario. - Entrevistas abiertas: en las cuales no se preparan preguntas concretas, y, por el contrario, se discute con el entrevistado las expectativas que este tiene del sistema. Casos de Uso y/o Escenarios: Los casos de uso describen interacciones entre los usuarios y el sistema, enfatizando en lo que el usuario necesita del sistema. Los escenarios son ejemplos de sesiones de interacción entre el sistema y el usuario, donde un solo tipo de interacción entre los dos participantes es simulada y descrita. Observación y análisis social: La observación permite a los investigadores observar lo que los usuarios hacen actualmente en un determinado contexto. Esto permite superar problemas con los participantes del proyecto que realizan descripciones idealizadas o demasiado simplificadas de los procesos que se llevan a cabo en sus trabajos. Lluvia de Ideas: Son sesiones donde todos los participantes brindan sus ideas para obtener una solución a una problemática. Una lluvia de ideas está compuesta de dos fases: la fase de generación y la fase de evaluación. Durante la generación las ideas son recolectadas y es importante que no sean criticadas. Durante la evaluación de las ideas, las propuestas de solución deben ser evaluadas desde diferentes perspectivas. Prototipos: Es programa de computador que implementa algunos de los requerimientos de un sistema. Este prototipo puede ser usado para colaborar con la definición de los requerimientos, o para facilitar la evaluación de alternativas de implementación de un sistema. Existen dos grandes tipos de prototipos. Los prototipos no funcionales o desechables (Throw away), que sirven para entender la dificultad y aclarar los requerimientos; y los prototipos funcionales o evolutivos (Evolutionary) que permiten construir una aproximación del sistema de manera que se pueda proveer cierta funcionalidad del sistema final y usualmente se convierten en parte del mismo. Análisis: Es el proceso de analizar las necesidades de los clientes y los usuarios para llegar a una definición de los requerimientos de software. Dentro de las prácticas principales se encuentra: JAD (Joint Application Development): Esta práctica se basa en la creación de espacios que permitan celebrar sesiones o reuniones en donde los participantes y directos interesados dentro del desarrollo del proyecto buscan obtener o generar conocimiento alrededor del desarrollo que se va a llevar a cabo. En estas sesiones se trabaja bajo un enfoque común que permite el fácil entendimiento de los temas expuestos por parte de los invitados a la sesión
  • 8. (usualmente un enfoque de análisis estructurado), y se persiguen como propósito diferentes aspectos: definir niveles de detalle del proyecto, diseñar una solución, monitorear el proyecto, etc. Priorización de requerimientos: Un potencial remedio para este dilema es la priorización de requerimientos, que permite manejar la situación descrita anteriormente. Esto permite controlar las decisiones que se realicen teniendo en cuenta a la fuente generadora de las necesidades. 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. Existen dos tipos de modelos. - Modelo conceptual: Es el utilizado en la especificación del sistema, representa los conceptos más significativos en el dominio del problema…. Nos describe la parte estática del problema, es una fotografía del mundo real. - Modelo de Comportamiento: Utilizado en la parte de diseño del sistema, define la parte dinámica, es decir, cual debe ser el comportamiento en cada situación y la forma de proceder. Los diagramas de secuencia y de estados son parte de este modelo. Especificación: Consiste en el desarrollo de un documento que de manera clara y precisa contenga y especifique cada uno de los requerimientos del sistema de software. Verificación: Es el proceso de asegurar que la especificación de requerimientos de software sea acorde con los requerimientos del sistema, conforme a los estándares de documentación de la fase de requerimientos, y que a su vez este documento sea una base sólida para la arquitectura y el diseño. Esta actividad representa un punto de control interno y externo; interno,porque se debe verificar internamente lo que se está haciendo, y externo, porque se debe validar con el cliente.  Administración de requerimientos: Es un proceso que tiene por objetivo comprender y controlar los requerimientos. Como todo proceso de administración, inicia con la planeación a la par de la identificación inicial de requerimientos. Este proceso tiene diferentes formas que dependen del proceso de desarrollo de software que se esté empleando, independientemente de esto se deben considerar las siguientes etapas: 1. Requerimientos duraderos y volátiles. 2. Planeación de la administración de requerimientos. 3. Administración del cambio de los requerimientos.
  • 9. CONCLUSIÓN Como conclusión a esta investigación se puede observar la importancia que tiene el conocimiento de la Ingeniería de Requerimiento sin dejar de mencionar que el resultado satisfactorio depende de una intensa comunicación entre clientes y analistas de requerimientos. La Ingeniería se encarga de establecer y mantener un acuerdo en qué el sistema debe hacer, demás proporciona al equipo de desarrollo un entendimiento de los requisitos, hasta definir los límites del sistema. En cuanto a la investigación realizada de la técnica de Casos de Uso para la Ingeniería de Requerimientos, puede decirse que los casos de uso son independientes del método de diseño que se utilice, y por lo tanto, del método de programación. Con la administración de Requerimientos se busca encontrar una descripción más apropiada de las actividades involucradas, a la vez de enfatizar la importancia de mantener una buena relación entre los afectados y el equipo del proyecto. 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.
  • 10. REFERENCIAS Libros proporcionados por la maestra: o Aranguren, S. M. (2012). Técnicas para una mejor Ingeniería de Requerimientos. o Ceria, S. (s.f.). Ingeniería de Software I. o ZAMBRANO, A. N. (Junio, 2005). HERRAMIENTA PARA EL ANÁLISIS DE REQUERIMIENTOS. Bogotá D.C.