miércoles, 23 de septiembre de 2020

Notación para representar las arquitecturas del software

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

BIENVENIDA