SlideShare una empresa de Scribd logo

Principios de diseño de la arquitectura del software

Introducción a la Arquitectura de Software. Géneros Arquitectónicas Estilos Arquitectónicos. Diseño Arquitectónico. Evaluación de los diseños alternativos para la Arquitectura.

1 de 80
Descargar para leer sin conexión
Principios de Diseño
de la Arquitectura del Software
IDS5501
V.1.0
@josebovet
2
Clase anterior
Principios Diseño del Software.
• Introducción al diseño de Software.
• Diseño en el contexto de la ingeniería de software.
• El PROCESO,CONCEPTOS, y el MODELO del diseño.
3
Objetivos de las clase
• Introducción a la Arquitectura de Software.
• Géneros Arquitectónicas
• Estilos Arquitectónicos.
• Diseño Arquitectónico.
• Evaluación de los diseños alternativos para la
Arquitectura.
• Mapeo de la arquitectura con el uso del flujo de
datos.
Principios del diseño de Arquitectura
4
Introducción
¿Qué es?
6
¿Qué es?
El diseño arquitectónico representa la estructura de los datos y de los
componentes del programa que se requieren para construir un sistema basado
en computadora.

Recomendados

Diseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-softwareDiseño de-la-arquitectura-de-software
Diseño de-la-arquitectura-de-softwareAndresRealp1
 
2 1 vistas arquitectonicas
2 1 vistas arquitectonicas2 1 vistas arquitectonicas
2 1 vistas arquitectonicaslandeta_p
 
Diseno de la arquitectura
Diseno de la arquitecturaDiseno de la arquitectura
Diseno de la arquitecturaFatima Cham
 
Estilos y Patrones Aplicables a la Arquitectura de Software
Estilos y Patrones Aplicables a la Arquitectura de SoftwareEstilos y Patrones Aplicables a la Arquitectura de Software
Estilos y Patrones Aplicables a la Arquitectura de SoftwareDiego Plascencia Lara
 

Más contenido relacionado

La actualidad más candente

Técnicas para la Obtención de Requerimientos
Técnicas para la Obtención de RequerimientosTécnicas para la Obtención de Requerimientos
Técnicas para la Obtención de RequerimientosJuan Carlos Olivares Rojas
 
Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareRoberth Loaiza
 
2 2 estilos arquitectonicos
2 2 estilos arquitectonicos2 2 estilos arquitectonicos
2 2 estilos arquitectonicoslandeta_p
 
Tema N° 14 Especificación de Requisitos del Software
Tema N° 14 Especificación de Requisitos del SoftwareTema N° 14 Especificación de Requisitos del Software
Tema N° 14 Especificación de Requisitos del SoftwareSaraEAlcntaraR
 
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREDISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREjose_rob
 
Tecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto softwareTecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto softwareJennifer Andrea Cano Guevara
 
6.modelado de los requerimientos escenarios y clases
6.modelado de los requerimientos  escenarios y clases6.modelado de los requerimientos  escenarios y clases
6.modelado de los requerimientos escenarios y clasesRamiro Estigarribia Canese
 
Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1Marta Silvia Tabares
 
Arquitecturas de software exposicion
Arquitecturas de software   exposicionArquitecturas de software   exposicion
Arquitecturas de software exposicionjuca piro
 
2.2 relación de cmm con psp y tsp
2.2 relación de cmm con psp  y tsp2.2 relación de cmm con psp  y tsp
2.2 relación de cmm con psp y tspeeelllkkk
 
Gestión del riesgo de software
Gestión del riesgo de software Gestión del riesgo de software
Gestión del riesgo de software jose_macias
 

La actualidad más candente (20)

Diagramas componentes
Diagramas componentesDiagramas componentes
Diagramas componentes
 
Técnicas para la Obtención de Requerimientos
Técnicas para la Obtención de RequerimientosTécnicas para la Obtención de Requerimientos
Técnicas para la Obtención de Requerimientos
 
Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de Software
 
Arquitectura de aplicaciones
Arquitectura de aplicacionesArquitectura de aplicaciones
Arquitectura de aplicaciones
 
2 2 estilos arquitectonicos
2 2 estilos arquitectonicos2 2 estilos arquitectonicos
2 2 estilos arquitectonicos
 
Tema N° 14 Especificación de Requisitos del Software
Tema N° 14 Especificación de Requisitos del SoftwareTema N° 14 Especificación de Requisitos del Software
Tema N° 14 Especificación de Requisitos del Software
 
Arquitectura del software
Arquitectura del softwareArquitectura del software
Arquitectura del software
 
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWAREDISEÑO DE LA ARQUITECTURA DEL SOFTWARE
DISEÑO DE LA ARQUITECTURA DEL SOFTWARE
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónico
 
Arquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidosArquitectura de sistemas distribuidos
Arquitectura de sistemas distribuidos
 
Tecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto softwareTecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto software
 
Estilos Arquitectonicos-Capas
Estilos Arquitectonicos-CapasEstilos Arquitectonicos-Capas
Estilos Arquitectonicos-Capas
 
Ingenieria de Software
Ingenieria de SoftwareIngenieria de Software
Ingenieria de Software
 
Diagrama de dominio armando
Diagrama de dominio armandoDiagrama de dominio armando
Diagrama de dominio armando
 
6.modelado de los requerimientos escenarios y clases
6.modelado de los requerimientos  escenarios y clases6.modelado de los requerimientos  escenarios y clases
6.modelado de los requerimientos escenarios y clases
 
Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1Arquitecturas de software - Parte 1
Arquitecturas de software - Parte 1
 
Patrones diseño y arquitectura
Patrones diseño y arquitecturaPatrones diseño y arquitectura
Patrones diseño y arquitectura
 
Arquitecturas de software exposicion
Arquitecturas de software   exposicionArquitecturas de software   exposicion
Arquitecturas de software exposicion
 
2.2 relación de cmm con psp y tsp
2.2 relación de cmm con psp  y tsp2.2 relación de cmm con psp  y tsp
2.2 relación de cmm con psp y tsp
 
Gestión del riesgo de software
Gestión del riesgo de software Gestión del riesgo de software
Gestión del riesgo de software
 

Similar a Principios de diseño de la arquitectura del software

1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-IntroducciónLuis Fernando Aguas Bucheli
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónicoDamián Rotta
 
Ingenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareIngenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareJosé Antonio Sandoval Acosta
 
Diseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalezDiseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalezGabrielGonzalez463
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónicolandeta_p
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónicolandeta_p
 
Arquitectura sistema
Arquitectura sistemaArquitectura sistema
Arquitectura sistemaOscar Eduardo
 
Arquitectura de software
Arquitectura de softwareArquitectura de software
Arquitectura de softwareLiliana Pacheco
 
Eje Tematico Uno Grupo Uno
Eje Tematico Uno   Grupo UnoEje Tematico Uno   Grupo Uno
Eje Tematico Uno Grupo UnoJohnGaviria1
 
Actividad remedial_Maria_Albarran
Actividad remedial_Maria_AlbarranActividad remedial_Maria_Albarran
Actividad remedial_Maria_AlbarranMarijoalbarranb
 

Similar a Principios de diseño de la arquitectura del software (20)

1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
1-Unidad 1: Arquitectura de Diseño-1.1 MVC-Introducción
 
Principios diseño del software
Principios diseño del software Principios diseño del software
Principios diseño del software
 
1-Unidad 1. Arquitectura de Diseño
1-Unidad 1. Arquitectura de Diseño1-Unidad 1. Arquitectura de Diseño
1-Unidad 1. Arquitectura de Diseño
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónico
 
Ingenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de softwareIngenieria de software - Unidad 3 arquitecturas de software
Ingenieria de software - Unidad 3 arquitecturas de software
 
Diseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalezDiseno de software_-_gabriel_gonzalez
Diseno de software_-_gabriel_gonzalez
 
Patrones
PatronesPatrones
Patrones
 
Diseño de sistemas
Diseño de sistemasDiseño de sistemas
Diseño de sistemas
 
6t
6t6t
6t
 
Arquitectura. de Software. en ambientes distribuidos.
Arquitectura. de Software. en ambientes distribuidos.Arquitectura. de Software. en ambientes distribuidos.
Arquitectura. de Software. en ambientes distribuidos.
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
 
2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico2 1 1_diseño arquitectónico
2 1 1_diseño arquitectónico
 
Arquitectura sistema
Arquitectura sistemaArquitectura sistema
Arquitectura sistema
 
Arquitectura de software
Arquitectura de softwareArquitectura de software
Arquitectura de software
 
Eje Tematico Uno Grupo Uno
Eje Tematico Uno   Grupo UnoEje Tematico Uno   Grupo Uno
Eje Tematico Uno Grupo Uno
 
Actividad remedial_Maria_Albarran
Actividad remedial_Maria_AlbarranActividad remedial_Maria_Albarran
Actividad remedial_Maria_Albarran
 
Diseño de sistemas
Diseño de sistemasDiseño de sistemas
Diseño de sistemas
 
Diseño de sistemas
Diseño de sistemasDiseño de sistemas
Diseño de sistemas
 
Diseño de Software
Diseño de SoftwareDiseño de Software
Diseño de Software
 
Unidad 4. diseno del sistema
Unidad 4. diseno del sistemaUnidad 4. diseno del sistema
Unidad 4. diseno del sistema
 

