Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
1 Ing. Christian Araujo Gonzlez
Tema 2
Diseo de Sistemas de Tiempo Real
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
2 Ing. Christian Araujo Gonzlez
Contenido :
Introduccin al Diseo de STR
Tcnicas de Modelado de Sistemas en Tiempo Real
Programacin en Tiempo Real
Proceso de Desarrollo de STR
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
3 Ing. Christian Araujo Gonzlez
Introduccin al Diseo de Sistemas en Tiempo Real
Los mtodos y herramientas que se usan para construir otros tipos de sistemas no sirven para el software de tiempo real.
Algunas Ideas
Las plataformas de desarrollo y ejecucin suelen ser diferentes.
Los mtodos de diseo de software comprenden una serie de transformaciones desde los requisitos iniciales hasta el cdigo ejecutable.
- no son suficientemente fiables.
- contemplan el tiempo de respuesta medio, no el peor.
- no se garantizan los requisitos temporales.
- es difcil hacer pruebas en la plataforma de ejecucin.
- es difcil medir los tiempos con precisin.
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
4 Ing. Christian Araujo Gonzlez
Normalmente se consideran distintos niveles de abstraccin en la descripcin de un sistema:
- Especificacin de requisitos
- Diseo arquitectnico
- Diseo detallado
- Codificacin
- Pruebas
Cuanto ms precisa sea la notacin empleada en cada nivel mejor ser la calidad del sistema final.
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
5 Ing. Christian Araujo Gonzlez
Proceso de Desarrollo de STR
Para el proceso es fundamental disponer de una serie de documentos de partida, cuya funcin ser acotar la labor a realizar e instaurar el contexto donde
va a incluirse el software. Dichos documentos seran los siguientes:
- Especificacin de diseo funcional. Indica los objetivos a conseguir (a grandes
rasgos). Por ejemplo: Diseo de un horno microondas de aspecto y
funcionalidad moderno, de especificaciones tcnicas....
-Especificacin de diseo detallado. Indica cmo lograr los objetivos sin
especificar construccin.
- Esquema bsico de diseo del hardware y la mecnica del aparato o sistema.
Nos proporciona el entorno de actuacin del software.
El proceso de diseo para sistemas de tiempo real difiere de otros procesos de diseo de software en que los tiempos de respuesta del sistema se deben
considerar al inicio del proceso. Los eventos (estmulos), ms que los objetos o
funciones, son una pieza central en el diseo.
Control del
sensor
sensor
Procesador de
datos
Control del
actuador
actuador
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
6 Ing. Christian Araujo Gonzlez
Las fases son:
I. ANALISIS
La fase de anlisis consiste en realizar un grupo de diagramas y documentos que
modelen o expliquen grficamente las capacidades y funcionalidades del sistema.
Es importante que sean principalmente grficos o diagramas porque ello facilita la
abstraccin del entorno y la separacin en bloques funcionales.
Esta es la fase se usaran las siguientes tcnicas que permitirn documentar como:
Diagramas de Flujo de Datos, Diagramas de Transicin de Estados, Diccionarios de Datos
y Miniespecificaciones.
El esquema tiene una serie de fases que, si bien al principio del proceso de aprendizaje sera lgico procesarlas secuencialmente para captar el sentido del
mtodo, en la prctica real habra que tratar de impulsarlas simultneamente.
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
7 Ing. Christian Araujo Gonzlez
- Abstraccin: consiste en realizar la codificacin de un proceso buscando desligarse de la informacin
de su entorno y de los niveles superiores e inferiores.
- Modularidad: es la divisin en bloques funcionales, en vez de realizar un software monoltico. - Ocultacin de informacin: se busca tratar los mdulos como cajas negras de las que no necesitamos saber como estn hechos, slo como utilizarlos.
- Arquitectura del software: estructura general y relaciones de todos los mdulos considerando el
software como un todo.
III. DESARROLLO
Consiste en la codificacin del software propiamente dicha.
El desarrollo incluye la codificacin y las pruebas mnimas necesarias para tener la
certeza de que el software responde a las especificaciones.
II. DISEO
Esta fase la planteamos como una serie de recetas que hay que tener en cuenta a la hora de codificar el software. Para esto, se debe tener en cuenta los criterios clsicos de
diseo del software, entre los que destacamos:
- Diseo descendente y refinamiento sucesivo: dividir un problema o proceso complejo en partes ms
pequeas.
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
8 Ing. Christian Araujo Gonzlez
IV. PRUEBA
Consiste en la comprobacin exhaustiva del software. Es una fase que se suele evitar y
est muy desprestigiada porque supone el reconocer los propios errores. Hay que intentar
evitar esta conducta y mentalizar al ingeniero de que una sesin de pruebas con xito es
precisamente la que encuentra errores..
V. DOCUMENTACION
Engloba textos descriptivos, comentarios en los programas, los diagramas ya
desarrollados y protocolos de pruebas documentados.
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
9 Ing. Christian Araujo Gonzlez
Tcnicas de Modelado de Sistemas en Tiempo Real
1. DFDs Ampliaciones para STR
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
10 Ing. Christian Araujo Gonzlez
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
11 Ing. Christian Araujo Gonzlez
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
12 Ing. Christian Araujo Gonzlez
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
13 Ing. Christian Araujo Gonzlez
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
14 Ing. Christian Araujo Gonzlez
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
15 Ing. Christian Araujo Gonzlez
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
16 Ing. Christian Araujo Gonzlez
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
17 Ing. Christian Araujo Gonzlez
2. Mquina de Estado Diagrama Transicin de Estado
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
18 Ing. Christian Araujo Gonzlez
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
19 Ing. Christian Araujo Gonzlez
3. Diccionario de Datos
Dis
eo
de
Sis
tem
as
de
Tie
mp
o R
eal
20 Ing. Christian Araujo Gonzlez