Arquitectura de
software
POR ANDRÉS FELIPE MORA CASTRO DEL ADSI 143
¿Qué es la arquitectura de software?
para dar una explicación mas relevante acerca de este tema deberemos saber en
nuestro lenguaje la definición de estas palabras para asi derivar la respuesta a una
manera mas técnica y obviamente entendible
arquitectura: arte y técnica de diseñar, proyectar o da visión a lo que se quiere
crear
Software: conjunto de programas y rutinas que permiten aun sistema realizar
diferentes tareas
 Arquitectura de la aplicación de software es el proceso de definición de una
solución estructurada que cumple con todos los requisitos técnicos y
operativos, al tiempo que optimiza la calidad común atributos tales como el
rendimiento, la seguridad y capacidad de administración. Se trata de una serie
de decisiones basadas en una amplia gama de factores, y cada una de estas
decisiones pueden tener un impacto considerable en la calidad, rendimiento,
facilidad de mantenimiento, y en general el éxito de la aplicación.
¿Para que sirve o porque usarla?
 Al igual que cualquier otra estructura compleja, el software debe ser
construido sobre una base sólida. No considerar escenarios clave, en su
defecto a diseñar para los problemas comunes, o en su defecto para
apreciar las consecuencias a largo plazo de las decisiones clave puede
poner su aplicación en riesgo. Los riesgos expuestos por la mala
arquitectura incluyen software que es inestable, no es capaz de soportar
los requerimientos de negocios existentes o futuros, o es difícil de
implementar o gestionar en un entorno de producción.
Objetivo general
 Yo tomare la definición de una persona quien da concretamente la
explicación a esta pregunta
 "Arquitectura de software abarca el conjunto de decisiones importantes
sobre la organización de un sistema de software que incluye la selección
de la estructural elementos y sus interfaces por el cual el sistema está
compuesto; comportamiento como especificado en la colaboración entre
dichos elementos; composición de éstos estructural y elementos de
comportamiento en subsistemas más grandes; y un estilo arquitectónico
que guía esta organización. Arquitectura de software también incluye
funcionalidad, usabilidad, flexibilidad, rendimiento, reutilización,
comprensibilidad, económica y limitaciones tecnológicas, compensaciones
y preocupaciones estéticas”.
(Shaw y Garlan 1996)
Objetivos específicos
 Definir los módulos principales
 Definir las responsabilidades que tendrá cada uno de estos módulos
 Definir la interacción que existirá entre dichos módulos:
 Control y flujo de datos
 Secuenciación de la información
 Protocolos de interacción y comunicación
 Ubicación en el hardware
Capas básicas de la arquitectura
de software
Una capa significa lo que cubre o compone algo en su defecto un sistema
para este caso en el diseño y la implantación de los requerimientos del cliente
se divide en 3 etapas que obviamente podrían arraigar mas pero se
simplifican en estas:
 Capa de presentación
 Capa de negocio
 Capa de datos
¿Qué es el Sistema modular ?
 El diseño modular (la modularidad en el diseño) es el diseño basado en la
modulación reticular de espacios que permitan optimizar el tiempo de
construcción y debido a que son transportables, desarmables y
reorganizables permiten impulsar múltiples funcionalidades y su
reutilización al generar un nuevo uso diferente al que fueron fabricados.
¿como se trabaja la descomposición
Modular?
 es el proceso de descomposición de un sistema en un conjunto de
elementos con un índice bajo acoplamiento (independientes) y alto índice
de cohesión (con significado propio).
 Consiste en descomponer el problema a resolver en módulos o tareas más
simples. Cada tarea representa una actividad completa y se codifica de
manera independiente. Facilita el diseño descendente del problema,
centrándonos cada vez en la resolución de subproblemas de magnitud
inferior.
Ej: de un diagrama modular
¿Un cliente servidor?
¿Qué es un cliente servidor según
arquitectura de software?
 La arquitectura cliente-servidor es un modelo de diseño de software en el
que tareas se reparten entre los proveedores de recursos o servicios,
llamados servidores, y los demandantes, llamados clientes. Un cliente
realiza peticiones a otro programa, el servidor, quien le da respuesta. Esta
idea también se puede aplicar a programas que se ejecutan sobre una sola
computadora, aunque es más ventajosa en un sistema
operativo multiusuariodistribuido a través de una red de
computadoras.Algunos ejemplos de aplicaciones computacionales que
usen el modelo cliente-servidor son el Correo electrónico, un Servidor de
impresión y la World Wide Web

