Taller de Producci - PowerPoint PPT Presentation

About This Presentation
Title:

Taller de Producci

Description:

Taller de Producci n de Programas sin Fallas Nora Szasz Grupo de M todos Formales Instituto de Computaci n Universidad de la Rep blica Montevideo, Uruguay – PowerPoint PPT presentation

Number of Views:57
Avg rating:3.0/5.0
Slides: 17
Provided by: Eduar57
Category:

less

Transcript and Presenter's Notes

Title: Taller de Producci


1
Taller de Producción de Programas sin Fallas
  • Nora Szasz
  • Grupo de Métodos Formales
  • Instituto de Computación
  • Universidad de la República
  • Montevideo, Uruguay
  • www.fing.edu.uy/mf/TPPSF

2
Objetivos
  • Generales
  • Iniciación al uso de métodos formales para la
    producción de software correcto por construcción
  • Particulares
  • presentación de laTeoría de Tipos como lógica de
    programación
  • familiarización con ambientes de desarrollo de
    programas basados en ese formalismo

3
Certificación de Calidad de Software
  • Normas internacionales de calidad
  • (ISO9001, ITSEC, TCSEC, etc.)
  • Diferentes niveles/criterios de calidad que
    involucran evaluación de
  • el proceso de producción
  • el producto
  • Niveles altos de garantía exigen la aplicación de
    métodos formales en
  • la especificación
  • la verificación del código fuente
  • la verificación del código objeto

4
Norma ITSECAssurance Correctness Level E6
  • Construction - The developement process
  • E6 1. The sponsor shall provide the target of
    evaluation (TOE) and the following documentation
  • ...
  • Formal description of the architecture of the
    TOE.
  • Library test programs and tools used for testing
    the TOE, including tools which can be used to
    detect inconsistencies, between source code and
    executable code if there are any security
    enforcing or security relevant to source code
    components (e.g. Disassembler and/or a debugger).
  • Informal description of correspondence between
    source code or hardware drawings and the detailed
    design and the formal specification of security
    enforcing functions . ...

5
Normas ITSEC y TCSEC (Cont.)
  • Phase 4 - Implementation
  • E6.11 ... It shall explain the correspondance
    between the security mechanisms as represented in
    the source code or hardware drawings and the
    formal specification of security enforcing
    functions in the security target. ...
  • E6.12 ... The test documentation shall explain
    the correspondence between tests and the formal
    specification of security enforcing functions
    defined in the security target.
  • E6.13 ... Investigate any suspected
    inconsistencies between source code and
    executable code found during testing using the
    sponsor supplied tools.

6
Métodos Formales y Desarrollo Industrial de
Software
Aplicaciones Industriales Críticas
Métodos formales
  • Verificación de modelos
  • Lenguajes para sistemas comunicantes
  • Lógicas de programación
  • - Lógica de Hoare
  • - Lógicas de orden superior
  • - Teorías de tipos
  • ...
  • Transporte
  • Aeronáutica
  • Centrales nucleares
  • Dispositivos médicos
  • Comercio electrónico
  • ...

7
Algunas razones...
  • La variedad de aplicaciones críticas se ha
    incrementado recientemente
  • No hay estándares definidos sobre qué técnicas
    formales utilizar
  • La incorporación de métodos formales en el
    desarrollo de software no es inmediata
  • requiere cierto dominio de técnicas abstractas
  • muchas veces oscurecen nociones operacionalemente
    claras

8
Más razones
  • Gran parte de las herramientas han sido
    desarrolladas y utilizadas en laboratorios de
    investigación
  • Estimación incorrecta de factores de escala en
    la funcionalidad de las herramientas
  • Comunicación Investigación ? Industria no es
    simple
  • La gran variedad de técnicas formales dificulta
    la correcta selección de las técnicas apropiadas

9
Aplicación de métodos formales en el desarrollo
de software
  • Tiene (hoy) un costo elevado
  • Es rentable a largo plazo
  • desarrollo incremental y descubrimiento temprano
    de incoherencias entre los requerimientos
  • calidad del diseño
  • mantenimiento
  • documentación fiable
  • comunicación no ambigua (posibilita la
    terciarización de servicios y la verificación de
    la funcionalidad)
  • evaluación de los planes de calidad (en
    particular, de los protocolos de test)

10
Buenas perspectivas ...
  • Actualmente se verifican sistemas de porte
    significativo (sistemas de centenares de miles de
    líneas) Craigen93a, Craigen93b
  • Proyecto CICS conducido por IBM en colaboración
    con Universidad de Oxford Houston91
  • ? especificación en la notación formal de Z
    de una parte del sistema y desarrollo del código
    a partir de esta especificación.

11
Buenas perspectivas...
  • Utilización de sistema B por GEC-Alsthom en el
    proyecto del metro de Calcuta Silva92
  • ? especificación en la notación formal de B de
    una parte del sistema y desarrollo formal del
    código ejecutable a partir de esta
    especificación.

12
El Grupo de Métodos Formales del InCo
  • Las áreas de investigación
  • Verificación formal de corrección de programas
  • Verificación de sistemas reactivos
  • Programación genérica

13
En este curso
  • Métodos formales Aplicaciones Críticas
  • Especificación formal
  • lenguaje formal (Teoría de Tipos)
  • razonamiento sobre la especificación y
    demostración propiedades
  • asistentes mecánicos

Lógicas de Programación - Teorías de Tipos -
Asistente de Pruebas Coq
- Dyade - Dassault Aviation - CNET
14
Programa
  • Asistentes de pruebas para lógicos y matemáticos
  • una presentación formal de la lógica
    proposicional y de primer orden
  • Asistentes de pruebas para programadores
  • cálculo lambda como lenguaje de programación
    funcional
  • Pruebas y programas. Especificaciones y Tipos
  • isomorfismo de Curry-Howard
  • extracción de programas a partir de pruebas
  • construcción de pruebas a partir del programa y
    la especificación

15
Programa
  • Definiciones Inductivas
  • principios de inducción y esquemas de recursión
  • Construcción de programas certificados usando Coq
  • programas funcionales e imperativos

16
Referencias
Craigen 93a D.CRAIGEN, S.DERHART and T.RALSTON.
An international Survey on Industrial
Applications of Formal Methods, 1 Purpose,
Approach, Analysis and Conclusions. Technical
Report N93/626, NISTGCR,U.S. Dept. of Commerce,
Tehcnology Administration, NIST, Comp. syst.
Lab., Githersburg, MD 20899, Nat, Institut of
Standart and Technology, 1993. Craigen 93b
D.CRAIGEN, S.DERHART and T.RALSTON. An
international Survey on Industrial Applications
of Formal Methods, 2 Case Studies. Technical
Report N93/626, NISTGCR,U.S. Dept. of Commerce,
Tehcnology Administration, NIST, Comp. syst.
Lab., Githersburg, MD 20899, Nat, Institut of
Standart and Technology, 1993. HOUSTON 91 I.
HOUSTON and S. KING. CICS project report,
experiences and results from the use of Z in IBM.
Srpinger Verlag, 1991, LNCS, volume 551. SILVA
92 C. D. SILVA, B. DEHBONEI and F. MEJIA. Formal
specification in the development of industrial
applications the subway speed control mechanism.
FORTE'92, ed. by M. DIAZ and R. GROTH, North
Hollland, 1992.
Write a Comment
User Comments (0)
About PowerShow.com