SlideShare una empresa de Scribd logo
Arquitectura de Software
Sorey Bibiana García Zapata
Siguiendo mi enfoque pedagógico personal, someteré el
   tema de la arquitectura de software a la ya típica
    comparación con la ingeniería civil y el rol de los
             arquitectos de edificaciones.

 La razón de este enfoque es simple, una realidad poco
   conocida o comprendida, es más fácil de asimilar,
cuando es mostrada a través de un símil con otra que si
    conocemos, o bien, con otra que puede intuirse
       coherentemente usando el sentido común.
Empecemos por un par de ideas simples….
La arquitectura es un instrumento cuya función principal es
la de intervenir en favor del hombre.

James M Fitch
La arquitectura debe ser una respuesta, no una imposición. La mayoría de los
arquitectos que construyen edificios extraños asegura que lo hace porque ahora
                         la tecnología lo hace posible. Eso me parece absurdo.

                            Poder hacer una cosa no legitima hacerla.




  Necesitamos soluciones para los problemas reales, no inventar
          problemas para poder empatar con nuevas soluciones
                                                               Glenn Murcutt
Esta última comparación podrá
no gustarle a muchos arquitectos
profesionales, pero en realidad
tiene mucho sentido, en
tecnología, tanto como en otros
escenarios…

“Poder hacer una cosa no
legitima hacerla”




 Necesitamos soluciones para los problemas reales, no inventar
    problemas para poder empatar con nuevas soluciones!
Viéndolo de esa forma, en realidad el rol de un
arquitecto de edificaciones y un arquitecto de
 software parece enfrentar los mismos retos
Por lo que es claro, que se
debe contar, con un conjunto
     básico de habilidades y
  conocimientos para ejercer
            este tipo de roles
Y es que no es lo
mismo construir
esto…
Que esto!
O esto!
Que se necesita para construir algo asi?
Que tal esto?
Y esto?
O esto?
Cada escenario plantea retos,
 condiciones y necesidades
         diferentes!
          Que tal si los vemos otra vez,
          mientras nos preguntamos…



    Que herramientas, personas,
presupuesto, conocimiento y tiempo
 necesitamos para cada escenario?
Pues bien, podemos decir sin miedo
   a equivocarnos, que todas las
consideraciones que se nos ocurran
      con respecto a definir la
   arquitectura de edificaciones,
   deberán ser tenidas en cuenta
 también al momento de definir la
      arquitectura de software
Conocen la Mansión
      Winchester?
En 1884, Sarah L. Winchester enviuda
quedando en sus manos la herencia del
acaudalado heredero de los rifles Winchester.

Pero tras tan inmensa fortuna, y según una
vidente de la época a la que la desdichada
viuda consultó, las almas perdidas de aquellos
que murieron frente a alguno de estos rifles se
encontraban en pena.

Años atrás había perdido también a su hija
Annie y ahora, la muerte de su marido terminó
por desequilibrarla.

Sarah compró un extenso terreno en
California, e hizo levantar una casa que hubo
de estar construyéndose hasta el mismo día de
su muerte, 38 años después, en 1922. Ya que
según aquella vidente, sólo así las almas
encontrarían donde morar mientras no
hallaran el reposo eterno.
La arquitectura de esta
mansión sorprende a todos y
   se escapa a los límites de la
   razón. Y no es tanto porque
esta mansión estilo victoriano
  tenga 160 habitaciones, tres
    ascensores, 47 chimeneas,
sistema de alcantarillado y de
 calefacción, luces de gas que
   se encienden apretando un
botón, (todo esto adelantado
   a su época), sino porque en
       ella se puede encontrar
   ventanas de dan a paredes,
      escaleras que no llevan a
     ninguna parte, puertas en
   medio de las ventanas en la
           fachada de los pisos
    superiores y otras rarezas.
Pero…


Qué tiene que ver
esta historia con la
 Arquitectura de
    Software?
Pues bien, resulta que esta
  situación en el contexto del
 desarrollo de software, es más
   común de lo que debería…

   Cuando un desarrollador es
asignado a la tarea de mantener y
 evolucionar un sistema legado,
 cuya arquitectura tiene fallas o
incluso que simplemente no está
 documentada, elige reconstruir
 partes o crear sus propias rutas
       dentro del código…
Lo que ocurre finalmente es que las aplicaciones de
 software con el tiempo, terminan convirtiéndose en
una colcha de retazos o bien, en un laberinto como la
Mansión Winchester, en donde si no tienes un guía y te
 pierdes, nadie te asegura que vuelvan a encontrarte.
quot;Programar sin una arquitectura en mente es
como explorar una gruta sólo con una linterna: no
  sabes dónde estás, dónde has estado ni hacia
                  dónde vas”

                   Danny Thorpe
De aquí, que la arquitectura represente
entonces, la base de un sistema de software
 y que deba ser construida pensando tanto
en satisfacer las necesidades actuales, como
en proporcionar al software las capacidades
 necesarias para permitir su mantenimiento
y evolución de acuerdo a las necesidades del
   negocio y las solicitudes de los clientes.
Cuando se piensa en la arquitectura de un sistema,
 debe tomarse en cuenta primero, lo más crítico e
                  importante…




 Y luego complementar para satisfacer las necesidades
               generales del sistema
El arquitecto de software es
entonces, el encargado de
establecer a que nivel, con que
estrategia, y que herramientas
son necesarias para realizar
una implementación que
satisfaga los requisitos
funcionales y no funcionales
de los sistemas.
Y además que debe ser una
persona capaz de identificar las
necesidades de los negocios, las
    habilidades de su equipo de
    trabajo y la viabilidad de las
 tecnologías disponibles para el
          desarrollo de software
Un buen arquitecto debe
estar en capacidad de
entender todas las
condiciones a las que se
verá sometido un
sistema y proponer una
solución acorde a cada
escenario en particular.
Por tanto, la madurez de un
arquitecto dará a las
aplicaciones de software que
tenga a su cargo, una
especificación coherente, para
enfrentar un conjunto de
riesgos mucho más reducido,
que en el caso de un
arquitecto aprendiz
Y es que…


