SlideShare ist ein Scribd-Unternehmen logo
1 von 16
Downloaden Sie, um offline zu lesen
DISEÑO ARQUITECTÓNICO
DE SOFTWARE Docente: Magemyl Egaña
Ingeniería del software II
PNFI-UNEXCA
DEFINICIÓN DAS
El diseño arquitectónico del software DAS, define la
arquitectura, componentes, interfaces y otras
características de un sistema o componente de
este.
Es la etapa del proceso de ingeniería de software,
donde se expresa un nivel de abstracción mayor en
comparación al modelado de negocio y la
ingeniería de requisitos y esta directamente
relacionado con el desarrollo del sistema.
"La arquitectura de
software muestra
las estructuras de
un sistema,
compuestas de
elementos con
propiedades
visibles de forma
externa y las
relaciones que
existen entre
ellos”
Leonard Joel (Len) Bass."
MÉTODO Y PRODUCTO DAS
En el método "Blue Watch" de
Jonas Montilva (2004), se
denomina "Diseño Arquitectónico"
y es "la fase donde se elaborar un
diseño de la arquitectura de la
aplicación que sea apropiada a los
requisitos especificados y que
establezca los subsistemas de la
aplicación, los componentes de
cada subsistema, las conexiones
entre estos componentes y las
restricciones que regulan la
arquitectura.
01
El producto principal es el DAS o
Diseño de la Arquitectura del
Software, donde se describe la
arquitectura de la aplicación.
02
FASE 3:
DAS
Definición de las metas de diseño.
Identificación de subsistemas.
Descripción de vistas arquitectónicas.
Evaluación de la arquitectura.
01
02
03
04
PASOS PARA HACER DAS
DEFINICIÓN DE METAS DE
ARQUITECTURA
Determinar que
requisitos del ERS -
ECU se relacionan con
la arquitectura del
sistema.
Enumerar las posibles
metas de calidad de la
arquitectura del
sistema.
Seleccionar aquellas
metas de diseño que
sean factibles y
describir.
cada meta de diseño


