SlideShare ist ein Scribd-Unternehmen logo
1 von 8
Downloaden Sie, um offline zu lesen
TEMA NRO. 4
FUNDAMENTOS Y METODOS DE
ANALISIS DE REQUERIMIENTOS
MATERIA: INGENIERIA DE SOFTWARE
DOCENTE: LIC. ZARA YUJRA CAMA
Ingeniería de Requerimientos
?El procesode establecer los servicios que el
cliente requiere de unsistema y las
restricciones bajo las cuales opera y es
desarrollado el mismo.
?Los requerimientos por si mismos son las
descripciones de los servicios del sistema y
las restricciones son generadas durante el
proceso de la ingeniería de requerimientos.
Qué es un requerimiento?
?Puede abarcar desde una declaraci ón abstracta de
alto nivel de un servicio o de una restricción de un
sistema a una especificaci ón funcional matemática
detallada.
?Esto es inevitable, dado que los requerimientos
pueden servir a una doble funci ón
?Puede ser la base de la propuestade un contrato– sin
embargo debe estar abiertaa interpretación
?Puede ser la base para el contratomismo–sin embargo
debe estar definido en detalle
?Ambas de estas declaraciones pueden ser llamadas
requerimientos
Abstracción de Requerimientos (Davis)
Si una compañía desea establecer un contrato para el
desarrollo de un proyecto de software, debe definir sus
necesidades de una forma suficientemente abstracta como para
establecer a partir de ella una solución. Los requerimientos
deben redactarse de tal forma que varios contratistas puedan
licitar el contrato, ofreciendo, quizás formas diferentes de
cumplir las necesidades de los clientes en la organización.Una
vez que el contrato se asigna, el contratista debe redactar una
definición del sistema para el cliente de forma que éste
comprenda y pueda validar lo que hará el software. Ambos
documentos se denominan el “Documento de
Requerimientos para el Sistema”.
Tipos de Requerimientos
?Requerimientos del Usuario
?Las declaraciones en lenguaje natural y en diagramas de los
servicios quese espera que el sistema provea y de las
restricciones bajo las cuales debe operar
?Requerimientos del Sistema
?Establecen con detalle los servicios y restricciones del
sistema
. El documentode requerimientos del sistema
,
algunas veces , denominado Especificación Funcional, debe
ser preciso.
?Especificaci ón del Diseño del Software
?Es una descripción abstracta del diseño del software que es
una base para un diseño e implementación detallados.
Agrega detalle a la especificación de requerimientos del
sistema
.
Definiciones y Especificaciones
Definición de Requerimientos del Usuario
1. El software debe proveer un medio para representar y acceder a
archivos externos creados por otras herramientas
1.1 Al usuario se le proveerá con los recursos para definir el tipo de
archivos externos
1.2 Cada tipo de archivo externo tendrá una herramienta asociada que
será aplicada al archivo
1.3 Cada tipo de archivo externo se representará como un icono
específico sobre la pantalla del usuario
1.4 Se proveerán recursos para que el usuario defina el icono que
representa un tipo de archivo externo
1.5 Cuando un usuario selecciona un icono que representa un archivo
externo, el efecto de esa selección es aplicar la herramienta asociada con
este tipo de archivo al archivo representado por el icono seleccionado
Especificación de los Requerimientos del Sistema
Lectores de Requerimientos
Requerimientos del
Usuario
Requerimientos del
Sistema
Especificaci ón del
diseño del software
•Administradores clientes
•Usuarios finales
•Ingenieros clientes
•Administradores contratistas
•Arquitectos del sistema
•Usuarios finales
•Ingenieros clientes
•Arquitectos del sistema
•Desarrolladores del software
•Ingenieros clientes (quizás)
•Arquitectos del sistema
•Desarrolladores del software
Requerimientos Funcionales y no Funcionales
?Requerimientos Funcionales
?Son declaraciones de los servicios que proveerá el
sistema
, de la manera en que éstereaccionará a entradas
particulares y de cómo se comportará en situaciones
particulares
?Requerimientos no Funcionales
?Son restricciones de los servicios o funciones ofrecidos
por el sistema
. Incluyen restricciones de tiempo, sobre el
procesode desarrollo, estándares , etc.
?Requerimientos del dominio
?Son requerimientos que provienen del dominio de
aplicación del sistemay que reflejan las características de
ese dominio. Puedenser funcionales o no funcionales.
Requerimientos Funcionales
?Describe la funcionalidad o los servicios que
se esperan de unsistema
?Dependen del tipo de software y delsistema
que se desarrolle y de los posibles usuarios
del software
?Describen con detalle la función del sistema,
sus entradas y salidas, excepciones, etc.
Ejemplos de Requerimientos Funcionales
?El usuario deberá tener la posibilidad de
buscar en el conjunto inicial de la base de
datos o seleccionar un subconjunto de ella.
?El sistema deberá proveer visores adecuados
para que el usuario lea documentos en el
almacén de documentos.
?A cada pedido se le deberá designar un
identificador unico (ID_PEDIDO) que el
usuario podrá copiar al área de
almacenamiento permanente de la cuenta.
Imprecisión de los Requerimientos
?Pueden aparecer problemas cuandolos
requerimientos no son declarados de manera
precisa.
?Los requerimientos ambiguos pueden ser
interpretados de manera distinta por
desarrolladores y usuarios
?Considere el término “ visores adecuados”
?Intención del usuario – propósito especial del visor
para cada tipo distinto de documento
?Interpretación del desarrollador – Proveerun visor
de texto que muestre el contenido del documento
Compleción y Consistencia de Requerimientos
?En principio, los requerimientos deberían ser
completos y consistentes
?Compleción
?Deberían incluirdescripciones de todas las
facilidades requeridas
?Consistencia
?Los requerimientos no tienen definiciones
contradictorias
?En la práctica, es imposible cumplir los
requerimientos de compleción y consistencia
Requerimientos no Funcionales
?Define las propiedades emergentes del
sistema, como la fiabilidad, el tiempo de
respuesta y la capacidad de almacenamiento
?Requerimientos de proceso pueden también
ser especificados utilizando un sistema CASE,
lenguaje de programación o método de
desarrollo
?Los requerimientos no funcionales pueden ser
mas críticos que los funcionales. Si no son
alcanzados, elsistema puede quedar
inutilizado
Clasificaciones no Funcionales
?Requerimientos del Producto
?Especifican el comportamientodel producto, por ejemplo,
tiempo de ejecución, memoria requerida, fiabilidad, etc.
?Requerimientos organizacionales
?Se derivan de las politicas y procedimientos existentes en
la organización del clientey en la del desarrollador.
Ejemplos: estándares que deben utilizarse en los
procesos , método de diseño a utilizar, etc.
?Requerimientos externos
?Se derivan de los factores externos al sistema y de su
procesode desarrollo. Ejemplos: requerimientos de
interoperatividad, requerimientos legales y éticos.
Tipos de Requerimientos no Funcionales
Pe rforma nce
requirements
Spa ce
requir eme nts
Usability
requirements
Ef fic ienc y
require ments
Reliability
re quire ments
Portability
requirements
Inte rope ra bility
require ments
Ethica l
requirements
Legislative
requirements
Impleme ntation
requir ements
Sta ndards
require ments
Delivery
re quireme nts
Sa fe ty
requirements
Privacy
require ments
Produc
t
re quire ments
Organizational
requir ements
External
requirements
Non-functional
requir ements
Requerimientos
no funcionales
Requerimientos
del producto
Requerimientos
organizacionales
Requerimientos
externos
Requerimientos
de eficiencia
Requerimientos
de fiabilidad
Requerimientos
de portabilidad
Requerimientos
de interoperabilidad
Requerimientos
éticos
Requerimientos
de usabilidad
Requerimientos
de entrega
Requerimientos
de implementaci
ón
Requerimientos
de estándares
Requerimientos
legales
Requerimientos
de desempeño
Requerimientos
de espacio
Requerimientos
de privacidad
Requerimientos
de seguridad
Ejemplos de Requerimientos no Funcionales
?Requerimientos del Producto
?4.C.8 Será necesario que la comunicación requerida entre
el APSE y el usuario se pueda expresar utilizando el
conjuntode caracteres estándar de ADA
?Requerimiento Organizacional
?9.3.2 El procesode desarrollo del sistemay los
documentos a entregar deberán adherirseal proceso y a los
productos a entregar definidos en XYZCo
-SP-STAN-95
?Requerimiento Externo
?7.6.5 El sistemano deberá revelar asus operadores
alguna información personal de los clientes exceptosu
nombre y número de referencia
Metas y Requerimientos
?Los requerimientos no funcionales pueden ser muy
difíciles de establecer en forma precisa, y los
requerimientos imprecisos pueden ser difíciles de
verificar.
?Meta
?Una intención general del usuario comoser la facilicidad
de uso
?Requerimientos no funcionales Verificables
?Una declaracion utilizando alguna medida que puedeser
probada objetivamente.
?Las metas son útiles a los desarrolladores puesto
que dan idea de las prioridades del cliente
Ejemplos
?Una meta de sistema
?Deberá ser fácil para los controladores especializados
utilizar el sistemam, y éste deberá estar organizado para
minimizar los errores del usuario
?Un requerimiento no funcional verificable
?Después de una capacitación de dos horas, a los
controladores especializados les deberá ser posible utilizar
todas las funciones del sistema
. Después de esta
capacitación el número de errores cometidos no deberá
exceder de dos por día
Métricas para especificar Requerimientos no
Funcionales
Número de sistemas objetivo
Porcentaje de declaraciones dependientes del
objetivo
Portabilidad
Probabilidad de corrupción de los datos después de
las fallas
Porcentaje de eventos que provocan las fallas
Tiempo de reinicio despues de fallas
Robustez
Disponibilidad
Tasa de ocurrencia de las fallas
Probabilidad de nodisponibilidad
Tiempo promedio entre fallas
Fiabilidad
Número de cuadros de ayuda
Tiempo de capacitación
Facilidad de Uso
Número de chips de RAM
KB
Tamaño
Tiempo de actualización de lapantalla
Tiempo de respuesta al usuarioy a eventos
Transacciones procesadas por segundo
Rapidez
Medida
Propiedad
Interacción de Requerimientos
?Conflictos entre diferentes requerimientos no
funcionales y otros requerimientos funcionales
del sistema
?Sistema de Aeronavegación
?Para minimizar el peso, el número de chips
separados en el sistema debería ser minimizado
?Para minimizar el consumo de energía, deberían
ser utilizados chips de bajo consumo
?Sin embargo, utilizar chips de bajo consumo
puede significarque deberán ser usados mas
chips. Cuál es el requerimiento mas crítico?
Requerimientos de Dominio
?Derivados del dominio de aplicaci ón y describe las
características del sistema y los rasgos que reflejan
el dominio
?Pueden ser nuevos requerimientos funcionales,
restricciones en requerimientos existentes o definir
específicaciones de cómputos
?Si los requerimientos del dominio no son
alcanzados, el sistema puede quedar inutilizable
Requerimientos del Dominio para el sistema de
Biblioteca
?Deberá existir una interfaz del usuario estándar para
todas las bases de datos, la cual tome como
referencia el estándar Z39.50
?Debido a las restricciones en los derechos de autor,
algunos documentos deberán borrarse
inmediatamente después de su llegada.
Dependiendo de los requerimientos del usuario,
estos documentos se imprimirán de forma local en el
servidor del sistema para ser distribuídos de forma
manual al usuario o enviarse a la impresora de la
red.
Sistema de Protección de Trenes
?
La desaceleración del tren será calculada
como:
Dtren = Dcontrol + Dgradiente
donde Dgradiente es 9.81ms2
gradiente
compensado/alfa y donde los valores de
9.81ms2
/alfa son conocidos para diferentes
tipos de trenes
Problemas de requerimientos de Dominio
?Comprensibilidad
?Los requerimientos son expresados en el lenguaje del
dominio de aplicación
?A menudo, estono es comprendido por los ingenieros de
software que están desarrollando el sistema
?Implicabilidad
?Los expertos en el dominio pueden dejarfuera alguna
información porque para ellos es obvia. Sin embargo, no lo
es para los desarrolladores y, por lo tanto
, implementarán
el requerimientode forma no satisfactoria.
Requerimientos de Usuarios
?Describen los requerimientos funcionales y no
funcionales de tal forma que sean
comprensibles por los usuarios que no posean
conocimiento técnicodetallado.
?Están definidos utilizando lenguaje natural,
tablas y diagramas
Problemas con lenguaje natural
?Falta de claridad
?La precisi ón es difícil sin hacerque el documento
no sea ambiguo ni difícil de leer
?Confusión de Requerimientos
? Los requerimientos funcionales y no funcionales
tienden a confundirse.
?Conjunción de Requerimientos
? Diversos requerimientos diferentes se expresan
de forma conjunta como un único requerimiento
Requerimiento de Base de Datos
4.A.5 La base de datos deberá ayudar ala generación y
control de la configuración de objetos; es decir, objetos que
a su vez son agrupaciones de otros de la base de datos. Los
recursos para estecontrol permitirán el acceso a los objetos
en unaversión de grupo utilizando un nombre incompleto
.
Requerimiento para un editor de cuadrícula
2.6 Recursosdela cuadrícula. Para ayudar a la ubicación de
entidades en un diagrama, el usuario activará una cuadrícula en
cent ímetros o en pulgadas , medianteuna opción en el panel de
control. De forma inicial, dicha cuadrícula estará desactivada.
Esta cuadrículase podrá activar o desactivar en cualquier
momentoduranteuna sesión de edición y puesta en pulgadas y
cent ímetros . La opción de cuadrícula se proveerá en la vista de
reducción de ajuste, pero el número de líneas de la cuadrícula a
mostrar se reducirá para evitar saturar el diagramamás pequeño
con líneas de cuadrícula.
Problemas de Requerimientos
?Los requerimientos de la base de datos incluyen
tanto informaci ón detallada como conceptual
?Describen el conceptode las facilidades de control de
configuración
?Incluyen el detalle de los objetos que puedenser
accedidos utilizando un nombre incompleto
?Los requerimientos de la cuadrícula mezclan tres
clases diferentes de requerimientos
?Requerimiento funcionalconceptual (la necesidad de una
cuadrícula)
?Requerimiento no funcional (unidades de cuadrícula)
?Requerimiento de IU no funcionale
(activación/desactivación)
Guías para escribir requerimientos
?Crear un formato estándar y utilizarlo para
todos los requerimientos
?Utilizar un lenguaje consistente.Utilizar
“DEBE” para requerimientos obligatorios y
“DEBERÍA” para requerimientos deseables
?Utilize texto resaltado para identificar partes
claves del requerimiento
?Evite el usode lenguaje técnico
computacional
Requerimientos de Sistema
?Especificaciones mas detalladas de los
requerimientos del usuario
?Sirve como base para el diseño del sistema
?Pueden ser utilizados como parte de un
contrato de sistema
Requerimientos y Diseño
?En principio, los requerimientos deberán
establecer lo que hará el sistema y no la
manera en que se implementará.
?En la práctica, los requerimientos y eldiseño
soninseparables
?Una arquitectura de sistema debe ser diseñada
para estructurar los requerimientos
?El sistema debe interoperar con otros ya
existentes que generan requerimientos de diseño
?El uso de un diseño específico es un
requerimiento externo
Problemas con las especificaciones en Lenguaje
Natural
?Ambigüedad
?Los lectores y escritores del requerimientodeben
interpretar las mismas palabras de la mismamanera. El
LenguajeNatural es naturalmenteambiguo de modo que
esto es muy difícil.
?Sobre-flexibilidad
?La mismaexpresión puede ser dicha de varias maneras
distintas en la especificación
?Falta de modularizaci ón
?Las estructuras del Lenguaje Natural son inadecuadas
para estructurar requerimientos de sistema
Alternativas a la especificación en LN
?Lenguaje natural estructurado
?Lenguaje de descripción de diseño
?Notaciones gráficas. Ejemplos: SADT,
Descripciones de Casos de Uso
?Especificaciones matemáticas
Especificaciones en Lenguaje Estructurado
?El lenguaje natural debe ser utilizado de forma
limitada para expresar requerimientos
?Esto resuelve algunos de los problemas
resultantes de laambigüedad y flexibilidad, e
impone un grado de uniformidad en una
especificación
?Las notaciones del lenguaje estructurado
delimitan la terminología utilizada y emplean
plantillas para especificar los requerimientos
Especificaciones basadas en formatos
?Definición de la función o entidad
?Descripciones de sus entradas y dedonde
provienen
?Descripción de sus salidas y hacia donde van
?Indicación de otras entidades requeridas
?Pre y pos condiciones (si se aplica)
?Efectos colaterales (si existen)
Especificación del Sistema utilizando un formato
ECLIPSE/Workstation/Herramientas/DE/FS/3.5.1
Funci ón. Agregar nodo.
Descripción. Agrega un nodo a un diseño existente. El usuario selecciona el tipo de nodo, y su
posición. Cuando se agrega al diseño, dicho nodo se convierte en la selección actual. El
usuario elige la posición del nodo moviendo el cursor al área donde se agrega dicho nodo.
Entradas. Tipo posición del nodo, identificador del diseño.
Fuente. El tipo y la posición del nodo se introducen por el usuario, identificador del diseño
proviene de la base de datos.
Salidas. Identificador del diseño.
Destino. El diseño de la base de datos. El diseño se deposita a la base de datos al completar la
operación.
Requerimientos. Al introducir el identificador del diseño se llama a la gráfica del diseño.
Precondición. El diseño se abre y despliega en la pantalla del usuario.
Postcondición El diseño no cambia excepto en la adición de un nodo del tipo especificado en la
posición dada.
Efectos colaterales Ninguno.
Definición: ECLIPSE/Workstation/Herramientas/DE/FS/3.5.1
Definición de requerimientos basado en PDL
? Los requerimientos pueden ser definidos operacionalmente
utilizando un lenguaje similar a un lenguaje de programación
pero con mas facilidad de expresión
? Mas apropiado en dos situaciones
? Donde una operación está especificada como una secuenca de
acciones y el orden es importante
? Cuando las interfases de hardware y software tienen que ser
especificadas
? Desventajas:
? El PDL no puede ser suficientemente expresivo para definir los
conceptos del dominio
? La especificaci ón será considerada como un diseño antes que una
especificaci ón
Parte de una especificación de un ATM
class ATM{
// declarations here
public static void main (String args[]) th
rows InvalidCard {
try {
thisCard.read () ; // may throw InvalidCard exception
pi
n =KeyPad.readPin () ;attempts = 1;
while ( !thisCard.p
in.equals (pin) & attempts < 4)
{ pin = KeyPad.readPin (); a
ttempts = a
ttempts + 1 ;
}
if (!thisCard.pin.equals (pin))
throw new InvalidCard ("Bad PIN");
thisBalance= thisCard.getBalance () ;
do{ Screen.prompt (" Pleaseselect a service ") ;
service = Sc
reen.touchKey () ;
switch (service) {
case Services.withdrawalWithReceipt:
receiptRequired = t
rue ;
Desventajas del PDL
?El PDL puede no sersuficientemente
expresivo para expresar la funcionalidad del
sistema de una manera comprensible
?La notación solo es comprensible para la
gente con conocimiento de lenguajes de
programación
?El requerimiento puede ser considerado como
una especificación de diseño antes que un
modelo que ayuda a comprender el sistema
Especificación de Interfase
?La mayoría de los sistemas deben operar con
otros sistemas y las interfases de operación
deben ser especificadas como parte de los
requerimientos
?Tres tipos de interfases pueden tener que ser
definidas
?Interfases procedimentales
?Estructuras de datos que son intercambiadas
?Representaciones de datos
?Las notaciones formales son una técnica
efectiva para la especificación de interfases
Descripción de interfase de PDL
interface PrintServer {
// defines an abstract printer server
// requires: interface Printer, interface PrintDoc
// provides: initialize, print, displayPrintQueue, cancelPrintJob, switchPrinter
void initialize ( Printer p ) ;
void print ( Printer p, PrintDoc d ) ;
void displayPrintQueue ( Printer p ) ;
void cancelPrintJob (Printer p, PrintDoc d) ;
void switchPrinter (Printer p1, Printer p2, PrintDoc d) ;
} //PrintServer
El documento de requerimientos
?El Documento de Requerimientos es la
declaración oficial de lo que es requerido de
los desarrolladores del sistema
?Deberá incluir tanto una definición como una
especificación de requerimientos
?NO es un documento de diseño. Tanto como
sea posible, deberá especificar lo QUE el
sistema deberá hacer antes que COMO lo
hará.
Us e the req uirements to
d evelop validation tes ts for
the system
Us e the requirements
docum en t to plan a bid for
the sys tem and to plan the
s
y stem development proces s
Us e the requirements to
unders tand what system is to
be developed
Sy stem test
engin eers
M anagers
System engineers
Specifythe requirements and
read them to check that they
meet their needs .Th ey
specify ch anges to th e
requirements
System custo mers
Us e the requirements to help
und e
rs tand the system and
the relationships between its
parts
S ystem
main ten ance
engin eers
Clientes del
Sistema
Gerentes
Ingenieros de
Sistemas
Ingenieros de
pruebas del Sma
Ingenieros de
Mantenimiento
del Sma
Especifican los requerimientos
y los leen para chequear que
cubren sus necesidades.
Especifican cambios a
los requerimientos
Utilizan el documento de
requerimientos para planear
una oferta por el sistema y para
planear el proceso dedesarro-
llo del sistema
Utilizan los requerimientos
para comprender qué sistema
será desarrollado
Utilizan los requerimientos
para desarrollar pruebas de
validación del sistema
Utilizan los requerimientos
para ayudar a comprender
el sistema y las relaciones
entre sus partes
Usuariosde un
Documentode
Requerimientos
Requerimientos del Documento de Requerimientos
?Especificar el comportamiento externo del sistema
?Especificar las restricciones de la implementaci ón
?Debe ser fácil de cambiar
?Servir como una herramienta de referencia para
mantenimiento
?Registrar los antecedentes acerca del ciclo de vida
del sistema, por ejemplo, predecir cambios
?Caracterizar respuestas a eventos no esperados
Estándar de Requerimientos IEEE
?Introducción
?Descripción General
?Requerimientos específicos
?Apéndices
?Indice
?Esta es una estructura genérica que debe ser
instanciada para sistemas específicos
Estructura del Documento de Requerimientos
?Introducción
?Glosario
?Definición de Requerimientos del Usuario
?Arquitectura del Sistema
? Especificación de Requerimientos del
Sistema
?Modelos del Sistema
?Evolución del Sistema
?Apéndices
?Indice

Weitere ähnliche Inhalte

Ähnlich wie Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf

Analisis y Diseño de Sistemas
Analisis y Diseño de SistemasAnalisis y Diseño de Sistemas
Analisis y Diseño de Sistemascardan2007i
 
Ingenieria de requisitos
Ingenieria de requisitosIngenieria de requisitos
Ingenieria de requisitosBebeto Pesantez
 
Sesion5 requerimientos de software
Sesion5 requerimientos de softwareSesion5 requerimientos de software
Sesion5 requerimientos de softwareOscar López
 
Presentación grupo 3
Presentación grupo 3Presentación grupo 3
Presentación grupo 3Jabón Azo
 
2. requerimientos del software
2. requerimientos del software2. requerimientos del software
2. requerimientos del softwareuniv of pamplona
 
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
 
Análisis de requerimientos
Análisis de requerimientosAnálisis de requerimientos
Análisis de requerimientosGustavo Araque
 
Especificaciones de Requerimientos SRS
Especificaciones de Requerimientos SRSEspecificaciones de Requerimientos SRS
Especificaciones de Requerimientos SRSsullinsan
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientosMarvin Romero
 
Ingenieria de Requisitos
Ingenieria de RequisitosIngenieria de Requisitos
Ingenieria de Requisitosjessica_jara7
 
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 requisitos
ingenieria de requisitosingenieria de requisitos
ingenieria de requisitosJesus Coloma
 
Analisis requerimientos jose_fernandez
Analisis requerimientos jose_fernandezAnalisis requerimientos jose_fernandez
Analisis requerimientos jose_fernandezJose Fernandez
 

Ähnlich wie Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf (20)

Analisis y Diseño de Sistemas
Analisis y Diseño de SistemasAnalisis y Diseño de Sistemas
Analisis y Diseño de Sistemas
 
Isw5 requerimientos
Isw5 requerimientosIsw5 requerimientos
Isw5 requerimientos
 
Ender mendoza
Ender mendozaEnder mendoza
Ender mendoza
 
Ingenieria de requisitos
Ingenieria de requisitosIngenieria de requisitos
Ingenieria de requisitos
 
Sesion5 requerimientos de software
Sesion5 requerimientos de softwareSesion5 requerimientos de software
Sesion5 requerimientos de software
 
Presentación grupo 3
Presentación grupo 3Presentación grupo 3
Presentación grupo 3
 
02 captura de requisitos
02 captura de requisitos02 captura de requisitos
02 captura de requisitos
 
Requerimiento
RequerimientoRequerimiento
Requerimiento
 
2. requerimientos del software
2. requerimientos del software2. requerimientos del software
2. requerimientos del software
 
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
 
Análisis de requerimientos
Análisis de requerimientosAnálisis de requerimientos
Análisis de requerimientos
 
Especificaciones de Requerimientos SRS
Especificaciones de Requerimientos SRSEspecificaciones de Requerimientos SRS
Especificaciones de Requerimientos SRS
 
Ingenieria de requerimientos
Ingenieria de requerimientosIngenieria de requerimientos
Ingenieria de requerimientos
 
Requerimientos del software
Requerimientos del softwareRequerimientos del software
Requerimientos del software
 
Ingenieria de Requisitos
Ingenieria de RequisitosIngenieria de Requisitos
Ingenieria de Requisitos
 
Ingenieria de-requisitos
Ingenieria de-requisitosIngenieria de-requisitos
Ingenieria de-requisitos
 
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 requisitos
ingenieria de requisitosingenieria de requisitos
ingenieria de requisitos
 
Guide to the software engineering body of knowledge
Guide to the software engineering body of knowledgeGuide to the software engineering body of knowledge
Guide to the software engineering body of knowledge
 
Analisis requerimientos jose_fernandez
Analisis requerimientos jose_fernandezAnalisis requerimientos jose_fernandez
Analisis requerimientos jose_fernandez
 

Kürzlich hochgeladen

electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejerciciosEfrain Yungan
 
Guía para la identificación de materiales peligrosos
Guía para la identificación de materiales peligrososGuía para la identificación de materiales peligrosos
Guía para la identificación de materiales peligrososAdrianVarela22
 
Unidad_1_Parte_1 organización y estructura de los seres vivos
Unidad_1_Parte_1 organización y estructura de los seres vivosUnidad_1_Parte_1 organización y estructura de los seres vivos
Unidad_1_Parte_1 organización y estructura de los seres vivossolareslionel9
 
Sales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicaSales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicakiaranoemi
 
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2santiagoBernabei8
 
04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptx04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptxHenryApaza12
 
Introduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdfIntroduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdfjhorbycoralsanchez
 
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptxACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptxaxelalejossantos
 
La Evolución Industrial en el Ecuador.pdf
La Evolución Industrial en el Ecuador.pdfLa Evolución Industrial en el Ecuador.pdf
La Evolución Industrial en el Ecuador.pdfAnthony Gualpa
 
presentación de topografía y sus aplicaciones
presentación de topografía y sus aplicacionespresentación de topografía y sus aplicaciones
presentación de topografía y sus aplicacionesCarlosA427496
 
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdfMANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdfciteagrohuallaga07
 
Analisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptxAnalisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptxasotomayorm2
 
SESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdfSESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdfElenaNagera
 
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...jfmolina199
 
Sales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasSales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasPaulina Cargua
 
Unid 3 Extraccion 10-10-23 operaciones unitarias
Unid 3 Extraccion 10-10-23 operaciones unitariasUnid 3 Extraccion 10-10-23 operaciones unitarias
Unid 3 Extraccion 10-10-23 operaciones unitariasPatriciaRaimondi
 
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSEJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSLuisLopez273366
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfrudy cabezas
 
Esmerling de la Cruz (Proyecto de Programación)
Esmerling de la Cruz (Proyecto de Programación)Esmerling de la Cruz (Proyecto de Programación)
Esmerling de la Cruz (Proyecto de Programación)esmerling14
 
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdfFOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdfDanielAlejandroAguir2
 

Kürzlich hochgeladen (20)

electricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicioselectricidad básica, ejemplos prácticos y ejercicios
electricidad básica, ejemplos prácticos y ejercicios
 
Guía para la identificación de materiales peligrosos
Guía para la identificación de materiales peligrososGuía para la identificación de materiales peligrosos
Guía para la identificación de materiales peligrosos
 
Unidad_1_Parte_1 organización y estructura de los seres vivos
Unidad_1_Parte_1 organización y estructura de los seres vivosUnidad_1_Parte_1 organización y estructura de los seres vivos
Unidad_1_Parte_1 organización y estructura de los seres vivos
 
Sales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganicaSales binarias y oxisales química inorganica
Sales binarias y oxisales química inorganica
 
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
Química Analítica-U1y2-2024.pdf. Unidades 1 y 2
 
04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptx04-circuitos-comparadores de amplificadores operacionales.pptx
04-circuitos-comparadores de amplificadores operacionales.pptx
 
Introduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdfIntroduccion-a-los-tipos-de-cemento (1).pdf
Introduccion-a-los-tipos-de-cemento (1).pdf
 
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptxACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
ACEROS DE PERFORACION, CARACTERISTICAS Y FICHAS TECNICAS.pptx
 
La Evolución Industrial en el Ecuador.pdf
La Evolución Industrial en el Ecuador.pdfLa Evolución Industrial en el Ecuador.pdf
La Evolución Industrial en el Ecuador.pdf
 
presentación de topografía y sus aplicaciones
presentación de topografía y sus aplicacionespresentación de topografía y sus aplicaciones
presentación de topografía y sus aplicaciones
 
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdfMANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
MANUAL DE NORMAS SANITARIAS PERUANAS ACTUALIZADO 2024.pdf
 
Analisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptxAnalisis de reparación de fisuras superficiales en pavimentos.pptx
Analisis de reparación de fisuras superficiales en pavimentos.pptx
 
SESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdfSESIÓN 1 - Tema 1 - Conceptos Previos.pdf
SESIÓN 1 - Tema 1 - Conceptos Previos.pdf
 
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
Pueden_los_sistemas_de_informacion_ayudar_a_evitar_una_crisis_de_salud_public...
 
Sales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicasSales Básicas Quimica, conocer como se forman las sales basicas
Sales Básicas Quimica, conocer como se forman las sales basicas
 
Unid 3 Extraccion 10-10-23 operaciones unitarias
Unid 3 Extraccion 10-10-23 operaciones unitariasUnid 3 Extraccion 10-10-23 operaciones unitarias
Unid 3 Extraccion 10-10-23 operaciones unitarias
 
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOSEJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
EJERCICIOS DE PROPIEDADES INDICES DE MECÁNICA DE SUELOS
 
R. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdfR. Contraloria 432-2023-CG obras x AD.pdf
R. Contraloria 432-2023-CG obras x AD.pdf
 
Esmerling de la Cruz (Proyecto de Programación)
Esmerling de la Cruz (Proyecto de Programación)Esmerling de la Cruz (Proyecto de Programación)
Esmerling de la Cruz (Proyecto de Programación)
 
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdfFOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
FOTOCELDAS Y LOS DIFERENTES TIPOS QUE EXISTEN.pdf
 

Tema 4 Fundamentos_y_Metodos_de_Analisis_de_Requerimientos_P.pdf

  • 1. TEMA NRO. 4 FUNDAMENTOS Y METODOS DE ANALISIS DE REQUERIMIENTOS MATERIA: INGENIERIA DE SOFTWARE DOCENTE: LIC. ZARA YUJRA CAMA Ingeniería de Requerimientos ?El procesode establecer los servicios que el cliente requiere de unsistema y las restricciones bajo las cuales opera y es desarrollado el mismo. ?Los requerimientos por si mismos son las descripciones de los servicios del sistema y las restricciones son generadas durante el proceso de la ingeniería de requerimientos. Qué es un requerimiento? ?Puede abarcar desde una declaraci ón abstracta de alto nivel de un servicio o de una restricción de un sistema a una especificaci ón funcional matemática detallada. ?Esto es inevitable, dado que los requerimientos pueden servir a una doble funci ón ?Puede ser la base de la propuestade un contrato– sin embargo debe estar abiertaa interpretación ?Puede ser la base para el contratomismo–sin embargo debe estar definido en detalle ?Ambas de estas declaraciones pueden ser llamadas requerimientos Abstracción de Requerimientos (Davis) Si una compañía desea establecer un contrato para el desarrollo de un proyecto de software, debe definir sus necesidades de una forma suficientemente abstracta como para establecer a partir de ella una solución. Los requerimientos deben redactarse de tal forma que varios contratistas puedan licitar el contrato, ofreciendo, quizás formas diferentes de cumplir las necesidades de los clientes en la organización.Una vez que el contrato se asigna, el contratista debe redactar una definición del sistema para el cliente de forma que éste comprenda y pueda validar lo que hará el software. Ambos documentos se denominan el “Documento de Requerimientos para el Sistema”. Tipos de Requerimientos ?Requerimientos del Usuario ?Las declaraciones en lenguaje natural y en diagramas de los servicios quese espera que el sistema provea y de las restricciones bajo las cuales debe operar ?Requerimientos del Sistema ?Establecen con detalle los servicios y restricciones del sistema . El documentode requerimientos del sistema , algunas veces , denominado Especificación Funcional, debe ser preciso. ?Especificaci ón del Diseño del Software ?Es una descripción abstracta del diseño del software que es una base para un diseño e implementación detallados. Agrega detalle a la especificación de requerimientos del sistema . Definiciones y Especificaciones Definición de Requerimientos del Usuario 1. El software debe proveer un medio para representar y acceder a archivos externos creados por otras herramientas 1.1 Al usuario se le proveerá con los recursos para definir el tipo de archivos externos 1.2 Cada tipo de archivo externo tendrá una herramienta asociada que será aplicada al archivo 1.3 Cada tipo de archivo externo se representará como un icono específico sobre la pantalla del usuario 1.4 Se proveerán recursos para que el usuario defina el icono que representa un tipo de archivo externo 1.5 Cuando un usuario selecciona un icono que representa un archivo externo, el efecto de esa selección es aplicar la herramienta asociada con este tipo de archivo al archivo representado por el icono seleccionado Especificación de los Requerimientos del Sistema
  • 2. Lectores de Requerimientos Requerimientos del Usuario Requerimientos del Sistema Especificaci ón del diseño del software •Administradores clientes •Usuarios finales •Ingenieros clientes •Administradores contratistas •Arquitectos del sistema •Usuarios finales •Ingenieros clientes •Arquitectos del sistema •Desarrolladores del software •Ingenieros clientes (quizás) •Arquitectos del sistema •Desarrolladores del software Requerimientos Funcionales y no Funcionales ?Requerimientos Funcionales ?Son declaraciones de los servicios que proveerá el sistema , de la manera en que éstereaccionará a entradas particulares y de cómo se comportará en situaciones particulares ?Requerimientos no Funcionales ?Son restricciones de los servicios o funciones ofrecidos por el sistema . Incluyen restricciones de tiempo, sobre el procesode desarrollo, estándares , etc. ?Requerimientos del dominio ?Son requerimientos que provienen del dominio de aplicación del sistemay que reflejan las características de ese dominio. Puedenser funcionales o no funcionales. Requerimientos Funcionales ?Describe la funcionalidad o los servicios que se esperan de unsistema ?Dependen del tipo de software y delsistema que se desarrolle y de los posibles usuarios del software ?Describen con detalle la función del sistema, sus entradas y salidas, excepciones, etc. Ejemplos de Requerimientos Funcionales ?El usuario deberá tener la posibilidad de buscar en el conjunto inicial de la base de datos o seleccionar un subconjunto de ella. ?El sistema deberá proveer visores adecuados para que el usuario lea documentos en el almacén de documentos. ?A cada pedido se le deberá designar un identificador unico (ID_PEDIDO) que el usuario podrá copiar al área de almacenamiento permanente de la cuenta. Imprecisión de los Requerimientos ?Pueden aparecer problemas cuandolos requerimientos no son declarados de manera precisa. ?Los requerimientos ambiguos pueden ser interpretados de manera distinta por desarrolladores y usuarios ?Considere el término “ visores adecuados” ?Intención del usuario – propósito especial del visor para cada tipo distinto de documento ?Interpretación del desarrollador – Proveerun visor de texto que muestre el contenido del documento Compleción y Consistencia de Requerimientos ?En principio, los requerimientos deberían ser completos y consistentes ?Compleción ?Deberían incluirdescripciones de todas las facilidades requeridas ?Consistencia ?Los requerimientos no tienen definiciones contradictorias ?En la práctica, es imposible cumplir los requerimientos de compleción y consistencia
  • 3. Requerimientos no Funcionales ?Define las propiedades emergentes del sistema, como la fiabilidad, el tiempo de respuesta y la capacidad de almacenamiento ?Requerimientos de proceso pueden también ser especificados utilizando un sistema CASE, lenguaje de programación o método de desarrollo ?Los requerimientos no funcionales pueden ser mas críticos que los funcionales. Si no son alcanzados, elsistema puede quedar inutilizado Clasificaciones no Funcionales ?Requerimientos del Producto ?Especifican el comportamientodel producto, por ejemplo, tiempo de ejecución, memoria requerida, fiabilidad, etc. ?Requerimientos organizacionales ?Se derivan de las politicas y procedimientos existentes en la organización del clientey en la del desarrollador. Ejemplos: estándares que deben utilizarse en los procesos , método de diseño a utilizar, etc. ?Requerimientos externos ?Se derivan de los factores externos al sistema y de su procesode desarrollo. Ejemplos: requerimientos de interoperatividad, requerimientos legales y éticos. Tipos de Requerimientos no Funcionales Pe rforma nce requirements Spa ce requir eme nts Usability requirements Ef fic ienc y require ments Reliability re quire ments Portability requirements Inte rope ra bility require ments Ethica l requirements Legislative requirements Impleme ntation requir ements Sta ndards require ments Delivery re quireme nts Sa fe ty requirements Privacy require ments Produc t re quire ments Organizational requir ements External requirements Non-functional requir ements Requerimientos no funcionales Requerimientos del producto Requerimientos organizacionales Requerimientos externos Requerimientos de eficiencia Requerimientos de fiabilidad Requerimientos de portabilidad Requerimientos de interoperabilidad Requerimientos éticos Requerimientos de usabilidad Requerimientos de entrega Requerimientos de implementaci ón Requerimientos de estándares Requerimientos legales Requerimientos de desempeño Requerimientos de espacio Requerimientos de privacidad Requerimientos de seguridad Ejemplos de Requerimientos no Funcionales ?Requerimientos del Producto ?4.C.8 Será necesario que la comunicación requerida entre el APSE y el usuario se pueda expresar utilizando el conjuntode caracteres estándar de ADA ?Requerimiento Organizacional ?9.3.2 El procesode desarrollo del sistemay los documentos a entregar deberán adherirseal proceso y a los productos a entregar definidos en XYZCo -SP-STAN-95 ?Requerimiento Externo ?7.6.5 El sistemano deberá revelar asus operadores alguna información personal de los clientes exceptosu nombre y número de referencia Metas y Requerimientos ?Los requerimientos no funcionales pueden ser muy difíciles de establecer en forma precisa, y los requerimientos imprecisos pueden ser difíciles de verificar. ?Meta ?Una intención general del usuario comoser la facilicidad de uso ?Requerimientos no funcionales Verificables ?Una declaracion utilizando alguna medida que puedeser probada objetivamente. ?Las metas son útiles a los desarrolladores puesto que dan idea de las prioridades del cliente Ejemplos ?Una meta de sistema ?Deberá ser fácil para los controladores especializados utilizar el sistemam, y éste deberá estar organizado para minimizar los errores del usuario ?Un requerimiento no funcional verificable ?Después de una capacitación de dos horas, a los controladores especializados les deberá ser posible utilizar todas las funciones del sistema . Después de esta capacitación el número de errores cometidos no deberá exceder de dos por día
  • 4. Métricas para especificar Requerimientos no Funcionales Número de sistemas objetivo Porcentaje de declaraciones dependientes del objetivo Portabilidad Probabilidad de corrupción de los datos después de las fallas Porcentaje de eventos que provocan las fallas Tiempo de reinicio despues de fallas Robustez Disponibilidad Tasa de ocurrencia de las fallas Probabilidad de nodisponibilidad Tiempo promedio entre fallas Fiabilidad Número de cuadros de ayuda Tiempo de capacitación Facilidad de Uso Número de chips de RAM KB Tamaño Tiempo de actualización de lapantalla Tiempo de respuesta al usuarioy a eventos Transacciones procesadas por segundo Rapidez Medida Propiedad Interacción de Requerimientos ?Conflictos entre diferentes requerimientos no funcionales y otros requerimientos funcionales del sistema ?Sistema de Aeronavegación ?Para minimizar el peso, el número de chips separados en el sistema debería ser minimizado ?Para minimizar el consumo de energía, deberían ser utilizados chips de bajo consumo ?Sin embargo, utilizar chips de bajo consumo puede significarque deberán ser usados mas chips. Cuál es el requerimiento mas crítico? Requerimientos de Dominio ?Derivados del dominio de aplicaci ón y describe las características del sistema y los rasgos que reflejan el dominio ?Pueden ser nuevos requerimientos funcionales, restricciones en requerimientos existentes o definir específicaciones de cómputos ?Si los requerimientos del dominio no son alcanzados, el sistema puede quedar inutilizable Requerimientos del Dominio para el sistema de Biblioteca ?Deberá existir una interfaz del usuario estándar para todas las bases de datos, la cual tome como referencia el estándar Z39.50 ?Debido a las restricciones en los derechos de autor, algunos documentos deberán borrarse inmediatamente después de su llegada. Dependiendo de los requerimientos del usuario, estos documentos se imprimirán de forma local en el servidor del sistema para ser distribuídos de forma manual al usuario o enviarse a la impresora de la red. Sistema de Protección de Trenes ? La desaceleración del tren será calculada como: Dtren = Dcontrol + Dgradiente donde Dgradiente es 9.81ms2 gradiente compensado/alfa y donde los valores de 9.81ms2 /alfa son conocidos para diferentes tipos de trenes Problemas de requerimientos de Dominio ?Comprensibilidad ?Los requerimientos son expresados en el lenguaje del dominio de aplicación ?A menudo, estono es comprendido por los ingenieros de software que están desarrollando el sistema ?Implicabilidad ?Los expertos en el dominio pueden dejarfuera alguna información porque para ellos es obvia. Sin embargo, no lo es para los desarrolladores y, por lo tanto , implementarán el requerimientode forma no satisfactoria.
  • 5. Requerimientos de Usuarios ?Describen los requerimientos funcionales y no funcionales de tal forma que sean comprensibles por los usuarios que no posean conocimiento técnicodetallado. ?Están definidos utilizando lenguaje natural, tablas y diagramas Problemas con lenguaje natural ?Falta de claridad ?La precisi ón es difícil sin hacerque el documento no sea ambiguo ni difícil de leer ?Confusión de Requerimientos ? Los requerimientos funcionales y no funcionales tienden a confundirse. ?Conjunción de Requerimientos ? Diversos requerimientos diferentes se expresan de forma conjunta como un único requerimiento Requerimiento de Base de Datos 4.A.5 La base de datos deberá ayudar ala generación y control de la configuración de objetos; es decir, objetos que a su vez son agrupaciones de otros de la base de datos. Los recursos para estecontrol permitirán el acceso a los objetos en unaversión de grupo utilizando un nombre incompleto . Requerimiento para un editor de cuadrícula 2.6 Recursosdela cuadrícula. Para ayudar a la ubicación de entidades en un diagrama, el usuario activará una cuadrícula en cent ímetros o en pulgadas , medianteuna opción en el panel de control. De forma inicial, dicha cuadrícula estará desactivada. Esta cuadrículase podrá activar o desactivar en cualquier momentoduranteuna sesión de edición y puesta en pulgadas y cent ímetros . La opción de cuadrícula se proveerá en la vista de reducción de ajuste, pero el número de líneas de la cuadrícula a mostrar se reducirá para evitar saturar el diagramamás pequeño con líneas de cuadrícula. Problemas de Requerimientos ?Los requerimientos de la base de datos incluyen tanto informaci ón detallada como conceptual ?Describen el conceptode las facilidades de control de configuración ?Incluyen el detalle de los objetos que puedenser accedidos utilizando un nombre incompleto ?Los requerimientos de la cuadrícula mezclan tres clases diferentes de requerimientos ?Requerimiento funcionalconceptual (la necesidad de una cuadrícula) ?Requerimiento no funcional (unidades de cuadrícula) ?Requerimiento de IU no funcionale (activación/desactivación) Guías para escribir requerimientos ?Crear un formato estándar y utilizarlo para todos los requerimientos ?Utilizar un lenguaje consistente.Utilizar “DEBE” para requerimientos obligatorios y “DEBERÍA” para requerimientos deseables ?Utilize texto resaltado para identificar partes claves del requerimiento ?Evite el usode lenguaje técnico computacional
  • 6. Requerimientos de Sistema ?Especificaciones mas detalladas de los requerimientos del usuario ?Sirve como base para el diseño del sistema ?Pueden ser utilizados como parte de un contrato de sistema Requerimientos y Diseño ?En principio, los requerimientos deberán establecer lo que hará el sistema y no la manera en que se implementará. ?En la práctica, los requerimientos y eldiseño soninseparables ?Una arquitectura de sistema debe ser diseñada para estructurar los requerimientos ?El sistema debe interoperar con otros ya existentes que generan requerimientos de diseño ?El uso de un diseño específico es un requerimiento externo Problemas con las especificaciones en Lenguaje Natural ?Ambigüedad ?Los lectores y escritores del requerimientodeben interpretar las mismas palabras de la mismamanera. El LenguajeNatural es naturalmenteambiguo de modo que esto es muy difícil. ?Sobre-flexibilidad ?La mismaexpresión puede ser dicha de varias maneras distintas en la especificación ?Falta de modularizaci ón ?Las estructuras del Lenguaje Natural son inadecuadas para estructurar requerimientos de sistema Alternativas a la especificación en LN ?Lenguaje natural estructurado ?Lenguaje de descripción de diseño ?Notaciones gráficas. Ejemplos: SADT, Descripciones de Casos de Uso ?Especificaciones matemáticas Especificaciones en Lenguaje Estructurado ?El lenguaje natural debe ser utilizado de forma limitada para expresar requerimientos ?Esto resuelve algunos de los problemas resultantes de laambigüedad y flexibilidad, e impone un grado de uniformidad en una especificación ?Las notaciones del lenguaje estructurado delimitan la terminología utilizada y emplean plantillas para especificar los requerimientos Especificaciones basadas en formatos ?Definición de la función o entidad ?Descripciones de sus entradas y dedonde provienen ?Descripción de sus salidas y hacia donde van ?Indicación de otras entidades requeridas ?Pre y pos condiciones (si se aplica) ?Efectos colaterales (si existen)
  • 7. Especificación del Sistema utilizando un formato ECLIPSE/Workstation/Herramientas/DE/FS/3.5.1 Funci ón. Agregar nodo. Descripción. Agrega un nodo a un diseño existente. El usuario selecciona el tipo de nodo, y su posición. Cuando se agrega al diseño, dicho nodo se convierte en la selección actual. El usuario elige la posición del nodo moviendo el cursor al área donde se agrega dicho nodo. Entradas. Tipo posición del nodo, identificador del diseño. Fuente. El tipo y la posición del nodo se introducen por el usuario, identificador del diseño proviene de la base de datos. Salidas. Identificador del diseño. Destino. El diseño de la base de datos. El diseño se deposita a la base de datos al completar la operación. Requerimientos. Al introducir el identificador del diseño se llama a la gráfica del diseño. Precondición. El diseño se abre y despliega en la pantalla del usuario. Postcondición El diseño no cambia excepto en la adición de un nodo del tipo especificado en la posición dada. Efectos colaterales Ninguno. Definición: ECLIPSE/Workstation/Herramientas/DE/FS/3.5.1 Definición de requerimientos basado en PDL ? Los requerimientos pueden ser definidos operacionalmente utilizando un lenguaje similar a un lenguaje de programación pero con mas facilidad de expresión ? Mas apropiado en dos situaciones ? Donde una operación está especificada como una secuenca de acciones y el orden es importante ? Cuando las interfases de hardware y software tienen que ser especificadas ? Desventajas: ? El PDL no puede ser suficientemente expresivo para definir los conceptos del dominio ? La especificaci ón será considerada como un diseño antes que una especificaci ón Parte de una especificación de un ATM class ATM{ // declarations here public static void main (String args[]) th rows InvalidCard { try { thisCard.read () ; // may throw InvalidCard exception pi n =KeyPad.readPin () ;attempts = 1; while ( !thisCard.p in.equals (pin) & attempts < 4) { pin = KeyPad.readPin (); a ttempts = a ttempts + 1 ; } if (!thisCard.pin.equals (pin)) throw new InvalidCard ("Bad PIN"); thisBalance= thisCard.getBalance () ; do{ Screen.prompt (" Pleaseselect a service ") ; service = Sc reen.touchKey () ; switch (service) { case Services.withdrawalWithReceipt: receiptRequired = t rue ; Desventajas del PDL ?El PDL puede no sersuficientemente expresivo para expresar la funcionalidad del sistema de una manera comprensible ?La notación solo es comprensible para la gente con conocimiento de lenguajes de programación ?El requerimiento puede ser considerado como una especificación de diseño antes que un modelo que ayuda a comprender el sistema Especificación de Interfase ?La mayoría de los sistemas deben operar con otros sistemas y las interfases de operación deben ser especificadas como parte de los requerimientos ?Tres tipos de interfases pueden tener que ser definidas ?Interfases procedimentales ?Estructuras de datos que son intercambiadas ?Representaciones de datos ?Las notaciones formales son una técnica efectiva para la especificación de interfases Descripción de interfase de PDL interface PrintServer { // defines an abstract printer server // requires: interface Printer, interface PrintDoc // provides: initialize, print, displayPrintQueue, cancelPrintJob, switchPrinter void initialize ( Printer p ) ; void print ( Printer p, PrintDoc d ) ; void displayPrintQueue ( Printer p ) ; void cancelPrintJob (Printer p, PrintDoc d) ; void switchPrinter (Printer p1, Printer p2, PrintDoc d) ; } //PrintServer
  • 8. El documento de requerimientos ?El Documento de Requerimientos es la declaración oficial de lo que es requerido de los desarrolladores del sistema ?Deberá incluir tanto una definición como una especificación de requerimientos ?NO es un documento de diseño. Tanto como sea posible, deberá especificar lo QUE el sistema deberá hacer antes que COMO lo hará. Us e the req uirements to d evelop validation tes ts for the system Us e the requirements docum en t to plan a bid for the sys tem and to plan the s y stem development proces s Us e the requirements to unders tand what system is to be developed Sy stem test engin eers M anagers System engineers Specifythe requirements and read them to check that they meet their needs .Th ey specify ch anges to th e requirements System custo mers Us e the requirements to help und e rs tand the system and the relationships between its parts S ystem main ten ance engin eers Clientes del Sistema Gerentes Ingenieros de Sistemas Ingenieros de pruebas del Sma Ingenieros de Mantenimiento del Sma Especifican los requerimientos y los leen para chequear que cubren sus necesidades. Especifican cambios a los requerimientos Utilizan el documento de requerimientos para planear una oferta por el sistema y para planear el proceso dedesarro- llo del sistema Utilizan los requerimientos para comprender qué sistema será desarrollado Utilizan los requerimientos para desarrollar pruebas de validación del sistema Utilizan los requerimientos para ayudar a comprender el sistema y las relaciones entre sus partes Usuariosde un Documentode Requerimientos Requerimientos del Documento de Requerimientos ?Especificar el comportamiento externo del sistema ?Especificar las restricciones de la implementaci ón ?Debe ser fácil de cambiar ?Servir como una herramienta de referencia para mantenimiento ?Registrar los antecedentes acerca del ciclo de vida del sistema, por ejemplo, predecir cambios ?Caracterizar respuestas a eventos no esperados Estándar de Requerimientos IEEE ?Introducción ?Descripción General ?Requerimientos específicos ?Apéndices ?Indice ?Esta es una estructura genérica que debe ser instanciada para sistemas específicos Estructura del Documento de Requerimientos ?Introducción ?Glosario ?Definición de Requerimientos del Usuario ?Arquitectura del Sistema ? Especificación de Requerimientos del Sistema ?Modelos del Sistema ?Evolución del Sistema ?Apéndices ?Indice