“Desarrollar software de calidad
basado en requisitos y caminar
sobre el agua son cosas muy
fáciles...

si ambos están congelados“




Pero esa no es la situación que se presenta en el desarrollo
de software; construir software por el contrario es un
escenario evolutivo y cambiante, situación para la cual un
arquitecto de software debe estar preparado.
Ahora bien, a diferencia
de los arquitectos de
edificaciones, los
arquitectos de software
son los encargados de
construir la base de la
arquitectura de los
proyectos…
Esta es una de las razones por las que
es fácil pensar en que un Arquitecto de
   Edificaciones puede ser bueno sin
   tener que haber pegado jamás un
 ladrillo sobre otro, pero no podemos
  pensar lo mismo de un Ingeniero de
  Software que no haya programado
                 jamás…

                                                                      IDEAS ’09
  XII Conferencia Iberoamericana de Ingeniería de Requisitos y Ambientes de Software
Ahora bien, al igual que los trabajadores de una obra, un equipo
de desarrollo debe tener las habilidades necesarias para realizar
desarrollo del sistema y seguir la indicaciones del arquitecto,
buscando el éxito del proyecto.
Otra parte de nuestro símil está a
en los planos y maquetas usados
por los arquitectos para
especificar y detallar la forma en
que las edificaciones serán
construidas.
Al igual que ellos, los arquitectos de software
      usan modelos que representan las
 especificaciones y necesidades técnicas de
                 los sistemas.
La construcción de estos artefactos, en ambos
contextos requiere de herramientas, habilidades
y conocimientos, y servirá como guía de la en el
            proceso de construcción
Y así como los planos, diseños y
maquetas muestran diferentes
   vistas de un mismo lugar…
…de forma global…
…como una visión completa…
…parcialmente…
…específicamente…
…o bien,
 con un alto nivel de detalle…
…los diagramas a través de los
cuales se representa el diseño y
distribución del software, pueden
mostrar diferentes vistas de un
mismo sistema y de las
condiciones que
existen en el
entorno donde
se depliega
El modelo 4 + 1 vistas, es una propuesta que establece las
    diferentes perspectivas a través de las cuales se puede
representar el diseño y arquitectura de un sistema de software




   Kruchten P. Architectural Blueprints—The “4+1” View Model of Software Architecture. IEEE Software,
                                     November 1995, 12 (6), pp.42-50.
Esta propuesta presenta su propio esquema de modelado, pero
    como bien sabemos, la notación más reconocida para el
      modelamiento de sistemas de software es el UML *




   * UML es un lenguaje de modelado visual que se usa para especificar, visualizar, construir y
  documentar artefactos de un sistema de software, y se usa para entender, diseñar, configurar,
              mantener y controlar la información sobre los sistemas a construir.
Sin embargo, cada una de las vistas del
 modelo 4 + 1, puede equiparse contra
      uno o varios diagramas de UML




         Vista         UML
         Escenarios    Casos de Uso
         Lógica        Clases, de Estados y Colaboración
         Desarrollo    Componentes
         Física        Despliegue
         Procesos      Actividad, Estados, Secuencia


           http://jgarzas.googlepages.com/4mas1
De esta forma es
posible representar
las diferentes
perspectivas de un
sistema desde 2
propuestas de trabajo
conocidas y
enfocadas a satisfacer
las necesidades de los
diferentes
participantes del
proceso de desarrollo
Esta es una visión inicial acerca de la
arquitectura de software, para
 profundizar en ella debemos detallar
de una forma mas específica, cada uno
          de los conceptos que hemos
                         mencionado.
     Sin embargo eso será en una próxima oportunidad
Gracias!!!
                                                   ‘
No olvides visitar mi blog y dejarme tus comentarios
              http://soreygarcia.blogspot.com
                                      Hasta pronto!

Más contenido relacionado

La actualidad más candente

Ingeniería de requisitos y la ingeniería de requerimientos
Ingeniería de requisitos y la ingeniería de requerimientos Ingeniería de requisitos y la ingeniería de requerimientos
Ingeniería de requisitos y la ingeniería de requerimientos
unrated999
 
PRESENTACIÓN RUP
PRESENTACIÓN RUPPRESENTACIÓN RUP
PRESENTACIÓN RUP
MSc Aldo Valdez Alvarado
 
Ventajas y desventajas de cmmi
Ventajas y desventajas de cmmiVentajas y desventajas de cmmi
Ventajas y desventajas de cmmi
Sandrea Rodriguez
 
Gestión de Servicios de TI
Gestión de Servicios de TIGestión de Servicios de TI
Gestión de Servicios de TI
Pablo Felipe Herrera Jàcome
 
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
jose_rob
 
Arquitecturas de software exposicion
Arquitecturas de software   exposicionArquitecturas de software   exposicion
Arquitecturas de software exposicion
juca piro
 
Presentacion cmmi
Presentacion cmmiPresentacion cmmi
Presentacion cmmi
Manuel Galindo Sanz
 
Ejemplo rup
Ejemplo rupEjemplo rup
Ejemplo rup
angel2365
 
Modelo de desarrollo del software angel rojas
Modelo de desarrollo del software angel rojasModelo de desarrollo del software angel rojas
Modelo de desarrollo del software angel rojas
Angel Rojas
 
Ingenieria de requerimientos 1
Ingenieria de requerimientos 1Ingenieria de requerimientos 1
Ingenieria de requerimientos 1
jmpov441
 
Fundamentos de pruebas de software
Fundamentos de pruebas de softwareFundamentos de pruebas de software
Fundamentos de pruebas de software
Professional Testing
 
Ieee 830
Ieee 830Ieee 830
Ieee 830
Leo Ayodoro
 
Metodología RUP
Metodología RUPMetodología RUP
Metodología RUP
Jorge Cortés Alvarez
 
Arquitectura de Empresa TOGAF
Arquitectura de Empresa TOGAFArquitectura de Empresa TOGAF
Arquitectura de Empresa TOGAF
netmind
 
