Monografias.com > Sin categoría
Descargar Imprimir Comentar Ver trabajos relacionados

Sistemas de Alta Integridad (página 2)




Enviado por Pablo Turmero



Partes: 1, 2, 3

Monografias.com

J. García Martín 15/06/2016
– 15
CENELEC EN50126

Independencia vs. Nivel de integridad

Monografias.com

J. García Martín 15/06/2016
– 16
CENELEC EN50126

Criterios de selección de técnicas

Para cada combinación Técnica/Nivel de Integridad:

M = Mandatory
HR = Highly Recommended
R = Recommended
– = No recomendation
NR = Positively Not Recommended

Monografias.com

J. García Martín 15/06/2016
– 17
CENELEC EN50126

Criterios de selección de técnicas

( tablas)

Monografias.com

J. García Martín 15/06/2016
– 18
DOD-178-B

Introducción

Desarrollado por RTCA

Dirigido para software crítico de vuelo en aviación comercial

El objetivo es la seguridad (safety)

Impone criterios y actividades para asegurar la seguridad del sistema

No impone CdV o metodología concreta

Monografias.com

J. García Martín 15/06/2016
– 19

Actividades

Lista de actividades que se espera que desarrollen en cada parte del proceso:
Planificación
Estándares
Desarrollo
Verificación de requisitos software
Verificación de diseño software
Verificación de código
Verificación del proceso de integración
Verificación del proceso de verificación
Gestión de configuración
Asegurar la calidad del software
Verificación de las herramientas utilizadas

DOD-178-B

Cumple con los req. de bajo nivel
Traceable los req. de bajo nivel
Cumple con la arquitectura sw
Traceable con la arquitectura sw
Es correcto” y consistente
Es verificable
Conforme con estándares de sw

Monografias.com

J. García Martín 15/06/2016
– 20
TÉCNICAS DE VERIFICACIÓN

Introducción

Proceso por el que se asegura que la implementación satisface los requisitos
(Validación: asegurar que los requisitos son correctos)

Planteamiento para analizar un lenguaje de programación:

Una facilidad del lenguaje se rechaza por dificultar la verificación.

Monografias.com

J. García Martín 15/06/2016
– 21

Introducción

Los estándares requieren 4 procesos de verificación:

Traceability
Review
Analysis
Testing

TÉCNICAS DE VERIFICACIÓN

Monografias.com

J. García Martín 15/06/2016
– 22

Técnicas
1.- Traceability

Comprobar que la implementación es completa

Confrontación:
De req. bajo nivel a req. alto nivel
De procedimientos de test a requisitos, diseño e implementación
De código objeto a código fuente

p.e. Algunas facilidades ==> código del compilador muy extenso, difícil de verificar

p.e. Relación muchos-a-muchos en la descomposición de niveles ==> difícil verificar

TÉCNICAS DE VERIFICACIÓN

Monografias.com

J. García Martín 15/06/2016
– 23

Técnicas
2.- Review

Llevadas a cabo por personas
Más o menos formal
Personas independientes del equipo de desarrollo (obligatorio)
Sobre requisitos, diseño, código, procedimientos de test, informes etc.

p.e. Algunas facilidades del lenguaje ==> dificultan la revisión del código

TÉCNICAS DE VERIFICACIÓN

Monografias.com

J. García Martín 15/06/2016
– 24

Técnicas
3.- Analysis (estático):

Sobre requisitos, diseño y código
Los estándares combinan 10 métodos de análisis
Código objeto OCA
Flujo de datos FA (Flow Analysis)
Flujo de control FA
Flujo de la información FA
Comprobación de rangos RC
Utilización de la memoria OMU
Utilización de la pila Stk
Cumplimientos temporales Tmg
Verificación formal del código FC (Functional Correctness)
Ejecución simbólica FC

TÉCNICAS DE VERIFICACIÓN

Monografias.com

J. García Martín 15/06/2016
– 25

Técnicas
4.- Testing (dinámico)

