Вы находитесь на странице: 1из 41

Arquitectura de Software

(Estilos Arquitectnicos)

Universidad de los Andes


Demin Gutierrez Mayo !"" 1

Diseo Arquitectnico
Arquitectura del Software

Dise#o Arquitectnico

Estilos
Arquitectnicos

*ramewor+s (Marcos)

)atrones de Dise#o

$i%liotecas & 'om(onentes

'lases & *unciones


2

Diseo Arquitectnico

,-u. es un estilo/ 0 ,-u. es un estilo arquitectnico/


3

Estilos Arquitectnicos

Deconstructivismo

Art Deco
4

Estilos Arquitectnicos

1os in2enieros civiles3 cuando tienen que construir un (uente 2eneralmente seleccionan un ti(o de (uente determinado que se ada(te a las necesidades del conte4to y del (ro%lema a resolver555
5

Estilos Arquitectnicos

Un estilo arquitectnico define una familia de sistemas (cierto ti(o de sistemas) en t.rminos de patrones estructurales3 de control3 de comunicacin3 etc.tera 1a arquitectura de un sistema de software (uede %asarse en uno (o en varios) modelos o estilos arquitectnicos %ien conocidos
Fuente: Sommerville ('a( "")
6

Estilos Arquitectnicos

Un estilo arquitectnico describe:


Un con6unto de com(onentes (con sus res(onsa%ilidades) Un con6unto de conectores entre com(onentes (comunicacin3 coordinacin3 coo(eracin3 etc.tera) 7estricciones que definen cmo se inte2ran los com(onentes (ara formar el sistema Modelos que (ermiten com(render las (ro(iedades de un sistema 2eneral en funcin de las (ro(iedades conocidas de las (artes que lo inte2ran
Fuente: )ressman ('a( "!)
7

Estilos Arquitectnicos

Para todas las arquitecturas (estilos arquitectnicos) mostrados a continuacin es necesario preguntarse:

Qu venta!as tiene el estilo" Qu desventa!as tiene" En qu conte#tos aplica"

Otros aspectos de la gestin de proyectos?


Una reflexin final sobre lo profundo del abismo
Se2uridad 'onfia%ilidad 7endimiento Usa%ilidad

Manteni%ilidad

Eficiencia (memoria3 e6ecucin)

*acilidad de )rue%a

)orta%ilidad

Dis(oni%ilidad

7eusa%ilidad

Escala%ilidad

Modifica%ilidad

E4tensi%ilidad

otras$$$

,De qu. forma im(acta el uso un estilo en las propiedades del sistema/
9

Estilos Arquitectnicos Una arquitectura monol;tica descri%e una a(licacin en la que toda la funcionalidad del sistema (e65 acceso a datos3 interfaz de usuario3 l2ica3 etc.tera) est im(lementada y mezclada en una sola ca(a5 Esto, en la gran mayora de los casos, no es una buena idea... Por qu?
Tip: Recuerdan el ejemplo del sistema de empaquetamiento de Sommerville y la discusin subsecuente?

%istema (&'D' E( %)%&E*A)


10

Fuente: 8tt(9&&en5wi+i(edia5or2&wi+i&Monolit8ic:a((lication

Estilos Arquitectnicos ( epositorio ! "i#arrn$


Aplicacin + *odulo , Aplicacin + *odulo Aplicacin + *odulo .

1epositorio
($ase de Datos3 Sistema de Arc8ivos3 Memoria 'om(artida3 etc.tera)

Aplicacin + *odulo /

$$$

Aplicacin + *odulo 0

1epositorio + Pi2arron

11

Estilos Arquitectnicos (%liente ! &er'idor$


)eticin 7es(uesta 'liente "

1ed
'liente

Servidor "

$$$

=nternet3 1A<3 >A<

$$$

'liente <

Servidor <

3liente %ervidor

12

Estilos Arquitectnicos (%liente ! &er'idor$


)eticin 7es(uesta

1ed 'liente Servidor

1iviano9 12ica de la A(licacin solamente del lado del servidor )esado9 12ica de la A(licacin (arcial o totalmente del lado del cliente

3liente 4(iviano5 vs 3liente Pesado

13

Estilos Arquitectnicos (%liente ! &er'idor ( )E*$

Fuente Ima en: 8tt(9&&www5mail4mail5com&curso0(8(0mysql0sql0?&arquitectura0%ase0datos0we%

14

Estilos Arquitectnicos (%liente ! &er'idor ( )E*$

Fuente Ima en: 8tt(9&&www5mail4mail5com&curso0(8(0mysql0sql0?&arquitectura0%ase0datos0we%

15

Estilos Arquitectnicos (+uber,as y -iltros$


*iltros (Cransformacin de Datos & =nformacin) *iltro @ Cu%er;as (*lu6o de Datos & =nformacin)

*iltro "

*iltro B

*iltro A

*iltro

&uber6as 7 8iltros
16

Estilos Arquitectnicos (+uber,as y -iltros$

&uber6as 7 8iltros
17

Estilos Arquitectnicos (+uber,as y -iltros$

&uber6as 7 8iltros
18

Arquitectura (E.emplo$ AP)


'a(a " (A((lication (ro2rammin2 interface) Mas Se2uridad & )roteccin Menos A%straccin

)nterfa2

'a(a

$$$
'a(a <

Arquitectura por 3apas

19

Arquitectura (E.emplo$

!apa de Presentacin (=nterfaz Grfica de Usuario) (DCM13 Swin23 -t3 GCE3 etc.tera)

!apa de Proceso " #e ocio (12ica & 7e2las de <e2ocio)

!apa de Persistencia

$D

Arquitectura a tres 'a(as (Muy utilizado en a(licaciones em(resariales)


20

Arquitectura (E.emplo con m/s detalle$

Servlets

A(licacin Modelo de Dominio

'ledaCa2s

<ave2ador >E$

MG' 'ledaMG' (Struts") o Ec8o

Di%ernate

Documentos

FD$'

$D

'leda'ore

Motor de >or+flow ('leda*low3 'ledaSc8eduler y 'leda$ase)

Arquitectura a tres 'a(as (Muy utilizado en a(licaciones em(resariales)


21

Estilos Arquitectnicos (Arquitectura por %apas$

Arquitectura por 3apas

22

Estilos Arquitectnicos (Arquitectura por %apas$

Arquitectura por 3apas

23

Estilos Arquitectnicos (%ontrol %entrali#ado ( &,ncrono$

)ro2rama )rinci(al

7utina "

7utina

7utina @

7utina "5"

7utina "5

7utina 5"

7utina 5"

7utina @5"

7utina @5

3ontrol 3entrali2ado

24

Estilos Arquitectnicos (%ontrol %entrali#ado ( As,ncrono$


)rocesos Ci(o " (E69 Sensores) )rocesos Ci(o B (E69 Actuadores)

3ontrolador del %istema

)rocesos Ci(o (E69 'lculo)

)rocesos Ci(o @ (E69 *allos)

)rocesos Ci(o A (E69 *allos)

3ontrol 3entrali2ado
25

Estilos Arquitectnicos (&istemas Dirigidos por E'entos$


'ada su%sistema 2enera eventos se2Hn su condicin y define que eventos de otros su%sistemas desea atender

Su%sistema "

Su%sistema

555

Su%sistema <

*ane!ador de Eventos

El mane6ador de eventos se encar2a de enviar los eventos 2enerados a aquellos sistemas interesados en reci%irlos
26

Estilos Arquitectnicos (0nterprete ! 1/quina 2irtual$

)ro2rama a =nter(retar

Datos (Estado del )ro2rama)

Dardware Simulado (')U3 dis(ositivos3 etc) Mquina Girtual Dardware 7eal (')U3 dis(ositivos3 memoria3 etc)
27

Estilos Arquitectnicos (0nterprete ! 1/quina 2irtual$

Write once, run anywhere %un *icros7stems

28

Estilos Arquitectnicos (0nterprete ! 1/quina 2irtual$

Write once, run anywhere %un *icros7stems

29

Estilos Arquitectnicos (0nterprete ! 1/quina 2irtual$


'di2o Fava *oo56ava 'di2o Scala *oo5scl 'di2o 'lo6ure *oo5cl6 'di2o F7u%y *oo5ru%y 'di2o Fyt8on *oo5(8y

'om(ilador Fava (6avac)

'om(ilador Scala (555)

'om(ilador 'lo6ure (555)

'om(ilador F7u%y (555)

'om(ilador Fyt8on (555)

Fava $yte 'ode

9
Uni4 FGM 1inu4 FGM >indows FGM Mac FGM Fava 7untime

(a fle#ibilidad de la arquitectura :ava


30

Estilos Arquitectnicos ( "% ! 10$

7)'9 7emote )rocedure 'all 7M=9 7emote Met8od =nvocation


31

Estilos Arquitectnicos ( "% ! 10$

7)'9 7emote )rocedure 'all 7M=9 7emote Met8od =nvocation


32

Estilos Arquitectnicos (Arquitecturas de Ob.etos Distribuidos ! %O *A$


I%6eto" (=nstancia) I%6eto (=nstancia) I%6eto@ (=nstancia) I%6eto < (=nstancia)

<odo "

<odo

<odo <

7ed ($us software) El nodo cliente utiliza (de forma trans(arente) los o%6etos que e4iste y estn corriendo en los dems nodos

<odo 'liente
33

Estilos Arquitectnicos (&ist3 Distribuidos ! Arquitecturas "eer +o "eer$


) Un (ar (uede 6u2ar un rol de cliente y&o de servidor3 de(endiendo de las necesidades del momento )A )" )J )K

)B

)@

)L

)?

'ada uno de los (ares descu%re a sus otros (ares y esta%lecen cone4iones al mismo nivel (no de forma 6errquica) coo(erando (ara lo2rar un o%6etivo determinado

34

Estilos Arquitectnicos (&ist3 Distribuidos ! Arquitecturas "eer +o "eer$


) )A Un MservidorN (uede servir (ara coordinar el descu%rimiento de los (ares )" %ervidor + 3oordinador )J )K

)@

)L

)?

'ada uno de los (ares descu%re a sus otros (ares y esta%lecen cone4iones al mismo nivel (no de forma 6errquica) coo(erando (ara lo2rar un o%6etivo determinado

35

Estilos Arquitectnicos (Arquitectura basada en "lugins$ AP)


(A((lication (ro2rammin2 interface) =nterfaz %ien definida

Fuente: 8tt(9&&en5wi+i(edia5or2&wi+i&)lu2in

36

Estilos Arquitectnicos ("lugins ! Eclipse$

Una estrate2ia %asada en (lu2ins 8ace que un sistema (ueda ser fcilmente e4tendido y com(lementado (or terceras (artes

37

Estilos Arquitectnicos ("lugins ! Eclipse$

38

Estilos Arquitectnicos (Arquitecturas de eferencia$ <ormalmente se o%tienen (or medio del estudio de una clase de a(licacin (de un dominio en (articular) 7e(resentan una arquitectura ideal que incluye todas las caracter;sticas que cierto ti(o (clase) de sistema (odr;a incor(orar
39

4ecturas ecomendadas

Sommerville3 =n2enier;a del Software3 'a(;tulos ""3 " y "@ (En ese orden de (rioridades) )ressman3 =n2enier;a del Software3 'a(;tulo "! Mary S8aw3 David Garlan3 Software Arc8itecture )ers(ectives on an Emer2in2 Disci(line (Est en la %i%lioteca)
8tt(9&&en5wi+i(edia5or2&wi+i&Arc8itectural:(attern:(com(uter:science)

)atrones Arquitectnicos

40

5racias

$%racias&

41

Вам также может понравиться