0% encontró este documento útil (0 votos)
16 vistas101 páginas

Parcial 2

El documento describe la importancia de los diagramas de implementación y despliegue en la arquitectura de software, enfatizando la identificación de componentes y requisitos funcionales. Se discuten conceptos como componentes, interfaces, patrones de diseño y arquitectónicos, así como la calidad del software y su relación con la satisfacción de expectativas. Además, se abordan diferentes estilos arquitectónicos, incluyendo SOA y arquitecturas basadas en eventos, y la necesidad de un enfoque estructurado en la implementación y modelado de sistemas.

Cargado por

2995019300101
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
16 vistas101 páginas

Parcial 2

El documento describe la importancia de los diagramas de implementación y despliegue en la arquitectura de software, enfatizando la identificación de componentes y requisitos funcionales. Se discuten conceptos como componentes, interfaces, patrones de diseño y arquitectónicos, así como la calidad del software y su relación con la satisfacción de expectativas. Además, se abordan diferentes estilos arquitectónicos, incluyendo SOA y arquitecturas basadas en eventos, y la necesidad de un enfoque estructurado en la implementación y modelado de sistemas.

Cargado por

2995019300101
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Diagrama de implementacion o de despliegue

Estos mustran todo los elemento de software que intervengan en la solucion, esto es ya modelar
cosas que ya son componentes fisicos. Estos que estoy modelando van a existir. Van a formar
parte de lo fisico.

Aca tiene que estar presentes los drivers requisitos funcionales

En los archivos de codigo es donde se van a modelar que requisitos funcionales, estos se
combierten en componentes.
Que es una realizacion? un componente hace -> realiza

Estamos obligados a identificar todos los elementos de software

Un componente -> archivo que puede ser de codigo, es la personificacion (donde trende las
clases y metodos) de una o mas clases.

Diagrama de clases -> personifica el modelado de los drivers requisitos funcionales


Realizacion

Una clase realiza una interfaz, esto es diagrama de clases


Hay una clase X que depende de la interfaz

Ejemplo:
El cuadrado es el componente

La linea es la realizacion

La esfera es la interfaz
La clase realiza interfaz

Un componente es la personificacion (el codigo de las clases)

Componente que requiere la interfaz

Las interfaces son los drivers RF


La que usaremos en el curso es la iconic form

Un componente pedido que:

Realiza la interfaz AsignacionItem


Realiza la interfaz Seguimiento

Requiere de una interfaz Persona

Requiere una interfaz Factura

Requiere una interfaz ItemPedido


Esto es lo que la arquitectura debe de gritar el negocio y esto es el diagrama de componentes.
La vista es la implementacion de la estructura, las vistas representan una vista parcial de la
arquitectura, muestra partes especificas de esa vista arquitectonica, las vistas son la
implementacion de esa estructura.

En el curso solo nos interesan estas 3 estructuras

Vistas
Patrones
A escala son los mas inferiores.

Un patron de diseño interesa a la clase o clases. Afecta a una o mas clases, no afecta a un
componente completo como tal. Se pueden implementar a nivel de metodos o componentes de
una clase.
Impacta al componente en su comportamiento en su totalidad. No son la arquitectura, habla de
cuestiones tecnicas he implementacion

Un componente es la personificacion de una o mas clases, un componente es un archivo de


codigo que esta implementando a esas clases. El patron de diseño va directo sobre los metodos
de esa clases en cuestion, mientras que el patron arquitectonico nos referimos a todo el
componente.
Comparten esos drivers. El estilo es el que hace posible que las aplicaciones trabajen bien en
base a esos atributos y caracteristacas que son los drivers que nosotros ya identificamos, el
estilo es el que rige.

El estilo es a nivel de diseño


Un microservicio es estilo arquitectonico? es un patron de arquitectonico.
La candidata es cuando partimos de cero. Cuando no hay ningun desarrollo anterior.

Es cuando ya tenemos un modelo.


Repository
Los componentes intereactuan mediante las conexiones de datos, los datos que se hacen
persistencintes y compartidos o distribuidos.

wo

Que pasaria con el negocio si no persisten los datos?

El almacen es el centro de la arquitectura


Este se funda en el almacenamiento de los datos, es el cliente el que va a acceder a ese almacen
de datos, hay dos tipos de estos:

El repositorio pasivo

El repositorio pizarron
Aca no se conoce cual es la solucion.
Arquitectura basa en batos

En capas porque es un sitio web

"Agregar al carrito" arquitectura basa en eventos


Arquitectura en/o por capas

Servicios de utiliria -> frameworks

La capa externa se debe de comunicar con su inmediata anterior, una capa no puede obviar la
que tiene abajo para comunicarse con otra