Estandar para las mejores Practicas ITIL V3
Estandar para las mejores Practicas ITIL V3Estandar para las mejores Practicas ITIL V3
Estandar para las mejores Practicas ITIL V3
Tabodiaz
 
MODELADO RUP UML
MODELADO RUP UMLMODELADO RUP UML
MODELADO RUP UML
kcastro388
 
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software  Unidad 2 - Software Enginnering - Ian sommervilleProcesos de software  Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
Matias Gonzalo Acosta
 
Fases de un proyecto de desarrollo de software
Fases de un proyecto de desarrollo de softwareFases de un proyecto de desarrollo de software
Fases de un proyecto de desarrollo de software
Eugenio Del Pozo Dipre
 
Java swing y awt
Java swing y awtJava swing y awt
Java swing y awt
Paulis Rincon
 
Metodologia XP
Metodologia XPMetodologia XP
Metodologia XP
SantiagoFelipeTuquer
 

La actualidad más candente (20)

Ingeniería de requisitos y la ingeniería de requerimientos
Ingeniería de requisitos y la ingeniería de requerimientos Ingeniería de requisitos y la ingeniería de requerimientos
Ingeniería de requisitos y la ingeniería de requerimientos
 
PRESENTACIÓN RUP
PRESENTACIÓN RUPPRESENTACIÓN RUP
PRESENTACIÓN RUP
 
Ventajas y desventajas de cmmi
Ventajas y desventajas de cmmiVentajas y desventajas de cmmi
Ventajas y desventajas de cmmi
 
Gestión de Servicios de TI
Gestión de Servicios de TIGestión de Servicios de TI
Gestión de Servicios de TI
 
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
 
Arquitecturas de software exposicion
Arquitecturas de software   exposicionArquitecturas de software   exposicion
Arquitecturas de software exposicion
 
Presentacion cmmi
Presentacion cmmiPresentacion cmmi
Presentacion cmmi
 
Ejemplo rup
Ejemplo rupEjemplo rup
Ejemplo rup
 
Modelo de desarrollo del software angel rojas
Modelo de desarrollo del software angel rojasModelo de desarrollo del software angel rojas
Modelo de desarrollo del software angel rojas
 
Ingenieria de requerimientos 1
Ingenieria de requerimientos 1Ingenieria de requerimientos 1
Ingenieria de requerimientos 1
 
Fundamentos de pruebas de software
Fundamentos de pruebas de softwareFundamentos de pruebas de software
Fundamentos de pruebas de software
 
Ieee 830
Ieee 830Ieee 830
Ieee 830
 
Metodología RUP
Metodología RUPMetodología RUP
Metodología RUP
 
Arquitectura de Empresa TOGAF
Arquitectura de Empresa TOGAFArquitectura de Empresa TOGAF
Arquitectura de Empresa TOGAF
 
Estandar para las mejores Practicas ITIL V3
Estandar para las mejores Practicas ITIL V3Estandar para las mejores Practicas ITIL V3
Estandar para las mejores Practicas ITIL V3
 
MODELADO RUP UML
MODELADO RUP UMLMODELADO RUP UML
MODELADO RUP UML
 
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software  Unidad 2 - Software Enginnering - Ian sommervilleProcesos de software  Unidad 2 - Software Enginnering - Ian sommerville
Procesos de software Unidad 2 - Software Enginnering - Ian sommerville
 
Fases de un proyecto de desarrollo de software
Fases de un proyecto de desarrollo de softwareFases de un proyecto de desarrollo de software
Fases de un proyecto de desarrollo de software
 
Java swing y awt
Java swing y awtJava swing y awt
Java swing y awt
 
Metodologia XP
Metodologia XPMetodologia XP
Metodologia XP
 

Similar a Arquitectura De Software Para Dummies

Ingenieria De Software Para Dummies
Ingenieria De Software Para DummiesIngenieria De Software Para Dummies
Ingenieria De Software Para Dummies
Sorey García
 
Estrategias Avanet: Ingeniería de Software
Estrategias Avanet: Ingeniería de SoftwareEstrategias Avanet: Ingeniería de Software
Estrategias Avanet: Ingeniería de Software
Avanet
 
Patrones
PatronesPatrones
Patrones
Roman Maydana
 
El Rol de un Arquitecto de Software
El Rol de un Arquitecto de SoftwareEl Rol de un Arquitecto de Software
El Rol de un Arquitecto de Software
Sorey García
 
Agilidad y lean
Agilidad y leanAgilidad y lean
Fundamentos de Diseño - Grupo Delta
Fundamentos de Diseño - Grupo DeltaFundamentos de Diseño - Grupo Delta
Fundamentos de Diseño - Grupo Delta
Nicola Pizzi Castro
 
Ado.net entity framework
Ado.net entity frameworkAdo.net entity framework
Ado.net entity framework
Cein
 
Diseño arquitectonico
Diseño arquitectonico Diseño arquitectonico
Diseño arquitectonico
VALENTINA LOPEZ R.
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
Ramiro Estigarribia Canese
 
Dev dotstar read_principios
Dev dotstar read_principiosDev dotstar read_principios
Dev dotstar read_principios
Jordan Diaz
 
Ingeniería de software y el paradigma orientado a objetos
Ingeniería de software y el paradigma orientado a objetosIngeniería de software y el paradigma orientado a objetos
Ingeniería de software y el paradigma orientado a objetos
Wilfredo Mogollón
 
Investigación de ingeniería de software
Investigación de ingeniería de software Investigación de ingeniería de software
Investigación de ingeniería de software
ingenieriadsoftware
 
Guía de creación arquitectónica para universidades en mundos virtuales
Guía de creación arquitectónica para universidades en mundos virtualesGuía de creación arquitectónica para universidades en mundos virtuales
Guía de creación arquitectónica para universidades en mundos virtuales
Camilo Andrés Suárez
 
No Silver Bullet
No Silver BulletNo Silver Bullet
No Silver Bullet
Ricardo Quintero
 
