Está en la página 1de 40

DESARROLLO DE SOFTWARE

ANÁLISIS Y DISEÑO DE SISTEMAS

ING. XIMENA GUAMÁN.


2.7. ARQUITECTURA DE HARDWARE

Es el conjunto de dispositivos físicos que hacen posible el


funcionamiento de un computador, éste abarca todos los
componentes eléctricos y mecánicos que permiten llevar a
cabo en una computadora el almacenamiento y procesamiento
de información.
ARQUITECTURA DE SOFTWARE

“LA ARQUITECTURA DEL SOFTWARE DE UN PROGRAMA O SISTEMA DE CÓMPUTO ES LA ESTRUCTURA


O ESTRUCTURAS DEL SISTEMA, LO QUE COMPRENDE A LOS COMPONENTES DEL SOFTWARE, SUS
PROPIEDADES EXTERNAS VISIBLES Y LAS RELACIONES ENTRE ELLOS.” BASS, CLEMENTS Y KAZMAN.

“LA ARQUITECTURA DE SOFTWARE ES A GRANDES RASGOS, UNA VISTA DEL SISTEMA QUE
INCLUYE LOS COMPONENTES PRINCIPALES DEL MISMO, LA CONDUCTA DE ESOS COMPONENTES
SEGÚN SE LA PERCIBE DESDE EL RESTO DEL SISTEMA Y LAS FORMAS EN QUE LOS COMPONENTES
INTERACTÚAN Y SE COORDINAN PARA ALCANZAR LA MISIÓN DEL SISTEMA.” CLEMENTS.
GÉNERO ARQUITECTÓNICO 1/2

“Programar sin una arquitectura en mente es como explorar una


caverna sólo con una linterna: no sabes dónde has estado, a dónde vas
ni dónde estas” Danny Tharpe.
GÉNERO ARQUITECTÓNICO 2/2

• El Género Arquitectónico dicta el enfoque específico para la


estructura que deba construirse.

• Especifican una categoría dentro del dominio general del software.


1. INTELIGENCIA ARTIFICIAL 1/2

Sistema que simula o incrementa la cognición humana, su locomoción u otros


procesos orgánicos.

Cognición: Es la habilidad que tenemos para asimilar y procesar los datos que nos
llegan de diferentes vías (percepción, experiencia, creencias…) para convertirlos
en conocimiento.
2. COMERCIALES Y NO LUCRATIVOS

Sistemas que son fundamentales para la operación de una empresa de


negocios.
3. COMUNICACIONES

Sistemas que proveen la infraestructura para transferir y manejar datos,


para conectar usuarios de éstos o para presentar datos en la frontera de
una infraestructura.
4. CONTENIDO DE AUTOR

Sistemas que se emplean para crear o manipular artefactos de texto o


multimedios.
5. DISPOSITIVOS

Sistemas que interactúan con el mundo físico a fin de brindar


algún servicio puntual a un individuo.
6. ENTRETENIMIENTO Y DEPORTES

Sistemas que administran eventos públicos o que proveen una


experiencia grupal de entretenimiento.
7. FINANCIEROS

Sistemas que proporcionan la infraestructura para transferir y manejar


dinero y otros títulos.
8. JUEGOS

Sistemas que dan una experiencia de entretenimiento a


individuos o grupos.
9. GOBIERNO

Sistemas que dan apoyo a la conducción y operaciones de una


institución política local, estatal, federal, global o de otro tipo.
10. INDUSTRIAL

Sistemas que simulan o controlan procesos físicos.


11. LEGAL

Sistemas que dan apoyo a la industria jurídica.


12. MÉDICOS

Sistemas que diagnostican, curan o contribuyen a la


investigación médica.
13. MILITARES

Sistemas de consulta, comunicaciones, comando, control e


inteligencia, así como de armas ofensivas y defensivas.
14. SISTEMAS OPERATIVOS

Sistemas que están inmediatamente instalados en el hardware


para dar servicios de software básico.
16. CIENTÍFICOS

Sistemas que se emplean para hacer investigación científica y aplicada.


17. HERRAMIENTAS

Sistemas que se utilizan para desarrollar otros sistemas.


