P. 1
ingenieria de sistemas software por gls

ingenieria de sistemas software por gls

4.38

|Views: 19.051|Likes:
Publicado porAndres
Útil para Desarrollo de Software
Útil para Desarrollo de Software

More info:

Published by: Andres on Nov 01, 2007
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

04/18/2014

pdf

text

original

Las tecnologías de desarrollo estructurado son las más
convencionales de las empleadas hoy día. Han surgido de la evolución
de las ideas de programación estructurada (hace más de veinticinco
años) hacia las fases iniciales del ciclo de vida.

En su formulación actual, las notaciones empleadas en las prime-
ras fases del ciclo de vida (especificación de requisitos de usuario y sistema)
suelen estar constituidas por lenguajes gráficos que permiten: identificar
el sistema y el entorno; representar el flujo de información entre los
elementos; y, describir los datos y las actividades del sistema [12].

La idea base de esta tecnología es que es posible estructurar el
modelo de un sistema de software en base a funciones que procesan informa-
ción que reciben de otras funciones (o del exterior) y dirigen la información

Tecnologías de software

INGENIERÍA DE SISTEMAS DE SOFTWARE

100

procesada a otros módulos funcionales (o al exterior). El enfoque seguido,
por tanto, es el de pensar en las funciones del sistema necesarias (extraídas
de los requisitos del sistema) y luego en los datos que requieren.

Entre las más utilizadas para análisis y especificación de requi-
sitos se encuentra SA/RT (Análisis Estructurado con extensiones para
tiempo real) [13]. Surgió como un lenguaje gráfico capaz de representar
las actividades que deberá realizar el sistema, los intercambios de
información entre ellos, etc. La descripción del comportamiento se realiza
mediante diagramas de transición de estados.

Existen otras notaciones basadas en conceptos muy similares y
el utilizar una u otra es más bien un problema de gusto. Las diferencias
entre ellos provienen más de la forma de usarla que de la potencia
expresiva del lenguaje.

Como evolución de las técnicas de análisis estructurado, en la fase
de diseño se han utilizado variantes de SA/RT: SD/RT (Diseño Estructurado
con extensiones para Tiempo Real). Al igual que SA/RT consta de un
lenguaje gráfico no ejecutable e incorporan conceptos tales como: tarea,
procesador, colas de mensajes, mecanismos de sincronización entre
tareas, etc. que son conceptos necesarios en la fase de diseño.

En una línea diferente y para evitar los problemas de la explosión
de estados se definieron por Harel [14] los «statecharts» (variante de los
diagramas de estado). Con ellos, se lograba compactar el espacio de
estados que resultaba al describir sistemas de gran complejidad al permitir
jerarquización de estados y descomposición en componentes. En base
a ellos se ha desarrollado una tecnología estructurada adaptada a
sistemas de control denominada Statemate [15].

Para la fase de análisis y especificación de requisitos, las herramientas
están asociadas a la construcción de modelos del sistema (modelos lógicos
con diagramas de estado asociados). Estas herramientas no son genéricas
sino que soportan métodos concretos. Suelen constar de:

101

A)Editores gráfico-textuales de la notación asociada a un
método (tanto para describir las funciones como para
describir el comportamiento mediante diagramas de estado).

B)Comprobadores de consistencia en la información relativa
a refinamientos del modelo (nombres, tipos, uso, etc. de los
elementos definidos en los diagramas).

C)Sistema de gestión de la información almacenada (en
ocasiones basada en bases de datos relacionales u orien-
tadas a objetos para gestionar el acceso a la información).

D)Generadores de prototipos (normalmente de interfaz
gráfica) con objeto de evaluar los modelos lógicos o de
diseño.

En las fases de diseño del sistema se dispone del mismo tipo de
herramientas aunque en este caso se suele disponer también de:
analizadores temporales y estimadores de tiempos de ejecución,
generadores de código (más o menos completos) o facilidades para la
utilización de componentes genéricos contenidos en bibliotecas menos
comunes pero cada vez más conocidas son herramientas como las de
animación gráfica de modelos. Estas herramientas aparecen como
extensión de las que permiten editar y validar modelos de especificación
y diseño estructurado de sistemas de software.

Finalmente, las herramientas que soportan la fase de implemen-
tación son las más conocidas dado que han estado en su mayor parte
presentes desde los comienzos de la programación: editores (cono-
ciendo la sintaxis del lenguaje en algunos casos), compiladores e
intérpretes, generadores/optimizadores de código, ejecutores de casos
de prueba, depuradores simbólicos, etc.

En resumen, la Figura 19 representa esquemáticamente los
componentes de la tecnología de software estructurada.

Tecnologías de software

INGENIERÍA DE SISTEMAS DE SOFTWARE

102

Aunque este tipo de tecnologías de software aún se utilizan y
sufren rejuvenecimientos periódicos, se está produciendo un despla-
zamiento de los usuarios hacia tecnologías orientadas a objetos que
abordaremos seguidamente. Únicamente en el caso de sistemas de
tiempo real existe una inercia a su abandono puesto que aún no se
dispone de tecnologías orientadas a objetos validadas industrialmente
en ese dominio.

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->