Más de Jose Patricio Bovet Derpich (9)

Integración Continua
Integración ContinuaIntegración Continua
Integración Continua
 
Scrum overview
Scrum overview Scrum overview
Scrum overview
 
Springboot Overview
Springboot  OverviewSpringboot  Overview
Springboot Overview
 
Diseño de la interfaz de usuario
Diseño de la interfaz de usuarioDiseño de la interfaz de usuario
Diseño de la interfaz de usuario
 
POO1501 - Composición java
POO1501 - Composición javaPOO1501 - Composición java
POO1501 - Composición java
 
POO1501 - Composición java
POO1501 - Composición javaPOO1501 - Composición java
POO1501 - Composición java
 
Conociendo Nuestro Fua interno
Conociendo Nuestro Fua internoConociendo Nuestro Fua interno
Conociendo Nuestro Fua interno
 
GitHub y el software libre
GitHub y el software libreGitHub y el software libre
GitHub y el software libre
 
Apache Servicemix
Apache ServicemixApache Servicemix
Apache Servicemix
 

Último

PRESENTACION DE CURSO DE ALINEACION EN EL ESTANDAR EC0435
PRESENTACION DE CURSO DE ALINEACION EN EL ESTANDAR EC0435PRESENTACION DE CURSO DE ALINEACION EN EL ESTANDAR EC0435
PRESENTACION DE CURSO DE ALINEACION EN EL ESTANDAR EC0435LICMURO
 
Los lambayecanos no son mochicas (ni mocheros)
Los lambayecanos no son mochicas (ni mocheros)Los lambayecanos no son mochicas (ni mocheros)
Los lambayecanos no son mochicas (ni mocheros)yevivo4827
 
RM N° 587-2023-minedu norma para elñ año escolar 2024pdf
RM N° 587-2023-minedu norma para elñ año escolar 2024pdfRM N° 587-2023-minedu norma para elñ año escolar 2024pdf
RM N° 587-2023-minedu norma para elñ año escolar 2024pdfmiguelracso
 
ACTA OFICIAL DE POSESIÓN DE CARGO 2024.docx
ACTA OFICIAL DE POSESIÓN DE CARGO 2024.docxACTA OFICIAL DE POSESIÓN DE CARGO 2024.docx
ACTA OFICIAL DE POSESIÓN DE CARGO 2024.docxCarlos Muñoz
 
SEMANA DE GESTION I LAS DUNAS primaria.pptx
SEMANA DE GESTION I LAS DUNAS primaria.pptxSEMANA DE GESTION I LAS DUNAS primaria.pptx
SEMANA DE GESTION I LAS DUNAS primaria.pptxMaryCruzHernandez6
 
Tipos_de_direccion para administración en fisioterapia
Tipos_de_direccion para administración en fisioterapiaTipos_de_direccion para administración en fisioterapia
Tipos_de_direccion para administración en fisioterapiaAsdrubalNotario
 
Tema 4. Razonamiento Lógico 25-02-24.pdf
Tema 4. Razonamiento Lógico 25-02-24.pdfTema 4. Razonamiento Lógico 25-02-24.pdf
Tema 4. Razonamiento Lógico 25-02-24.pdfNoe Castillo
 
VIDEOS DE APOYO TECNOLOGIA PRIMER PERIODO
VIDEOS DE APOYO TECNOLOGIA PRIMER PERIODOVIDEOS DE APOYO TECNOLOGIA PRIMER PERIODO
VIDEOS DE APOYO TECNOLOGIA PRIMER PERIODOSofiaDiaz692624
 
MODU UNO maestria contemporáneo pedagogía.pdf
MODU UNO  maestria contemporáneo pedagogía.pdfMODU UNO  maestria contemporáneo pedagogía.pdf
MODU UNO maestria contemporáneo pedagogía.pdfMagno Yupanki
 
La Gamificacion como Estrategia de Aprendizaje Ccesa007.pdf
La Gamificacion como Estrategia de Aprendizaje Ccesa007.pdfLa Gamificacion como Estrategia de Aprendizaje Ccesa007.pdf
La Gamificacion como Estrategia de Aprendizaje Ccesa007.pdfDemetrio Ccesa Rayme
 
Lista de Normas para el sector educación 2024
Lista de Normas para el sector educación 2024Lista de Normas para el sector educación 2024
Lista de Normas para el sector educación 2024miguelracso
 
240.Exam1.Rev. Spring24.pptxadsfadfadfdd
240.Exam1.Rev. Spring24.pptxadsfadfadfdd240.Exam1.Rev. Spring24.pptxadsfadfadfdd
240.Exam1.Rev. Spring24.pptxadsfadfadfddbrianjars
 