01 02 03
IDENTIFICACIÓN DE
SUBSISTEMAS
Definir los criterios y/o
estilos arquitectónicos más
apropiados para dividir el
sistema
01
Dividir el sistema en
subsistemas usando los
criterios y/o estilos
seleccionados
02
DESCRIPCIÓN DE VISTAS
Elaborar la vista arquitectónica
de uso.
01
02
03
04
Elaborar la vista arquitectónica
lógica (estructural).
Elaborar la vista arquitectónica
de proceso (comportamiento).
Elaborar la vista arquitectónica
de desarrollo o implementación
(componentes)
05 Elaborar la vista arquitectónica
de despliegue (física)
Evaluación de
la Arquitectura
Seleccionar un método de
evaluación de arquitecturas
01
Aplicar el método para
evaluar la arquitectura
propuesta
02
VISTA
4+1
La arquitectura de software es considerada como el diseño de más alto
nivel de un sistema, luego de la realización del modelado del negocio y
la ingeniería de requisitos y una manera muy práctica y conocida de
representarla en a través del “Modelo de Vistas de Arquitectura 4+1”
un estándar creado en 1995 por el ingeniero canadiense Philippe
Kruchten para “describir la arquitectura de sistema de software,
basado en el uso de múltiples puntos de vistas concurrentes”; y que se
usa para estructurar y organizar el software en el entorno de desarrollo
a través de cuatros vista (lógica, proceso, desarrollo y física) y una vista
adicional de escenarios para unir las 4 vistas anteriores. La
arquitectura 4+1 es importante para identificar las soluciones sobre las
preocupaciones de cada uno de los involucrados en el proceso de
ingeniería de software.
VISTA
4+1
REF. vista de Kruchten
VISTAS ARQUITECTÓNICAS
1)Vista lógica: Representa lo que el sistema debe hacer y las funciones y servicios
que ofrece, proporcionando un modelo estático de las clases principales y sus
relaciones. Esta vista muestra la funcionalidad que el sistema proporcionará a los
usuarios finales a través del diagrama de clase, diagrama de comunicación y
diagrama de secuencia.
2)Vista de proceso: enfocado en el comportamiento del sistema, mostrando los
procesos y las tareas que hay en él y la forma en que se comunican entre ellos. Toma
en cuenta los aspectos dinámicos del sistema y algunos requisitos no funcionales
como rendimiento, concurrencia, distribución, escalabilidad, disponibilidad,
integridad del sistema, tolerancia a fallas. Se representa a través del diagrama de
actividad y el diagrama de estados.
3)Vista de desarrollo o despliegue: Modela la arquitectura desde la perspectiva del
programado y se ocupa de la gestión del software mostrando como está organizado
el código de la aplicación, en lenguaje de componentes, paquetes, librerías y la
dependencia entre ellos. Se representa a través del diagrama de componentes y
paquetes.
4)Vista física o de distribución: muestra todos los
componentes físicos del sistema así como sus conectores
entre componentes que conforman la solución (incluyendo
servicios), es decir los procesadores, dispositivos y enlaces
en el ambiente operativo del sistema, apoyado en el
diagrama de despliegue.
5) Vista de escenarios: esta vista es representada a través de
los casos de uso y explica cómo funcionan todas las vistas
juntan, es decir une y relaciona las 4 vistas (lógica, proceso,
despliegue y física). Los escenarios describen secuencias de
interacciones entre objetos y entre procesos y ayudan a
validar el diseño de la arquitectura
VISTAS ARQUITECTÓNICAS
PATRÓN DE DISEÑO
MODELO-VISTA-CONTROLADOR
LMVC es un patrón de arquitectura, un modelo o guía que expresa cómo
organizar y estructurar los componentes de un software, sus
responsabilidades y las relaciones existentes entre cada uno de ellos.
Su nombre, MVC, parte de las iniciales de Modelo-Vista-Controlador (Model-
View Controller, en inglés), que son las capas o grupos de componentes en
los que se organizan las aplicaciones bajo este paradigma de programación.
Es a menudo considerado también un patrón de diseño de la capa de
presentación, pues define la forma en que se organizan los componentes de
presentación en sistemas distribuidos.
La arquitectura MVC propone, independientemente de las tecnologías o
entornos en los que se base el sistema a desarrollar, la separación de los
componentes de una aplicación en tres grupos (o capas) principales: el
modelo, la vista y el controlador, describiendo cómo se relacionarán entre
ellos para mantener una estructura organizada, limpia y con un acoplamiento
mínimo entre las distintas capas. FUENTE: JOSÉ MARÍA AGUILAR
HTTPS://WWW.CAMPUSMVP.ES/RECURSOS/POST/QUE-ES-EL-PATRON-MVC-
EN-PROGRAMACION-Y-POR-QUE-ES-UTIL.ASPX
El Controlador, tiene acceso bidireccional al Modelo, es
decir, será capaz tanto de actualizar su estado, invocando
por ejemplo métodos o acciones incluidos en su lógica
de negocio, como de consultar la información que sea
necesaria para completar sus tareas.
El Controlador es el encargado de seleccionar la Vista
más apropiada en función de la acción llevada a cabo por
el usuario, suministrándole toda la información que
necesite para componer la interfaz. Para pasar esta
información, el Controlador puede usar clases del
Modelo o clases específicamente diseñadas para ello,
denominadas View-Models, que contendrán toda la
información que la Vista necesite y mantendrá a ésta
aislada de los cambios en el Modelo. La responsabilidad
de la Vista, por tanto, se reduce a generar la interfaz
partiendo de los datos que le suministre el controlador.
01
02
03
En el diagrama, se muestran las acciones e información
procedentes del usuario que serán recogidas
exclusivamente por los Controladores. Ningún
componente de otra capa debe acceder a los datos
generados desde el cliente, de la misma forma que sólo
los componentes de la Vista estarán autorizados a
generar interfaces de usuario con las que enviar
información de retorno.
PATRÓN MVC
PREGUNTAS Y
RESPUESTAS

