SlideShare una empresa de Scribd logo
Software exposicion
 El objetivo de los diseñadores es producir un modelo o
representación de una entidad que se será construida a posteriori.
Belady describe el proceso mediante el cual se desarrolla el modelo
de diseño.
 En cualquier proceso de diseño existen dos fases importantes: la
diversificación y la convergencia. La diversificación es la
adquisición de un repertorio de alternativas, de un material
primitivo de diseño: componentes, soluciones de componentes y
conocimiento, todo dentro de catálogos, de libros de texto y en la
mente. Durante la convergencia, el diseñador elige y combina los
elementos adecuados y extraídos de este repertorio para satisfacer
los objetivos del diseño, de la misma manera a como se establece
en el documento de los requisitos, y de la manera en que se acordó
con el cliente. La segunda fase es la eliminación gradual de
cualquier configuración de componentes excepto de una en
particular, y de aquí la creación del producto final.
 El diseño del software se encuentra en el núcleo técnico de la ingeniería del
software y se aplica independientemente del modelo de diseño de software que
se utilice. Una vez que se analizan y especifican los requisitos del software, el
diseño del software es la primera de las tres actividades técnicas -diseño,
generación de código y pruebas- que se requieren para construir y verificar el
software. Cada actividad transforma la información de manera que dé lugar por
último a un software de computadora validado.
Software exposicion
Los requisitos del software, manifestados por los modelos de datos
funcionales y de comportamiento, alimentan la tarea del diseño.
Mediante uno de los muchos métodos de diseño (que se abarcarán
en capítulos posteriores) la tarea de diseño produce un diseño de
datos, un diseño arquitectónico, un diseño de interfaz y un diseño de
componentes.
Transforma el modelo del dominio de información que se
crea durante el análisis en las estructuras de datos que se
necesitarán para implementar el software. Los objetos de
datos y las relaciones
definidas en el diagrama relación entidad y el contenido de
datos detallado que se representa en el diccionario de datos
proporcionan la base de la actividad del diseño de datos.
 Define la relación entre los elementos estructurales
'principales del software, los patrones de diseño que se
pueden utilizar para lograr los requisitos que se han definido
para el sistema, y las restricciones que afectan a la manera
en que se pueden aplicar los patrones de diseño
arquitectónicos [SHA96]. La representación del diseño
arquitectónico -el marco de trabajo de un sistema basado
en computadora- puede derivarse de la especificación del
sistema, del modelo de análisis y de la interacción del
subsistema definido dentro del modelo de análisis.
 Describe la manera de comunicarse el software dentro
de sí mismo, con sistemas que interoperan dentro de él
y con las personas que lo utilizan. Una interfaz implica
un flujo de información (por ejemplo, datos y/o control)
y un tipo específico de comportamiento. Por tanto, los
diagramas de flujo de control y de datos proporcionan
gran parte de la información que se requiere para el
diseño de la interfaz.
 Transforma los elementos estructurales de la arquitectura del
software en una descripción procedimental de los componentes
del software. La información que se obtiene de EP, EC y de DTE
sirve como base para el diseño de los componentes.
 La importancia del diseño del software se puede describir con
una sola palabra -calidad-. El diseño es el lugar en donde se
fomentará la calidad en la ingeniería del software.
A lo largo de todo el proceso del diseño, la
calidad de la evolución del diseño se evalúa
con una serie de revisiones técnicas formales o
con las revisiones de diseño sugiere tres
características que sirven como guía para la
evaluación de un buen diseño:
El diseño deberá implementar todos los requisitos
explícitos del modelo de análisis, y deberán ajustarse a
todos los requisitos implícitos que desea el cliente.
El diseño deberá ser una guía legible y comprensible
para aquellos que generan código y para aquellos que
comprueban y consecuentemente, dan soporte al
software.
el diseño deberá proporcionar una imagen completa
del software, enfrentándose a los dominios de
comportamiento, funcionales y de datos desde una
perspectiva de implementación.
Es un proceso continuo que ha abarcado las últimas cuatro
décadas. El primer trabajo de diseño se concentraba en
criterios para el desarrollo de programas modulares y
métodos para refinar las estructuras del software de manera
descendente.
Independientemente del modelo de diseño que se utilice, un
ingeniero del software deberá aplicar un conjunto de
principios fundamentales y conceptos básicos para el diseño
a nivel de componentes, de interfaz, arquitectónico y de
datos. Estos principios y conceptos se estudian en la sección
siguiente.
El proceso de diseño es una secuencia de pasos que hacen posible que el diseñador
describa todas los aspectos del software que se va construir. Sin embargo, es importante
destacar que el proceso de diseño simplemente no es un recetario. Un conocimiento
creativo, experiencia en el tema, un sentido de lo que hace que un software sea bueno,
y un compromiso general con la calidad son factores críticos de éxito para un diseño
competente.
 El modelo de diseño es el equivalente a los planes de un arquitecto para una casa.