FORTI-MARZO 2024.pdf. CULTURA, EDUCACIÓN, DIA DE LA MUJER
FORTI-MARZO 2024.pdf. CULTURA, EDUCACIÓN, DIA DE LA MUJERFORTI-MARZO 2024.pdf. CULTURA, EDUCACIÓN, DIA DE LA MUJER
FORTI-MARZO 2024.pdf. CULTURA, EDUCACIÓN, DIA DE LA MUJEREl Fortí
 
Tema 4. Gráfica Tridimiensional 25-02-24.pdf
Tema 4. Gráfica Tridimiensional 25-02-24.pdfTema 4. Gráfica Tridimiensional 25-02-24.pdf
Tema 4. Gráfica Tridimiensional 25-02-24.pdfNoe Castillo
 
Francisco Espoz y Mina. Liberal vinculado A Coruña
Francisco Espoz y Mina. Liberal vinculado A CoruñaFrancisco Espoz y Mina. Liberal vinculado A Coruña
Francisco Espoz y Mina. Liberal vinculado A CoruñaAgrela Elvixeo
 

Último (20)

PRESENTACION DE CURSO DE ALINEACION EN EL ESTANDAR EC0435
PRESENTACION DE CURSO DE ALINEACION EN EL ESTANDAR EC0435PRESENTACION DE CURSO DE ALINEACION EN EL ESTANDAR EC0435
PRESENTACION DE CURSO DE ALINEACION EN EL ESTANDAR EC0435
 
Los lambayecanos no son mochicas (ni mocheros)
Los lambayecanos no son mochicas (ni mocheros)Los lambayecanos no son mochicas (ni mocheros)
Los lambayecanos no son mochicas (ni mocheros)
 
1ER GRADO PRESENTACIÓN PEDAGOGÍA PRODUCTIVA.
1ER GRADO PRESENTACIÓN PEDAGOGÍA PRODUCTIVA.1ER GRADO PRESENTACIÓN PEDAGOGÍA PRODUCTIVA.
1ER GRADO PRESENTACIÓN PEDAGOGÍA PRODUCTIVA.
 
DIANTE DE TI, BOA MÃE! _
DIANTE DE TI, BOA MÃE!                  _DIANTE DE TI, BOA MÃE!                  _
DIANTE DE TI, BOA MÃE! _
 
RM N° 587-2023-minedu norma para elñ año escolar 2024pdf
RM N° 587-2023-minedu norma para elñ año escolar 2024pdfRM N° 587-2023-minedu norma para elñ año escolar 2024pdf
RM N° 587-2023-minedu norma para elñ año escolar 2024pdf
 
ACTA OFICIAL DE POSESIÓN DE CARGO 2024.docx
ACTA OFICIAL DE POSESIÓN DE CARGO 2024.docxACTA OFICIAL DE POSESIÓN DE CARGO 2024.docx
ACTA OFICIAL DE POSESIÓN DE CARGO 2024.docx
 
SEMANA DE GESTION I LAS DUNAS primaria.pptx
SEMANA DE GESTION I LAS DUNAS primaria.pptxSEMANA DE GESTION I LAS DUNAS primaria.pptx
SEMANA DE GESTION I LAS DUNAS primaria.pptx
 
Bendito el que viene en el nombre del Señor
Bendito el que viene en el nombre del SeñorBendito el que viene en el nombre del Señor
Bendito el que viene en el nombre del Señor
 
Tipos_de_direccion para administración en fisioterapia
Tipos_de_direccion para administración en fisioterapiaTipos_de_direccion para administración en fisioterapia
Tipos_de_direccion para administración en fisioterapia
 
Tema 4. Razonamiento Lógico 25-02-24.pdf
Tema 4. Razonamiento Lógico 25-02-24.pdfTema 4. Razonamiento Lógico 25-02-24.pdf
Tema 4. Razonamiento Lógico 25-02-24.pdf
 
VIDEOS DE APOYO TECNOLOGIA PRIMER PERIODO
VIDEOS DE APOYO TECNOLOGIA PRIMER PERIODOVIDEOS DE APOYO TECNOLOGIA PRIMER PERIODO
VIDEOS DE APOYO TECNOLOGIA PRIMER PERIODO
 
MODU UNO maestria contemporáneo pedagogía.pdf
MODU UNO  maestria contemporáneo pedagogía.pdfMODU UNO  maestria contemporáneo pedagogía.pdf
MODU UNO maestria contemporáneo pedagogía.pdf
 
La Gamificacion como Estrategia de Aprendizaje Ccesa007.pdf
La Gamificacion como Estrategia de Aprendizaje Ccesa007.pdfLa Gamificacion como Estrategia de Aprendizaje Ccesa007.pdf
La Gamificacion como Estrategia de Aprendizaje Ccesa007.pdf
 