Una comprobación absoluta es infactible
Se puede comprobar la presencia de errores, no la ausencia
Niveles de aplicación:
Componentes sw; Integración sw; Integración hw-sw; Test del sistema
Tipos:
Basado en Requisitos (caja negra)
Clases de equivalencia EC
Valores extremos BV
Basado en la estructura (caja blanca) SC
Instrucciones cubiertas
Decisiones (saltos) cubiertas
Condiciones modificadas/Decisiones cubiertas
p.e L.alto-nivel + L.ensamblador en un mismo módulo ==> dificultaría el test de la estructura

TÉCNICAS DE VERIFICACIÓN

Monografias.com

J. García Martín 15/06/2016
– 26
GUÍA PARA EL USO DE ADA

Introducción

Aplicar las técnicas vistas para que el sistema tenga un comportamiento predecible

¿Cuándo y cómo aplicamos las técnicas de análisis (estático y dinámico)?

Aproximación Retrospectiva: Cuando el sistema ya ha sido desarrollado
A veces demasiado tarde; Correcciones costosas

Corrección por construcción: Mientras se desarrolla el código
Ir validando los productos intermedios

Monografias.com

J. García Martín 15/06/2016
– 27
GUÍA PARA EL USO DE ADA

Selección de las facilidades del lenguaje

Se va a seleccionar una parte del lenguaje

Razones para necesitar/rechazar una facilidad del lenguaje

Conseguir ser predecible

Permitir la modelización

Consideraciones pragmáticas

Monografias.com

J. García Martín 15/06/2016
– 28
GUÍA PARA EL USO DE ADA

Selección de las facilidades del lenguaje

1.- Conseguir ser predecible (evitar ambigüedades)
Efectos laterales
p.e. Y = f(x) * g(x)
Efectos de orden de elaboración de paquetes
Efectos de mecanismos de paso de parámetros

2.- Permitir la modelización
Análisis estático = construcción de modelo (grafo) para hacer comprobaciones
Algunas facilidades complican la construcción de modelos
p.e. Las excepciones complican la construcción de un grafo

Monografias.com

J. García Martín 15/06/2016
– 29
GUÍA PARA EL USO DE ADA

Selección de las facilidades del lenguaje

3.- Consideraciones pragmáticas
Los métodos de análisis (estáticos y dinámicos) son efectivos si sw bien estructurado
p.e Cada módulo (tarea) tiene 1 pto. de entrada y 1 pto. de salida

Verificar = relacionar fragmentos de código con fragmentos de req.
(depende de la simplicidad)

Monografias.com

J. García Martín 15/06/2016
– 30
GUÍA PARA EL USO DE ADA

Elección del lenguaje

ADA tiene definición precisa => adecuado para sistemas de alta integridad

El núcleo del lenguaje facilita la verificación (modelización, elimina ambigüedad)

Hay que restringir el uso de algunas facilidades (excepciones, goto)

Conduce a un buen estilo de programación (facilita revisiones)

En esta guía se describen las propiedades de las facilidades

No se define un subconjunto del lenguaje

Monografias.com

J. García Martín 15/06/2016
– 31
GUÍA PARA EL USO DE ADA

Selección de un subconjunto del lenguaje ADA

Para cada facilidad/técnica verificación hay tres niveles de adecuación:

Excluido Tiempo/Coste prohibitivo

Permitido Esfuerzo extra

Incluido Disponible

La selección de una facilidad va a depender de:
La propia aplicación
Las técnicas de verificación que se van a emplear

(estándar a seguir y nivel de integridad)

Monografias.com

J. García Martín 15/06/2016
– 32
GUÍA PARA EL USO DE ADA

Selección de un subconjunto del lenguaje ADA

Pasos a seguir:

1.- Determinar las técnicas de verificación requeridas para los estándar relevantes

2.- Utilizar las tablas para determinar para cada facilidad: Incluida/Permitida

3.- Confirmar que el subconjunto y las técnicas elegidas satisfacen los requisitos de programación y verificación

Monografias.com

J. García Martín 15/06/2016
– 33
GUÍA PARA EL USO DE ADA

Selección …- Instrucciones

Monografias.com

J. García Martín 15/06/2016
– 34
GUÍA PARA EL USO DE ADA

Selección … – Paquetes

Partes: 1, 2, 3
 Página anterior Volver al principio del trabajoPágina siguiente 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter