SlideShare ist ein Scribd-Unternehmen logo
1 von 36
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 1
05/06/2021
Modelado y
verificación formal
Unidad 3
Material docente compilado por el docente Ph.D. Franklin Parrales Bravo
para uso de los cursos de Modelamiento de Software
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 2
05/06/2021
Objetivo general de la Unidad 3
Evaluar los modelos de software mediante el uso
de técnicas formales que permitan validar el
correcto funcionamiento del software.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 3
05/06/2021
Bibliografía consultada
• Pressman, Roger
S. "Ingeniería del
software." Un
enfoque (2011).
Cap. 21
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 4
05/06/2021
Contenido
• Métodos de Ingeniería del Software de Sala limpia
– Enfoque de sala limpia
– Especificación funcional, de caja negra, de caja de
estado y caja transparente
– Diseño de Sala limpia
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 5
05/06/2021
Modelado y verificación formal
• Ingeniería de software de sala limpia y
métodos formales
– Ambos exigen un enfoque de especificación
especializado y cada uno aplica un método de
verificación único.
– Ambos son bastante rigurosos y ninguno de los
dos es utilizado ampliamente por la comunidad
de ingenieros de software.
• Si debe crear un software "a prueba de
balas", estos métodos pueden ayudar
enormemente.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 6
05/06/2021
Contenido
• Métodos de Ingeniería del Software de Sala limpia
– Enfoque de sala limpia
– Especificación funcional, de caja negra, de caja de
estado y caja transparente
– Diseño de Sala limpia
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 7
05/06/2021
El Proceso del enfoque de sala limpia
SE
RG
BSS FD CV CG CI
TP
SUT C
Incremento 1
RG
BSS FD CV CG CI
TP
SUT C
Incremento 2
RG
BSS FD CV CG CI
TP
SUT C
Incremento 3
SE — ingeniería de software
RG — recopilación de
requerimientos
BSS — especificación de
estructura de caja
FD — diseño formal
CV — verificación de exactitud
CG — generación de código
CI — inspección de código
SUT — prueba de uso estadístico
C — certificación
TP — planeación de prueba
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 8
05/06/2021
El enfoque de sala limpia
• Planificación de incrementos: adopta la estrategia incremental
• Recopilación de requisitos: define una descripción de los requisitos
a nivel del cliente (para cada incremento).
• Especificación de estructura de caja: describe la especificación
funcional
• Diseño formal: las especificaciones (llamadas “cajas negras”) se
refinan iterativamente (con un incremento) para volverse análogas a
los diseños arquitectónicos y procedimentales (llamados “cajas de
estado” y “cajas transparentes”, respectivamente).
• Verificación de exactitud: la verificación comienza con la estructura
de caja de nivel más alto (especificación) y avanza hacia los
detalles y el código del diseño mediante un conjunto de "preguntas
de exactitud". Si estos no demuestran que la especificación es
correcta, se utilizan métodos de verificación más formales
(matemáticos).
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 9
05/06/2021
El enfoque de sala limpia
• Generación, inspección y verificación de código: las
especificaciones de la estructura de la caja, representadas en un
lenguaje especializado, se transmiten al lenguaje de programación
apropiado.
• Planificación de pruebas estadísticas: un conjunto de casos de
prueba en los que se planifica y diseña el ejercicio de la
"distribución de probabilidad" de uso.
• Pruebas de uso estadístico: ejecute una serie de pruebas derivadas
de una muestra estadística (la distribución de probabilidad indicada
anteriormente) de todas las posibles ejecuciones de programas por
parte de todos los usuarios de una población objetivo.
• Certificación: una vez que se han completado las pruebas de
verificación, inspección y uso (y se corrigen todos los errores), se
certifica que el incremento está listo para la integración.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 10
05/06/2021
Contenido
• Métodos de Ingeniería del Software de Sala limpia
– Enfoque de sala limpia
– Especificación funcional, de caja negra, de caja de
estado y caja transparente
– Diseño de Sala limpia
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 11
05/06/2021
Especificación funcional
(Box Structure Specification)
• El enfoque de modelado en la ingeniería del software de sala limpia
usa un método llamado especificación de estructura de caja.
• Una “caja” encapsula el sistema o algún aspecto del mismo en
algún nivel de detalle.
• A través de un proceso de elaboración o refinamiento por pasos, las
cajas se refinan en una jerarquía donde cada caja tiene
transparencia referencial.
– Es decir: “la información contenida en cada especificación de caja es
suficiente para definir su refinamiento, sin depender de la
implementación de alguna otra caja”.
– Esto permite al analista dividir un sistema jerárquicamente y avanzar de
la representación esencial en la parte superior al detalle específico de
la implementación en el fondo.
• Para ello, se usan tres tipos de cajas:
– Caja negra (black box)
– Caja de estado (state box)
– Caja clara (clear box)
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 12
05/06/2021
Especificación funcional
(Box Structure Specification)
BB1
BB1.1
BB1.2
BB1.n
BB1.1.1
BB1.1.2
BB1.1.3
SB1.1.1
caja de estado
caja negra
CB1.1.1.1
CB1.1.1.2
CB1.1.1.3
caja clara
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 13
05/06/2021
Especificación funcional
(Box Structure Specification)
• La figura anterior ilustra el enfoque de refinamiento, usando la
especificación de estructura de cajas.
– Una caja negra (BB1) define las respuestas a un conjunto completo de estímulos.
BB1 puede refinarse en un conjunto de cajas negras, BB1.1 a BB1.n, cada una de las
cuales enfoca una clase de comportamiento.
– El refinamiento continúa hasta que se identifica una clase cohesiva de
comportamiento (por ejemplo, BB1.1.1). Entonces se define una caja de estado
(SB1.1.1) para la caja negra (BB1.1.1). En este caso, SB1.1.1 contiene todos los
datos y servicios requeridos para implementar el comportamiento definido por
BB1.1.1.
– Finalmente, SB1.1.1 se refina en cajas claras (CB1.1.1.n) y se especifican los detalles
del diseño de procedimientos.
• Conforme ocurre cada uno de estos pasos de refinamiento, también se
presenta la verificación de la exactitud.
• Las especificaciones de caja de estado se verifican para asegurar que
cada una se conforma de acuerdo con el comportamiento definido por
la especificación de la caja negra padre. De igual modo, las
especificaciones de caja clara se verifican contra la caja de estado
padre.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 14
05/06/2021
Tipos de cajas
• Caja negra. La caja negra especifica el comportamiento de un
sistema o de una parte de un sistema. El sistema (o su parte)
responde a estímulos específicos (eventos) al aplicar un conjunto
de reglas de transición que mapean el estimulo en una respuesta.
• Caja de estado. La caja de estado encapsula los datos y servicios
(operaciones) de estado en una forma análoga a los objetos. En
esta visión de especificación, se representan las entradas
(estímulos) y salidas (respuestas) a la caja de estado. La caja de
estado también representa la “historia de estímulos” de la caja
negra, es decir, los datos encapsulados en la caja de estado que
deben conservarse entre las transiciones implicadas.
• Caja clara. Las funciones de transición que se implican mediante la
caja de estado se definen en la caja clara. Dicho de manera simple,
una caja clara contiene el diseño de procedimientos para la caja de
estado.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 15
05/06/2021
Tipos de cajas
S R
f: S*→ R
caja negra
caja negra, g
Estado
T
S R
caja de estado
S R
T
Estado
g11 cg1
g12
g13
caja clara
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 16
05/06/2021
Contenido
• Métodos de Ingeniería del Software de Sala limpia
– Enfoque de sala limpia
– Especificación funcional, de caja negra, de caja de
estado y caja transparente
– Diseño de Sala limpia
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 17
05/06/2021
Diseño de Sala limpia
• La ingeniería del software de cuarto limpio utiliza mucho
la filosofía de programación estructurada. Pero, en este
caso, la programación estructurada se aplica de manera
mucho más rigurosa.
• Las funciones de procesamiento básico (descritas
durante los primeros refinamientos de la especificación)
se refinan usando una expansión en pasos de funciones
matemáticas en estructuras de conectivos lógicos [por
ejemplo, if-then-else] y subfunciones, donde la
expansión se realiza hasta que todas las subfunciones
identificadas puedan enunciarse directamente en el
lenguaje de programación utilizado para la
implementación.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 18
05/06/2021
Diseño de Sala limpia
• El enfoque de programación estructurada puede usarse
de manera efectiva para refinar funciones.
• Pero ¿qué hay del diseño? Aquí entran en juego
algunos conceptos de diseño fundamentales.
– Los datos de programa se encapsulan como un conjunto de
abstracciones que son atendidas por subfunciones.
– Los conceptos de encapsulamiento de datos, ocultamiento de
información y escritura de datos se usan para crear el diseño de
datos.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 19
05/06/2021
Refinamiento del diseño
• Cada especificación de caja clara representa el diseño
de un procedimiento (subfunción) requerido para
lograr una transición de caja de estado.
• Dentro de la caja clara se usan constructos de
programación estructurada y refinamiento por pasos
para representar detalles procedurales.
• Por ejemplo, una función de programa f se refina en
una secuencia de subfunciones g y h. Estas a su vez
se refinan en constructos condicionales (por ejemplo,
if-then-else y do-while).
• Un mayor refinamiento continúa hasta que existe
suficiente detalle procedural para crear el componente
en cuestión.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 20
05/06/2021
Refinamiento del diseño
• En cada nivel de refinamiento, el equipo de sala
limpia realiza una verificación formal de
exactitud.
• Para lograr esto, a los constructos de
programación estructurada se une un conjunto
de condiciones de exactitud genéricas…
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 21
05/06/2021
Refinamiento del diseño
• Si una función de programa f se refina en una
secuencia de subfunciones g y h, la condición de
exactitud para toda entrada a f es:
– ¿g seguida de h hace f?
• Cuando una función f se refina en una condicional de
la forma (if <c> then g, else h), la condición de
exactitud para toda entrada a f es:
– Siempre que la condición <c> es verdadera, ¿g hace f?; y
siempre que <c> es falsa, ¿h hace f?
• Cuando la función f se refina como un ciclo, las
condiciones de exactitud para toda entrada a f son:
– ¿Está garantizada la finalización?
– Siempre que <c> es verdadera, ¿g seguida por f hace f?; y
siempre que <c> es falsa, ¿saltar el ciclo todavía hace f?
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 22
05/06/2021
Verificación del diseño
Para probar que un diseño es correcto, primero
deben identificarse todas las condiciones y luego
probar que cada una toma el valor booleano
adecuado. A éstas se les llama subpruebas.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 23
05/06/2021
Verificación del diseño
• Debe observar que el uso de los constructos de
programación estructurada restringen el numero
de pruebas de exactitud que deben realizarse.
• Una sola condición se verifica para secuencias;
dos condiciones se prueban para if-then-else y
tres condiciones se verifican para ciclo.
• Para ilustrar la verificación de exactitud para un
diseño procedural, la intención es diseñar y
verificar un pequeño programa que encuentre la
parte entera y de una raíz cuadrada de un entero
dado x.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 24
05/06/2021
Verificación del diseño
y :=y +1
(y +1)2 ≤x
sqrt
exit: x no cambia y y2 ≤x ≤(y +1)2
yes: (y +1)2 ≤x
loop: [y2 ≤x] cont: [y2 ≤x]
init: [ x ≥0, y y =0]
entry: [x ≥0]
y := 0
• El diseño procedural se representa usando el diagrama de
flujo de la figura mostrada en esta diapositiva.
• Para verificar la exactitud de este diseño, las condiciones de
entrada y salida se agregan como se muestra en la figura.
• La condición de entrada observa que x debe ser mayor que o
igual a 0.
• La condición de salida requiere que x permanezca invariable
y que y satisfaga la expresión anotada en la figura.
• Para probar que el diseño es
correcto, es necesario probar que
las condiciones init, loop, cont, yes y
exit, que se muestran en la figura,
son verdaderas en todos los casos.
En ocasiones a esto se le conoce
como subpruebas.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 25
05/06/2021
Verificación del diseño
1. La condición init demanda que [x ≥ 0 y y = 0].
– Con base en los requerimientos del problema, la
condición de entrada se supone correcta.
– Por tanto, se satisface la primera parte de la
condición init, x 0.
– En el diagrama de flujo, el enunciado
inmediatamente anterior a la condición init establece
y = 0.
– Por tanto, la segunda parte de la condición init
también se satisface.
– En consecuencia, init es verdadera.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 26
05/06/2021
Verificación del diseño
2. La condición loop puede encontrarse en una de
dos formas:
1. directamente de init (en este caso, la condición loop se
satisface directamente) o
2. por medio del flujo de control que pasa a través de la
condición cont.
– Dado que la condición cont es idéntica a la
condición loop, esta es verdadera sin importar la
trayectoria de flujo que conduce a ella.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 27
05/06/2021
Verificación del diseño
3. La condición cont se encuentra solamente
después de que el valor de y aumenta en 1.
– Además, la ruta de flujo de control que conduce a
cont puede invocarse solo si la condición yes también
es verdadera.
– Por tanto, si (y + 1)2 ≤ x se sigue que y2 ≤ x. Se
satisface la condición cont.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 28
05/06/2021
Verificación del diseño
4. La condición yes se prueba en la lógica
condicional que se muestra. Por ende, la
condición yes debe ser verdadera cuando el
flujo de control se mueve a lo largo de la
trayectoria mostrada.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 29
05/06/2021
Verificación del diseño
5. La condición exit demanda primero que x
permanezca invariable.
– Un examen del diseño indica que x no aparece a la
izquierda de un operador de asignación. No hay
llamadas de función que usen x.
– En consecuencia, es invariable. Puesto que la prueba
condicional (y + 1)2 ≤ x debe fallar para alcanzar la
condición exit, se sigue que (y + 1)2 ≤ x.
– Además, la condición loop debe incluso ser
verdadera (es decir, y2 ≤ x).
– Por tanto, (y + 1)2 > x y y2 ≤ x pueden combinarse
para satisfacer la condición exit.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 30
05/06/2021
Verificación del diseño
• Adicionalmente, debe asegurarse de que el ciclo
termina.
• Un examen de la condición loop indica que, dado que y
se incrementa y x ≥ 0, el ciclo finalmente debe terminar.
• Los cinco pasos recién señalados son una prueba de la
exactitud del diseño del algoritmo del ejemplo. Entonces
se está seguro de que el diseño, de hecho, calculara la
parte entera de una raíz cuadrada.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 31
05/06/2021
Ventajas de la verificación del diseño
• Reduce la verificación a un proceso finito.
• Permite a los equipos de salas limpias
verificar cada línea de diseño y código.
• Da como resultado un nivel de defectos
cercano a cero.
• Permite escalabilidad.
• Produce un código mejor que las pruebas
unitarias.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 32
05/06/2021
Prueba de sala limpia
• La estrategia y tácticas de las pruebas de cuarto
limpio son fundamentalmente diferentes a las de
los enfoques de prueba convencionales.
• Los métodos convencionales derivan un conjunto
de casos de prueba para descubrir errores de
diseño y codificación.
La meta de la prueba de sala limpia es validar los
requerimientos de software al demostrar que una
muestra estadística de casos de uso se ejecuta
exitosamente
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 33
05/06/2021
Prueba de sala limpia
• Pruebas de uso estadístico
– examinan la forma en la que los usuarios del software pretenden
usarlo
• Los equipos de prueba de cuarto limpio (también llamados equipos
de certificación) deben determinar una distribución de probabilidad
de uso para el software. Para ello:
– Se analiza la especificación para identificar un conjunto de
estímulos
• los estímulos (entradas o eventos) hacen que el software cambie el
comportamiento
– En la creación de escenarios de uso y en una comprensión
general del dominio de aplicación, a cada estímulo se le asigna
una probabilidad de uso con base en entrevistas con usuarios
potenciales
– Para cada conjunto de estímulos se generan casos de prueba
de acuerdo con la distribución de probabilidad de uso
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 34
05/06/2021
Certificación
1. Deben crearse escenarios de uso.
2. Se especifica un perfil de uso.
3. Los casos de prueba se generan a partir del
perfil.
4. Las pruebas se ejecutan y los datos de fallas
se registran y analizan.
5. La confiabilidad se calcula y certifica.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 35
05/06/2021
Modelos de certificación
• Modelo de muestreo. La prueba de software ejecuta
m casos de prueba aleatorios y se certifica si no
ocurren fallos o un numero especifico de ellos. El valor
de m se deriva matemáticamente para asegurar que
se logra la confiabilidad requerida.
• Modelo de componente. Se certifica un sistema
compuesto de n componentes. El modelo de
componentes permite al analista determinar la
probabilidad de que el componente i fallara antes de
su conclusión.
• Modelo de certificación. La confiabilidad global del
sistema se proyecta y se certifica.
Modelamiento de Software Carrera de Software
Ph.D. Franklin Parrales 36
05/06/2021
Modelado y
verificación formal
Unidad 3
Final de la unidad
Y del curso…. !Muchas gracias
a todos!