14 arquitectura de sistemas
14 arquitectura de sistemas14 arquitectura de sistemas
14 arquitectura de sistemas
Luis Vidal
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
Ricardo Palacios
 
IngenieriaSOFTWARE _ Presentacion2022.pdf
IngenieriaSOFTWARE _ Presentacion2022.pdfIngenieriaSOFTWARE _ Presentacion2022.pdf
IngenieriaSOFTWARE _ Presentacion2022.pdf
AnaliaEC
 
Software diseño de obras civiles
Software diseño de obras civilesSoftware diseño de obras civiles
Software diseño de obras civiles
Alejandra Rojas
 
Tarea semana 1
Tarea semana 1Tarea semana 1
Tarea semana 1
preciadoag
 
Tareasemana1
Tareasemana1Tareasemana1
Tareasemana1
preciadoag
 

Similar a Arquitectura De Software Para Dummies (20)

Ingenieria De Software Para Dummies
Ingenieria De Software Para DummiesIngenieria De Software Para Dummies
Ingenieria De Software Para Dummies
 
Estrategias Avanet: Ingeniería de Software
Estrategias Avanet: Ingeniería de SoftwareEstrategias Avanet: Ingeniería de Software
Estrategias Avanet: Ingeniería de Software
 
Patrones
PatronesPatrones
Patrones
 
El Rol de un Arquitecto de Software
El Rol de un Arquitecto de SoftwareEl Rol de un Arquitecto de Software
El Rol de un Arquitecto de Software
 
Agilidad y lean
Agilidad y leanAgilidad y lean
Agilidad y lean
 
Fundamentos de Diseño - Grupo Delta
Fundamentos de Diseño - Grupo DeltaFundamentos de Diseño - Grupo Delta
Fundamentos de Diseño - Grupo Delta
 
Ado.net entity framework
Ado.net entity frameworkAdo.net entity framework
Ado.net entity framework
 
Diseño arquitectonico
Diseño arquitectonico Diseño arquitectonico
Diseño arquitectonico
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
 
Dev dotstar read_principios
Dev dotstar read_principiosDev dotstar read_principios
Dev dotstar read_principios
 
Ingeniería de software y el paradigma orientado a objetos
Ingeniería de software y el paradigma orientado a objetosIngeniería de software y el paradigma orientado a objetos
Ingeniería de software y el paradigma orientado a objetos
 
Investigación de ingeniería de software
Investigación de ingeniería de software Investigación de ingeniería de software
Investigación de ingeniería de software
 
Guía de creación arquitectónica para universidades en mundos virtuales
Guía de creación arquitectónica para universidades en mundos virtualesGuía de creación arquitectónica para universidades en mundos virtuales
Guía de creación arquitectónica para universidades en mundos virtuales
 
No Silver Bullet
No Silver BulletNo Silver Bullet
No Silver Bullet
 
14 arquitectura de sistemas
14 arquitectura de sistemas14 arquitectura de sistemas
14 arquitectura de sistemas
 
Diseño de software
Diseño de softwareDiseño de software
Diseño de software
 
IngenieriaSOFTWARE _ Presentacion2022.pdf
IngenieriaSOFTWARE _ Presentacion2022.pdfIngenieriaSOFTWARE _ Presentacion2022.pdf
IngenieriaSOFTWARE _ Presentacion2022.pdf
 
Software diseño de obras civiles
Software diseño de obras civilesSoftware diseño de obras civiles
Software diseño de obras civiles
 
Tarea semana 1
Tarea semana 1Tarea semana 1
Tarea semana 1
 
Tareasemana1
Tareasemana1Tareasemana1
Tareasemana1
 

Más de Sorey García

Mision inspiración para docentes
Mision inspiración para docentesMision inspiración para docentes
Mision inspiración para docentes
Sorey García
 
NetConfUY: Maximizando la productividad del desarrollo móvil
NetConfUY: Maximizando la productividad del desarrollo móvilNetConfUY: Maximizando la productividad del desarrollo móvil
NetConfUY: Maximizando la productividad del desarrollo móvil
Sorey García
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAML
Sorey García
 
WIE: El poder de transformar al mundo con tecnología
WIE: El poder de transformar al mundo con tecnologíaWIE: El poder de transformar al mundo con tecnología
WIE: El poder de transformar al mundo con tecnología
Sorey García
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
Sorey García
 
Internet de las Cosas y Netduino
Internet de las Cosas y NetduinoInternet de las Cosas y Netduino
Internet de las Cosas y Netduino
Sorey García
 
Misión: Inspiración
Misión: InspiraciónMisión: Inspiración
Misión: Inspiración
Sorey García
 
Codies.Launch()
Codies.Launch()Codies.Launch()
Codies.Launch()
Sorey García
 
Tendencias de movilidad en el mercado masivo y empresarial
Tendencias de movilidad en el mercado masivo y empresarialTendencias de movilidad en el mercado masivo y empresarial
Tendencias de movilidad en el mercado masivo y empresarial
Sorey García
 
[Avanet] Fiesta del Libro y la Cultura Medellín
[Avanet] Fiesta del Libro y la Cultura Medellín[Avanet] Fiesta del Libro y la Cultura Medellín
[Avanet] Fiesta del Libro y la Cultura Medellín
Sorey García
 
MVP Open Day - Best Practices/Experiences
MVP Open Day - Best Practices/Experiences MVP Open Day - Best Practices/Experiences
MVP Open Day - Best Practices/Experiences
Sorey García
 
GWAB: Azure Mobile Services
GWAB: Azure Mobile ServicesGWAB: Azure Mobile Services
GWAB: Azure Mobile Services
Sorey García
 
Similitudes y deferencias en UX para Windows Phone y Windows
Similitudes y deferencias en UX para Windows Phone y WindowsSimilitudes y deferencias en UX para Windows Phone y Windows
Similitudes y deferencias en UX para Windows Phone y Windows
Sorey García
 
Taller MVVM Imagine Camp Medellín (Intermedio)
Taller MVVM Imagine Camp Medellín (Intermedio)Taller MVVM Imagine Camp Medellín (Intermedio)
Taller MVVM Imagine Camp Medellín (Intermedio)
Sorey García
 