Arquitectura de software

  • 1.
    Arquitectura de software POR ANDRÉSFELIPE MORA CASTRO DEL ADSI 143
  • 2.
    ¿Qué es laarquitectura de software? para dar una explicación mas relevante acerca de este tema deberemos saber en nuestro lenguaje la definición de estas palabras para asi derivar la respuesta a una manera mas técnica y obviamente entendible arquitectura: arte y técnica de diseñar, proyectar o da visión a lo que se quiere crear Software: conjunto de programas y rutinas que permiten aun sistema realizar diferentes tareas  Arquitectura de la aplicación de software es el proceso de definición de una solución estructurada que cumple con todos los requisitos técnicos y operativos, al tiempo que optimiza la calidad común atributos tales como el rendimiento, la seguridad y capacidad de administración. Se trata de una serie de decisiones basadas en una amplia gama de factores, y cada una de estas decisiones pueden tener un impacto considerable en la calidad, rendimiento, facilidad de mantenimiento, y en general el éxito de la aplicación.
  • 3.
    ¿Para que sirveo porque usarla?  Al igual que cualquier otra estructura compleja, el software debe ser construido sobre una base sólida. No considerar escenarios clave, en su defecto a diseñar para los problemas comunes, o en su defecto para apreciar las consecuencias a largo plazo de las decisiones clave puede poner su aplicación en riesgo. Los riesgos expuestos por la mala arquitectura incluyen software que es inestable, no es capaz de soportar los requerimientos de negocios existentes o futuros, o es difícil de implementar o gestionar en un entorno de producción.
  • 4.
    Objetivo general  Yotomare la definición de una persona quien da concretamente la explicación a esta pregunta  "Arquitectura de software abarca el conjunto de decisiones importantes sobre la organización de un sistema de software que incluye la selección de la estructural elementos y sus interfaces por el cual el sistema está compuesto; comportamiento como especificado en la colaboración entre dichos elementos; composición de éstos estructural y elementos de comportamiento en subsistemas más grandes; y un estilo arquitectónico que guía esta organización. Arquitectura de software también incluye funcionalidad, usabilidad, flexibilidad, rendimiento, reutilización, comprensibilidad, económica y limitaciones tecnológicas, compensaciones y preocupaciones estéticas”. (Shaw y Garlan 1996)
  • 5.
    Objetivos específicos  Definirlos módulos principales  Definir las responsabilidades que tendrá cada uno de estos módulos  Definir la interacción que existirá entre dichos módulos:  Control y flujo de datos  Secuenciación de la información  Protocolos de interacción y comunicación  Ubicación en el hardware
  • 6.
    Capas básicas dela arquitectura de software Una capa significa lo que cubre o compone algo en su defecto un sistema para este caso en el diseño y la implantación de los requerimientos del cliente se divide en 3 etapas que obviamente podrían arraigar mas pero se simplifican en estas:  Capa de presentación  Capa de negocio  Capa de datos
  • 7.
    ¿Qué es elSistema modular ?  El diseño modular (la modularidad en el diseño) es el diseño basado en la modulación reticular de espacios que permitan optimizar el tiempo de construcción y debido a que son transportables, desarmables y reorganizables permiten impulsar múltiples funcionalidades y su reutilización al generar un nuevo uso diferente al que fueron fabricados.
  • 8.
    ¿como se trabajala descomposición Modular?  es el proceso de descomposición de un sistema en un conjunto de elementos con un índice bajo acoplamiento (independientes) y alto índice de cohesión (con significado propio).  Consiste en descomponer el problema a resolver en módulos o tareas más simples. Cada tarea representa una actividad completa y se codifica de manera independiente. Facilita el diseño descendente del problema, centrándonos cada vez en la resolución de subproblemas de magnitud inferior.
  • 9.
    Ej: de undiagrama modular
  • 10.
  • 11.
    ¿Qué es uncliente servidor según arquitectura de software?  La arquitectura cliente-servidor es un modelo de diseño de software en el que tareas se reparten entre los proveedores de recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un cliente realiza peticiones a otro programa, el servidor, quien le da respuesta. Esta idea también se puede aplicar a programas que se ejecutan sobre una sola computadora, aunque es más ventajosa en un sistema operativo multiusuariodistribuido a través de una red de computadoras.Algunos ejemplos de aplicaciones computacionales que usen el modelo cliente-servidor son el Correo electrónico, un Servidor de impresión y la World Wide Web