Weitere ähnliche Inhalte

Was ist angesagt?

Pruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacionPruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacionAbner Gerardo
 
Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni
Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uniPrototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni
Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uniRAUL CHIPANA LARICO
 
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...Jesús Navarro
 
IDR Unidad 2: Elicitación de requerimientos
IDR Unidad 2: Elicitación de requerimientosIDR Unidad 2: Elicitación de requerimientos
IDR Unidad 2: Elicitación de requerimientosFranklin Parrales Bravo
 
2 1 vistas arquitectonicas
2 1 vistas arquitectonicas2 1 vistas arquitectonicas
2 1 vistas arquitectonicaslandeta_p
 
Resumen swebok original
Resumen swebok originalResumen swebok original
Resumen swebok originalDat@center S.A
 
Técnicas para la Obtención de Requerimientos
Técnicas para la Obtención de RequerimientosTécnicas para la Obtención de Requerimientos
Técnicas para la Obtención de RequerimientosJuan Carlos Olivares Rojas
 
Análisis y especificación de requerimientos
Análisis y especificación de requerimientosAnálisis y especificación de requerimientos
Análisis y especificación de requerimientosFranklin Parrales Bravo
 
Casos de uso del negocio
Casos de uso del negocioCasos de uso del negocio
Casos de uso del negocioRobert Caraguay
 
