SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Arquitectura de Software 
Prof. Viviana Alvarez 
Agosto 2011
 Arquitectura - Definición 
 El proceso de desarrollo basado en la arquitectura 
 Evaluación de la arquitectura 
 Lenguajes para representación de la arquitectura 
 MDA una propuesta de arquitectura alrededor de los 
modelos 
Temario
Orígenes 
 “La arquitectura descansa en tres principios: la Belleza 
(Venustas), la Firmeza (Firmitas) y la Utilidad (Utilitas)” 
Templo de Artemisa en Efeso 
Siglo IV a de C. 
127 columnas de 20 metros de altura 
El coloso de rodas 
277 a de C. 
32 metros de altura 
Placas de bronce sobre armazón de hierro
Orígenes (2) 
• “Es arquitecto aquel que con método y procedimiento seguro y 
perfecto sepa proyectar racionalmente y realizar en la práctica 
obras que se acomoden perfectamente a las más importantes 
necesidades humanas.“ 
El faro de Alejandría. Año 280 a de C. 
Altura 120 metros. Cima equipada con espejos metálicos 
que reflejaban la luz del sol; y por las noches, 
a falta de luz, se enciende una hoguera. 
Las pirámides de Egipto. 
Año 2750 a de C. 
146.59 m de altura, 230 m de ancho 
Alineadas hacia el norte con una inclinación de 
51 grados
Orígenes (3) 
 “Una arquitectura debe incorporar la unidad difícil de la 
inclusión en vez de la unidad fácil de la exclusión “ 
Evolución de la Ingeniería Civil 
- Imitación de esfuerzos previos 
- Aprendiendo de las fallas 
- Integración de otras fuerzas 
- Experimentación
Es lo mismo construir esto???
Que construir esto???
Conocen la Mansión Winchester
Conclusión 
 Lo que ocurre, finalmente, es que las aplicaciones de 
software, con el tiempo, terminan convirtiéndose en una 
pila de trozos, o bien, un laberinto como la mansión 
Winchester
Programar sin una Arquitectura en mente, es como explorar 
una mina solo con una linterna , no sabes dónde estás, dónde 
has estado, ni hacia donde vas
Arquitectura representa la base del sistema de software y 
debe ser construido, pensando en satisfacer las necesidades 
actuales, y debe proporcionar las capacidades necesarias para 
permitir su mantenimiento y evolución de acuerdo al negocio.
Qué es una arquitectura DE software? 
 La arquitectura del software define el sistema en términos 
de sus componentes computacionales y de las relaciones 
entre ellos (Shaw & Garlan, 1996) 
 “Estructura o estructuras del sistema que comprende 
componentes de software, propiedades visibles de esos 
componentes y las relaciones entre ellos.”
Arquitectura: Pensar primero en lo importante 
Diseño de alto nivel versus diseño detallado (David Budgen) 
Esqueleto versus Carne y Músculos (Rational Unify Process)
Arquitectura vs. complejidad 
 En la medida que la complejidad de los sistemas crece, los 
algoritmos y las estructuras de datos dejan de convertirse 
en el mayor problema. 
 El diseño y especificación de la estructura general del 
sistema emerge como un nuevo tipo de problema: el diseño 
a nivel de arquitectura. 
 En aplicaciones OO las clases representan unidades de 
granularidad muy fina; en sistemas grandes se requiere 
hablar de unidades que represente una funcionalidad mayor 
(módulos / subsistemas / componentes de negocio)
Arquitectura vs. complejidad (2) 
Fuente: Architecture as a Business Competency. Bredemeyer Consulting
Elementos relacionados con la arquitectura 
Qué? Por qué? 
Cualidades 
de la Arquitectura 
Características 
Del Sistema 
Requerimientos 
S/W 
Atributos de 
Calidad del sistema 
Tecnología Defines 
Procesos 
Representación 
de la arquitectura 
Arquitectura 
Satisface 
Restringe 
Quién? Para qué? 
Organización 
Arquitecto 
Habilidades 
Stakeholders 
Define roles 
Produce 
Analiza 
Fuente: Rational Software
Ciclo de Influencias 
El ciclo ABC (Arquitecture Business Cycle)
Influencias de los participantes 
arquitecto 
gerente del 
proyecto 
líder de 
mercadeo 
usuario 
final 
soporte 
aplicativo 
cliente 
Bajo costo 
Rendimiento 
del equipo 
Corto tiempo en mercado 
Bajo costo; ventajas con 
productos similares 
Funcionalidad 
Rendimiento 
Seguridad 
usabilidad 
modificabilidad 
Bajo costo y tiempo 
de entrega, que no cambie 
muy a menudo

