SlideShare a Scribd company logo
1 of 29
Que es Un requerimiento?
• De acuerdo al glosario IEEE: Un requerimiento es una condición o necesidad
para resolver un problema o alcanzar un objetivo, un capacidad que debe
estar presente en un sistemas o componentes de sistema para satisfacer un
contrato estándar, especificación u otro documento formal.
• De acuerdo a Ian Summerville es la siguiente: “Un requerimiento es
simplemente una declaración abstracta de alto nivel de un servicio que debe
proporcionar el sistema o una restricción de éste”.
• Entonces un requerimiento es una descripción de una condición o capacidad
que debe cumplir un sistema, ya sea derivada de una necesidad de usuario
identificada, o bien, estipulada en un contrato, estándar, especificación u
otro documento formalmente impuesto al inicio del proceso.
Características generales de un
Requerimiento
• Especificado por escrito.
• Posible de probar o verificar.
• Que sea fácil de leer y entender.
• Completo, que no necesite ampliar detalles en su redacción.
• Consistente, que no contradiga otro requerimiento.
Dificultades para definir los Requerimientos.
• No son obvios y vienen de muchas fuentes.
• Son difíciles de expresar en palabras.
• La cantidad de requerimientos en un proyecto puede ser difícil de
manejar.
• Un requerimiento puede cambiar en el proceso de desarrollo.
• El usuario no puede explicar lo que hace, tiende a recordar lo
excepcional y olvidar lo especifico y tiene un lenguaje diferente al de
los desarrolladores.
Los requerimientos se enfocan en, qué es lo que el
sistema debería
hacer, son el comportamiento interno del software:
Cálculos, detalles técnicos, manipulación de datos
entre otros.
Estos muestran como los casos de uso serán llevados
a la practica
y a su vez son complementados por los
requerimientos no funcionales.
REQUERIMIENTOS FUNCIONALES
Según Gonzales F. Carmen
“Los requerimientos especifican que es lo que el
sistema debe hacer,
sus funciones y propiedades esenciales y deseables.
Expresan el propósito del sistema sin tomar en
cuenta
como se va a implantar.”
REQUERIMIENTOS FUNCIONALES
Un requerimiento es una característica que el sistema debe
tener o es una restricción que el sistema debe satisfacer para
ser aceptada por el cliente.
REQUERIMIENTOS FUNCIONALES
Describen la interacción entre el sistema y su
ambiente, el ambiente incluye al usuario y cualquier
otro sistema externo que interactúa con el sistema
independientemente de su implementación.
Pueden clasificarse en tres categorías:
•Evidentes: Debe realizarse y el usuario debe estar
consiente de que se realiza.
•Ocultos: Se realiza pero no es visible para el usuario.
•Opcionales: Añadirlos no implica que va añadir costos.
Para realizar la recopilación de requerimientos
se realiza el levantamiento de requerimientos
que hace uso de:
•Escenarios.
•Casos de uso: Describen a los escenarios.
Un caso de uso especifica el funcionamiento del sistema,
es la secuencia de interacciones que se desarrollan entre
el sistema y los usuarios en respuesta a un evento
que inicia el usuario principal sobre el sistema.
El termino levantamiento de requerimientos quiere decir
especificar términos del sistema, en un idioma
que el cliente pueda entender para poderlos redactar
el contrato entre el cliente y los desarrolladores.
CARACTERÍSTICAS DE LOS
REQUERIMIENTOS.
• Deben ser consistentes.
• Deben estar completos.
• Deben ser realistas.
• Cada requerimiento debe describir algo que es
necesario para el cliente.
• Deben ser verificables.
• Deben ser rastreables.
REQUERIMIENTOS FUNCIONALES
Los requerimientos funcionales deben estar redactados
de tal forma que sean comprensibles para usuarios sin
conocimientos técnicos avanzados de Informática.
Deben especificar el comportamiento externo del sistema y
evitar, en la medida de lo posible, establecer características
de su diseño, deben priorizarse (al menos, se ha de distinguir
entre requisitos obligatorios y requisitos deseables).
Algunos ejemplos de requerimientos funcionales
son los siguientes:
1.Visualizar información
2.Insertar
3.Modificar
4.Eliminar
5.Descargar
6.Buscar información
7.Escribir
8.Consultar
9.Actualizar
10.Permitir autenticación
Típicamente, un analista de requisitos genera requisitos
funcionales luego de diagramar los casos de uso.
Sin embargo, esto puede tener excepciones, ya que el
desarrollo de software es un proceso iterativo
y algunos requisitos son previos al diseño de los casos de uso.
Ambos elementos (casos de uso y requisitos)
se complementan en un proceso bidireccional.
REQUERIMIENTOS FUNCIONALES
Un requisito funcional típico contiene un nombre y un número
de serie único y un resumen.
Esta información se utiliza para ayudar al lector a entender
por qué el requisito es necesario, y para seguir al mismo
durante el desarrollo del producto.
REQUERIMIENTOS FUNCIONALES
Requerimientos No
Funcionales
Requerimientos No Funcionales
• Como su nombre lo especifica son requerimientos que no se
relacionan directamente con los servicios específicos que el sistema
entrega a sus usuarios, pueden relacionarse con propiedades
emergentes del sistema tales como: fiabilidad, tiempo de
respuesta, uso de
almacenamiento, rendimiento, seguridad, accesibilidad, portabilidad
operatividad entre otros, y también pueden definir restricciones
sobre la implementación del sistema, como capacidades de los
dispositivos de entrada y salida o las representaciones de datos
usados en las interfaces de otros programas.
• Por lo tanto se refieren a todos los requisitos que ni definen
información a guardar ni tareas a realizar dentro del sistema.
Requerimientos No Funcionales
• Aunque los requerimientos no funcionales no son servicios que ofrece
directamente el sistema al usuario, el fracaso para cubrir estos
requerimientos haría que todo el sistema fuera inútil. Por ejemplo, si
un sistema de control de transacciones de un banco no cubre sus
requerimientos de seguridad no será certificado para su operación, o
si un sistema de control de aeronave no cubre sus requerimientos de
fiabilidad no cera aceptado como un dispositivo seguro y su un
sistema de control embebido fracasa para cubrir sus requerimientos
de rendimiento, no operarían correctamente las funciones de control.
Requerimientos No Funcionales
• Existen dos razones de por que la implementación de los
requerimientos no funcionales se propagan a lo largo del sistema:
1. Los requerimientos no funcionales afectan mas la arquitectura
global de un sistema que los componentes Individuales. Por
ejemplo para garantizar que se cumplan los requerimientos de
rendimientos es posible que se deba de organizar el sistema de
manera que se minimice la comunicación entre los componentes.
2. Un requerimiento no funcional individual, como la
seguridad, podría generar algunos requerimientos funcionales
relacionados que definan nuevos servicios del sistema que se
requiera. Además también podrían generar restricciones a los
requerimientos existentes.
Tres Tipos de Requerimientos No
Funcionales.
1. Requerimientos del Producto: especifican o restringen
comportamientos del software por ejemplo el rendimiento sobre
que tan rápido se debe ejecutar una tarea y cuanta memoria
requiere.
2. Requerimientos de la organización: requerimientos de sistemas
amplios derivados de políticas y procedimientos en la organización
cliente y el desarrollador, por ejemplo requerimientos de proceso
de desarrollo que define el lenguaje de programación con el que se
va a crear el sistema.
3. Requerimientos externos: incluyen todos los factores externos del
sistema y su proceso de desarrollo, por ejemplo requerimientos
regulatorios que establecen lo que debe hacer el sistema para ser
aprobado por un regulador, o requerimientos legislativos que deben
de seguirse para que opere conforme a la ley.
Algunas Medidas Métricas para especificar
Requerimientos No Funcionales
• Rapidez: transacciones por segundo procesadas, tiempo de respuesta
usuario / evento, tiempo de regeneración de pantalla.
• Tamaño: Mega Bytes, Numero de chips ROM.
• Facilidad de Uso: tiempo requerido de capacitación, numero de cuadros de
ayuda.
• Fiabilidad: tiempo medio para falla, probabilidad de indisponibilidad, tasa
de ocurrencia de falla.
• Robustez: tiempo de reinicio después de falla, porcentaje de eventos que
causan falla, probabilidad de corrupción de datos en falla.
• Portabilidad: numero de sistemas objetivo, porcentaje de enunciados
dependientes de objetivo.
Importancia del UML
¿Qué es UML?
• El Lenguaje Unificado de Modelado (UML) es un
lenguaje que provee un conjunto estandarizado de
herramientas para documentar el análisis y diseño
de un sistema. Un lenguaje de modelado de
propósito general.
¿Qué es UML?
• Nos permite especificar y detallar la arquitectura y
los elementos de un sistema de información ya sea
sencillo o de gran nivel de complejidad, para poder
abstraer cualquier detalle de este.
Beneficios del UML
• Manejo de la complejidad:
• Al trabajar con UML podemos modular un
sistema complejo y así trabajar con sectores de
este y modelarlos para comprender mas
fácilmente el sistema.
Beneficios del UML
• Reutilización:
• Cuando se utiliza el Lenguaje Unificado de
Modelado se pueden generalizar los
componentes de un sistema y así poder utilizarlos
en muchas partes del mismo.
Herramientas UML
• Ahora existen diferentes herramientas que
toman el estándar definido de UML y nos
permiten generar código a partir de este
como lo esVisual Studio 2013.
Entonces ¿Porqué es importante el uso de
UML?
• Estandariza el diseño gráfico de sistemas
• Al usar UML en forma iterativa en el análisis
y diseño se logra una mejor comprensión
entre equipos de trabajo y equipos deTI en
relación con los requerimientos del sistema.
Entonces ¿Porqué es importante el uso de
UML?
• Beneficia la reutilización de componentes
del sistema.
• Facilita el manejo de sistemas de gran
complejidad.
Bibliografia
• Gonzales F. Carmen. (2011) Notas del curso análisis de requerimientos. [Pagina
web] recuperado el 06 de marzo 2014 de
<Http://web.cua.uam.mx/publicaciones/Notas_Analisis_Requerimiento.pdf>
• Kendall, K., & Kendall, J. (2011). Análisis y diseño de sistemas. México:
Pearson Educación.
• Osorio, L. (Productor). (2013). Importancia delUML [Video].
Disponible en:
http://audiovisuales.uned.ac.cr/mediateca/videos/1007/importancia-
del-uml
• Arias Chavez. M (2005). La ingeniería de requerimientos y su importancia en el
desarrollo de proyectos de software. UCR 5(11). 2 – 4. recuperado de:
http://www.redalyc.org/articulo.oa?id=66661111
• Sommerville, Ian. (2011). Ingenieria de Software. Mexico. Pearson Education.