Metodologias de diseño de bd
Metodologias de diseño de bdMetodologias de diseño de bd
Metodologias de diseño de bdArnold Ortiz
 
IHM Unidad 1: Introducción a la Interacción Hombre-Máquina
IHM Unidad 1: Introducción a la Interacción Hombre-MáquinaIHM Unidad 1: Introducción a la Interacción Hombre-Máquina
IHM Unidad 1: Introducción a la Interacción Hombre-MáquinaFranklin Parrales Bravo
 
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negociosFundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negociosJosé Antonio Sandoval Acosta
 
Requerimientos de usuario y del sistema
Requerimientos de usuario y del sistemaRequerimientos de usuario y del sistema
Requerimientos de usuario y del sistemaIsrael Rey
 
Tm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareTm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareJulio Pari
 
Documentación base de datos
Documentación base de datos  Documentación base de datos
Documentación base de datos Mario De La Cruz
 
mapa mental sobre ingeniería de requisitos.pdf
mapa mental sobre ingeniería de requisitos.pdfmapa mental sobre ingeniería de requisitos.pdf
mapa mental sobre ingeniería de requisitos.pdfCarlosEspinel10
 
Requisitos funcionales y no funcionales
Requisitos funcionales y no funcionalesRequisitos funcionales y no funcionales
Requisitos funcionales y no funcionalesRene Guaman-Quinche
 
Lectura 3 Modelo De Analisis
Lectura 3   Modelo De AnalisisLectura 3   Modelo De Analisis
Lectura 3 Modelo De Analisisguest0a6e49
 

Was ist angesagt? (20)

Pruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacionPruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacion
 
Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni
Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uniPrototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni
Prototipo de-sistema-para-matricula-e-inscripcion-de-asignaturas---uni
 
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
IEEE 830 1998: Software Requirements Specification (Especificación de requisi...
 
IDR Unidad 2: Elicitación de requerimientos
IDR Unidad 2: Elicitación de requerimientosIDR Unidad 2: Elicitación de requerimientos
IDR Unidad 2: Elicitación de requerimientos
 
2 1 vistas arquitectonicas
2 1 vistas arquitectonicas2 1 vistas arquitectonicas
2 1 vistas arquitectonicas
 
Resumen swebok original
Resumen swebok originalResumen swebok original
Resumen swebok original
 
Técnicas para la Obtención de Requerimientos
Técnicas para la Obtención de RequerimientosTécnicas para la Obtención de Requerimientos
Técnicas para la Obtención de Requerimientos
 
Análisis y especificación de requerimientos
Análisis y especificación de requerimientosAnálisis y especificación de requerimientos
Análisis y especificación de requerimientos
 
Casos de uso del negocio
Casos de uso del negocioCasos de uso del negocio
Casos de uso del negocio
 
Metodologias de diseño de bd
Metodologias de diseño de bdMetodologias de diseño de bd
Metodologias de diseño de bd
 
IHM Unidad 1: Introducción a la Interacción Hombre-Máquina
IHM Unidad 1: Introducción a la Interacción Hombre-MáquinaIHM Unidad 1: Introducción a la Interacción Hombre-Máquina
IHM Unidad 1: Introducción a la Interacción Hombre-Máquina
 
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negociosFundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
Fundamentos de Ingenieria de Software - Unidad 1 modelo de negocios
 
Requerimientos de usuario y del sistema
Requerimientos de usuario y del sistemaRequerimientos de usuario y del sistema
Requerimientos de usuario y del sistema
 
Tm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareTm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de software
 
Documentación base de datos
Documentación base de datos  Documentación base de datos
Documentación base de datos
 
mapa mental sobre ingeniería de requisitos.pdf
mapa mental sobre ingeniería de requisitos.pdfmapa mental sobre ingeniería de requisitos.pdf
mapa mental sobre ingeniería de requisitos.pdf
 
2. El proceso del software
2. El proceso del software2. El proceso del software
2. El proceso del software
 
Requisitos no Funcionales
Requisitos no FuncionalesRequisitos no Funcionales
Requisitos no Funcionales
 
Requisitos funcionales y no funcionales
Requisitos funcionales y no funcionalesRequisitos funcionales y no funcionales
Requisitos funcionales y no funcionales
 
Lectura 3 Modelo De Analisis
Lectura 3   Modelo De AnalisisLectura 3   Modelo De Analisis
Lectura 3 Modelo De Analisis
 

Ähnlich wie MOD Unidad 3: Modelado y verificación formal

IIS Unidad 3B Proceso de desarrollo de software
IIS Unidad 3B Proceso de desarrollo de softwareIIS Unidad 3B Proceso de desarrollo de software
IIS Unidad 3B Proceso de desarrollo de softwareFranklin Parrales Bravo
 
PSW Unidad 3: Implementación y seguridad del proceso de software
PSW Unidad 3: Implementación y seguridad del proceso de softwarePSW Unidad 3: Implementación y seguridad del proceso de software
PSW Unidad 3: Implementación y seguridad del proceso de softwareFranklin Parrales Bravo
 
No estaba muerto... cleanroom software engineering
No estaba muerto... cleanroom software engineeringNo estaba muerto... cleanroom software engineering
No estaba muerto... cleanroom software engineeringSoftware Guru
 
GCSW Unidad2: Actividades de la gestión de configuración del software
GCSW Unidad2: Actividades de la gestión de configuración del software GCSW Unidad2: Actividades de la gestión de configuración del software
GCSW Unidad2: Actividades de la gestión de configuración del software Franklin Parrales Bravo
 
Parcial2
Parcial2Parcial2
Parcial2fredmoa
 
Fundamentos de Pruebas de Software - Capítulo 4
Fundamentos de Pruebas de Software - Capítulo 4Fundamentos de Pruebas de Software - Capítulo 4
Fundamentos de Pruebas de Software - Capítulo 4Professional Testing
 
Refactorización de Aplicaciones Orientadas a Objetos a Aspectos
Refactorización de Aplicaciones Orientadas a Objetos a AspectosRefactorización de Aplicaciones Orientadas a Objetos a Aspectos
Refactorización de Aplicaciones Orientadas a Objetos a AspectosJuan Carlos Olivares Rojas
 
Modelos del ciclo de vida del software
Modelos del ciclo de vida del softwareModelos del ciclo de vida del software
Modelos del ciclo de vida del softwareAbner Torres
 
Unidad 2 programación estructurada
Unidad 2 programación estructuradaUnidad 2 programación estructurada
Unidad 2 programación estructuradaRoberth Camana
 
⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)
⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)
⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)Victor Asanza
 
Ingeniería de software II - Parte 4
Ingeniería de software II - Parte 4Ingeniería de software II - Parte 4
Ingeniería de software II - Parte 4Marta Silvia Tabares
 
Tipos de modelos de procesos
Tipos de modelos de procesosTipos de modelos de procesos
Tipos de modelos de procesosEIYSC
 
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XPETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XPJglory22
 

Ähnlich wie MOD Unidad 3: Modelado y verificación formal (20)

IIS Unidad 3B Proceso de desarrollo de software
IIS Unidad 3B Proceso de desarrollo de softwareIIS Unidad 3B Proceso de desarrollo de software
IIS Unidad 3B Proceso de desarrollo de software
 
PSW Unidad 3: Implementación y seguridad del proceso de software
PSW Unidad 3: Implementación y seguridad del proceso de softwarePSW Unidad 3: Implementación y seguridad del proceso de software
PSW Unidad 3: Implementación y seguridad del proceso de software
 
No estaba muerto... cleanroom software engineering
No estaba muerto... cleanroom software engineeringNo estaba muerto... cleanroom software engineering
No estaba muerto... cleanroom software engineering
 
GCSW Unidad2: Actividades de la gestión de configuración del software
GCSW Unidad2: Actividades de la gestión de configuración del software GCSW Unidad2: Actividades de la gestión de configuración del software
GCSW Unidad2: Actividades de la gestión de configuración del software
 
PSW Unidad 2 MODELOS DE PROCESO
PSW Unidad 2 MODELOS DE PROCESOPSW Unidad 2 MODELOS DE PROCESO
PSW Unidad 2 MODELOS DE PROCESO
 
Prueba
PruebaPrueba
Prueba
 
Parcial2
Parcial2Parcial2
Parcial2
 
Fundamentos de Pruebas de Software - Capítulo 4
Fundamentos de Pruebas de Software - Capítulo 4Fundamentos de Pruebas de Software - Capítulo 4
Fundamentos de Pruebas de Software - Capítulo 4
 
15_pruebaSW.ppt
15_pruebaSW.ppt15_pruebaSW.ppt
15_pruebaSW.ppt
 
Refactorización de Aplicaciones Orientadas a Objetos a Aspectos
Refactorización de Aplicaciones Orientadas a Objetos a AspectosRefactorización de Aplicaciones Orientadas a Objetos a Aspectos
Refactorización de Aplicaciones Orientadas a Objetos a Aspectos
 
Modelos del ciclo de vida del software
Modelos del ciclo de vida del softwareModelos del ciclo de vida del software
Modelos del ciclo de vida del software
 
Unidad 2 programación estructurada
Unidad 2 programación estructuradaUnidad 2 programación estructurada
Unidad 2 programación estructurada
 
⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)
⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)
⭐⭐⭐⭐⭐ SISTEMAS DIGITALES 2, PROYECTOS PROPUESTOS (2021 PAO1)
 
pruebas caja negra y blanca.pdf
pruebas caja negra y blanca.pdfpruebas caja negra y blanca.pdf
pruebas caja negra y blanca.pdf
 
Caja negra
Caja negraCaja negra
Caja negra
 
Ingeniería de software II - Parte 4
Ingeniería de software II - Parte 4Ingeniería de software II - Parte 4
Ingeniería de software II - Parte 4
 
Espoch
EspochEspoch
Espoch
 
Tipos de modelos de procesos
Tipos de modelos de procesosTipos de modelos de procesos
Tipos de modelos de procesos
 
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XPETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
ETAPAS Y SUB ETAPAS DE LA METODOLOGÍA XP
 
Estimacion agil proyectos Software Scrum
Estimacion agil proyectos Software ScrumEstimacion agil proyectos Software Scrum
Estimacion agil proyectos Software Scrum
 

Mehr von Franklin Parrales Bravo