Weitere ähnliche Inhalte

Ähnlich wie 01 arquitectura de software - definición

Arquitecturas
ArquitecturasArquitecturas
Arquitecturas
enlinea70
 
Architecture of software Architecture of software Architecture of software Ar...
Architecture of software Architecture of software Architecture of software Ar...Architecture of software Architecture of software Architecture of software Ar...
Architecture of software Architecture of software Architecture of software Ar...
Chri35
 
2 2 estilos arquitectonicos
2 2 estilos arquitectonicos2 2 estilos arquitectonicos
2 2 estilos arquitectonicos
landeta_p
 
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.pptELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
Marko Zapata
 

Ähnlich wie 01 arquitectura de software - definición (20)

Arquitecturas
ArquitecturasArquitecturas
Arquitecturas
 
Arquitectura de software
Arquitectura de softwareArquitectura de software
Arquitectura de software
 
ArqSoft
ArqSoftArqSoft
ArqSoft
 
Arquitectura de software y Generación de computadores.
Arquitectura de software y Generación de computadores.Arquitectura de software y Generación de computadores.
Arquitectura de software y Generación de computadores.
 
Capitulo 3 arquitecturas_de_desarrollo_web
Capitulo 3 arquitecturas_de_desarrollo_webCapitulo 3 arquitecturas_de_desarrollo_web
Capitulo 3 arquitecturas_de_desarrollo_web
 
ES.ASW.Te02_Definiciones.pdf
ES.ASW.Te02_Definiciones.pdfES.ASW.Te02_Definiciones.pdf
ES.ASW.Te02_Definiciones.pdf
 
Architecture of software Architecture of software Architecture of software Ar...
Architecture of software Architecture of software Architecture of software Ar...Architecture of software Architecture of software Architecture of software Ar...
Architecture of software Architecture of software Architecture of software Ar...
 
Diseño de Sistemas de Información en la Empresa
Diseño de Sistemas de Información en la EmpresaDiseño de Sistemas de Información en la Empresa
Diseño de Sistemas de Información en la Empresa
 
Diseño arquitectónico
Diseño arquitectónicoDiseño arquitectónico
Diseño arquitectónico
 
Arquitectura de Software
Arquitectura de SoftwareArquitectura de Software
Arquitectura de Software
 
Principios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del softwarePrincipios de diseño de la arquitectura del software
Principios de diseño de la arquitectura del software
 
Arquitecturas de software
Arquitecturas de softwareArquitecturas de software
Arquitecturas de software
 
9.diseño de la arquitectura
9.diseño de la arquitectura9.diseño de la arquitectura
9.diseño de la arquitectura
 
2 2 estilos arquitectonicos
2 2 estilos arquitectonicos2 2 estilos arquitectonicos
2 2 estilos arquitectonicos
 
Herramientas de diseño Modernas
Herramientas de diseño ModernasHerramientas de diseño Modernas
Herramientas de diseño Modernas
 
Arquitectura de software
Arquitectura de softwareArquitectura de software
Arquitectura de software
 
Arquitecturas de software exposicion
Arquitecturas de software   exposicionArquitecturas de software   exposicion
Arquitecturas de software exposicion
 
Exposicion evaluacion e_arquitecturas_de_softw
Exposicion evaluacion e_arquitecturas_de_softwExposicion evaluacion e_arquitecturas_de_softw
Exposicion evaluacion e_arquitecturas_de_softw
 
Guia Yahveh
Guia YahvehGuia Yahveh
Guia Yahveh
 
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.pptELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
ELEMENTOS DE LA CONFIGURACION DE SOFTWARE.ppt
 

Kürzlich hochgeladen

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Kürzlich hochgeladen (11)

How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 