Lista de Normas para el sector educación 2024
Lista de Normas para el sector educación 2024Lista de Normas para el sector educación 2024
Lista de Normas para el sector educación 2024
 
240.Exam1.Rev. Spring24.pptxadsfadfadfdd
240.Exam1.Rev. Spring24.pptxadsfadfadfdd240.Exam1.Rev. Spring24.pptxadsfadfadfdd
240.Exam1.Rev. Spring24.pptxadsfadfadfdd
 
FORTI-MARZO 2024.pdf. CULTURA, EDUCACIÓN, DIA DE LA MUJER
FORTI-MARZO 2024.pdf. CULTURA, EDUCACIÓN, DIA DE LA MUJERFORTI-MARZO 2024.pdf. CULTURA, EDUCACIÓN, DIA DE LA MUJER
FORTI-MARZO 2024.pdf. CULTURA, EDUCACIÓN, DIA DE LA MUJER
 
Tema 4. Gráfica Tridimiensional 25-02-24.pdf
Tema 4. Gráfica Tridimiensional 25-02-24.pdfTema 4. Gráfica Tridimiensional 25-02-24.pdf
Tema 4. Gráfica Tridimiensional 25-02-24.pdf
 
FOLKLORE ESPAÑOL - INSTRUMENTOS Y DANZAS.pptx
FOLKLORE ESPAÑOL - INSTRUMENTOS Y DANZAS.pptxFOLKLORE ESPAÑOL - INSTRUMENTOS Y DANZAS.pptx
FOLKLORE ESPAÑOL - INSTRUMENTOS Y DANZAS.pptx
 
Dificultad de la escritura alfabética- Estrategia Pukllaspa yachasun - Curo F...
Dificultad de la escritura alfabética- Estrategia Pukllaspa yachasun - Curo F...Dificultad de la escritura alfabética- Estrategia Pukllaspa yachasun - Curo F...
Dificultad de la escritura alfabética- Estrategia Pukllaspa yachasun - Curo F...
 
Francisco Espoz y Mina. Liberal vinculado A Coruña
Francisco Espoz y Mina. Liberal vinculado A CoruñaFrancisco Espoz y Mina. Liberal vinculado A Coruña
Francisco Espoz y Mina. Liberal vinculado A Coruña
 