Una capa de aplicacion puede replicarse

Hace referencia a una estructura de componentes(componentes) y conectores(cumunicacion


entre capas).
Esto es un diagrama de bloques
SOA coexiste con o por capas
Ejemplo de diagrama de bloques
Solucion problema 1:
Flujo de datos
Estilo arquitectonico centrada en como fluyen los datos
Los componentes los llamaremos filtros

Tuberias son las conexiones entre los componentes o entre los filtros

Se centra en la transformacion de los datos

Se puede dar en lotes o de manera secuancial

Adecuada para sistemas con trasnformacion de datos en pasos sucesivos como procemos,
donde los datos de entrada se transforman en datos de salida mediante una seria de
componentes para el calculo o manipulacion

Aca hay unos en flujo secuencial y otros en paralelo


Cuando se conoce la secuencia de la solucion en una serie de pasos seguidos
Flujos secuenciales:
Solucion del ejercicio 1:
Posible solucion:

Flujo contiguo = secuencial

Tambien puede darse flujos secuenciales y paralelos

Aca no deben de haber retornos ni condiciones.

Hay que forzar un comportamiento secuencial


Una arquitectura que va a ser temporar (migracion de un sistema a otro)

Tambien los bloques se pueden clasificar

Esta coexiste en una arquitectura por capas.Se da por bloques (lotes)

Repaso de lo que llevamos visto:

Los de repositorio

Capas y cliente servidor


Los centrados en el flujo de datos

Llamada retorno
Invocacion sincrona entre componentes

Cuando hay una solicitud y tiene que haber una respuesta


Estilo SOA

Comunicacion entre servicios

Siempre se implementa con capas y donde la capa de servicios es la capa de aplicacion

Cada servicio corresponde a un proceso de negocio


Tambien es basada en eventos
Patrones arquitectonicos-> afectan al componente o a un conjunto de estos

Patrones de diseño -> afecta una funcion o metodo

RPD -> vazado en modelo cliente servidor

Una maquina pueda ejecutar codigo o metodos de otra maquina


MVC es un patron arquitectonico

Los RF estan en MODELO


El modelo tiene la logica del negocio (la base de datos)

Patrones arquitectonicos que ayuda a implementar una arquitectura llamara retorno:

rpc

orientada a objetos

modelo vista controlador

que ayudan a implementar una arquitectura llamada-retorno


Basada en eventos
Soa tambien es basada en eventos porque responde a un bus y tiene una intereaccion con
mensajes sincronos o asincronos.

Cuando la parte centrar es capturar la persistencia de los eventos

Evento podria ser un envio de mensajes


Calidad de software
Eficaz -> hace lo que se espera que haga

Los patrocinadores deben de ser los stacke holders de alto nivel


Desde el principio definiendo bien el core y su primera descomposicion

Si se habla de la implementacion -> cliclo de vida del software

Si se habla de la arquitectura -> nuestros pasos


Eficiente -> capaz de lograr lo que se desea con la menor cantidad de recursos(tiempo y dinero)
Escenarios atributos de calidad (EAC)
Aca los drivers son bien precisos, estos se centran en los atributos
Estilo arquitectonico basado en eventos
Ya vimos SOA
Estas pueden tener dificultad al modelarse el diagrama de despliegue
Aca hay drivers de restriccion.

Al lado derecho se pueden observar diagramas de secuencias.

Cuando hay lineas rectas es porque se asume que no asumen tiempo (es inperceptible)

Linea inclinada:Consumen cierta cantidad de tiempo (puede darse o no)


SOA tambien es una arquitectura en eventos pero tambien utiliza una en capas

Calidad de software
Que es calidad?

R/Que se pueda medir que tan bueno es un producto, la calidad conlleva la satisfaccion de
nuestras espectativas.

La calidad es un medio o un fin?

R/ Para mi es un fin, osea quiero que el producto final sea de calidad, tambien es un medio
porque todo el proceso que permitio conseguir ese producto final toda la calidad tuvo que
estar presente.

Porque calidad de software?

R/

El software es un producto o servicio?

R/

Que sistema de calidad conoce?

R/

Como se aplica la calidad de software?


R/

Pasos basicos de calidad

R/

Aca hubo un error en la identificacion del core del negocio y en la la primera descomposicion,
tambien los rf no fueron bien identificados.
Proceso eficaz -> Proceso que al final deberiamos de obtener lo que se espera

Ese software tiene que producir algo esperado por el cliente y nosotros como ingenieros
debemos entenderlo.

Los requisitos no funcionales -> son los que estan relacionados con los temas de calidad.

También podría gustarte