Programa
ASIGNATURATema
Diseño Arquitectonico
Decisiones y organizacion
Programa
ASIGNATURATema
Docente: ING. Wilson Gomez Guevara– [email protected] 2
IntroducciónLa esencia del diseño de software es la toma dedecisiones sobre la organización lógica delsoftware.
Esta organización por lo general se estructura ensubsistemas que proporcionan algún conjunto deservicios relacionados
Tema 3 - Clase 1
DISEÑO DE SISTEMASDiseño ArquitectonicoInformática empresarial
Programa
ASIGNATURATema
Docente: ING. Wilson Gomez Guevara– [email protected] 3
DefiniciónProceso de diseño inicial que identifica lossubsistemas y establece un marco para el control ycomunicación de estos.
Tema 3 - Clase 1
DISEÑO DE SISTEMASDiseño ArquitectónicoInformática empresarial
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 4
Ventajas• Comunicación entre los Stakeholders La arquitectura puede ser usada como un foco de
discusión por los stakeholders del sistema• Análisis de sistemas Ayuda a establecer si el sistema puede cumplir los
requerimientos no funcionales.• Reutilización a gran escala
La arquitectura puede ser reutilizada a través de un rango de sistemas
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 5
Requerimientos no funcionales1. Rendimiento2. Protección3. Seguridad4. Disponibilidad5. MantenibilidadProfundizar
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 6
Stakeholders• Término inglés utilizado por primera vez por
R. E. Freeman en su obra: “Strategic Management: A Stakeholder Approach”, (Pitman, 1984) para referirse a
«quienes pueden afectar o son afectados por las actividades de una empresa».
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 7
Stakeholders
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 8
Proceso del diseño arquitectónico• Estructuración del sistema
El sistema se descompone en varios subsistemas principales y la comunicación entre estos subsistemas es identificada.
• Modelado del controlSe establece un modelo de las relaciones de control entre las diferentes partes del sistema.
• Descomposición modularLos subsistemas identificados se descomponen en módulos
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 9
Subsistemas y módulos• Un subsistema es un sistema por derecho propio
cuya operación es independiente de los servicios provistos por otros subsistemas.
• Un módulo es un componente del sistema que provee servicios a otros componente pero no se consideraría normalmente como un sistema separado.
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 10
Modelos Arquitectonicos• Modelo estático estructural es que muestra los componentes
principales del sistema.
• Modelo dinámico del proceso que muestra la estructura de proceso del sistema
• Modelo de interfaz que define las interfaces de los subsistemas
• Modelo de relaciones tales como un modelo de flujo de datos
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 11
Estructuración del sistema• Concerniente con la descomposición del sistema en
subsistemas que interactúan.
• El diseño arquitectónico se expresa normalmente como un diagrama de bloques que representa una visión general de la estructura del sistema.
• Se pueden desarrollar modelos más específicos que muestran cómo los subsistema comparten datos, cómo se distribuyen y cómo se comunican entre si.
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 12
Diagrama de bloques
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 13
Decisiones de diseño arquitectonicoLos arquitectos del sistema tienen que responder alas sigts preguntas fundamentales:
1. ¿Existe una arquitectura de aplicación generica que pueda actuar como una plantilla para el sistema que se esta diseñando?
2. Como se distribuira el sistema entre varios procesadores?
3. ¿Qué estilo o estilos arquitectonicos son apropiados?
4. ¿Cuál sera la aproximacion fundamental utilizada para estructurar el sistema ?
5. ¿Cómo se descompondran en modulos las unidades estructurales?
6. ¿Qué estrategia se usara para controlar el funcionamiento de las unidades del sistema?
7. ¿Cómo se evaluara el diseño arquitectonico?
8. ¿Cómo debería documentarse la arquitectura del sistema?Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 14
Organización del sistemaRefleja la estrategia básica usada para estructurardicho sistema.
Estilos:1. Repositorio de datos2. Cliente-Servidor3. Capas
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 15
Modelo de repositorioLos subsistemas deben intercambiar datos. Esto puede ser hecho de dos formas:
• Los datos compartidos se mantiene en una base de datos central o depósito y puede ser accedida por todos los subsistemas
• Cada subsistema mantiene su propia base de datos y pasa datos explícitamente a otros subsistemas
Cuando grandes cantidades de datos deben ser compartidos, elmodelo de depósito es el más comúnmente usado
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 16
Herramienta Case
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 17
Características del modelo de depósitoVentajas• Forma eficiente de compartir grandes cantidades de datos• Los subsistemas no se deben preocupar sobre cómo los datos sonproducidos o usados.• Administración centralizada. Ej. Backup, seguridad• El modelo de compartición es visible a lo largo del esquema dedepósitoDesventajas• Los subsistemas deben acordar un modelo de datos del depósito. Locual es inevitablemente un compromiso.• La evolución de datos es difícil y cara• No hay campo para políticas de administración específicas• Es difícil distribuir el depósitos eficientemente
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 18
Arquitectura de cliente-servidor• Modelo de sistema distribuido el cual muestra cómo los
datos y el procesamiento se distribuyen a través de unrango de componentes
• Conjunto de servidores stand-alone que proveen serviciosespecíficos tales como impresión, administración dedatos, etc.
• Conjunto de clientes los cuales acceden a estos servicios
• Una red la cual permite la comunicación entre clientes yservidores
Tema 1 - Clase 1
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 19
Biblioteca de videos y pintura
Tema 1 - Clase 1
Catalogueserver
Librarycatalogue
Videoserver
Film clipfiles
Pictureserver
Digitisedphotographs
Web server
Film andphoto info.
Client 1 Client 2 Client 3 Client 4
Internet
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 20
Características del modelo cliente-servidor
Tema 1 - Clase 1
Ventajas• La distribución de datos es directa• Hace uso efectivo de sistemas interconectados. Podría requerirhardware más barato• Es fácil adicionar nuevos servidores o actualizar servidores existentes
Desventajas• No hay un modelo de datos compartido, de manera que lossubsistemas usan una organización de datos diferente. El intercambio dedatos puede ser ineficiente• Administración redundante en cada servidor• No hay un registro central de nombres y servicios
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 21
Modelo de máquina abstracta o de capas
Tema 1 - Clase 1
• Usado para modelar las interfaces en entre subsistemas
• Organiza el sistema en un conjunto de capas (o máquinas abstractas) cada una de la cuales provee un conjunto de servicios
• Soporta el desarrollo incremental de subsistemas en diferentes capas. Cuando la interfaz de una capa cambia, solo las capas adyacentes son afectadas
• Sin embargo, es difícil, en general, estructurar sistemas de esta forma
Programa
ASIGNATURATema
Docente: CPT Heynar Ramírez Becerra – [email protected] 22
Sistema de manejo de versiones
Tema 1 - Clase 1
Configuration management system layer
Database system layer
Operating system layer
Object management system layer
Recommended