Arquitectura de Software Unidad III

download Arquitectura de Software Unidad III

of 13

Transcript of Arquitectura de Software Unidad III

  • 8/10/2019 Arquitectura de Software Unidad III

    1/13

  • 8/10/2019 Arquitectura de Software Unidad III

    2/13

    3.1 DESCOMPOSICION MODULA

    Descomposicin modular.

    El principal objetivo de la descomposicin modula es de coproblemas difciles en problemas sencillos de tal manera seeficiente el desarrollo del sistema. La descomposicin moduen reutilizar cdigo, adems debido a esta descomposicines desarrollado con un fin especfico, de esta manera los fuprogramadores comprendern fcilmente la funcin de cad

    Un ejemplo de la descomposicin se puede observar en la f

  • 8/10/2019 Arquitectura de Software Unidad III

    3/13

    Figura1. Cabe resaltar los mdulos, que son la muestra de la demodular del primer modulo

    Nivel 3 dedescomposicin

    Nivel 2

    Nivel 1 de composicion

    Nivel 0 dedescomposicin

    Modulo

    Principal

    Modulo 1

    Modulo1.1

    Modulo1.2

    Modulo 2

    Modulo2.1

    Modulo2.2

    Modulo2.2.1

    Modulo2.2.2

    Modulo 3

    Modulo3.1

    Modulo3.1.1

  • 8/10/2019 Arquitectura de Software Unidad III

    4/13

    Las caractersticas de los mdulos son:

    Tamao pequeo

    Independencia modular

    Abstraccin

    Encapsulamiento

    Mientras que los objetivos de la Descomposicin Modular son:

    Descomponer los problemas complejos en problemas ms sencillos

    Reutilizar el cdigo

    Facilitar la lectura de los programa

    El diseo modular propone dividir el sistema en partes diferenciadas y deinterfaces. Las ventajas seran: la claridad, reduccin de costos y reutiliza

  • 8/10/2019 Arquitectura de Software Unidad III

    5/13

    El diseo modular propone dividir el sistema en partes diferenciadas y definir sus interfaces.

    Sus ventajas: Claridad, reduccin de costos y re utilizacin.

    Los pasos a seguir son:

    1. Identificar los mdulos

    2. Describir cada mdulo

    3. Describir las relaciones entre mdulos

    Una descomposicin modular debe poseer ciertas cualidades mnimas para que se pueda considerar su

    1. Independencia funcional

    2. Acoplamiento

    3. Cohesin

    4. Comprensibilidad

    5. Adaptabilidad

  • 8/10/2019 Arquitectura de Software Unidad III

    6/13

  • 8/10/2019 Arquitectura de Software Unidad III

    7/13

  • 8/10/2019 Arquitectura de Software Unidad III

    8/13

    Identificacin, el nombre debe ser adecuado y descriptivo

    Documentacin, debe aclarar todos los detalles de diseo e implementacin quede manifiesto en el propio cdigo

    Adaptabilidad:

    La adaptacin de un sistema resulta ms difcil cuando no hay independencdecir, con alto acoplamiento y baja cohesin, y cuando el diseo es poco cofactores para facilitar la adaptabilidad:

    Previsin, es necesario prever que aspectos del sistema pueden ser susceptiblel futuro, y poner estos elementos en mdulos independientes, de manera quafecte al menor nmero de mdulos posibles

    Accesibilidad, debe resultar sencillo el acceso a los documentos de especificimplementacin para obtener un conocimiento suficiente del sistema antes dadaptacin

    Consistencia, despus de cualquier adaptacin se debe mantener la consisteincluidos los documentos afectados.

  • 8/10/2019 Arquitectura de Software Unidad III

    9/13

    DISEO DE SOFTWARE DE LAARQUITECTURA MULTIPROCESAD

    Este sistema consiste de varios procesos que pueden ejecutarse sobre procediferentes (aunque no es necesario), es muy comn en sistemas grandes de recolectan informacin, toman decisiones, con la afirmacin, y envan seaactuadores que modifican el entorno del sistema.

    El uso de mltiples procesadores mejora el rendimiento y adaptabilidad del sdistribucin de los procesos de los procesadores se puede predeterminar o pel control de un despachador que decide cuales procesos ubicar en cada sistemas de mltiples procesos no son necesariamente sistemas distribuidos. ms de un procesador, entonces se puede implementar la distribucin, perodel sistema no siempre consideran forzosamente cuestiones de distribucin m

    proceso de diseo.Un ejemplo para este tipo de sistemas es un modelo simplificado de un sistemtrfico. Un conjunto de sensores distribuidos recogen informacin sobre el fluprocesan localmente antes de enviarla a una sala de control. Los operadoredecisiones usando esta informacin y dan instrucciones a un proceso de coluces de trfico.

  • 8/10/2019 Arquitectura de Software Unidad III

    10/13

    Los sistemas de software compuestos de procesos mltiples no necesariamente son distribuidos. Si ms de un procesador est disponible, entonces se puede implementdistribucin, pero los diseadores del sistema no siempre consideran los puntos de ddurante el proceso de diseo. El enfoque de diseo para este tipo de sistema es el mpara los de Tiempo Real.

    http://2.bp.blogspot.com/-4HlKw7SC0Bo/UXh2GYXvMjI/AAAAAAAAAAQ/PKUGX_4NxNQ/s1600/semaforo.jpg
  • 8/10/2019 Arquitectura de Software Unidad III

    11/13

    Para el desarrollo de estos procesos se ocupan modelos de programacin concurrenparalela:

    Los objetivos de la programacin paralela, son:

    Reducir el tiempo de cmputo.

    Reducir la complejidad del algoritmo,

    Aprovechar al mximo la capacidad de las computadoras multiproceso.

    Existen diferentes tipos de programacin:

    Multihilo: El cual permite a una aplicacin realizar varias tareas concurrentemen

    Los distintos hilos que se ejecutan comparten una serie se recursos.

    Pase de mensaje:

    MPI ("Message Passing Interface") es un estndar que define la sintaxis y la semntlas funciones usada en programas que exploten la existencia de mltiples procesa

  • 8/10/2019 Arquitectura de Software Unidad III

    12/13

    http://4.bp.blogspot.com/-9tRAHawwWIk/UXh4gD77AhI/AAAAAAAAAAg/DipA-6OrW_A/s1600/Captura.JPG
  • 8/10/2019 Arquitectura de Software Unidad III

    13/13

    VENTAJAS:

    La ventaja de un sistema multiproceso reside en la operacin llamada cambio de contexto. Esta oquitar a un proceso de la CPU, ejecutar otro proceso y volver a colocar el primero sin que se entere

    Los hilos que se ejecutan comparten ciertos recursos como el espacio del mensaje, la cual permiteuna aplicacin que debe llevar a cabo distintas funciones simultneamente.

    Es econmica

    Las computadoras paralelas son inherentes escalables permitiendo actualizarlas para adecuarse a

    El uso de componentes comnmente disponibles, en grandes cantidades, permite ofrecer mayor re

    DESVENTAJAS: Puede ser limitante fsica, existen factores que limitan la velocidad mxima de un procesador inde

    econmico.

    Las barreras fsicas infranqueables tales como la velocidad de la luz, efectos al reducir el tamao.

    Problemas causados por fenmenos elctricos a pequeas escalas restringen la capacidad mximmultiprocesador.