Weitere ähnliche Inhalte

Was ist angesagt?

Estandares y modelos de calidad del software
Estandares y modelos de calidad del softwareEstandares y modelos de calidad del software
Estandares y modelos de calidad del softwareaagalvisg
 
Documento vision 1
Documento vision 1Documento vision 1
Documento vision 1SystemCampos
 
Marifer diapositivas uml roisbel
Marifer diapositivas uml roisbelMarifer diapositivas uml roisbel
Marifer diapositivas uml roisbelnubiafernandez8
 
Diagrama componentes
Diagrama componentesDiagrama componentes
Diagrama componentesmarianela0393
 
Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareRoberth Loaiza
 
Sesiones modelos de negocio y estrategias web ing inf enero2013
Sesiones modelos de negocio y estrategias web ing inf enero2013Sesiones modelos de negocio y estrategias web ing inf enero2013
Sesiones modelos de negocio y estrategias web ing inf enero2013Pablo De Castro
 
Introducción al Análisis Orientado a Objetos
Introducción al Análisis Orientado a ObjetosIntroducción al Análisis Orientado a Objetos
Introducción al Análisis Orientado a ObjetosWilfredo Mogollón
 
Descrição formal de Casos de Uso
Descrição formal de Casos de UsoDescrição formal de Casos de Uso
Descrição formal de Casos de UsoNatanael Simões
 
Los 13 diagramas UML y sus componentes
Los 13 diagramas UML y sus componentesLos 13 diagramas UML y sus componentes
Los 13 diagramas UML y sus componentesVictor Escamilla
 
Analisis y Diseños de Sistemas 2-Metodologia OOSE
Analisis y Diseños de Sistemas 2-Metodologia OOSEAnalisis y Diseños de Sistemas 2-Metodologia OOSE
Analisis y Diseños de Sistemas 2-Metodologia OOSEMari Cruz
 

Was ist angesagt? (20)

Unidad 4
Unidad 4Unidad 4
Unidad 4
 
Requerimientos funcionales
Requerimientos funcionalesRequerimientos funcionales
Requerimientos funcionales
 
Modelo 4+1
Modelo 4+1Modelo 4+1
Modelo 4+1
 
Diagramas UML
Diagramas UMLDiagramas UML
Diagramas UML
 
Estandares y modelos de calidad del software
Estandares y modelos de calidad del softwareEstandares y modelos de calidad del software
Estandares y modelos de calidad del software
 
Documento vision 1
Documento vision 1Documento vision 1
Documento vision 1
 
Marifer diapositivas uml roisbel
Marifer diapositivas uml roisbelMarifer diapositivas uml roisbel
Marifer diapositivas uml roisbel
 
Diagrama componentes
Diagrama componentesDiagrama componentes
Diagrama componentes
 
Vistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de SoftwareVistas Arquitectonicas Ingenieria de Software
Vistas Arquitectonicas Ingenieria de Software
 
Sesiones modelos de negocio y estrategias web ing inf enero2013
Sesiones modelos de negocio y estrategias web ing inf enero2013Sesiones modelos de negocio y estrategias web ing inf enero2013
Sesiones modelos de negocio y estrategias web ing inf enero2013
 
Introducción al Análisis Orientado a Objetos
Introducción al Análisis Orientado a ObjetosIntroducción al Análisis Orientado a Objetos
Introducción al Análisis Orientado a Objetos
 
Ch4 req eng
Ch4 req engCh4 req eng
Ch4 req eng
 
Descrição formal de Casos de Uso
Descrição formal de Casos de UsoDescrição formal de Casos de Uso
Descrição formal de Casos de Uso
 
Administrador de sistemas
Administrador de sistemasAdministrador de sistemas
Administrador de sistemas
 
Los 13 diagramas UML y sus componentes
Los 13 diagramas UML y sus componentesLos 13 diagramas UML y sus componentes
Los 13 diagramas UML y sus componentes
 
