Está en la página 1de 4

METODOS DE DISEO DE UN SISTEMA EN

TIEMPO REAL
METODOS
Para disear sistemas de tiempo real son necesarias tcnicas formales que
permiten especificar y analizar sistemas concurrentes con restricciones
temporales. Gomaa (1994) sugiere cuatro objetivos importantes para un
mtodo de diseo de tiempo real.
El mismo debe ser capaz de:
Estructurar un sistema en tareas concurrentes
Dar soporte al desarrollo de los componentes reusables mediante la
ocultacin de informacin
Definir los aspectos de comportamiento mediante mquinas de estado
finito
Analizar las prestaciones de un diseo para determinar sus propiedades
de tiempo real.
Para los sistemas de tiempo real estricto se presenta la desventaja
importante de que los problemas de temporizacin en algunos casos slo
son detectables durante la prueba o incluso peor, tras el deployment de la
aplicacin. Del mismo modo que para el diseo de aplicaciones genricas,
slo se obtienen productos fiables y correctos si las actividades de
especificacin, diseo, implementacin y testing se llevan a cabo con una
completa y alta calidad. La clave para alcanzar la calidad se apoya en una
adecuada verificacin y validacin.

MODELADO DE STR
EL modelo de tiempo real de un sistema informtico es una abstraccin que
proporciona la informacin cualitativa y cuantitativa necesaria para evaluar
y predecir su comportamiento temporal.
Es el medio del que se vale el diseador para formular los requisitos
temporales durante la fase de especificacin, razonar sobre su arquitectura
en las fases de diseo y certificar su planificabilidad en las fases de
validacin.
Los mtodos formales son particularmente efectivos en el desarrollo de los
niveles de especificacin y de requerimientos aunque pueden utilizarse para
el desarrollo formal completo de una implementacin.

En ciencias de la computacin los mtodos formales se refieren a tcnicas


basadas en las ciencias matemticas para la especificacin, desarrollo y
verificacin del software y hardware de sistemas.
El enfoque es especialmente importante in sistemas de alta integridad
donde la seguridad es importante para asegurar que los errores no se
introducen en el proceso de desarrollo.
Un sistema se modela para poder manejar su complejidad y como
herramienta para:

Servir de ayuda para el desarrollo de la tarea (uno mismo)


Visualizar lo hecho hasta el momento (uno mismo)
Comunicar el avance obtenido (el cliente y el equipo de desarrollo)
Documentar el desarrollo de la aplicacin (el equipo de desarrollo)
El

El modelado permite la construccin y la validacin de sistemas :


Es deseable un desarrollo lo ms rpido y menos costoso posible
Un error es ms caro y complejo de encontrar y resolver despus de la
liberacin del sistema al usuario
Es muy importante evaluar la calidad de los sistemas conforme avanza
su desarrollo.
En cuanto del alcance del modelado es necesario considerar diferentes niveles
Nivel 0: especificacin informal
Nivel 1: especificacin formal (uso de tcnicas con base matemtica,
para la especificacin, diseo y construccin del sistema)
Nivel 2: construccin manipulando la especificacin y verificacin con
argumentos matemticos Nivel 3: prueba de propiedades
Los niveles 1 al 3 se relacionan con la nocin de mtodos formales.

ASPECTOS A MODELAR
Por lo general existen 3 aspectos a modelar: estructura, comportamiento y
atributos de calidad. Los aspectos de inters a modelar en un sistema de
tiempo real son:
Distribucin de los componentes de hardware y protocolos de
comunicacin entre ellos
Restricciones temporales que afectan el desempeo del sistema
(performance)
Concurrencia y sincronizacin en el acceso a recursos compartidos

Planning y scheduling de tareas propiedades generales (liveness y


safety)
Existen diversos modelos y herramientas que pueden emplearse :
Modelos tericos: Grafos Temporizados, FOCUS [Bro02], SDL
(Specification and Description Languag; Prototipos ad hoc
Modelos grficos: UML Profile for Schedulability, Performance, and
Time [UML], UML Profile for System on a Chip
Herramientas de Verificacin: Kronos, UPPAAL [UPP]
Simulacin: SystemC [Sys], VHDL (VHSIC Hardware Description
Language)
Actualmente la industria utiliza plataformas distribuidas sobre las que se
ejecutan concurrentemente mltiples aplicaciones, de las cuales algunas
tienen requisitos de tiempo real y otras requieren determinados niveles de
calidad de servicio.
A fin de abordar la complejidad que resulta en estos sistemas, gestionar la
diversidad de versiones que se han de manejar, y cumplir los plazos de
desarrollo que impone la evolucin del mercado, actualmente se ha impuesto
la componer su diseo en todos sus niveles en los sistemas operativos, en el
software de intermediacin y en el diseo del cdigo de la propia aplicacin.
La divisin en componentes en s es un aspecto complementario e
independiente al proceso de diseo de tiempo real, sin embargo, al introducir
cambios profundos en la metodologa de desarrollo de las aplicaciones,
interfiere con los mtodos que han venido utilizndose en el diseo de tiempo
real.
En las metodologas tradicionales de diseo de sistemas de tiempo real, las
aplicaciones son concebidas y descritas inicialmente como conjuntos de tareas
o transacciones concurrentes dentro de un paradigma de sistema reactivo, y es
en una fase posterior cuando, a fin de estructurar el cdigo, las operaciones
utilizadas se organizan en mdulos siguiendo criterios de dominio, tareas o
subsistemas. Por el contrario, cuando se utiliza una estrategia de diseo
basada en componentes, el sistema se concibe y disea ensamblando mdulos
reusables procedentes de catlogos de componentes disponibles, en funcin
de que proporcionan la funcionalidad que se necesita, y es posteriormente
cuando se asocian las secuencias de actividades resultantes a los procesos o
hilos de flujo que introducen el modelo de concurrencia, siendo no unvoca la
asociacin entre componentes y procesos.
En el diseo de los sistemas basados en componentes hay que hacer
compatibles los dos puntos de vista: el estructural (esttico) que identifica las
operaciones como servicios de las instancias de los componentes y el reactivo

(dinmico) donde las actividades (invocacin de las operaciones) se organizan


por tareas o procesos.
Una metodologa de modelado de aplicaciones basadas en componentes tiene
que proporcionar recursos para formular el modelo de tiempo real de un
componente como un ente independiente, y as mismo, debe ofrecer las
propiedades de componibilidad necesarias para que el modelo de tiempo real
de la aplicacin pueda construirse por composicin de los modelos de tiempo
real de los componentes que la conforman.

También podría gustarte