More Related Content

What's hot

Documento de requerimiento
Documento de requerimientoDocumento de requerimiento
Documento de requerimientoJosesito Flores
 
Software Requiments
Software RequimentsSoftware Requiments
Software RequimentsCúmar Cueva
 
Ingeniería de requisitos e ingeniería de requerimientos
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 requerimientosveroyfito0905
 
Unidad 3 TÉCNICAS PARA EL ANALISIS DE REQUERIMIENTO
Unidad 3 TÉCNICAS PARA EL ANALISIS DE REQUERIMIENTOUnidad 3 TÉCNICAS PARA EL ANALISIS DE REQUERIMIENTO
Unidad 3 TÉCNICAS PARA EL ANALISIS DE REQUERIMIENTOGuillermo Hernandez Miranda
 
Ing1 requerimientos 3_2016
Ing1 requerimientos 3_2016Ing1 requerimientos 3_2016
Ing1 requerimientos 3_2016ccarguello
 
Unidad I Requerimientos
Unidad I RequerimientosUnidad I Requerimientos
Unidad I Requerimientosguest409adc
 
Ingeniería de Requerimientos
Ingeniería de RequerimientosIngeniería de Requerimientos
Ingeniería de RequerimientosNaylu Rincón
 
Metodología gestión de requerimientos
Metodología gestión de requerimientosMetodología gestión de requerimientos
Metodología gestión de requerimientosErik Mik
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientosMarvin Romero
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones Juan Restrepo
 
Estándar IEEE 830-1998 - Especificacón de requisitos de Software
Estándar IEEE 830-1998 - Especificacón de requisitos de SoftwareEstándar IEEE 830-1998 - Especificacón de requisitos de Software
Estándar IEEE 830-1998 - Especificacón de requisitos de SoftwareDaniel Guaycha
 
Ingenieria de requerimientos 2
Ingenieria de requerimientos 2Ingenieria de requerimientos 2
Ingenieria de requerimientos 2jmpov441
 
Fundamentos básicos para el diseño de software
Fundamentos básicos para el diseño de softwareFundamentos básicos para el diseño de software
Fundamentos básicos para el diseño de softwareBetania Amundaray
 

What's hot (20)

Documento de requerimiento
Documento de requerimientoDocumento de requerimiento
Documento de requerimiento
 
Software Requiments
Software RequimentsSoftware Requiments
Software Requiments
 
Ingeniería de requisitos e ingeniería de requerimientos
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 requerimientos
 
Unidad 3 TÉCNICAS PARA EL ANALISIS DE REQUERIMIENTO
Unidad 3 TÉCNICAS PARA EL ANALISIS DE REQUERIMIENTOUnidad 3 TÉCNICAS PARA EL ANALISIS DE REQUERIMIENTO
Unidad 3 TÉCNICAS PARA EL ANALISIS DE REQUERIMIENTO
 
Ing1 requerimientos 3_2016
Ing1 requerimientos 3_2016Ing1 requerimientos 3_2016
Ing1 requerimientos 3_2016
 
Unidad I Requerimientos
Unidad I RequerimientosUnidad I Requerimientos
Unidad I Requerimientos
 
Ingeniería de Requerimientos
Ingeniería de RequerimientosIngeniería de Requerimientos
Ingeniería de Requerimientos
 
Ingenieria en Software
Ingenieria en SoftwareIngenieria en Software
Ingenieria en Software
 
Metodología gestión de requerimientos
Metodología gestión de requerimientosMetodología gestión de requerimientos
Metodología gestión de requerimientos
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientos
 
Ingeniería de Software: Conceptos y Retos
Ingeniería de Software: Conceptos y Retos Ingeniería de Software: Conceptos y Retos
Ingeniería de Software: Conceptos y Retos
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientos
 
Requerimientos del Software
Requerimientos del SoftwareRequerimientos del Software
Requerimientos del Software
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
 
Estándar IEEE 830-1998 - Especificacón de requisitos de Software
Estándar IEEE 830-1998 - Especificacón de requisitos de SoftwareEstándar IEEE 830-1998 - Especificacón de requisitos de Software
Estándar IEEE 830-1998 - Especificacón de requisitos de Software
 
Ingenieria de requerimientos 2
Ingenieria de requerimientos 2Ingenieria de requerimientos 2
Ingenieria de requerimientos 2
 
Requerimientos del software
Requerimientos del software Requerimientos del software
Requerimientos del software
 
Isw5 requerimientos
Isw5 requerimientosIsw5 requerimientos
Isw5 requerimientos
 
Fundamentos básicos para el diseño de software
Fundamentos básicos para el diseño de softwareFundamentos básicos para el diseño de software
Fundamentos básicos para el diseño de software
 
Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)Fundamentos de ingenieria del software (2)
Fundamentos de ingenieria del software (2)
 

Similar to Presentacion del Grupo 6 analisis de sistemas II UNED Costa Rica I Cuatrimestre 2014

Requerimientos de un sistema y desarrollo del prototipo
Requerimientos de un sistema y desarrollo del prototipoRequerimientos de un sistema y desarrollo del prototipo
Requerimientos de un sistema y desarrollo del prototipoAlva_Ruiz
 
Analisis y Diseño de Sistemas
Analisis y Diseño de SistemasAnalisis y Diseño de Sistemas
Analisis y Diseño de Sistemascardan2007i
 
Requerimientos tipos-y-definiciones
Requerimientos tipos-y-definicionesRequerimientos tipos-y-definiciones
Requerimientos tipos-y-definicionesJuan 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-definicionesJuan Restrepo
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones Juan Restrepo
 
IMPORTANCIA DEL ANÁLISIS DE REQUERIMIENTOS PARA EL DESARROLLO DE SISTEMAS
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 SISTEMASAlcoverify
 
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.pdfNinoskaChuraLlojlla1
 
Presentación grupo 3
Presentación grupo 3Presentación grupo 3
Presentación grupo 3Jabón Azo
 
Ingenieria de requisitos
Ingenieria de requisitosIngenieria de requisitos
Ingenieria de requisitosIngrid_Loor
 
Requerimiento funcional 2
Requerimiento funcional 2Requerimiento funcional 2
Requerimiento funcional 2Lucero Mtz
 
2. requerimientos del software
2. requerimientos del software2. requerimientos del software
2. requerimientos del softwareuniv of pamplona
 
La importancia del análisis de requerimientos para el desarrollo de sistemas
La importancia del análisis de requerimientos para el desarrollo de sistemasLa importancia del análisis de requerimientos para el desarrollo de sistemas
La importancia del análisis de requerimientos para el desarrollo de sistemaskisselyn luzardo
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientosElvis Muñoz
 
Unidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxUnidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxRunayli
 
F capitulo 5_requerimientos_del_software
F capitulo 5_requerimientos_del_softwareF capitulo 5_requerimientos_del_software
F capitulo 5_requerimientos_del_softwareJesseniaMangua
 

Similar to Presentacion del Grupo 6 analisis de sistemas II UNED Costa Rica I Cuatrimestre 2014 (20)

Requerimientos de un sistema y desarrollo del prototipo
Requerimientos de un sistema y desarrollo del prototipoRequerimientos de un sistema y desarrollo del prototipo
Requerimientos de un sistema y desarrollo del prototipo
 
Analisis y Diseño de Sistemas
Analisis y Diseño de SistemasAnalisis y Diseño de Sistemas
Analisis y Diseño de Sistemas
 
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-definicionesrequerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
 
requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones requerimientos-tipos-y-definiciones
requerimientos-tipos-y-definiciones
 
IMPORTANCIA DEL ANÁLISIS DE REQUERIMIENTOS PARA EL DESARROLLO DE SISTEMAS
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
 
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
 
Ender mendoza
Ender mendozaEnder mendoza
Ender mendoza
 
Requerimiento
RequerimientoRequerimiento
Requerimiento
 
Presentación grupo 3
Presentación grupo 3Presentación grupo 3
Presentación grupo 3
 
Sistemas requerimientos
Sistemas requerimientosSistemas requerimientos
Sistemas requerimientos
 
Ingenieria de requisitos
Ingenieria de requisitosIngenieria de requisitos
Ingenieria de requisitos
 
Ingenieria de requisitos
Ingenieria de requisitosIngenieria de requisitos
Ingenieria de requisitos
 
Requerimiento funcional 2
Requerimiento funcional 2Requerimiento funcional 2
Requerimiento funcional 2
 
2. requerimientos del software
2. requerimientos del software2. requerimientos del software
2. requerimientos del software
 
La importancia del análisis de requerimientos para el desarrollo de sistemas
La importancia del análisis de requerimientos para el desarrollo de sistemasLa importancia del análisis de requerimientos para el desarrollo de sistemas
La importancia del análisis de requerimientos para el desarrollo de sistemas
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientos
 
Unidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxUnidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptx
 
F capitulo 5_requerimientos_del_software
F capitulo 5_requerimientos_del_softwareF capitulo 5_requerimientos_del_software
F capitulo 5_requerimientos_del_software
 