18. TRANSPORTE

Sistemas que controlan vehículos acuáticos, terrestres, aéreos o


espaciales.
CONCLUSIÓN

Cada género representa un desafío único.


Ejemplo: Considere la arquitectura de un sistema de juego.
Esta clase de sistemas, en ocasiones llamados aplicaciones interactivas, requieren
el cómputo de algoritmos intensivos, gráficas avanzadas en computadora, fuentes
de datos continuas en multimedios, interactividad en tiempo real a través de
dispositivos de entrada convencionales y no convencionales, y otras
preocupaciones especializadas.
ESTRUCTURAS ARQUITECTÓNICAS
CANÓNICAS

En esencia, la arquitectura del software representa una estructura en la


que cierta colección de entidades (con frecuencia llamados
componentes) está conectada por un conjunto de relaciones definidas
(usualmente llamadas conectores). Tanto las componentes como los
conectores están asociados con un conjunto de propiedades que
permiten que el diseñador diferencie los tipos de componentes y
conectores que pueden usarse.
EJEMPLO
DISEÑO ARQUITECTÓNICO

• Concepción original (proceso) de la arquitectura software de un


sistema a fin de construirlo con la máxima calidad y dentro de un
tiempo determinado.
• Se recomienda comenzar con un nivel general y refinar (detallar)
sucesivamente hasta llegar a un nivel de componente.
¿QUÉ CLASES DE ESTRUCTURAS SE UTILIZAN
PARA DESCRIBIR UNA ARQUITECTURA?

Se sugieren cinco estructuras canónicas o fundamentales:


1. Estructura Funcional.
2. Estructura de implementación.
3. Estructura de Concurrencia.
4. Estructura física.
5. Estructura de Desarrollo.
ESTRUCTURA FUNCIONAL

• Los componentes representan entidades de función o procesamiento.


Los conectores representan interfaces que proveen la capacidad de
“usar” o “pasar datos a” a un componente. Las propiedades describen
la naturaleza de los componentes y la organización de las interfaces.
EJEMPLO
ESTRUCTURA DE IMPLEMENTACIÓN

• “Los componentes son paquetes, clases, objetos, procedimientos,


funciones, métodos, etc., Que son vehículos para empacar funciones
en varios niveles de abstracción”. Los conectores incluyen la
capacidad de pasar datos y control, compartir datos, “usar” y “ser una
instancia de”. Las propiedades se centran en las características de la
calidad (por ejemplo, facilidad de recibir mantenimiento, ser
reutilizables, etc.) Que surgen cuando se implementa la estructura.
EJEMPLO
DIAGRAMA DE COMPONENTES
ESTRUCTURA DE CONCURRENCIA 1/2

• Una forma de ve la concurrencia es como un conjunto de


actividades que se desarrollan de forma simultánea.
ESTRUCTURA DE CONCURRENCIA 2/2

• Los componentes representan “unidades de concurrencia” que están


organizadas como tareas o trayectorias paralelas. “Las relaciones
[conectores] incluyen sincronizarse con, tiene mayor prioridad que,
envía-datos-a, no-corre-sin y no-corre-con. Las propiedades
relevantes para esta estructura incluyen prioridad, anticipación y
tiempo de ejecución”.
EJEMPLO
ESTRUCTURA FÍSICA

• Esta estructura es similar al modelo de despliegue desarrollado como


parte del diseño. Los componentes son el hardware físico en el que
reside el software. Los conectores son las interfaces entre los
componentes del hardware y las propiedades incluyen la capacidad,
ancho de banda y rendimiento, entre otros atributos.
EJEMPLO
DIAGRAMA DE DESPLIEGUE
ESTRUCTURA DE DESARROLLO

• Esta estructura define los componentes, productos del trabajo y otras fuentes de
información que se requieren a medida que avanza la ingeniería de software.
• Los conectores representan las relaciones entre los productos del trabajo; las
propiedades identifican las características de cada aspecto.
EJEMPLO
CONCLUSIÓN

• Cada una de la estructuras presentan un punto de vista de la


arquitectura del software y expone información que es útil para el
equipo de software a medida que realiza la modelación y
construcción.

También podría gustarte