Estrategias para desarrollo crossplatform en Windows Phone 8 y Windows 8
Estrategias para desarrollo crossplatform en Windows Phone 8 y Windows 8Estrategias para desarrollo crossplatform en Windows Phone 8 y Windows 8
Estrategias para desarrollo crossplatform en Windows Phone 8 y Windows 8
Sorey García
 
Conociendo el ecosistema de Windows Phone 8 y Windows 8
Conociendo el ecosistema de Windows Phone 8 y Windows 8Conociendo el ecosistema de Windows Phone 8 y Windows 8
Conociendo el ecosistema de Windows Phone 8 y Windows 8
Sorey García
 
Hackaton Globant - Windows Phone (snnipets and tips)
Hackaton Globant - Windows Phone (snnipets and tips)Hackaton Globant - Windows Phone (snnipets and tips)
Hackaton Globant - Windows Phone (snnipets and tips)
Sorey García
 
Windows Phone 8: Tips de Diseño para Desarrolladores
Windows Phone 8: Tips de Diseño para DesarrolladoresWindows Phone 8: Tips de Diseño para Desarrolladores
Windows Phone 8: Tips de Diseño para Desarrolladores
Sorey García
 
JSConfCo: Desarrollo de Aplicaciones para Windows Store con HTML5 y Javascript
JSConfCo: Desarrollo de Aplicaciones para Windows Store con HTML5 y JavascriptJSConfCo: Desarrollo de Aplicaciones para Windows Store con HTML5 y Javascript
JSConfCo: Desarrollo de Aplicaciones para Windows Store con HTML5 y Javascript
Sorey García
 
Windows Phone 8 en Campus Party
Windows Phone 8 en Campus PartyWindows Phone 8 en Campus Party
Windows Phone 8 en Campus Party
Sorey García
 

Más de Sorey García (20)

Mision inspiración para docentes
Mision inspiración para docentesMision inspiración para docentes
Mision inspiración para docentes
 
NetConfUY: Maximizando la productividad del desarrollo móvil
NetConfUY: Maximizando la productividad del desarrollo móvilNetConfUY: Maximizando la productividad del desarrollo móvil
NetConfUY: Maximizando la productividad del desarrollo móvil
 
Introducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAMLIntroducción a Xamarin Forms con XAML
Introducción a Xamarin Forms con XAML
 
WIE: El poder de transformar al mundo con tecnología
WIE: El poder de transformar al mundo con tecnologíaWIE: El poder de transformar al mundo con tecnología
WIE: El poder de transformar al mundo con tecnología
 
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
TechDay 2015 - C# y XAML: El poder de construir aplicaciones en todas las pla...
 
Internet de las Cosas y Netduino
Internet de las Cosas y NetduinoInternet de las Cosas y Netduino
Internet de las Cosas y Netduino
 
Misión: Inspiración
Misión: InspiraciónMisión: Inspiración
Misión: Inspiración
 
Codies.Launch()
Codies.Launch()Codies.Launch()
Codies.Launch()
 
Tendencias de movilidad en el mercado masivo y empresarial
Tendencias de movilidad en el mercado masivo y empresarialTendencias de movilidad en el mercado masivo y empresarial
Tendencias de movilidad en el mercado masivo y empresarial
 
[Avanet] Fiesta del Libro y la Cultura Medellín
[Avanet] Fiesta del Libro y la Cultura Medellín[Avanet] Fiesta del Libro y la Cultura Medellín
[Avanet] Fiesta del Libro y la Cultura Medellín
 
MVP Open Day - Best Practices/Experiences
MVP Open Day - Best Practices/Experiences MVP Open Day - Best Practices/Experiences
MVP Open Day - Best Practices/Experiences
 
GWAB: Azure Mobile Services
GWAB: Azure Mobile ServicesGWAB: Azure Mobile Services
GWAB: Azure Mobile Services
 
Similitudes y deferencias en UX para Windows Phone y Windows
Similitudes y deferencias en UX para Windows Phone y WindowsSimilitudes y deferencias en UX para Windows Phone y Windows
Similitudes y deferencias en UX para Windows Phone y Windows
 
Taller MVVM Imagine Camp Medellín (Intermedio)
Taller MVVM Imagine Camp Medellín (Intermedio)Taller MVVM Imagine Camp Medellín (Intermedio)
Taller MVVM Imagine Camp Medellín (Intermedio)
 
Estrategias para desarrollo crossplatform en Windows Phone 8 y Windows 8
Estrategias para desarrollo crossplatform en Windows Phone 8 y Windows 8Estrategias para desarrollo crossplatform en Windows Phone 8 y Windows 8
Estrategias para desarrollo crossplatform en Windows Phone 8 y Windows 8
 
Conociendo el ecosistema de Windows Phone 8 y Windows 8
Conociendo el ecosistema de Windows Phone 8 y Windows 8Conociendo el ecosistema de Windows Phone 8 y Windows 8
Conociendo el ecosistema de Windows Phone 8 y Windows 8
 
Hackaton Globant - Windows Phone (snnipets and tips)
Hackaton Globant - Windows Phone (snnipets and tips)Hackaton Globant - Windows Phone (snnipets and tips)
Hackaton Globant - Windows Phone (snnipets and tips)
 
Windows Phone 8: Tips de Diseño para Desarrolladores
Windows Phone 8: Tips de Diseño para DesarrolladoresWindows Phone 8: Tips de Diseño para Desarrolladores
Windows Phone 8: Tips de Diseño para Desarrolladores
 
JSConfCo: Desarrollo de Aplicaciones para Windows Store con HTML5 y Javascript
JSConfCo: Desarrollo de Aplicaciones para Windows Store con HTML5 y JavascriptJSConfCo: Desarrollo de Aplicaciones para Windows Store con HTML5 y Javascript
JSConfCo: Desarrollo de Aplicaciones para Windows Store con HTML5 y Javascript
 
Windows Phone 8 en Campus Party
Windows Phone 8 en Campus PartyWindows Phone 8 en Campus Party
Windows Phone 8 en Campus Party
 