Presentacion del Grupo 6 analisis de sistemas II UNED Costa Rica I Cuatrimestre 2014

  • 1.
  • 2. Que es Un requerimiento? • De acuerdo al glosario IEEE: Un requerimiento es una condición o necesidad para resolver un problema o alcanzar un objetivo, un capacidad que debe estar presente en un sistemas o componentes de sistema para satisfacer un contrato estándar, especificación u otro documento formal. • De acuerdo a Ian Summerville es la siguiente: “Un requerimiento es simplemente una declaración abstracta de alto nivel de un servicio que debe proporcionar el sistema o una restricción de éste”. • Entonces un requerimiento es una descripción de una condición o capacidad que debe cumplir un sistema, ya sea derivada de una necesidad de usuario identificada, o bien, estipulada en un contrato, estándar, especificación u otro documento formalmente impuesto al inicio del proceso.
  • 3. Características generales de un Requerimiento • Especificado por escrito. • Posible de probar o verificar. • Que sea fácil de leer y entender. • Completo, que no necesite ampliar detalles en su redacción. • Consistente, que no contradiga otro requerimiento.
  • 4. Dificultades para definir los Requerimientos. • No son obvios y vienen de muchas fuentes. • Son difíciles de expresar en palabras. • La cantidad de requerimientos en un proyecto puede ser difícil de manejar. • Un requerimiento puede cambiar en el proceso de desarrollo. • El usuario no puede explicar lo que hace, tiende a recordar lo excepcional y olvidar lo especifico y tiene un lenguaje diferente al de los desarrolladores.
  • 5. Los requerimientos se enfocan en, qué es lo que el sistema debería hacer, son el comportamiento interno del software: Cálculos, detalles técnicos, manipulación de datos entre otros. Estos muestran como los casos de uso serán llevados a la practica y a su vez son complementados por los requerimientos no funcionales. REQUERIMIENTOS FUNCIONALES
  • 6. Según Gonzales F. Carmen “Los requerimientos especifican que es lo que el sistema debe hacer, sus funciones y propiedades esenciales y deseables. Expresan el propósito del sistema sin tomar en cuenta como se va a implantar.” REQUERIMIENTOS FUNCIONALES
  • 7. Un requerimiento es una característica que el sistema debe tener o es una restricción que el sistema debe satisfacer para ser aceptada por el cliente. REQUERIMIENTOS FUNCIONALES Describen la interacción entre el sistema y su ambiente, el ambiente incluye al usuario y cualquier otro sistema externo que interactúa con el sistema independientemente de su implementación.
  • 8. Pueden clasificarse en tres categorías: •Evidentes: Debe realizarse y el usuario debe estar consiente de que se realiza. •Ocultos: Se realiza pero no es visible para el usuario. •Opcionales: Añadirlos no implica que va añadir costos. Para realizar la recopilación de requerimientos se realiza el levantamiento de requerimientos que hace uso de: •Escenarios. •Casos de uso: Describen a los escenarios.
  • 9. Un caso de uso especifica el funcionamiento del sistema, es la secuencia de interacciones que se desarrollan entre el sistema y los usuarios en respuesta a un evento que inicia el usuario principal sobre el sistema. El termino levantamiento de requerimientos quiere decir especificar términos del sistema, en un idioma que el cliente pueda entender para poderlos redactar el contrato entre el cliente y los desarrolladores.
  • 10. CARACTERÍSTICAS DE LOS REQUERIMIENTOS. • Deben ser consistentes. • Deben estar completos. • Deben ser realistas. • Cada requerimiento debe describir algo que es necesario para el cliente. • Deben ser verificables. • Deben ser rastreables.
  • 11. REQUERIMIENTOS FUNCIONALES Los requerimientos funcionales deben estar redactados de tal forma que sean comprensibles para usuarios sin conocimientos técnicos avanzados de Informática. Deben especificar el comportamiento externo del sistema y evitar, en la medida de lo posible, establecer características de su diseño, deben priorizarse (al menos, se ha de distinguir entre requisitos obligatorios y requisitos deseables).
  • 12. Algunos ejemplos de requerimientos funcionales son los siguientes: 1.Visualizar información 2.Insertar 3.Modificar 4.Eliminar 5.Descargar 6.Buscar información 7.Escribir 8.Consultar 9.Actualizar 10.Permitir autenticación
  • 13. Típicamente, un analista de requisitos genera requisitos funcionales luego de diagramar los casos de uso. Sin embargo, esto puede tener excepciones, ya que el desarrollo de software es un proceso iterativo y algunos requisitos son previos al diseño de los casos de uso. Ambos elementos (casos de uso y requisitos) se complementan en un proceso bidireccional. REQUERIMIENTOS FUNCIONALES
  • 14. Un requisito funcional típico contiene un nombre y un número de serie único y un resumen. Esta información se utiliza para ayudar al lector a entender por qué el requisito es necesario, y para seguir al mismo durante el desarrollo del producto. REQUERIMIENTOS FUNCIONALES
  • 16. Requerimientos No Funcionales • Como su nombre lo especifica son requerimientos que no se relacionan directamente con los servicios específicos que el sistema entrega a sus usuarios, pueden relacionarse con propiedades emergentes del sistema tales como: fiabilidad, tiempo de respuesta, uso de almacenamiento, rendimiento, seguridad, accesibilidad, portabilidad operatividad entre otros, y también pueden definir restricciones sobre la implementación del sistema, como capacidades de los dispositivos de entrada y salida o las representaciones de datos usados en las interfaces de otros programas. • Por lo tanto se refieren a todos los requisitos que ni definen información a guardar ni tareas a realizar dentro del sistema.
  • 17. Requerimientos No Funcionales • Aunque los requerimientos no funcionales no son servicios que ofrece directamente el sistema al usuario, el fracaso para cubrir estos requerimientos haría que todo el sistema fuera inútil. Por ejemplo, si un sistema de control de transacciones de un banco no cubre sus requerimientos de seguridad no será certificado para su operación, o si un sistema de control de aeronave no cubre sus requerimientos de fiabilidad no cera aceptado como un dispositivo seguro y su un sistema de control embebido fracasa para cubrir sus requerimientos de rendimiento, no operarían correctamente las funciones de control.
  • 18. Requerimientos No Funcionales • Existen dos razones de por que la implementación de los requerimientos no funcionales se propagan a lo largo del sistema: 1. Los requerimientos no funcionales afectan mas la arquitectura global de un sistema que los componentes Individuales. Por ejemplo para garantizar que se cumplan los requerimientos de rendimientos es posible que se deba de organizar el sistema de manera que se minimice la comunicación entre los componentes. 2. Un requerimiento no funcional individual, como la seguridad, podría generar algunos requerimientos funcionales relacionados que definan nuevos servicios del sistema que se requiera. Además también podrían generar restricciones a los requerimientos existentes.
  • 19. Tres Tipos de Requerimientos No Funcionales. 1. Requerimientos del Producto: especifican o restringen comportamientos del software por ejemplo el rendimiento sobre que tan rápido se debe ejecutar una tarea y cuanta memoria requiere. 2. Requerimientos de la organización: requerimientos de sistemas amplios derivados de políticas y procedimientos en la organización cliente y el desarrollador, por ejemplo requerimientos de proceso de desarrollo que define el lenguaje de programación con el que se va a crear el sistema. 3. Requerimientos externos: incluyen todos los factores externos del sistema y su proceso de desarrollo, por ejemplo requerimientos regulatorios que establecen lo que debe hacer el sistema para ser aprobado por un regulador, o requerimientos legislativos que deben de seguirse para que opere conforme a la ley.
  • 20. Algunas Medidas Métricas para especificar Requerimientos No Funcionales • Rapidez: transacciones por segundo procesadas, tiempo de respuesta usuario / evento, tiempo de regeneración de pantalla. • Tamaño: Mega Bytes, Numero de chips ROM. • Facilidad de Uso: tiempo requerido de capacitación, numero de cuadros de ayuda. • Fiabilidad: tiempo medio para falla, probabilidad de indisponibilidad, tasa de ocurrencia de falla. • Robustez: tiempo de reinicio después de falla, porcentaje de eventos que causan falla, probabilidad de corrupción de datos en falla. • Portabilidad: numero de sistemas objetivo, porcentaje de enunciados dependientes de objetivo.
  • 22. ¿Qué es UML? • El Lenguaje Unificado de Modelado (UML) es un lenguaje que provee un conjunto estandarizado de herramientas para documentar el análisis y diseño de un sistema. Un lenguaje de modelado de propósito general.
  • 23. ¿Qué es UML? • Nos permite especificar y detallar la arquitectura y los elementos de un sistema de información ya sea sencillo o de gran nivel de complejidad, para poder abstraer cualquier detalle de este.
  • 24. Beneficios del UML • Manejo de la complejidad: • Al trabajar con UML podemos modular un sistema complejo y así trabajar con sectores de este y modelarlos para comprender mas fácilmente el sistema.
  • 25. Beneficios del UML • Reutilización: • Cuando se utiliza el Lenguaje Unificado de Modelado se pueden generalizar los componentes de un sistema y así poder utilizarlos en muchas partes del mismo.
  • 26. Herramientas UML • Ahora existen diferentes herramientas que toman el estándar definido de UML y nos permiten generar código a partir de este como lo esVisual Studio 2013.
  • 27. Entonces ¿Porqué es importante el uso de UML? • Estandariza el diseño gráfico de sistemas • Al usar UML en forma iterativa en el análisis y diseño se logra una mejor comprensión entre equipos de trabajo y equipos deTI en relación con los requerimientos del sistema.
  • 28. Entonces ¿Porqué es importante el uso de UML? • Beneficia la reutilización de componentes del sistema. • Facilita el manejo de sistemas de gran complejidad.
  • 29. Bibliografia • Gonzales F. Carmen. (2011) Notas del curso análisis de requerimientos. [Pagina web] recuperado el 06 de marzo 2014 de <Http://web.cua.uam.mx/publicaciones/Notas_Analisis_Requerimiento.pdf> • Kendall, K., & Kendall, J. (2011). Análisis y diseño de sistemas. México: Pearson Educación. • Osorio, L. (Productor). (2013). Importancia delUML [Video]. Disponible en: http://audiovisuales.uned.ac.cr/mediateca/videos/1007/importancia- del-uml • Arias Chavez. M (2005). La ingeniería de requerimientos y su importancia en el desarrollo de proyectos de software. UCR 5(11). 2 – 4. recuperado de: http://www.redalyc.org/articulo.oa?id=66661111 • Sommerville, Ian. (2011). Ingenieria de Software. Mexico. Pearson Education.