Comienza representando la totalidad de todo lo que se va a construir (por ejemplo,
una representación en tres dimensiones de la casa) y refina lentamente lo que va a
proporcionar la guía para construir cada detalle (por ejemplo, el diseño de
fontanería). De manera similar, el modelo de diseño que se crea para el software
proporciona diversas visiones diferentes de software de computadora.
Los principios básicos de diseño hacen
posible que el ingeniero del software
navegue por el proceso de diseño. Davis
[DAV95] sugiere un conjunto' de principios
para el diseño del software, los cuales han
sido adaptados y ampliados en la lista
siguiente:
 El diseño deberá poderse rastrear hasta el modelo de análisis.
 El diseño deberá «minimizar la distancia intelectual » [DAV95]
entre el software y el problema como si de la misma vida real
se tratara.
 El diseño deberá presentar uniformidad e integración.
 El diseño deberá estructurarse para admitir cambios.
 El diseño deberá estructurarse para degradarse poco
 a poco, incluso cuando se enfrenta con datos, sucesos
 o condiciones de operación aberrantes.
 Durante las últimas cuatro décadas se ha experimentado la
evolución de un conjunto de conceptos fundamentales de
diseño de software. Aunque el grado de interés en cada
concepto ha variado con los años, todos han experimentado el
paso del tiempo. Cada uno de ellos proporcionarán la base de
donde el diseñador podrá aplicar los métodos de diseño más
sofisticados.
En el nivel más alto de abstracción, la
solución se pone como una medida
extensa empleando el lenguaje del
entorno del problema. En niveles inferiores
de abstracción, se toma una orientación
más procedimental.
El refinamiento paso a paso es una estrategia de
diseño descendente propuesta originalmente
por Niklaus Wirth [WIR71]. El desarrollo de un
programa se realiza refinando sucesivamente
los niveles de detalle procedimentales.
Se ha afirmado que <<lam odularidad es el Único
atributo del software que permite gestionar un
programa intelectualmente» [MYE78]. El software
monolítico (es decir, un programa grande formado por
un Único módulo)no puede ser entendido fácilmente
por el lector.
 La arquitectura del software alude a la «estructura global del
software y a las formas en que la estructura proporciona la
integridad conceptual de un sistema» [SHA95a].
 Un objetivo del diseño del software es derivar una
representación arquitectónica de un sistema. Esta
representación sirve como marco de trabajo desde donde se
llevan a cabo actividades de diseño más detalladas. Un
conjunto de patrones arquitectónicos permiten que el ingeniero
del software reutilice los conceptos a nivel de diseño.
Denominada también estructura de programa,
representa la organización de los componentes
programa (módulos) e implica una jerarquía de
control. No representa los aspectos
procedimentales del software, ni se puede
aplicar necesariamente a todos los estilos
arquitectónicos.
FIGURA. Terminologías de estructura para un estilo
arquitectónico de llamada y retorno.
proporciona software más fácil de probar
conduce a un software más fácil de mantener
propaga menos efectos secundarios
proporciona software más fácil de ampliar
La estructura de datos es una representación de la
relación lógica entre elementos individuales de datos.
Como la estructura de la información afectará
invariablemente al diseño procedimental final, la
estructura de datos es tan importante como la
estructura de programa para la representación de la
arquitectura del software.
(a) División horizontalMódulos
de toma
de
decisione
s IMódulos
(b) División Vertical
FIGURA. Partición estructural.
Los conceptos fundamentales de diseño descritos en
la sección anterior sirven para incentivar diseños
modulares.
De hecho, la modularidad se ha convertido en un
enfoque aceptado en todas las disciRlinas de
ingeniería.
El concepto de independencia funcional es la suma de la
modularidad y de los conceptos de abstracción y
ocultación de información.
 La independencia funcional se consigue desarrollando