Analisis y Diseños de Sistemas 2-Metodologia OOSE
Analisis y Diseños de Sistemas 2-Metodologia OOSEAnalisis y Diseños de Sistemas 2-Metodologia OOSE
Analisis y Diseños de Sistemas 2-Metodologia OOSE
 
Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02
 
Diagrama de dominio armando
Diagrama de dominio armandoDiagrama de dominio armando
Diagrama de dominio armando
 
Modelo de requerimientos
Modelo de requerimientosModelo de requerimientos
Modelo de requerimientos
 
Metodologias web
Metodologias webMetodologias web
Metodologias web
 

Ähnlich wie Tema 4: Diseño arquitectónico de software

Arquitecturas
ArquitecturasArquitecturas
Arquitecturasenlinea70
 
DiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del SoftwareDiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del Softwarelcastillo110
 
Análisis de la Arquitectura de Sistemas.pptx
Análisis de la Arquitectura de Sistemas.pptxAnálisis de la Arquitectura de Sistemas.pptx
Análisis de la Arquitectura de Sistemas.pptxoscaralava3
 
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
 
210452 arquitectura-de-software-adrian-lasso
210452 arquitectura-de-software-adrian-lasso210452 arquitectura-de-software-adrian-lasso
210452 arquitectura-de-software-adrian-lassoEpmaps q
 
2 1 vistas arquitectonicas
2 1 vistas arquitectonicas2 1 vistas arquitectonicas
2 1 vistas arquitectonicaslandeta_p
 
Unidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxUnidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxRunayli
 
Proceso de desarrollo del software
Proceso de desarrollo del softwareProceso de desarrollo del software
Proceso de desarrollo del softwareJosue Meza
 
La arquitectura de 41 vistas
La arquitectura de 41 vistasLa arquitectura de 41 vistas
La arquitectura de 41 vistaszurda21
 
Arquitectura de software.docx
Arquitectura de software.docxArquitectura de software.docx
Arquitectura de software.docxKeiberOrtiz1
 
Glosario de terminos
Glosario de terminosGlosario de terminos
Glosario de terminosJose Risso
 

Ähnlich wie Tema 4: Diseño arquitectónico de software (20)

Arquitecturas
ArquitecturasArquitecturas
Arquitecturas
 
DiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del SoftwareDiseñO Del Software E IngenieríA Del Software
DiseñO Del Software E IngenieríA Del Software
 
Análisis de la Arquitectura de Sistemas.pptx
Análisis de la Arquitectura de Sistemas.pptxAnálisis de la Arquitectura de Sistemas.pptx
Análisis de la Arquitectura de Sistemas.pptx
 
Arquitecturas de software
Arquitecturas de softwareArquitecturas de software
Arquitecturas de software
 
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-software
 
Modelo4 1
Modelo4 1Modelo4 1
Modelo4 1
 
Modelo4 1
Modelo4 1Modelo4 1
Modelo4 1
 
Unidad 4. diseno del sistema
Unidad 4. diseno del sistemaUnidad 4. diseno del sistema
Unidad 4. diseno del sistema
 
210452 arquitectura-de-software-adrian-lasso
210452 arquitectura-de-software-adrian-lasso210452 arquitectura-de-software-adrian-lasso
210452 arquitectura-de-software-adrian-lasso
 
2 1 vistas arquitectonicas
2 1 vistas arquitectonicas2 1 vistas arquitectonicas
2 1 vistas arquitectonicas
 
Presentacion Arquitectura
Presentacion ArquitecturaPresentacion Arquitectura
Presentacion Arquitectura
 
Unidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptxUnidad 2 - Arquitectura.pptx
Unidad 2 - Arquitectura.pptx
 
Arquitectura
ArquitecturaArquitectura
Arquitectura
 
Manual de sistema
Manual de sistemaManual de sistema
Manual de sistema
 
9.diseño de la arquitectura
9.diseño de la arquitectura9.diseño de la arquitectura
9.diseño de la arquitectura
 
Proceso de desarrollo del software
Proceso de desarrollo del softwareProceso de desarrollo del software
Proceso de desarrollo del software
 
