Notaci贸n Para Representar Las Arquitecturas Del Software
Existen muchas notaciones y lenguajes para representar los artefactos del dise帽o software. Unas son para representar la estructura y otras el comportamiento, unas sirven principalmente durante el dise帽o arquitectural, otras durante el dise帽o detallado, y algunas durante ambos, algunas se emplean principalmente en el contexto de m茅todos espec铆ficos.
1.
Notaciones de
aspectos estructurales (est谩tica), es decir, los componentes y sus
interconexiones.
· Lenguajes de Descripci贸n de Arquitecturas (ADLs):
Lenguajes textuales formales ideados para describir una arquitectura software
en t茅rminos de componentes y conectores.
· Diagramas de Clases y Objetos: Para representar un
conjunto de clases (y objetos) y sus interrelaciones.
· Diagramas de Componentes: Para representar un
conjunto de componentes (partes f铆sicas y reemplazables de un sistema que
son conformes a y proveen un conjunto de interfaces) y sus
interrelaciones.
· Tarjetas CRC (Clase Responsabilidad Colaborador):
Para denotar los nombres de los componentes (clases), sus responsabilidades, y
los nombres de los componentes con los que colaboran.
·
Diagramas de
Despliegue: Para representar un conjunto de nodos f铆sicos y sus
interrelaciones, modelando los aspectos f铆sicos de un sistema.
· Diagramas Entidad-Interrelaci贸n: Para representar
modelos conceptuales de los datos almacenados en sistemas de informaci贸n.
§ Lenguajes de Descripci贸n de Interfaces (IDLs):
Similares a los lenguajes de programaci贸n normales, sirven
para definir las interfaces (nombres y tipos de las
operaciones exportadas) de los componentes software.
§ Diagramas de Estructura de Jackson: Para describir
las estructuras de datos en t茅rminos de secuencia, selecci贸n e iteraci贸n.
§ Grafo de Estructura: Para describir la estructura de
llamadas de los programas (qu茅 m贸dulos llaman y son llamados por qu茅 m贸dulos).
2.
Las siguientes
notaciones y lenguajes sirvan para describir el comportamiento (din谩mica) de
un software y sus componentes.
· Diagramas de Actividad: Para mostrar el flujo de
control entre actividades (ejecuciones no at贸micas dentro de una m谩quina de
estados).
· Diagramas de Colaboraci贸n: Para mostrar las interacciones
entre un grupo de objetos, haciendo 茅nfasis en los objetos, sus conexiones y
los mensajes que intercambian en dichas conexiones.
· Diagramas de Flujo de Datos (DFDs): Para
representar el flujo de datos entre un conjunto de procesos.
· Tablas y Diagramas de Decisi贸n: Para representar
combinaciones complejas de condiciones y acciones.
· Diagramas de Flujo [Estructurados]: Para representar
el flujo de control y las acciones asociadas que deben ser realizadas.
· Diagramas de Secuencia: Para mostrar las interacciones
entre un grupo de objetos, con 茅nfasis en la ordenaci贸n temporal de los
mensajes.
· Diagramas de Transici贸n de Estados y Grafos de
M谩quinas de Estados: Para mostrar el flujo de control entre estados de una
m谩quina de estados.
· Lenguajes de Especificaci贸n Formal: Lenguajes
textuales que usan nociones b谩sicas matem谩ticas (l贸gica, conjuntos, secuencia)
para definir de forma rigurosa y abstracta las interfaces y el
comportamiento de los componentes (habitualmente en t茅rminos de pre y post-condiciones).
· Pseudoc贸digo y Lenguajes de Dise帽o de Programas
Lenguajes, al estilo de los tradicionales de programaci贸n estructurada, usados
para describir, normalmente en la etapa de dise帽o detallado.
No hay comentarios:
Publicar un comentario