Explorar y conocer la técnica de Verificación De Modelos (Model Checking) con la finalidad de poder validar los Modelos de Casos de Uso y así poder ampliar.

Slides:



Advertisements
Presentaciones similares
Ciclo de vida de desarrollo de software
Advertisements

Fundamentos de Diseño de Software INFT.1
También conocido como Diseño Lógico Rodrigo Salvatierra Alberú.
Ingeniería de Software
Pruebas de Unidad y Refactorización
El papel del analista de sistemas
Objetivo Realizar el modelado del negocio, identificar a partir de este los casos de uso de sistema que darán soporte informático al negocio modelado y.
Objetivo Realizar el modelado del negocio, identificar a partir de este los casos de uso de sistema que darán soporte informático al negocio modelado y.
UNIVERSIDAD NACIONAL AUTÓNOMA DE MÉXICO FACULTAD DE INGENIERIA DIVISIÓN DE INGENIERÍA ELÉCTRICA COMPUTACIÓN PARA INGENIEROS NOTA IMPORTANTE: Para complementar.
Procesos de la Ingeniería
Administración de Procesos de Pruebas
Diseño de un Sistema de Control en Tiempo Real para el Kernel del Sistema Operativo utilizando MatLab-SimuLink Por: MARCO ANTONIO ESPINEL CANGUI DIRECTOR:
CICLO DE VIDA DE UN PROYECTO DE SOFTWARE
Desarrollo Orientado a Objetos con UML
DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACIÓN UNIVERSIDAD NACIONAL DEL SUR Año 1º 2º 3º 4º 5º Programación Matemática Software Sistemas de Hardware.
Ciclo de formulación del proyecto.
Representación de Requerimientos
Modelado de Procesos en la Ingeniería de Requerimientos
Proceso investigativo
Proceso de información en la computadora
Validación de propiedades de Workflow Alumno: Fernando Villar Director: Dr. Germán Regis Universidad Nacional de Río Cuarto.
Análisis y Diseño Orientado a Objetos utilizando UML CAPITULO V DISEÑO DE SISTEMAS ORIENTADOS A OBJETOS.
Ingeniería de Software
Inteligencia artificial
Ingeniería de Software Orientado a Objetos
Fundamentos de programación
Diseño e Implementación
Ingenieria de software
Fundamentos de Ingeniería de Software Facultad de Ingenieria Universidad Distrital Francisco José de Caldas ESPECIFICACIÓN Y MANEJO DE LOS REQUERIMIENTOS.
Ingeniería de Requisitos
5.3 APROXIMACIONES AL DISEÑO
REQUERIMIENTOS DE SOFTWARE
Contexto Proyecto consolidado dentro de la línea de investigación de Sistemas de Información en el Dpto. de Ingeniería en Sistemas de Información de la.
Modelos de desarrollo de Software
Metodología para solución de problemas
Programación 1 (01y 05) Prof. Flor Narciso
Universidad Central de Venezuela Facultad de Ciencias Postgrado en Ciencias de la Computación Sistemas Distribuidos Albany Márquez.
PLANEAMIENTO DE LA INVESTIGACIÓN
Integrantes: Daniel Briceño Luis Carrera..  CommonKADS es la metodología desarrollada para apoyar la ingeniería del conocimiento.
TEMA 2: LA INVESTIGACIÓN CIENTÍFICA.
INTRODUCCIÓN A LA INGENIERÍA DEL SOFTWARE
VISIÓN GENERAL DE LA IS Con independencia del modelo de proceso hay tres fases genéricas: Fase de definición Fase de desarrollo Fase de mantenimiento Cada.
Trainning DFD.
ELEMENTOS DE CONTENIDO Y ALCANCE
Ing. Noretsys Rodríguez. Definición de Conceptos  Falla: Ocurre cuando un programa no se comporta de manera adecuada. Es una propiedad estadística de.
INGENIERIA DE SOFTWARE
MC Luz María Moreno Aguilar Noviembre 2009
Alexander Aristizabal Ángelo flores herrera
Ciclo de vida de un sistema
Introducción al análisis de sistemas
CALIDAD Y VALIDACIÓN DE SISTEMAS EXPERTOS
IDENTIFICACIÓN DEL CICLO DE VIDA DEL SOFTWARE. POLITÉCNICO COLOMBIANO JAIME ISAZA CADAVID.
TIPOS DE PRUEBAS DEL SOFTWARE
UML.
Relación con otras asignaturas del plan de estudio
Introducción al proceso de verificación y validación.
CONTROL DE PROYECTOS Cochabamba - Bolivia Ing. Alex D. Choque Flores
Desarrollo de lógica algorítmica.
ANÁLISIS ESTRUCTURADO
NOMBRE DE LA ASIGNATURA: VERIFICACIÓN Y VALIDACIÓN DEL SOFTWARE
Simón Esneider Herrera Álvarez Media Técnica Casd 10-2
Por: Jaime Enrique Melendez Monreal Código: INGENIERÍA DE SOFTWARE.
MÓDULO INTRODUCCIÓN AL CICLO DE VIDA DEL SOFTWARE
LILIANA JIMENEZ GARCIA FERANANDO CANO GOMEZ. El proceso de recopilar, analizar y verificar las necesidades del cliente para un sistema es llamado Ingeniería.
EI, Profesor Ramón Castro Liceaga IV. AREAS DE EVALUACIÓN DE LA AUDITORIA EN INFORMÁTICA. UNIVERSIDAD LATINA (UNILA)
Planificación de Sistemas de Información
BPMN COMO HERRAMIENTA DE MODELADO DE NEGOCIO PARA LA CREACIÓN DE MODELOS CONCEPTUALES Integrantes Horenstein, Nicolás Gómez, Federico IDJEI 52.
Objetivos de la prueba Los objetivos principales de realizar una prueba son: Detectar un error. Tener un buen caso de prueba, es decir que tenga más probabilidad.
VERIFICACIÓN Y VALIDACIÓN DE SISTEMAS 3.10 Fase de manejo de requerimientos 4.1 Modelado de pruebas en UML Ponente: ing. Alejandro tapia vazquez.
Transcripción de la presentación:

Explorar y conocer la técnica de Verificación De Modelos (Model Checking) con la finalidad de poder validar los Modelos de Casos de Uso y así poder ampliar nuestro conocimiento en el campo de la verificación de requerimientos. Objetivo Transformación de un Modelo de Casos de Uso a lenguaje PROMELA para validación mediante SPIN Autores: Fernandez Ezequiel Enrique, Garnero Ana Belén, Horenstein Nicolás Director del grupo: Marcelo Martín Marciszack Departamento Ingeniería en Sistemas de Información Universidad Tecnológica Nacional - Facultad Regional Córdoba {ezequiel004, anabelengarnero, nicolashorenstein, marciszack Verificación de Modelos El modelado del negocio puede ayudarnos a comprender el contexto del sistema que se está construyendo. Mientras que esto puede sonar trivial, puede tener consecuencias serias en el éxito o fracaso de un proyecto de software. Es por esto que se buscan y analizan distintas técnicas para validar los modelos, como es el caso de Model Checking, transformación a autómatas finitos, Prototipos, Reviews, etc. En esta presentación nos centramos en Model Checking que es un método automático de verificación de un sistema formal. El mismo es definido mediante un modelo, que debe satisfacer una especificación formal descrita mediante una fórmula. El modelo suele estar expresado mediante la teoría de los grafos que consta de un conjunto de vértices y arcos. Contexto Herramientas Casos de Uso Representan las acciones/tareas específicas que se realizan tras una orden de algún agente externo, sea desde una petición de un actor o bien desde la invocación desde otro caso de uso. Modelado del Sistema de Información con CU Un diagrama de casos de uso es utilizado para analizar requerimientos y comportamientos de sistemas, por lo general resultan ser muy útiles en sistemas de gran escala, es por esto que lo que se busca validar son los diagramas UML, más específicamente los diagramas de Casos de Usos. PROMELA (PROcess MEta LAnguage) Es un lenguaje de modelado de procesos no determinístico cuyo uso principal es el de verificar la lógica de sistemas paralelos. Los programas escritos en PROMELA consisten en procesos, canales de mensajes y variables. SPIN (Simple PROMELA Interpreter) Es una herramienta de código abierto, utilizada para la verificación formal de aplicaciones de software multi-hilo. Ésta comprueba la consistencia lógica de una especificación y puede ser utilizada como comprobador de modelos LTL (Lógica Temporal Lineal). Propuesta Metodológica para validar utilizando SPIN Teniendo como entrada principal el modelo de Casos de Uso del Sistema, lo que se propone es que primero se debe transformar el modelo al lenguaje PROMELA, para después mediante la utilización de la herramienta SPIN, se logre verificar cuan correcto resultó ser el modelo y se puedan encontrar errores (si es que existen) en el diseño lógico de sistemas distribuidos. Conclusión Dentro de los avances realizados en el grupo GIDTSI es posible mediante la utilización de la metodología planteada realizar distintos tipos de validaciones, en un principio mediante la utilización de autómatas finitos y ahora, en una segunda etapa, a través de los “Model Checking”, básicamente utilizando PROMELA y SPIN, con la finalidad de poder darle otro nivel de formalismo (quitando ambigüedad a los modelos) y realizar distintas comprobaciones para determinar cuan correcto es el sistema. Finalmente esta metodología planteada, nos generó nuevos conocimientos para validar modelos y así poder introducirla en un futuro muy cercano a SIAR (desarrollo interno del grupo), para lograr una herramienta de validación más consistente y completa. Metodología de Trabajo Descripción de las Tareas Esta entrada consta de todos los Casos de Uso junto con sus respectivas especificaciones y actores, detectados al momento del análisis y generación del proceso de negocio. Los modelos deben ser formulados en lógica de primer orden. Para esto necesitamos funciones, predicados, variables y un conjunto de objetos que están referidos a las funciones y predicados mediante operadores lógicos como “ ∨ ” (disyunción), “ ∧ ” (conjunción), “¬” (negación), “ ∀ ” (para todo), y “ ∃ ” (existe). Para transformar un modelo en código PROMELA primero tenemos que definir estados y transiciones en un modelo de caso de uso con sus respectivas variables y valores, junto con los valores que determinan los estados. En el “model checker” de SPIN, cada código PROMELA es examinado contra las restricciones que están representadas en forma LTL (Lógica Temporal Lineal). SPIN aporta información acerca de la aparición de bloqueos, el cumplimiento de aserciones, los estados locales de procesos, código muerto y ciclos de no progreso. Obtención del Modelo de CU del Sistema Formalización del modelo Transformación del modelo en código PROMELA Verificación del modelo con SPIN