La arquitectura de 41 vistas
La arquitectura de 41 vistasLa arquitectura de 41 vistas
La arquitectura de 41 vistas
 
Arquitectura de software.docx
Arquitectura de software.docxArquitectura de software.docx
Arquitectura de software.docx
 
Glosario de terminos
Glosario de terminosGlosario de terminos
Glosario de terminos
 
Software exposicion
Software exposicionSoftware exposicion
Software exposicion
 

Tema 4: Diseño arquitectónico de software

  • 1. DISEÑO ARQUITECTÓNICO DE SOFTWARE Docente: Magemyl Egaña Ingeniería del software II PNFI-UNEXCA
  • 2. DEFINICIÓN DAS El diseño arquitectónico del software DAS, define la arquitectura, componentes, interfaces y otras características de un sistema o componente de este. Es la etapa del proceso de ingeniería de software, donde se expresa un nivel de abstracción mayor en comparación al modelado de negocio y la ingeniería de requisitos y esta directamente relacionado con el desarrollo del sistema. "La arquitectura de software muestra las estructuras de un sistema, compuestas de elementos con propiedades visibles de forma externa y las relaciones que existen entre ellos” Leonard Joel (Len) Bass."
  • 3. MÉTODO Y PRODUCTO DAS En el método "Blue Watch" de Jonas Montilva (2004), se denomina "Diseño Arquitectónico" y es "la fase donde se elaborar un diseño de la arquitectura de la aplicación que sea apropiada a los requisitos especificados y que establezca los subsistemas de la aplicación, los componentes de cada subsistema, las conexiones entre estos componentes y las restricciones que regulan la arquitectura. 01 El producto principal es el DAS o Diseño de la Arquitectura del Software, donde se describe la arquitectura de la aplicación. 02
  • 5. Definición de las metas de diseño. Identificación de subsistemas. Descripción de vistas arquitectónicas. Evaluación de la arquitectura. 01 02 03 04 PASOS PARA HACER DAS
  • 6. DEFINICIÓN DE METAS DE ARQUITECTURA Determinar que requisitos del ERS - ECU se relacionan con la arquitectura del sistema. Enumerar las posibles metas de calidad de la arquitectura del sistema. Seleccionar aquellas metas de diseño que sean factibles y describir. cada meta de diseño 01 02 03
  • 7. IDENTIFICACIÓN DE SUBSISTEMAS Definir los criterios y/o estilos arquitectónicos más apropiados para dividir el sistema 01 Dividir el sistema en subsistemas usando los criterios y/o estilos seleccionados 02
  • 8. DESCRIPCIÓN DE VISTAS Elaborar la vista arquitectónica de uso. 01 02 03 04 Elaborar la vista arquitectónica lógica (estructural). Elaborar la vista arquitectónica de proceso (comportamiento). Elaborar la vista arquitectónica de desarrollo o implementación (componentes) 05 Elaborar la vista arquitectónica de despliegue (física)
  • 9. Evaluación de la Arquitectura Seleccionar un método de evaluación de arquitecturas 01 Aplicar el método para evaluar la arquitectura propuesta 02
  • 10. VISTA 4+1 La arquitectura de software es considerada como el diseño de más alto nivel de un sistema, luego de la realización del modelado del negocio y la ingeniería de requisitos y una manera muy práctica y conocida de representarla en a través del “Modelo de Vistas de Arquitectura 4+1” un estándar creado en 1995 por el ingeniero canadiense Philippe Kruchten para “describir la arquitectura de sistema de software, basado en el uso de múltiples puntos de vistas concurrentes”; y que se usa para estructurar y organizar el software en el entorno de desarrollo a través de cuatros vista (lógica, proceso, desarrollo y física) y una vista adicional de escenarios para unir las 4 vistas anteriores. La arquitectura 4+1 es importante para identificar las soluciones sobre las preocupaciones de cada uno de los involucrados en el proceso de ingeniería de software.
  • 12. VISTAS ARQUITECTÓNICAS 1)Vista lógica: Representa lo que el sistema debe hacer y las funciones y servicios que ofrece, proporcionando un modelo estático de las clases principales y sus relaciones. Esta vista muestra la funcionalidad que el sistema proporcionará a los usuarios finales a través del diagrama de clase, diagrama de comunicación y diagrama de secuencia. 2)Vista de proceso: enfocado en el comportamiento del sistema, mostrando los procesos y las tareas que hay en él y la forma en que se comunican entre ellos. Toma en cuenta los aspectos dinámicos del sistema y algunos requisitos no funcionales como rendimiento, concurrencia, distribución, escalabilidad, disponibilidad, integridad del sistema, tolerancia a fallas. Se representa a través del diagrama de actividad y el diagrama de estados. 3)Vista de desarrollo o despliegue: Modela la arquitectura desde la perspectiva del programado y se ocupa de la gestión del software mostrando como está organizado el código de la aplicación, en lenguaje de componentes, paquetes, librerías y la dependencia entre ellos. Se representa a través del diagrama de componentes y paquetes.
  • 13. 4)Vista física o de distribución: muestra todos los componentes físicos del sistema así como sus conectores entre componentes que conforman la solución (incluyendo servicios), es decir los procesadores, dispositivos y enlaces en el ambiente operativo del sistema, apoyado en el diagrama de despliegue. 5) Vista de escenarios: esta vista es representada a través de los casos de uso y explica cómo funcionan todas las vistas juntan, es decir une y relaciona las 4 vistas (lógica, proceso, despliegue y física). Los escenarios describen secuencias de interacciones entre objetos y entre procesos y ayudan a validar el diseño de la arquitectura VISTAS ARQUITECTÓNICAS
  • 14. PATRÓN DE DISEÑO MODELO-VISTA-CONTROLADOR LMVC es un patrón de arquitectura, un modelo o guía que expresa cómo organizar y estructurar los componentes de un software, sus responsabilidades y las relaciones existentes entre cada uno de ellos. Su nombre, MVC, parte de las iniciales de Modelo-Vista-Controlador (Model- View Controller, en inglés), que son las capas o grupos de componentes en los que se organizan las aplicaciones bajo este paradigma de programación. Es a menudo considerado también un patrón de diseño de la capa de presentación, pues define la forma en que se organizan los componentes de presentación en sistemas distribuidos. La arquitectura MVC propone, independientemente de las tecnologías o entornos en los que se base el sistema a desarrollar, la separación de los componentes de una aplicación en tres grupos (o capas) principales: el modelo, la vista y el controlador, describiendo cómo se relacionarán entre ellos para mantener una estructura organizada, limpia y con un acoplamiento mínimo entre las distintas capas. FUENTE: JOSÉ MARÍA AGUILAR HTTPS://WWW.CAMPUSMVP.ES/RECURSOS/POST/QUE-ES-EL-PATRON-MVC- EN-PROGRAMACION-Y-POR-QUE-ES-UTIL.ASPX
  • 15. El Controlador, tiene acceso bidireccional al Modelo, es decir, será capaz tanto de actualizar su estado, invocando por ejemplo métodos o acciones incluidos en su lógica de negocio, como de consultar la información que sea necesaria para completar sus tareas. El Controlador es el encargado de seleccionar la Vista más apropiada en función de la acción llevada a cabo por el usuario, suministrándole toda la información que necesite para componer la interfaz. Para pasar esta información, el Controlador puede usar clases del Modelo o clases específicamente diseñadas para ello, denominadas View-Models, que contendrán toda la información que la Vista necesite y mantendrá a ésta aislada de los cambios en el Modelo. La responsabilidad de la Vista, por tanto, se reduce a generar la interfaz partiendo de los datos que le suministre el controlador. 01 02 03 En el diagrama, se muestran las acciones e información procedentes del usuario que serán recogidas exclusivamente por los Controladores. Ningún componente de otra capa debe acceder a los datos generados desde el cliente, de la misma forma que sólo los componentes de la Vista estarán autorizados a generar interfaces de usuario con las que enviar información de retorno. PATRÓN MVC