Presentacion del congreso ETCM del 2021 en Cuenca
Presentacion del congreso ETCM del 2021 en CuencaPresentacion del congreso ETCM del 2021 en Cuenca
Presentacion del congreso ETCM del 2021 en CuencaFranklin Parrales Bravo
 
IW Unidad 1: Introducción a la Ingeniería Web
IW Unidad 1: Introducción a la Ingeniería WebIW Unidad 1: Introducción a la Ingeniería Web
IW Unidad 1: Introducción a la Ingeniería WebFranklin Parrales Bravo
 
IW Unidad 4: Web accesible, semántica y ubicua
IW Unidad 4: Web accesible, semántica y ubicuaIW Unidad 4: Web accesible, semántica y ubicua
IW Unidad 4: Web accesible, semántica y ubicuaFranklin Parrales Bravo
 
IW Unidad 3: Ingeniería Web dirigida por modelos
IW Unidad 3: Ingeniería Web dirigida por modelosIW Unidad 3: Ingeniería Web dirigida por modelos
IW Unidad 3: Ingeniería Web dirigida por modelosFranklin Parrales Bravo
 
IW Unidad 2: Metodologías y Técnicas de la Ingeniería Web
IW Unidad 2: Metodologías y Técnicas de la Ingeniería WebIW Unidad 2: Metodologías y Técnicas de la Ingeniería Web
IW Unidad 2: Metodologías y Técnicas de la Ingeniería WebFranklin Parrales Bravo
 
AD Unidad4: Programación paralela y distribuida
AD Unidad4: Programación paralela y distribuidaAD Unidad4: Programación paralela y distribuida
AD Unidad4: Programación paralela y distribuidaFranklin Parrales Bravo
 
AD Unidad3: Tecnologías de aplicaciones distribuidas
AD Unidad3: Tecnologías de aplicaciones distribuidasAD Unidad3: Tecnologías de aplicaciones distribuidas
AD Unidad3: Tecnologías de aplicaciones distribuidasFranklin Parrales Bravo
 
EP Unidad03: Planificación financiera y análisis de riesgos
EP Unidad03: Planificación financiera y análisis de riesgosEP Unidad03: Planificación financiera y análisis de riesgos
EP Unidad03: Planificación financiera y análisis de riesgosFranklin Parrales Bravo
 
AD Unidad2: Diseño de programas paralelos y distribuidos
AD Unidad2: Diseño de programas paralelos y distribuidosAD Unidad2: Diseño de programas paralelos y distribuidos
AD Unidad2: Diseño de programas paralelos y distribuidosFranklin Parrales Bravo
 
AD Unidad1: Fundamentos de sistemas paralelos y distribuidos
AD Unidad1: Fundamentos de sistemas paralelos y distribuidosAD Unidad1: Fundamentos de sistemas paralelos y distribuidos
AD Unidad1: Fundamentos de sistemas paralelos y distribuidosFranklin Parrales Bravo
 
EP Unidad01: Principios básicos de la metodología de proyectos
EP Unidad01: Principios básicos de la metodología de proyectosEP Unidad01: Principios básicos de la metodología de proyectos
EP Unidad01: Principios básicos de la metodología de proyectosFranklin Parrales Bravo
 
EP Unidad02: Conceptos para el alcance, tiempo y muestra
EP Unidad02: Conceptos para el alcance, tiempo y muestraEP Unidad02: Conceptos para el alcance, tiempo y muestra
EP Unidad02: Conceptos para el alcance, tiempo y muestraFranklin Parrales Bravo
 
GCSW Unidad1: Objetos de la Gestión de Configuración del Software
GCSW Unidad1: Objetos de la Gestión de Configuración del SoftwareGCSW Unidad1: Objetos de la Gestión de Configuración del Software
GCSW Unidad1: Objetos de la Gestión de Configuración del SoftwareFranklin Parrales Bravo
 
POO Unidad 4: Persistencia de objetos y manejo de archivos
POO Unidad 4: Persistencia de objetos y manejo de archivosPOO Unidad 4: Persistencia de objetos y manejo de archivos
POO Unidad 4: Persistencia de objetos y manejo de archivosFranklin Parrales Bravo
 
POO Unidad 3: Interfaz gráfica de usuario e hilos
POO Unidad 3: Interfaz gráfica de usuario e hilosPOO Unidad 3: Interfaz gráfica de usuario e hilos
POO Unidad 3: Interfaz gráfica de usuario e hilosFranklin Parrales Bravo
 
POO Unidad 2: Programación Orientada a Objetos
POO Unidad 2: Programación Orientada a ObjetosPOO Unidad 2: Programación Orientada a Objetos
POO Unidad 2: Programación Orientada a ObjetosFranklin Parrales Bravo
 
POO Unidad 1: Introducción a la Programación Orientada a Objetos
POO Unidad 1: Introducción a la Programación Orientada a ObjetosPOO Unidad 1: Introducción a la Programación Orientada a Objetos
POO Unidad 1: Introducción a la Programación Orientada a ObjetosFranklin Parrales Bravo
 
RD Unidad 3: IPv6, Routers y Enrutamiento
RD Unidad 3: IPv6, Routers y EnrutamientoRD Unidad 3: IPv6, Routers y Enrutamiento
RD Unidad 3: IPv6, Routers y EnrutamientoFranklin Parrales Bravo
 
RD Unidad 2: Transmisión de datos. El mundo del TCP/IP y direccionamiento iPv4
RD Unidad 2: Transmisión de datos. El mundo del TCP/IP y direccionamiento iPv4RD Unidad 2: Transmisión de datos. El mundo del TCP/IP y direccionamiento iPv4
RD Unidad 2: Transmisión de datos. El mundo del TCP/IP y direccionamiento iPv4Franklin Parrales Bravo
 

Mehr von Franklin Parrales Bravo (20)

Presentacion del congreso ETCM del 2021 en Cuenca
Presentacion del congreso ETCM del 2021 en CuencaPresentacion del congreso ETCM del 2021 en Cuenca
Presentacion del congreso ETCM del 2021 en Cuenca
 
IW Unidad 1: Introducción a la Ingeniería Web
IW Unidad 1: Introducción a la Ingeniería WebIW Unidad 1: Introducción a la Ingeniería Web
IW Unidad 1: Introducción a la Ingeniería Web
 
IW Unidad 4: Web accesible, semántica y ubicua
IW Unidad 4: Web accesible, semántica y ubicuaIW Unidad 4: Web accesible, semántica y ubicua
IW Unidad 4: Web accesible, semántica y ubicua
 
IW Unidad 3: Ingeniería Web dirigida por modelos
IW Unidad 3: Ingeniería Web dirigida por modelosIW Unidad 3: Ingeniería Web dirigida por modelos
IW Unidad 3: Ingeniería Web dirigida por modelos
 
MOD Unidad 2: Tipos de modelado
MOD Unidad 2: Tipos de modeladoMOD Unidad 2: Tipos de modelado
MOD Unidad 2: Tipos de modelado
 
IW Unidad 2: Metodologías y Técnicas de la Ingeniería Web
IW Unidad 2: Metodologías y Técnicas de la Ingeniería WebIW Unidad 2: Metodologías y Técnicas de la Ingeniería Web
IW Unidad 2: Metodologías y Técnicas de la Ingeniería Web
 
AD Unidad4: Programación paralela y distribuida
AD Unidad4: Programación paralela y distribuidaAD Unidad4: Programación paralela y distribuida
AD Unidad4: Programación paralela y distribuida
 
AD Unidad3: Tecnologías de aplicaciones distribuidas
AD Unidad3: Tecnologías de aplicaciones distribuidasAD Unidad3: Tecnologías de aplicaciones distribuidas
AD Unidad3: Tecnologías de aplicaciones distribuidas
 
EP Unidad03: Planificación financiera y análisis de riesgos
EP Unidad03: Planificación financiera y análisis de riesgosEP Unidad03: Planificación financiera y análisis de riesgos
EP Unidad03: Planificación financiera y análisis de riesgos
 
AD Unidad2: Diseño de programas paralelos y distribuidos
AD Unidad2: Diseño de programas paralelos y distribuidosAD Unidad2: Diseño de programas paralelos y distribuidos
AD Unidad2: Diseño de programas paralelos y distribuidos
 
AD Unidad1: Fundamentos de sistemas paralelos y distribuidos
AD Unidad1: Fundamentos de sistemas paralelos y distribuidosAD Unidad1: Fundamentos de sistemas paralelos y distribuidos
AD Unidad1: Fundamentos de sistemas paralelos y distribuidos
 
EP Unidad01: Principios básicos de la metodología de proyectos
EP Unidad01: Principios básicos de la metodología de proyectosEP Unidad01: Principios básicos de la metodología de proyectos
EP Unidad01: Principios básicos de la metodología de proyectos
 
EP Unidad02: Conceptos para el alcance, tiempo y muestra
EP Unidad02: Conceptos para el alcance, tiempo y muestraEP Unidad02: Conceptos para el alcance, tiempo y muestra
EP Unidad02: Conceptos para el alcance, tiempo y muestra
 
GCSW Unidad1: Objetos de la Gestión de Configuración del Software
GCSW Unidad1: Objetos de la Gestión de Configuración del SoftwareGCSW Unidad1: Objetos de la Gestión de Configuración del Software
GCSW Unidad1: Objetos de la Gestión de Configuración del Software
 
POO Unidad 4: Persistencia de objetos y manejo de archivos
POO Unidad 4: Persistencia de objetos y manejo de archivosPOO Unidad 4: Persistencia de objetos y manejo de archivos
POO Unidad 4: Persistencia de objetos y manejo de archivos
 
POO Unidad 3: Interfaz gráfica de usuario e hilos
POO Unidad 3: Interfaz gráfica de usuario e hilosPOO Unidad 3: Interfaz gráfica de usuario e hilos
POO Unidad 3: Interfaz gráfica de usuario e hilos
 
POO Unidad 2: Programación Orientada a Objetos
POO Unidad 2: Programación Orientada a ObjetosPOO Unidad 2: Programación Orientada a Objetos
POO Unidad 2: Programación Orientada a Objetos
 
POO Unidad 1: Introducción a la Programación Orientada a Objetos
POO Unidad 1: Introducción a la Programación Orientada a ObjetosPOO Unidad 1: Introducción a la Programación Orientada a Objetos
POO Unidad 1: Introducción a la Programación Orientada a Objetos
 
RD Unidad 3: IPv6, Routers y Enrutamiento
RD Unidad 3: IPv6, Routers y EnrutamientoRD Unidad 3: IPv6, Routers y Enrutamiento
RD Unidad 3: IPv6, Routers y Enrutamiento
 
RD Unidad 2: Transmisión de datos. El mundo del TCP/IP y direccionamiento iPv4
RD Unidad 2: Transmisión de datos. El mundo del TCP/IP y direccionamiento iPv4RD Unidad 2: Transmisión de datos. El mundo del TCP/IP y direccionamiento iPv4
RD Unidad 2: Transmisión de datos. El mundo del TCP/IP y direccionamiento iPv4
 

Kürzlich hochgeladen

Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxdkmeza
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Lourdes Feria
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIAFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIIsauraImbrondone
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfAngélica Soledad Vega Ramírez
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxzulyvero07
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularMooPandrea
 

Kürzlich hochgeladen (20)

Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.Fe contra todo pronóstico. La fe es confianza.
Fe contra todo pronóstico. La fe es confianza.
 
Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptx
 
Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...Caja de herramientas de inteligencia artificial para la academia y la investi...
Caja de herramientas de inteligencia artificial para la academia y la investi...
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdfTema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
Tema 8.- PROTECCION DE LOS SISTEMAS DE INFORMACIÓN.pdf
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA IIAFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
AFICHE EL MANIERISMO HISTORIA DE LA ARQUITECTURA II
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdfSELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
SELECCIÓN DE LA MUESTRA Y MUESTREO EN INVESTIGACIÓN CUALITATIVA.pdf
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptxACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
ACUERDO MINISTERIAL 078-ORGANISMOS ESCOLARES..pptx
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
Ley 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circularLey 21.545 - Circular Nº 586.pdf circular
Ley 21.545 - Circular Nº 586.pdf circular
 

MOD Unidad 3: Modelado y verificación formal

  • 1. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 1 05/06/2021 Modelado y verificación formal Unidad 3 Material docente compilado por el docente Ph.D. Franklin Parrales Bravo para uso de los cursos de Modelamiento de Software
  • 2. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 2 05/06/2021 Objetivo general de la Unidad 3 Evaluar los modelos de software mediante el uso de técnicas formales que permitan validar el correcto funcionamiento del software.
  • 3. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 3 05/06/2021 Bibliografía consultada • Pressman, Roger S. "Ingeniería del software." Un enfoque (2011). Cap. 21
  • 4. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 4 05/06/2021 Contenido • Métodos de Ingeniería del Software de Sala limpia – Enfoque de sala limpia – Especificación funcional, de caja negra, de caja de estado y caja transparente – Diseño de Sala limpia
  • 5. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 5 05/06/2021 Modelado y verificación formal • Ingeniería de software de sala limpia y métodos formales – Ambos exigen un enfoque de especificación especializado y cada uno aplica un método de verificación único. – Ambos son bastante rigurosos y ninguno de los dos es utilizado ampliamente por la comunidad de ingenieros de software. • Si debe crear un software "a prueba de balas", estos métodos pueden ayudar enormemente.
  • 6. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 6 05/06/2021 Contenido • Métodos de Ingeniería del Software de Sala limpia – Enfoque de sala limpia – Especificación funcional, de caja negra, de caja de estado y caja transparente – Diseño de Sala limpia
  • 7. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 7 05/06/2021 El Proceso del enfoque de sala limpia SE RG BSS FD CV CG CI TP SUT C Incremento 1 RG BSS FD CV CG CI TP SUT C Incremento 2 RG BSS FD CV CG CI TP SUT C Incremento 3 SE — ingeniería de software RG — recopilación de requerimientos BSS — especificación de estructura de caja FD — diseño formal CV — verificación de exactitud CG — generación de código CI — inspección de código SUT — prueba de uso estadístico C — certificación TP — planeación de prueba
  • 8. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 8 05/06/2021 El enfoque de sala limpia • Planificación de incrementos: adopta la estrategia incremental • Recopilación de requisitos: define una descripción de los requisitos a nivel del cliente (para cada incremento). • Especificación de estructura de caja: describe la especificación funcional • Diseño formal: las especificaciones (llamadas “cajas negras”) se refinan iterativamente (con un incremento) para volverse análogas a los diseños arquitectónicos y procedimentales (llamados “cajas de estado” y “cajas transparentes”, respectivamente). • Verificación de exactitud: la verificación comienza con la estructura de caja de nivel más alto (especificación) y avanza hacia los detalles y el código del diseño mediante un conjunto de "preguntas de exactitud". Si estos no demuestran que la especificación es correcta, se utilizan métodos de verificación más formales (matemáticos).
  • 9. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 9 05/06/2021 El enfoque de sala limpia • Generación, inspección y verificación de código: las especificaciones de la estructura de la caja, representadas en un lenguaje especializado, se transmiten al lenguaje de programación apropiado. • Planificación de pruebas estadísticas: un conjunto de casos de prueba en los que se planifica y diseña el ejercicio de la "distribución de probabilidad" de uso. • Pruebas de uso estadístico: ejecute una serie de pruebas derivadas de una muestra estadística (la distribución de probabilidad indicada anteriormente) de todas las posibles ejecuciones de programas por parte de todos los usuarios de una población objetivo. • Certificación: una vez que se han completado las pruebas de verificación, inspección y uso (y se corrigen todos los errores), se certifica que el incremento está listo para la integración.
  • 10. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 10 05/06/2021 Contenido • Métodos de Ingeniería del Software de Sala limpia – Enfoque de sala limpia – Especificación funcional, de caja negra, de caja de estado y caja transparente – Diseño de Sala limpia
  • 11. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 11 05/06/2021 Especificación funcional (Box Structure Specification) • El enfoque de modelado en la ingeniería del software de sala limpia usa un método llamado especificación de estructura de caja. • Una “caja” encapsula el sistema o algún aspecto del mismo en algún nivel de detalle. • A través de un proceso de elaboración o refinamiento por pasos, las cajas se refinan en una jerarquía donde cada caja tiene transparencia referencial. – Es decir: “la información contenida en cada especificación de caja es suficiente para definir su refinamiento, sin depender de la implementación de alguna otra caja”. – Esto permite al analista dividir un sistema jerárquicamente y avanzar de la representación esencial en la parte superior al detalle específico de la implementación en el fondo. • Para ello, se usan tres tipos de cajas: – Caja negra (black box) – Caja de estado (state box) – Caja clara (clear box)
  • 12. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 12 05/06/2021 Especificación funcional (Box Structure Specification) BB1 BB1.1 BB1.2 BB1.n BB1.1.1 BB1.1.2 BB1.1.3 SB1.1.1 caja de estado caja negra CB1.1.1.1 CB1.1.1.2 CB1.1.1.3 caja clara
  • 13. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 13 05/06/2021 Especificación funcional (Box Structure Specification) • La figura anterior ilustra el enfoque de refinamiento, usando la especificación de estructura de cajas. – Una caja negra (BB1) define las respuestas a un conjunto completo de estímulos. BB1 puede refinarse en un conjunto de cajas negras, BB1.1 a BB1.n, cada una de las cuales enfoca una clase de comportamiento. – El refinamiento continúa hasta que se identifica una clase cohesiva de comportamiento (por ejemplo, BB1.1.1). Entonces se define una caja de estado (SB1.1.1) para la caja negra (BB1.1.1). En este caso, SB1.1.1 contiene todos los datos y servicios requeridos para implementar el comportamiento definido por BB1.1.1. – Finalmente, SB1.1.1 se refina en cajas claras (CB1.1.1.n) y se especifican los detalles del diseño de procedimientos. • Conforme ocurre cada uno de estos pasos de refinamiento, también se presenta la verificación de la exactitud. • Las especificaciones de caja de estado se verifican para asegurar que cada una se conforma de acuerdo con el comportamiento definido por la especificación de la caja negra padre. De igual modo, las especificaciones de caja clara se verifican contra la caja de estado padre.
  • 14. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 14 05/06/2021 Tipos de cajas • Caja negra. La caja negra especifica el comportamiento de un sistema o de una parte de un sistema. El sistema (o su parte) responde a estímulos específicos (eventos) al aplicar un conjunto de reglas de transición que mapean el estimulo en una respuesta. • Caja de estado. La caja de estado encapsula los datos y servicios (operaciones) de estado en una forma análoga a los objetos. En esta visión de especificación, se representan las entradas (estímulos) y salidas (respuestas) a la caja de estado. La caja de estado también representa la “historia de estímulos” de la caja negra, es decir, los datos encapsulados en la caja de estado que deben conservarse entre las transiciones implicadas. • Caja clara. Las funciones de transición que se implican mediante la caja de estado se definen en la caja clara. Dicho de manera simple, una caja clara contiene el diseño de procedimientos para la caja de estado.
  • 15. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 15 05/06/2021 Tipos de cajas S R f: S*→ R caja negra caja negra, g Estado T S R caja de estado S R T Estado g11 cg1 g12 g13 caja clara
  • 16. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 16 05/06/2021 Contenido • Métodos de Ingeniería del Software de Sala limpia – Enfoque de sala limpia – Especificación funcional, de caja negra, de caja de estado y caja transparente – Diseño de Sala limpia
  • 17. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 17 05/06/2021 Diseño de Sala limpia • La ingeniería del software de cuarto limpio utiliza mucho la filosofía de programación estructurada. Pero, en este caso, la programación estructurada se aplica de manera mucho más rigurosa. • Las funciones de procesamiento básico (descritas durante los primeros refinamientos de la especificación) se refinan usando una expansión en pasos de funciones matemáticas en estructuras de conectivos lógicos [por ejemplo, if-then-else] y subfunciones, donde la expansión se realiza hasta que todas las subfunciones identificadas puedan enunciarse directamente en el lenguaje de programación utilizado para la implementación.
  • 18. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 18 05/06/2021 Diseño de Sala limpia • El enfoque de programación estructurada puede usarse de manera efectiva para refinar funciones. • Pero ¿qué hay del diseño? Aquí entran en juego algunos conceptos de diseño fundamentales. – Los datos de programa se encapsulan como un conjunto de abstracciones que son atendidas por subfunciones. – Los conceptos de encapsulamiento de datos, ocultamiento de información y escritura de datos se usan para crear el diseño de datos.
  • 19. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 19 05/06/2021 Refinamiento del diseño • Cada especificación de caja clara representa el diseño de un procedimiento (subfunción) requerido para lograr una transición de caja de estado. • Dentro de la caja clara se usan constructos de programación estructurada y refinamiento por pasos para representar detalles procedurales. • Por ejemplo, una función de programa f se refina en una secuencia de subfunciones g y h. Estas a su vez se refinan en constructos condicionales (por ejemplo, if-then-else y do-while). • Un mayor refinamiento continúa hasta que existe suficiente detalle procedural para crear el componente en cuestión.
  • 20. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 20 05/06/2021 Refinamiento del diseño • En cada nivel de refinamiento, el equipo de sala limpia realiza una verificación formal de exactitud. • Para lograr esto, a los constructos de programación estructurada se une un conjunto de condiciones de exactitud genéricas…
  • 21. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 21 05/06/2021 Refinamiento del diseño • Si una función de programa f se refina en una secuencia de subfunciones g y h, la condición de exactitud para toda entrada a f es: – ¿g seguida de h hace f? • Cuando una función f se refina en una condicional de la forma (if <c> then g, else h), la condición de exactitud para toda entrada a f es: – Siempre que la condición <c> es verdadera, ¿g hace f?; y siempre que <c> es falsa, ¿h hace f? • Cuando la función f se refina como un ciclo, las condiciones de exactitud para toda entrada a f son: – ¿Está garantizada la finalización? – Siempre que <c> es verdadera, ¿g seguida por f hace f?; y siempre que <c> es falsa, ¿saltar el ciclo todavía hace f?
  • 22. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 22 05/06/2021 Verificación del diseño Para probar que un diseño es correcto, primero deben identificarse todas las condiciones y luego probar que cada una toma el valor booleano adecuado. A éstas se les llama subpruebas.
  • 23. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 23 05/06/2021 Verificación del diseño • Debe observar que el uso de los constructos de programación estructurada restringen el numero de pruebas de exactitud que deben realizarse. • Una sola condición se verifica para secuencias; dos condiciones se prueban para if-then-else y tres condiciones se verifican para ciclo. • Para ilustrar la verificación de exactitud para un diseño procedural, la intención es diseñar y verificar un pequeño programa que encuentre la parte entera y de una raíz cuadrada de un entero dado x.
  • 24. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 24 05/06/2021 Verificación del diseño y :=y +1 (y +1)2 ≤x sqrt exit: x no cambia y y2 ≤x ≤(y +1)2 yes: (y +1)2 ≤x loop: [y2 ≤x] cont: [y2 ≤x] init: [ x ≥0, y y =0] entry: [x ≥0] y := 0 • El diseño procedural se representa usando el diagrama de flujo de la figura mostrada en esta diapositiva. • Para verificar la exactitud de este diseño, las condiciones de entrada y salida se agregan como se muestra en la figura. • La condición de entrada observa que x debe ser mayor que o igual a 0. • La condición de salida requiere que x permanezca invariable y que y satisfaga la expresión anotada en la figura. • Para probar que el diseño es correcto, es necesario probar que las condiciones init, loop, cont, yes y exit, que se muestran en la figura, son verdaderas en todos los casos. En ocasiones a esto se le conoce como subpruebas.
  • 25. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 25 05/06/2021 Verificación del diseño 1. La condición init demanda que [x ≥ 0 y y = 0]. – Con base en los requerimientos del problema, la condición de entrada se supone correcta. – Por tanto, se satisface la primera parte de la condición init, x 0. – En el diagrama de flujo, el enunciado inmediatamente anterior a la condición init establece y = 0. – Por tanto, la segunda parte de la condición init también se satisface. – En consecuencia, init es verdadera.
  • 26. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 26 05/06/2021 Verificación del diseño 2. La condición loop puede encontrarse en una de dos formas: 1. directamente de init (en este caso, la condición loop se satisface directamente) o 2. por medio del flujo de control que pasa a través de la condición cont. – Dado que la condición cont es idéntica a la condición loop, esta es verdadera sin importar la trayectoria de flujo que conduce a ella.
  • 27. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 27 05/06/2021 Verificación del diseño 3. La condición cont se encuentra solamente después de que el valor de y aumenta en 1. – Además, la ruta de flujo de control que conduce a cont puede invocarse solo si la condición yes también es verdadera. – Por tanto, si (y + 1)2 ≤ x se sigue que y2 ≤ x. Se satisface la condición cont.
  • 28. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 28 05/06/2021 Verificación del diseño 4. La condición yes se prueba en la lógica condicional que se muestra. Por ende, la condición yes debe ser verdadera cuando el flujo de control se mueve a lo largo de la trayectoria mostrada.
  • 29. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 29 05/06/2021 Verificación del diseño 5. La condición exit demanda primero que x permanezca invariable. – Un examen del diseño indica que x no aparece a la izquierda de un operador de asignación. No hay llamadas de función que usen x. – En consecuencia, es invariable. Puesto que la prueba condicional (y + 1)2 ≤ x debe fallar para alcanzar la condición exit, se sigue que (y + 1)2 ≤ x. – Además, la condición loop debe incluso ser verdadera (es decir, y2 ≤ x). – Por tanto, (y + 1)2 > x y y2 ≤ x pueden combinarse para satisfacer la condición exit.
  • 30. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 30 05/06/2021 Verificación del diseño • Adicionalmente, debe asegurarse de que el ciclo termina. • Un examen de la condición loop indica que, dado que y se incrementa y x ≥ 0, el ciclo finalmente debe terminar. • Los cinco pasos recién señalados son una prueba de la exactitud del diseño del algoritmo del ejemplo. Entonces se está seguro de que el diseño, de hecho, calculara la parte entera de una raíz cuadrada.
  • 31. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 31 05/06/2021 Ventajas de la verificación del diseño • Reduce la verificación a un proceso finito. • Permite a los equipos de salas limpias verificar cada línea de diseño y código. • Da como resultado un nivel de defectos cercano a cero. • Permite escalabilidad. • Produce un código mejor que las pruebas unitarias.
  • 32. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 32 05/06/2021 Prueba de sala limpia • La estrategia y tácticas de las pruebas de cuarto limpio son fundamentalmente diferentes a las de los enfoques de prueba convencionales. • Los métodos convencionales derivan un conjunto de casos de prueba para descubrir errores de diseño y codificación. La meta de la prueba de sala limpia es validar los requerimientos de software al demostrar que una muestra estadística de casos de uso se ejecuta exitosamente
  • 33. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 33 05/06/2021 Prueba de sala limpia • Pruebas de uso estadístico – examinan la forma en la que los usuarios del software pretenden usarlo • Los equipos de prueba de cuarto limpio (también llamados equipos de certificación) deben determinar una distribución de probabilidad de uso para el software. Para ello: – Se analiza la especificación para identificar un conjunto de estímulos • los estímulos (entradas o eventos) hacen que el software cambie el comportamiento – En la creación de escenarios de uso y en una comprensión general del dominio de aplicación, a cada estímulo se le asigna una probabilidad de uso con base en entrevistas con usuarios potenciales – Para cada conjunto de estímulos se generan casos de prueba de acuerdo con la distribución de probabilidad de uso
  • 34. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 34 05/06/2021 Certificación 1. Deben crearse escenarios de uso. 2. Se especifica un perfil de uso. 3. Los casos de prueba se generan a partir del perfil. 4. Las pruebas se ejecutan y los datos de fallas se registran y analizan. 5. La confiabilidad se calcula y certifica.
  • 35. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 35 05/06/2021 Modelos de certificación • Modelo de muestreo. La prueba de software ejecuta m casos de prueba aleatorios y se certifica si no ocurren fallos o un numero especifico de ellos. El valor de m se deriva matemáticamente para asegurar que se logra la confiabilidad requerida. • Modelo de componente. Se certifica un sistema compuesto de n componentes. El modelo de componentes permite al analista determinar la probabilidad de que el componente i fallara antes de su conclusión. • Modelo de certificación. La confiabilidad global del sistema se proyecta y se certifica.
  • 36. Modelamiento de Software Carrera de Software Ph.D. Franklin Parrales 36 05/06/2021 Modelado y verificación formal Unidad 3 Final de la unidad Y del curso…. !Muchas gracias a todos!