01 arquitectura de software - definición

  • 1. Arquitectura de Software Prof. Viviana Alvarez Agosto 2011
  • 2.  Arquitectura - Definición  El proceso de desarrollo basado en la arquitectura  Evaluación de la arquitectura  Lenguajes para representación de la arquitectura  MDA una propuesta de arquitectura alrededor de los modelos Temario
  • 3. Orígenes  “La arquitectura descansa en tres principios: la Belleza (Venustas), la Firmeza (Firmitas) y la Utilidad (Utilitas)” Templo de Artemisa en Efeso Siglo IV a de C. 127 columnas de 20 metros de altura El coloso de rodas 277 a de C. 32 metros de altura Placas de bronce sobre armazón de hierro
  • 4. Orígenes (2) • “Es arquitecto aquel que con método y procedimiento seguro y perfecto sepa proyectar racionalmente y realizar en la práctica obras que se acomoden perfectamente a las más importantes necesidades humanas.“ El faro de Alejandría. Año 280 a de C. Altura 120 metros. Cima equipada con espejos metálicos que reflejaban la luz del sol; y por las noches, a falta de luz, se enciende una hoguera. Las pirámides de Egipto. Año 2750 a de C. 146.59 m de altura, 230 m de ancho Alineadas hacia el norte con una inclinación de 51 grados
  • 5. Orígenes (3)  “Una arquitectura debe incorporar la unidad difícil de la inclusión en vez de la unidad fácil de la exclusión “ Evolución de la Ingeniería Civil - Imitación de esfuerzos previos - Aprendiendo de las fallas - Integración de otras fuerzas - Experimentación
  • 6. Es lo mismo construir esto???
  • 8.
  • 9. Conocen la Mansión Winchester
  • 10.
  • 11.
  • 12.
  • 13. Conclusión  Lo que ocurre, finalmente, es que las aplicaciones de software, con el tiempo, terminan convirtiéndose en una pila de trozos, o bien, un laberinto como la mansión Winchester
  • 14. Programar sin una Arquitectura en mente, es como explorar una mina solo con una linterna , no sabes dónde estás, dónde has estado, ni hacia donde vas
  • 15. Arquitectura representa la base del sistema de software y debe ser construido, pensando en satisfacer las necesidades actuales, y debe proporcionar las capacidades necesarias para permitir su mantenimiento y evolución de acuerdo al negocio.
  • 16. Qué es una arquitectura DE software?  La arquitectura del software define el sistema en términos de sus componentes computacionales y de las relaciones entre ellos (Shaw & Garlan, 1996)  “Estructura o estructuras del sistema que comprende componentes de software, propiedades visibles de esos componentes y las relaciones entre ellos.”
  • 17. Arquitectura: Pensar primero en lo importante Diseño de alto nivel versus diseño detallado (David Budgen) Esqueleto versus Carne y Músculos (Rational Unify Process)
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31. Arquitectura vs. complejidad  En la medida que la complejidad de los sistemas crece, los algoritmos y las estructuras de datos dejan de convertirse en el mayor problema.  El diseño y especificación de la estructura general del sistema emerge como un nuevo tipo de problema: el diseño a nivel de arquitectura.  En aplicaciones OO las clases representan unidades de granularidad muy fina; en sistemas grandes se requiere hablar de unidades que represente una funcionalidad mayor (módulos / subsistemas / componentes de negocio)
  • 32. Arquitectura vs. complejidad (2) Fuente: Architecture as a Business Competency. Bredemeyer Consulting
  • 33. Elementos relacionados con la arquitectura Qué? Por qué? Cualidades de la Arquitectura Características Del Sistema Requerimientos S/W Atributos de Calidad del sistema Tecnología Defines Procesos Representación de la arquitectura Arquitectura Satisface Restringe Quién? Para qué? Organización Arquitecto Habilidades Stakeholders Define roles Produce Analiza Fuente: Rational Software
  • 34. Ciclo de Influencias El ciclo ABC (Arquitecture Business Cycle)
  • 35. Influencias de los participantes arquitecto gerente del proyecto líder de mercadeo usuario final soporte aplicativo cliente Bajo costo Rendimiento del equipo Corto tiempo en mercado Bajo costo; ventajas con productos similares Funcionalidad Rendimiento Seguridad usabilidad modificabilidad Bajo costo y tiempo de entrega, que no cambie muy a menudo