módulos con una función «determinante» y una
«aversión» a una interacción excesiva con otros
módulos.
Un módulo cohesivo lleva a cabo una sola tarea dentro de un
procedimiento de software, lo cual requiere poca interacción con los
procedimientos que se llevan a cabo en otras partes de un programa.
Dicho de manera sencilla, un módulo cohesivo deberá (idealmente)
hacer una sola cosa.
 La cohesión se puede representar como un «espectro». Siempre
debemos buscar la cohesión más alta, aunque la parte media del
espectro suele ser aceptable. La escala de cohesión no es lineal. Es
decir, la parte baja de la cohesión es mucho «peor» que el rango
medio, que es casi tan «bueno» como la parte alta de la escala.
Es una medida de interconexión entre módulos dentro de una estructura de
software. El acoplamiento depende de la complejidad de interconexión entre los
módulos, el punto donde se realiza una entrada o referencia a un módulo, y los
datos que pasan a través de la interfaz.
 En el diseño del software, intentamos conseguir el acoplamiento más bajo
posible. Una conectividad sencilla entre los módulos da como resultado un
software más fácil de entender y menos propenso a tener un «efecto ola»
[STE75] causado cuando ocurren errores en un lugar y se propagan por el
sistema.
 El acoplamiento es una indicación cualitativa del grado de conexión de un
módulo con otros y con el mundo exterior.

Más contenido relacionado

DOC
Diseno Software
PPT
Proceso de diseño
PPTX
DiseñO Del Software E IngenieríA Del Software
PDF
Diseño de Software
 
PPT
Diseño del software
PPT
Conceptos de diseño
PPSX
Conceptos y principios de diseño
PDF
10.el diseño en el nivel de componentes
Diseno Software
Proceso de diseño
DiseñO Del Software E IngenieríA Del Software
Diseño de Software
 
Diseño del software
Conceptos de diseño
Conceptos y principios de diseño
10.el diseño en el nivel de componentes

La actualidad más candente (20)

PPTX
Fundamentos del diseño de software
PDF
8.conceptos de diseño
PDF
Principios diseño del software
PPSX
Proyecto de software
PDF
Conceptos de diseño de software
PPT
Documentación del diseño
PPTX
Diseño de Software
PPTX
Arquitectura del software
PPTX
Arquitectura Basada En Componentes
PPTX
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
PPSX
3 1 mde mda
PPT
PDF
Arquitecturas de Software
PPTX
Proyecto de Software y Estimacion de Coste
PDF
Diseño estructurado y las técnicas que lo caracterizan
PPTX
presentacion de software y estimacion de doste
PPTX
PROYECTOS DE SOFTWARE Y COSTOS
PPTX
Proyecto de Software y Estimacion de Costo
PDF
Arquitectura De Software Para Dummies
PDF
Arquitecturas de software - Parte 1
Fundamentos del diseño de software
8.conceptos de diseño
Principios diseño del software
Proyecto de software
Conceptos de diseño de software
Documentación del diseño
Diseño de Software
Arquitectura del software
Arquitectura Basada En Componentes
METODOLOGÍA PARA EL DISEÑO DE SOFTWARE
3 1 mde mda
Arquitecturas de Software
Proyecto de Software y Estimacion de Coste
Diseño estructurado y las técnicas que lo caracterizan
presentacion de software y estimacion de doste
PROYECTOS DE SOFTWARE Y COSTOS
Proyecto de Software y Estimacion de Costo
Arquitectura De Software Para Dummies
Arquitecturas de software - Parte 1
Publicidad

Destacado (19)