Último

La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.
DobbieElfo
 
Business Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business TechBusiness Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business Tech
johnyamg20
 
2024 planificacion microcurricular 7mo A matutino..docx
2024 planificacion microcurricular 7mo A matutino..docx2024 planificacion microcurricular 7mo A matutino..docx
2024 planificacion microcurricular 7mo A matutino..docx
WILLIAMPATRICIOSANTA2
 
CALCULO DE AMORTIZACION DE UN PRESTAMO.pdf
CALCULO DE AMORTIZACION DE UN PRESTAMO.pdfCALCULO DE AMORTIZACION DE UN PRESTAMO.pdf
CALCULO DE AMORTIZACION DE UN PRESTAMO.pdf
cesareduvr95
 
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdfp4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
DavidCamiloMosquera
 
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Juan Martín Martín
 
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
MiNeyi1
 
Papel histórico de los niños, jóvenes y adultos mayores en la historia nacional
Papel histórico de los niños, jóvenes y adultos mayores en la historia nacionalPapel histórico de los niños, jóvenes y adultos mayores en la historia nacional
Papel histórico de los niños, jóvenes y adultos mayores en la historia nacional
BrunoDiaz343346
 
ANALISIS CRITICO DEL PENSAMIENTO COLONIAL Y DESCOLONIZACION
ANALISIS CRITICO DEL PENSAMIENTO COLONIAL Y DESCOLONIZACIONANALISIS CRITICO DEL PENSAMIENTO COLONIAL Y DESCOLONIZACION
ANALISIS CRITICO DEL PENSAMIENTO COLONIAL Y DESCOLONIZACION
carla466417
 
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdfCarnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
EleNoguera
 
REGIMÉN ACADÉMICO PARA LA EDUCACIÓN SECUNDARIA - RESOC-2024-1650-GDEBA-DGC...
REGIMÉN ACADÉMICO PARA LA EDUCACIÓN SECUNDARIA - RESOC-2024-1650-GDEBA-DGC...REGIMÉN ACADÉMICO PARA LA EDUCACIÓN SECUNDARIA - RESOC-2024-1650-GDEBA-DGC...
REGIMÉN ACADÉMICO PARA LA EDUCACIÓN SECUNDARIA - RESOC-2024-1650-GDEBA-DGC...
carla526481
 
Presentación de proyecto en acuarela moderna verde.pdf
Presentación de proyecto en acuarela moderna verde.pdfPresentación de proyecto en acuarela moderna verde.pdf
Presentación de proyecto en acuarela moderna verde.pdf
LuanaJaime1
 
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdfCompartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
JimmyDeveloperWebAnd
 
La necesidad de bienestar y el uso de la naturaleza.pdf
La necesidad de bienestar y el uso de la naturaleza.pdfLa necesidad de bienestar y el uso de la naturaleza.pdf
La necesidad de bienestar y el uso de la naturaleza.pdf
JonathanCovena1
 
Ejercicios-de-Calculo-de-Goteo-Enfermeria1-1.ppt
Ejercicios-de-Calculo-de-Goteo-Enfermeria1-1.pptEjercicios-de-Calculo-de-Goteo-Enfermeria1-1.ppt
Ejercicios-de-Calculo-de-Goteo-Enfermeria1-1.ppt
eliseo membreño
 
Mapa Mental documentos que rigen el sistema de evaluación
Mapa Mental documentos que rigen el sistema de evaluaciónMapa Mental documentos que rigen el sistema de evaluación
Mapa Mental documentos que rigen el sistema de evaluación
ruthmatiel1
 
Hablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes CuadernilloHablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes Cuadernillo
Mónica Sánchez
 
Presentación de la historia de PowerPoint y sus características más relevantes.
Presentación de la historia de PowerPoint y sus características más relevantes.Presentación de la historia de PowerPoint y sus características más relevantes.
Presentación de la historia de PowerPoint y sus características más relevantes.
genesiscabezas469
 
Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.
https://gramadal.wordpress.com/
 
Qué entra en el examen de Geografía.pptx
Qué entra en el examen de Geografía.pptxQué entra en el examen de Geografía.pptx
Qué entra en el examen de Geografía.pptx
saradocente
 

Último (20)

La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.La filosofía presocrática y los filosofos más relvantes del periodo.
La filosofía presocrática y los filosofos más relvantes del periodo.
 
Business Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business TechBusiness Plan -rAIces - Agro Business Tech
Business Plan -rAIces - Agro Business Tech
 
2024 planificacion microcurricular 7mo A matutino..docx
2024 planificacion microcurricular 7mo A matutino..docx2024 planificacion microcurricular 7mo A matutino..docx
2024 planificacion microcurricular 7mo A matutino..docx
 