Principios de diseño de la arquitectura del software

  • 1. Principios de Diseño de la Arquitectura del Software IDS5501 V.1.0 @josebovet
  • 2. 2 Clase anterior Principios Diseño del Software. • Introducción al diseño de Software. • Diseño en el contexto de la ingeniería de software. • El PROCESO,CONCEPTOS, y el MODELO del diseño.
  • 3. 3 Objetivos de las clase • Introducción a la Arquitectura de Software. • Géneros Arquitectónicas • Estilos Arquitectónicos. • Diseño Arquitectónico. • Evaluación de los diseños alternativos para la Arquitectura. • Mapeo de la arquitectura con el uso del flujo de datos. Principios del diseño de Arquitectura
  • 6. 6 ¿Qué es? El diseño arquitectónico representa la estructura de los datos y de los componentes del programa que se requieren para construir un sistema basado en computadora.
  • 7. 7 ¿Qué es? “La arquitectura es demasiado importante para dejarla en manos de una sola persona, no importa cuán brillante sea.” Scott Ambler “Cásate con tu arquitectura de prisa, arrepiéntete en tu tiempo libre.” Barry Boehm.
  • 9. 9 ¿Quién lo hace? Ingenieros de Software / Especialistas. El diseñador de una base de datos crea la arquitectura de los datos para un sistema. El “arquitecto del sistema” selecciona un estilo arquitectónico apropiado a partir de los requerimientos obtenidos durante el análisis de los datos.
  • 11. 11 ¿Por qué es importante? • Usted intentaría construir su casa sin un plano, ¿o sí? • Tampoco comenzaría los planos con el dibujo de la plomería del lugar.
  • 12. 12 ¿Por qué es importante?
  • 13. 13 ¿Por qué es importante? Antes de preocuparse por los detalles, necesitaría tener el panorama general: La casa en sí. Eso es lo que hace el diseño arquitectónico, da el panorama y asegura que sea el correcto.
  • 15. 15 ¿Cuáles son los pasos? 1. El diseño de la arquitectura comienza con el diseño de los datos. 2. Continúa con la obtención las representaciones de la estructura arquitectónica del sistema. 3. Se analizan alternativas de estilos o patrones arquitectónicos. 4. Seleccionada la alternativa, se elabora la arquitectura con el empleo de un método de diseño.
  • 16. 16 ¿Cuál es el producto final?
  • 17. 17 ¿Cuál es el producto final? Un modelo de arquitectura que incluye datos y la estructura del software. Además, se describen las propiedades y relaciones(interacciones) que hay entre los componentes.
  • 19. 19 ¿Cómo me aseguro de que lo hice bien?
  • 20. 20 ¿Cómo me aseguro de que lo hice bien? Comprobaciones • En cada etapa se revisan los productos del trabajo del diseño del software para que sean claros, correctos, completos y consistentes con los requerimientos y entre sí.
  • 21. Arquitectura de Software ”La arquitectura de un sistema es un marco general que describe su forma y estructura: sus componentes y la manera en la que ajustan entre sí.”Jerrold Grochow
  • 22. 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. "
  • 23. 23 Arquitectura de Software. Permite 1. Analizar la efectividad del diseño para cumplir los requerimientos establecidos. 2.Considerar alternativas arquitectónicas en una etapa en la que hacer cambios al diseño todavía es relativamente fácil. 3.Reducir los riesgos asociados con la construcción del software.
  • 24. 24 3 Razones de importancia de la Arquitectura • Las representaciones de la arquitectura del software permiten la comunicación entre todas las partes interesadas en el desarrollo de un sistema. • Resalta las primeras decisiones que tendrán un efecto profundo en todo el trabajo de ingeniería de software siguiente. • “Constituye un modelo relativamente pequeño y asequible sobre cómo está estructurado el sistema y la forma en la que sus componentes trabajan juntos”
  • 25. Descripciones Arquitectónicas “...el esfuerzo debe centrarse en representaciones de la arquitectura que guiarán todos los demás aspectos del diseño”.
  • 26. 26 Definición descripción Arquitectónica “Un conjunto de productos para documentar una arquitectura”. IEEE
  • 27. 27 Objetivos 1. Establecer un marco conceptual con un vocabulario que se use durante el diseño de la arquitectura del software. 2. Proporcionar lineamientos detallados para representar una descripción arquitectónica. 3. Estimular las mejores prácticas del diseño arquitectónico.
  • 30. 30 Decisiones Arquitectónicas • El arquitecto del sistema considera varias alternativas y decide en última instancia las características arquitectónicas específicas que satisfagan del mejor modo la preocupación. • Las decisiones arquitectónicas en sí mismas se consideran una perspectiva de la arquitectura. • Las razones de las decisiones dan una visión de un sistema y su concordancia con las preocupaciones de los participantes.
  • 31. 31 Géneros Arquitectónicos “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 estás.” Danny Thorpe
  • 32. 32 Géneros Arquitectónicos 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, dentro de cada categoría hay varias subcategorías.
  • 34. 34 Inteligencia Artificial Sistemas que simulan o incrementan la cognición humana, su locomoción u otros procesos orgánicos
  • 35. 35 Comerciales y no lucrativos Sistemas que son fundamentales para la operación de una empresa de negocios.
  • 36. 36 Comunicaciones Sistemas que proveen la infraestructura para transferir y manejar datos, para conectar usuarios o para presentar datos en la frontera de una infraestructura.
  • 37. 37 Contenido de Autor Sistemas que se emplean para crear o manipular artefactos de texto o multimedios.
  • 38. 38 Dispositivos Sistemas que interactúan con el mundo físico a fin de brindar algún servicio puntual a un individuo.
  • 39. 39 Entretenimiento y Deportes Sistemas que administran eventos públicos o que proveen una experiencia grupal de entretenimiento.
  • 40. 40 Financieros Sistemas que proporcionan la infraestructura para transferir y manejar dinero y otros títulos.
  • 41. 41 Juegos Sistemas que dan una experiencia de entretenimiento a individuos o grupos.
  • 42. 42 Gobierno Sistemas que dan apoyo a la conducción y operaciones de una institución
  • 43. 43 Sistema Operativo Sistemas que están inmediatamente instalados en el hardware para dar servicios de software básico.
  • 45. 45 Cada género representa un desafío único. Por ejemplo: Considere la arquitectura del software de un sistema de juego. “Esta clase de sistemas, en ocasiones llamados aplicaciones interactivas de inmersión, 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.”
  • 46. 46 Estilos Arquitectónicos “En el fondo de la mente de todo artista hay un patrón o tipo de arquitectura. “ G. K. Chesterton
  • 47. 47 Estilos Arquitectónicos Describen las categorías del sistema que incluye: 1) Un conjunto de componentes (como una base de datos o módulos de cómputo) que realizan una función requerida por el sistema. 2) Conectores que permiten la “comunicación, coordinación y cooperación” entre los componentes. 3) Restricciones que definen cómo se integran los componentes para formar el sistema. 4) Modelos semánticos que permiten que un diseñador entienda las propiedades generales del sistema al analizar las propiedades conocidas de sus partes constituyentes.
  • 48. 48 Estilos Arquitectónicos - Taxonomía •Arquitecturas centradas en los datos. •Arquitecturas de flujo de datos •Arquitecturas de llamar y regresar. •Arquitecturas orientadas a objetos •Arquitecturas en capas.
  • 49. 49 Arquitecturas centradas en los datos. • En el centro de esta arquitectura se halla un almacenamiento de datos al que acceden con frecuencia otros componentes que actualizan, agregan, eliminan o modifican los datos de cierto modo dentro del almacenamiento. • Promueven la integrabilidad.
  • 50. 50 Arquitecturas de flujo de datos. • Se aplica cuando datos de entrada van a transformarse en datos de salida a través de una serie de componentes computacionales o manipuladores. • Se basan en un patrón de tubo/filtro que tiene un conjunto de componentes, llamados filtros, conectados por tubos que transmiten datos de un componente al siguiente.
  • 51. 51 Arquitecturas de llamar y regresar • Permite obtener una estructura de programa que es relativamente fácil de modificar y escalar, contiene subestilos. • Arquitecturas de programa principal/subprograma: Esta estructura clásica de programa descompone una función en una jerarquía de control en la que un programa “principal” invoca cierto número de componentes de programa que a su vez invocan a otros.
  • 52. 52 Arquitecturas de llamar y regresar • Arquitecturas de llamada de procedimiento remoto: Los componentes de una arquitectura de programa principal/ subprograma están distribuidos a través de computadoras múltiples en una red.
  • 53. 53 Arquitecturas Orientadas a Objetos Los componentes de un sistema incluyen datos y las operaciones que deben aplicarse para manipularlos. La comunicación y coordinación entre los componentes se consigue mediante la transmisión de mensajes.
  • 54. 54 Arquitecturas en Capas • Se define un número de capas diferentes • En la capa externa: los componentes atienden las operaciones de la interfaz de usuario. • En la interna: los componentes realizan la interfaz con el sistema operativo. • Las capas intermedias: proveen servicios de utilerías y funciones de software de aplicación.
  • 55. 55 Patrones Arquitectónicos “Tal vez está en la planta baja. Déjame subir a revisar.” M. C. Escher
  • 57. 57 Patrones “El patrón propone una solución arquitectónica que sirve como base para el diseño de la arquitectura.” Los patrones arquitectónicos se abocan a un problema de aplicación específica dentro de un contexto dado y sujeto a limitaciones y restricciones.
  • 58. 58 Diseño Arquitectónico “Un doctor puede sepultar sus errores, pero un arquitecto sólo puede aconsejar a su cliente que siembre enredaderas.” Frank Lloyd Wright
  • 59. 59 Diseño Arquitectónico En diseño arquitectónico, el software que se va a desarrollar debe situarse en contexto, es decir, el diseño debe definir las entidades externas (otros sistemas, dispositivos, personas, etc.) con las que interactúa el software y la naturaleza de dicha interacción.
  • 60. 60 Representación del sistema en Contexto El contexto arquitectónico representa la manera en la que el software interactúa con las entidades externas a sus fronteras.
  • 61. 61 Diagrama Contexto Arquitectónico (DCA) Permite modelar la manera en la que el software interactúa con entidades más allá de sus fronteras.
  • 62. 62 Diagrama Contexto Arquitectónico (DCA) • Sistemas superiores: aquellos que utilizan al sistema objetivo como parte de algún esquema de procesamiento de alto nivel. • Sistemas subordinados: los que son usados por el sistema objetivo y proveen datos o procesamiento que son necesarios para completar las funciones del sistema objetivo. • Sistemas entre iguales: son los que interactúan sobre una base de igualdad (por ejemplo, la información se produce o consume por los iguales y por el sistema objetivo). • Actores: entidades (personas, dispositivos, etc.) que interactúan con el sistema objetivo mediante la producción o consumo de información que es necesaria para el procesamiento de los requerimientos.
  • 63. 63 Definición de Arquetipos Los arquetipos son los bloques constructivos de un diseño arquitectónico.
  • 64. 64 Arquetipos Un arquetipo es una clase o un patrón que representa una abstracción fundamental de importancia crítica para el diseño de una arquitectura para el sistema objetivo. Podemos obtener arquetipos con el estudio de las clases de análisis definidas como parte del modelo de los requerimientos. Representan elementos estables de la arquitectura, pero que son implementadas en muchos modos diferentes con base en el comportamiento del sistema.
  • 66. 66 Refinamiento de la arquitectura hacia los componentes ¿cómo se eligen estos componentes?
  • 67. 67 Refinamiento “La estructura de un sistema de software provee la ecología en la que el código nace, crece y muere. Un hábitat bien diseñado permite la evolución exitosa de todos los componentes necesarios en un sistema de software.” R. Pattis
  • 68. 68 Refinamiento El dominio de aplicación es una fuente para la obtención y refinamiento de los componentes. Estas clases de análisis representan entidades dentro del dominio de aplicación (negocio) que deben enfrentarse dentro de la arquitectura del software. Otra fuente es el dominio de la infraestructura. La arquitectura debe albergar muchas componentes de la infraestructura que hagan posible los componentes de la aplicación, pero que no tengan conexión con el dominio de ésta. Por ejemplo: los componentes de administración de memoria, de comunicación, de base de datos y de administración de tareas con frecuencia están integrados en la arquitectura del software.
  • 69. 69 Estructura arquitectónica de componentes de alto nivel de CasaSegura
  • 71. 71 Instancias del sistema Para lograr un buen refinamiento y crear instancias, se debe aplicar una especificación mas detallada a un problema específico, con objeto de demostrar que tanto ella como sus componentes son apropiados.
  • 72. 72 Método de la negociación para analizar la arquitectura
  • 73. 73 Análisis de la arquitectura •Escenarios de investigación: Se desarrolla un conjunto de casos de uso para representar al sistema desde el punto de vista del usuario. •Obtención de los requerimientos, restricciones, y descripción del ambiente: Esta información se determina como parte de la ingeniería de requerimientos y se utiliza para estar seguros de que se han detectado todas las preocupaciones de los participantes.
  • 74. 74 Análisis de la arquitectura • Descripción de los estilos o patrones de arquitectura elegidos para abordar los escenarios y requerimientos: Debe describirse el estilo arquitectónico con el empleo de las siguientes perspectivas arquitectónicas: • Perspectiva modular: para el análisis de las asignaciones de trabajo con componentes y grado en el que se logra el ocultamiento de información. • Perspectiva del proceso: para el análisis del desempeño del sistema. • Perspectiva del flujo de datos: para analizar el grado en el que la arquitectura satisface los requerimientos funcionales.
  • 75. 75 Análisis de la arquitectura • Evaluación de los atributos de calidad, considerando cada atributo por separado: El número de atributos de la calidad elegidos para el análisis es una función del tiempo disponible para la revisión y el grado en el que los atributos de calidad son relevantes para el sistema en cuestión. Los atributos de calidad para evaluar el diseño arquitectónico como • confiabilidad • desempeño • seguridad • facilidad de mantenimiento • flexibilidad • facilidad de hacer pruebas • portabilidad • reutilización e interactuación.
  • 76. 76 Análisis de la arquitectura • Identificación de la sensibilidad de los atributos de calidad de varios atributos arquitectónicos para un estilo de arquitectura específico: Eso se lleva a cabo haciendo cambios pequeños en la arquitectura a fin de determinar la sensibilidad que tiene un atributo de calidad, por ejemplo, el desempeño ante el cambio: Atributos que se vean afectados en forma significativa por la variación de la arquitectura se denominan puntos sensibles. • Crítica de las arquitecturas candidatas en la descripción de patrones con el uso del análisis de sensibilidad.
  • 78. 78 Complejidad Arquitectónica. Para evaluar la complejidad total de una arquitectura una técnica consiste en consideran las relaciones de dependencias entre los componentes de la arquitectura. Existen tres tipos de dependencias: Dependencias de compartimiento: Representan las relaciones de dependencia entre los consumidores que utilizan los mismos recursos o los productores que producen para los mismos consumidores. Dependencias de flujo: Representan las relaciones de dependencias entre los productores y los consumidores de recursos. Dependencias restrictivas: Representan las restricciones de un relativo flujo de control entre un cuadro de actividades.
  • 79. 79 Taller * ¿Por qué es importante la arquitectura? * ¿Cuales son las diferencias entre la fase del diseño arquitectónico y la implementación de una arquitectura de software.? * Con el uso de la arquitectura de una casa o edificio como metáfora, establezca comparaciones con la arquitectura del software. ¿En qué se parecen las disciplinas de la arquitectura clásica y la del software? ¿En qué difieren? * Cuando se “escribe” un programa, ¿se diseña software? ¿En qué difieren el diseño de software y la codificación? * Describa que son los componentes dentro de una arquitectura de software. * Describa con sus propias palabras la arquitectura de software. * Describa en breves palabras cada uno de los cuatro elementos del modelo del diseño. * ¿Por qué cualidades puede ser evaluada una Arquitectura? * ¿Cuáles son los costos y beneficios de realizar una evaluación arquitectónica? * Investigue, liste y defina cada una de las Estructuras arquitectónicas canónicas