PDF
Arquitectura de software
PDF
Arquitectura de Software
PPTX
Arquitectura software
PPTX
Diseño de-la-arquitectura-de-software
PPTX
Gestion De Proyecto De Desarrollo De Software
PPT
Fundamentos de la arquitectura de software
PDF
Principios de diseño de la arquitectura del software
PPT
Diseño arquitectónico
PPTX
2 2 estilos arquitectonicos
PPTX
Arquitectura de software
PDF
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
PDF
Arquitecturas de software - Parte 2
PPTX
Proceso del diseño arquitectónico
PPTX
El proceso de diseño arquitectonico
PPTX
Estilos y tendencias del diseño arquitectonico
PDF
Proceso metodológico del diseño arquitectónico
DOCX
¿Qué es la arquitectura de software?
PPT
Tema corriente alterna
Arquitectura de software
Arquitectura de Software
Arquitectura software
Diseño de-la-arquitectura-de-software
Gestion De Proyecto De Desarrollo De Software
Fundamentos de la arquitectura de software
Principios de diseño de la arquitectura del software
Diseño arquitectónico
2 2 estilos arquitectonicos
Arquitectura de software
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
Arquitecturas de software - Parte 2
Proceso del diseño arquitectónico
El proceso de diseño arquitectonico
Estilos y tendencias del diseño arquitectonico
Proceso metodológico del diseño arquitectónico
¿Qué es la arquitectura de software?
Tema corriente alterna
Publicidad

Similar a Software exposicion (20)

PPTX
presentacion hebelyn
PPTX
Fundamentos Básicos para el Diseño del Software - Sistemas II
PPTX
Fundamentos del software
PPTX
Fundamentos del diseno de software jesus marcano
PPTX
Diseño de software
PPTX
Fundamentos del diseño de software
PPTX
Presentación Fundamentos Básicos del Diseño de Software Pedro Luces
PPTX
FASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptx
PPTX
Actividad remedial_Maria_Albarran
PPTX
Fundamentos de Diseño - Grupo Delta
PPTX
Proyecto de Software y Coste
PPTX
Presentacion de Software y Estimacion de Coste
PDF
Fundamentos basicos del diseño de software
PDF
Apuntes ing-sof-unidad-4-1-2015
PDF
Arquitectura de software
PPTX
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
PPTX
Fundamentos para el diseño de software
PPTX
Fundamentos, Garantías y Técnicas en el diseño de software
PPTX
Presentacion
PPTX
Fundamentos básicos para el diseño de software
presentacion hebelyn
Fundamentos Básicos para el Diseño del Software - Sistemas II
Fundamentos del software
Fundamentos del diseno de software jesus marcano
Diseño de software
Fundamentos del diseño de software
Presentación Fundamentos Básicos del Diseño de Software Pedro Luces
FASE DE DISEÑO-C3 ING DEL SOFTWARE1.pptx
Actividad remedial_Maria_Albarran
Fundamentos de Diseño - Grupo Delta
Proyecto de Software y Coste
Presentacion de Software y Estimacion de Coste
Fundamentos basicos del diseño de software
Apuntes ing-sof-unidad-4-1-2015
Arquitectura de software
PRESENTACION: PROYECTO DE SOFTWARE & ESTIMACION DE COSTE
Fundamentos para el diseño de software
Fundamentos, Garantías y Técnicas en el diseño de software
Presentacion
Fundamentos básicos para el diseño de software

Software exposicion

  • 2.  El objetivo de los diseñadores es producir un modelo o representación de una entidad que se será construida a posteriori. Belady describe el proceso mediante el cual se desarrolla el modelo de diseño.  En cualquier proceso de diseño existen dos fases importantes: la diversificación y la convergencia. La diversificación es la adquisición de un repertorio de alternativas, de un material primitivo de diseño: componentes, soluciones de componentes y conocimiento, todo dentro de catálogos, de libros de texto y en la mente. Durante la convergencia, el diseñador elige y combina los elementos adecuados y extraídos de este repertorio para satisfacer los objetivos del diseño, de la misma manera a como se establece en el documento de los requisitos, y de la manera en que se acordó con el cliente. La segunda fase es la eliminación gradual de cualquier configuración de componentes excepto de una en particular, y de aquí la creación del producto final.
  • 3.  El diseño del software se encuentra en el núcleo técnico de la ingeniería del software y se aplica independientemente del modelo de diseño de software que se utilice. Una vez que se analizan y especifican los requisitos del software, el diseño del software es la primera de las tres actividades técnicas -diseño, generación de código y pruebas- que se requieren para construir y verificar el software. Cada actividad transforma la información de manera que dé lugar por último a un software de computadora validado.
  • 5. Los requisitos del software, manifestados por los modelos de datos funcionales y de comportamiento, alimentan la tarea del diseño. Mediante uno de los muchos métodos de diseño (que se abarcarán en capítulos posteriores) la tarea de diseño produce un diseño de datos, un diseño arquitectónico, un diseño de interfaz y un diseño de componentes.
  • 6. Transforma el modelo del dominio de información que se crea durante el análisis en las estructuras de datos que se necesitarán para implementar el software. Los objetos de datos y las relaciones definidas en el diagrama relación entidad y el contenido de datos detallado que se representa en el diccionario de datos proporcionan la base de la actividad del diseño de datos.
  • 7.  Define la relación entre los elementos estructurales 'principales del software, los patrones de diseño que se pueden utilizar para lograr los requisitos que se han definido para el sistema, y las restricciones que afectan a la manera en que se pueden aplicar los patrones de diseño arquitectónicos [SHA96]. La representación del diseño arquitectónico -el marco de trabajo de un sistema basado en computadora- puede derivarse de la especificación del sistema, del modelo de análisis y de la interacción del subsistema definido dentro del modelo de análisis.
  • 8.  Describe la manera de comunicarse el software dentro de sí mismo, con sistemas que interoperan dentro de él y con las personas que lo utilizan. Una interfaz implica un flujo de información (por ejemplo, datos y/o control) y un tipo específico de comportamiento. Por tanto, los diagramas de flujo de control y de datos proporcionan gran parte de la información que se requiere para el diseño de la interfaz.
  • 9.  Transforma los elementos estructurales de la arquitectura del software en una descripción procedimental de los componentes del software. La información que se obtiene de EP, EC y de DTE sirve como base para el diseño de los componentes.  La importancia del diseño del software se puede describir con una sola palabra -calidad-. El diseño es el lugar en donde se fomentará la calidad en la ingeniería del software.
  • 10. A lo largo de todo el proceso del diseño, la calidad de la evolución del diseño se evalúa con una serie de revisiones técnicas formales o con las revisiones de diseño sugiere tres características que sirven como guía para la evaluación de un buen diseño:
  • 11. El diseño deberá implementar todos los requisitos explícitos del modelo de análisis, y deberán ajustarse a todos los requisitos implícitos que desea el cliente. El diseño deberá ser una guía legible y comprensible para aquellos que generan código y para aquellos que comprueban y consecuentemente, dan soporte al software. el diseño deberá proporcionar una imagen completa del software, enfrentándose a los dominios de comportamiento, funcionales y de datos desde una perspectiva de implementación.
  • 12. Es un proceso continuo que ha abarcado las últimas cuatro décadas. El primer trabajo de diseño se concentraba en criterios para el desarrollo de programas modulares y métodos para refinar las estructuras del software de manera descendente. Independientemente del modelo de diseño que se utilice, un ingeniero del software deberá aplicar un conjunto de principios fundamentales y conceptos básicos para el diseño a nivel de componentes, de interfaz, arquitectónico y de datos. Estos principios y conceptos se estudian en la sección siguiente.
  • 13. El proceso de diseño es una secuencia de pasos que hacen posible que el diseñador describa todas los aspectos del software que se va construir. Sin embargo, es importante destacar que el proceso de diseño simplemente no es un recetario. Un conocimiento creativo, experiencia en el tema, un sentido de lo que hace que un software sea bueno, y un compromiso general con la calidad son factores críticos de éxito para un diseño competente.  El modelo de diseño es el equivalente a los planes de un arquitecto para una casa. Comienza representando la totalidad de todo lo que se va a construir (por ejemplo, una representación en tres dimensiones de la casa) y refina lentamente lo que va a proporcionar la guía para construir cada detalle (por ejemplo, el diseño de fontanería). De manera similar, el modelo de diseño que se crea para el software proporciona diversas visiones diferentes de software de computadora.
  • 14. Los principios básicos de diseño hacen posible que el ingeniero del software navegue por el proceso de diseño. Davis [DAV95] sugiere un conjunto' de principios para el diseño del software, los cuales han sido adaptados y ampliados en la lista siguiente:
  • 15.  El diseño deberá poderse rastrear hasta el modelo de análisis.  El diseño deberá «minimizar la distancia intelectual » [DAV95] entre el software y el problema como si de la misma vida real se tratara.  El diseño deberá presentar uniformidad e integración.  El diseño deberá estructurarse para admitir cambios.  El diseño deberá estructurarse para degradarse poco  a poco, incluso cuando se enfrenta con datos, sucesos  o condiciones de operación aberrantes.
  • 16.  Durante las últimas cuatro décadas se ha experimentado la evolución de un conjunto de conceptos fundamentales de diseño de software. Aunque el grado de interés en cada concepto ha variado con los años, todos han experimentado el paso del tiempo. Cada uno de ellos proporcionarán la base de donde el diseñador podrá aplicar los métodos de diseño más sofisticados.
  • 17. En el nivel más alto de abstracción, la solución se pone como una medida extensa empleando el lenguaje del entorno del problema. En niveles inferiores de abstracción, se toma una orientación más procedimental.
  • 18. El refinamiento paso a paso es una estrategia de diseño descendente propuesta originalmente por Niklaus Wirth [WIR71]. El desarrollo de un programa se realiza refinando sucesivamente los niveles de detalle procedimentales.
  • 19. Se ha afirmado que <<lam odularidad es el Único atributo del software que permite gestionar un programa intelectualmente» [MYE78]. El software monolítico (es decir, un programa grande formado por un Único módulo)no puede ser entendido fácilmente por el lector.
  • 20.  La arquitectura del software alude a la «estructura global del software y a las formas en que la estructura proporciona la integridad conceptual de un sistema» [SHA95a].  Un objetivo del diseño del software es derivar una representación arquitectónica de un sistema. Esta representación sirve como marco de trabajo desde donde se llevan a cabo actividades de diseño más detalladas. Un conjunto de patrones arquitectónicos permiten que el ingeniero del software reutilice los conceptos a nivel de diseño.
  • 21. Denominada también estructura de programa, representa la organización de los componentes programa (módulos) e implica una jerarquía de control. No representa los aspectos procedimentales del software, ni se puede aplicar necesariamente a todos los estilos arquitectónicos.
  • 22. FIGURA. Terminologías de estructura para un estilo arquitectónico de llamada y retorno.
  • 23. proporciona software más fácil de probar conduce a un software más fácil de mantener propaga menos efectos secundarios proporciona software más fácil de ampliar
  • 24. La estructura de datos es una representación de la relación lógica entre elementos individuales de datos. Como la estructura de la información afectará invariablemente al diseño procedimental final, la estructura de datos es tan importante como la estructura de programa para la representación de la arquitectura del software.
  • 25. (a) División horizontalMódulos de toma de decisione s IMódulos (b) División Vertical FIGURA. Partición estructural.
  • 26. Los conceptos fundamentales de diseño descritos en la sección anterior sirven para incentivar diseños modulares. De hecho, la modularidad se ha convertido en un enfoque aceptado en todas las disciRlinas de ingeniería.
  • 27. El concepto de independencia funcional es la suma de la modularidad y de los conceptos de abstracción y ocultación de información.  La independencia funcional se consigue desarrollando módulos con una función «determinante» y una «aversión» a una interacción excesiva con otros módulos.
  • 28. Un módulo cohesivo lleva a cabo una sola tarea dentro de un procedimiento de software, lo cual requiere poca interacción con los procedimientos que se llevan a cabo en otras partes de un programa. Dicho de manera sencilla, un módulo cohesivo deberá (idealmente) hacer una sola cosa.  La cohesión se puede representar como un «espectro». Siempre debemos buscar la cohesión más alta, aunque la parte media del espectro suele ser aceptable. La escala de cohesión no es lineal. Es decir, la parte baja de la cohesión es mucho «peor» que el rango medio, que es casi tan «bueno» como la parte alta de la escala.
  • 29. Es una medida de interconexión entre módulos dentro de una estructura de software. El acoplamiento depende de la complejidad de interconexión entre los módulos, el punto donde se realiza una entrada o referencia a un módulo, y los datos que pasan a través de la interfaz.  En el diseño del software, intentamos conseguir el acoplamiento más bajo posible. Una conectividad sencilla entre los módulos da como resultado un software más fácil de entender y menos propenso a tener un «efecto ola» [STE75] causado cuando ocurren errores en un lugar y se propagan por el sistema.  El acoplamiento es una indicación cualitativa del grado de conexión de un módulo con otros y con el mundo exterior.