CALCULO DE AMORTIZACION DE UN PRESTAMO.pdf
CALCULO DE AMORTIZACION DE UN PRESTAMO.pdfCALCULO DE AMORTIZACION DE UN PRESTAMO.pdf
CALCULO DE AMORTIZACION DE UN PRESTAMO.pdf
 
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdfp4s.co Ecosistema de Ecosistemas - Diagrama.pdf
p4s.co Ecosistema de Ecosistemas - Diagrama.pdf
 
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
Soluciones Examen de Selectividad. Geografía junio 2024 (Convocatoria Ordinar...
 
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
1.- manual-para-la-creacion-33-dias-de-manifestacion-ulises-sampe.pdf
 
Papel histórico de los niños, jóvenes y adultos mayores en la historia nacional
Papel histórico de los niños, jóvenes y adultos mayores en la historia nacionalPapel histórico de los niños, jóvenes y adultos mayores en la historia nacional
Papel histórico de los niños, jóvenes y adultos mayores en la historia nacional
 
ANALISIS CRITICO DEL PENSAMIENTO COLONIAL Y DESCOLONIZACION
ANALISIS CRITICO DEL PENSAMIENTO COLONIAL Y DESCOLONIZACIONANALISIS CRITICO DEL PENSAMIENTO COLONIAL Y DESCOLONIZACION
ANALISIS CRITICO DEL PENSAMIENTO COLONIAL Y DESCOLONIZACION
 
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdfCarnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
Carnavision: anticipa y aprovecha - hackathon Pasto2024 .pdf
 
REGIMÉN ACADÉMICO PARA LA EDUCACIÓN SECUNDARIA - RESOC-2024-1650-GDEBA-DGC...
REGIMÉN ACADÉMICO PARA LA EDUCACIÓN SECUNDARIA - RESOC-2024-1650-GDEBA-DGC...REGIMÉN ACADÉMICO PARA LA EDUCACIÓN SECUNDARIA - RESOC-2024-1650-GDEBA-DGC...
REGIMÉN ACADÉMICO PARA LA EDUCACIÓN SECUNDARIA - RESOC-2024-1650-GDEBA-DGC...
 
Presentación de proyecto en acuarela moderna verde.pdf
Presentación de proyecto en acuarela moderna verde.pdfPresentación de proyecto en acuarela moderna verde.pdf
Presentación de proyecto en acuarela moderna verde.pdf
 
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdfCompartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
Compartir p4s.co Pitch Hackathon Template Plantilla final.pptx-2.pdf
 
La necesidad de bienestar y el uso de la naturaleza.pdf
La necesidad de bienestar y el uso de la naturaleza.pdfLa necesidad de bienestar y el uso de la naturaleza.pdf
La necesidad de bienestar y el uso de la naturaleza.pdf
 
Ejercicios-de-Calculo-de-Goteo-Enfermeria1-1.ppt
Ejercicios-de-Calculo-de-Goteo-Enfermeria1-1.pptEjercicios-de-Calculo-de-Goteo-Enfermeria1-1.ppt
Ejercicios-de-Calculo-de-Goteo-Enfermeria1-1.ppt
 
Mapa Mental documentos que rigen el sistema de evaluación
Mapa Mental documentos que rigen el sistema de evaluaciónMapa Mental documentos que rigen el sistema de evaluación
Mapa Mental documentos que rigen el sistema de evaluación
 
Hablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes CuadernilloHablemos de ESI para estudiantes Cuadernillo
Hablemos de ESI para estudiantes Cuadernillo
 
Presentación de la historia de PowerPoint y sus características más relevantes.
Presentación de la historia de PowerPoint y sus características más relevantes.Presentación de la historia de PowerPoint y sus características más relevantes.
Presentación de la historia de PowerPoint y sus características más relevantes.
 
Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.Sesión de clase: El conflicto inminente.
Sesión de clase: El conflicto inminente.
 
Qué entra en el examen de Geografía.pptx
Qué entra en el examen de Geografía.pptxQué entra en el examen de Geografía.pptx
Qué entra en el examen de Geografía.pptx
 

Arquitectura De Software Para Dummies

  • 1. Arquitectura de Software Sorey Bibiana García Zapata
  • 2. Siguiendo mi enfoque pedagógico personal, someteré el tema de la arquitectura de software a la ya típica comparación con la ingeniería civil y el rol de los arquitectos de edificaciones. La razón de este enfoque es simple, una realidad poco conocida o comprendida, es más fácil de asimilar, cuando es mostrada a través de un símil con otra que si conocemos, o bien, con otra que puede intuirse coherentemente usando el sentido común.
  • 3. Empecemos por un par de ideas simples….
  • 4. La arquitectura es un instrumento cuya función principal es la de intervenir en favor del hombre. James M Fitch
  • 5. La arquitectura debe ser una respuesta, no una imposición. La mayoría de los arquitectos que construyen edificios extraños asegura que lo hace porque ahora la tecnología lo hace posible. Eso me parece absurdo. Poder hacer una cosa no legitima hacerla. Necesitamos soluciones para los problemas reales, no inventar problemas para poder empatar con nuevas soluciones Glenn Murcutt
  • 6. Esta última comparación podrá no gustarle a muchos arquitectos profesionales, pero en realidad tiene mucho sentido, en tecnología, tanto como en otros escenarios… “Poder hacer una cosa no legitima hacerla” Necesitamos soluciones para los problemas reales, no inventar problemas para poder empatar con nuevas soluciones!
  • 7. Viéndolo de esa forma, en realidad el rol de un arquitecto de edificaciones y un arquitecto de software parece enfrentar los mismos retos
  • 8. Por lo que es claro, que se debe contar, con un conjunto básico de habilidades y conocimientos para ejercer este tipo de roles
  • 9. Y es que no es lo mismo construir esto…
  • 12. Que se necesita para construir algo asi?
  • 16. Cada escenario plantea retos, condiciones y necesidades diferentes! Que tal si los vemos otra vez, mientras nos preguntamos… Que herramientas, personas, presupuesto, conocimiento y tiempo necesitamos para cada escenario?
  • 17.
  • 18. Pues bien, podemos decir sin miedo a equivocarnos, que todas las consideraciones que se nos ocurran con respecto a definir la arquitectura de edificaciones, deberán ser tenidas en cuenta también al momento de definir la arquitectura de software
  • 19. Conocen la Mansión Winchester?
  • 20. En 1884, Sarah L. Winchester enviuda quedando en sus manos la herencia del acaudalado heredero de los rifles Winchester. Pero tras tan inmensa fortuna, y según una vidente de la época a la que la desdichada viuda consultó, las almas perdidas de aquellos que murieron frente a alguno de estos rifles se encontraban en pena. Años atrás había perdido también a su hija Annie y ahora, la muerte de su marido terminó por desequilibrarla. Sarah compró un extenso terreno en California, e hizo levantar una casa que hubo de estar construyéndose hasta el mismo día de su muerte, 38 años después, en 1922. Ya que según aquella vidente, sólo así las almas encontrarían donde morar mientras no hallaran el reposo eterno.
  • 21. La arquitectura de esta mansión sorprende a todos y se escapa a los límites de la razón. Y no es tanto porque esta mansión estilo victoriano tenga 160 habitaciones, tres ascensores, 47 chimeneas, sistema de alcantarillado y de calefacción, luces de gas que se encienden apretando un botón, (todo esto adelantado a su época), sino porque en ella se puede encontrar ventanas de dan a paredes, escaleras que no llevan a ninguna parte, puertas en medio de las ventanas en la fachada de los pisos superiores y otras rarezas.
  • 22. Pero… Qué tiene que ver esta historia con la Arquitectura de Software?
  • 23. Pues bien, resulta que esta situación en el contexto del desarrollo de software, es más común de lo que debería… Cuando un desarrollador es asignado a la tarea de mantener y evolucionar un sistema legado, cuya arquitectura tiene fallas o incluso que simplemente no está documentada, elige reconstruir partes o crear sus propias rutas dentro del código…
  • 24. Lo que ocurre finalmente es que las aplicaciones de software con el tiempo, terminan convirtiéndose en una colcha de retazos o bien, en un laberinto como la Mansión Winchester, en donde si no tienes un guía y te pierdes, nadie te asegura que vuelvan a encontrarte.
  • 25. quot;Programar sin una arquitectura en mente es como explorar una gruta sólo con una linterna: no sabes dónde estás, dónde has estado ni hacia dónde vas” Danny Thorpe
  • 26. De aquí, que la arquitectura represente entonces, la base de un sistema de software y que deba ser construida pensando tanto en satisfacer las necesidades actuales, como en proporcionar al software las capacidades necesarias para permitir su mantenimiento y evolución de acuerdo a las necesidades del negocio y las solicitudes de los clientes.
  • 27. Cuando se piensa en la arquitectura de un sistema, debe tomarse en cuenta primero, lo más crítico e importante… Y luego complementar para satisfacer las necesidades generales del sistema
  • 28. El arquitecto de software es entonces, el encargado de establecer a que nivel, con que estrategia, y que herramientas son necesarias para realizar una implementación que satisfaga los requisitos funcionales y no funcionales de los sistemas.
  • 29. Y además que debe ser una persona capaz de identificar las necesidades de los negocios, las habilidades de su equipo de trabajo y la viabilidad de las tecnologías disponibles para el desarrollo de software
  • 30. Un buen arquitecto debe estar en capacidad de entender todas las condiciones a las que se verá sometido un sistema y proponer una solución acorde a cada escenario en particular.
  • 31. Por tanto, la madurez de un arquitecto dará a las aplicaciones de software que tenga a su cargo, una especificación coherente, para enfrentar un conjunto de riesgos mucho más reducido, que en el caso de un arquitecto aprendiz
  • 32. Y es que… “Desarrollar software de calidad basado en requisitos y caminar sobre el agua son cosas muy fáciles... si ambos están congelados“ Pero esa no es la situación que se presenta en el desarrollo de software; construir software por el contrario es un escenario evolutivo y cambiante, situación para la cual un arquitecto de software debe estar preparado.
  • 33. Ahora bien, a diferencia de los arquitectos de edificaciones, los arquitectos de software son los encargados de construir la base de la arquitectura de los proyectos…
  • 34. Esta es una de las razones por las que es fácil pensar en que un Arquitecto de Edificaciones puede ser bueno sin tener que haber pegado jamás un ladrillo sobre otro, pero no podemos pensar lo mismo de un Ingeniero de Software que no haya programado jamás… IDEAS ’09 XII Conferencia Iberoamericana de Ingeniería de Requisitos y Ambientes de Software
  • 35. Ahora bien, al igual que los trabajadores de una obra, un equipo de desarrollo debe tener las habilidades necesarias para realizar desarrollo del sistema y seguir la indicaciones del arquitecto, buscando el éxito del proyecto.
  • 36. Otra parte de nuestro símil está a en los planos y maquetas usados por los arquitectos para especificar y detallar la forma en que las edificaciones serán construidas.
  • 37. Al igual que ellos, los arquitectos de software usan modelos que representan las especificaciones y necesidades técnicas de los sistemas.
  • 38. La construcción de estos artefactos, en ambos contextos requiere de herramientas, habilidades y conocimientos, y servirá como guía de la en el proceso de construcción
  • 39. Y así como los planos, diseños y maquetas muestran diferentes vistas de un mismo lugar…
  • 41. …como una visión completa…
  • 44. …o bien, con un alto nivel de detalle…
  • 45. …los diagramas a través de los cuales se representa el diseño y distribución del software, pueden mostrar diferentes vistas de un mismo sistema y de las condiciones que existen en el entorno donde se depliega
  • 46. El modelo 4 + 1 vistas, es una propuesta que establece las diferentes perspectivas a través de las cuales se puede representar el diseño y arquitectura de un sistema de software Kruchten P. Architectural Blueprints—The “4+1” View Model of Software Architecture. IEEE Software, November 1995, 12 (6), pp.42-50.
  • 47. Esta propuesta presenta su propio esquema de modelado, pero como bien sabemos, la notación más reconocida para el modelamiento de sistemas de software es el UML * * UML es un lenguaje de modelado visual que se usa para especificar, visualizar, construir y documentar artefactos de un sistema de software, y se usa para entender, diseñar, configurar, mantener y controlar la información sobre los sistemas a construir.
  • 48. Sin embargo, cada una de las vistas del modelo 4 + 1, puede equiparse contra uno o varios diagramas de UML Vista UML Escenarios Casos de Uso Lógica Clases, de Estados y Colaboración Desarrollo Componentes Física Despliegue Procesos Actividad, Estados, Secuencia http://jgarzas.googlepages.com/4mas1
  • 49. De esta forma es posible representar las diferentes perspectivas de un sistema desde 2 propuestas de trabajo conocidas y enfocadas a satisfacer las necesidades de los diferentes participantes del proceso de desarrollo
  • 50. Esta es una visión inicial acerca de la arquitectura de software, para profundizar en ella debemos detallar de una forma mas específica, cada uno de los conceptos que hemos mencionado. Sin embargo eso será en una próxima oportunidad
  • 51. Gracias!!! ‘ No olvides visitar mi blog y dejarme tus comentarios http://soreygarcia.blogspot.com Hasta pronto!