Sie sind auf Seite 1von 29

Docente: Ing. Mg.

Diana Díaz Estrada


Email: cursos.dianadiaz@gmail.com
Blog: cursosdiana.blogspot.pe
DISEÑO: MATERIALIZACION DE UNA IDEA, CON DIBUJOS, MAQUETAS U OTROS
OBJETOS.
Transforma la información recolectada en el Análisis en las
estructuras de datos necesarias pata implementar el software
Describe como se comunica el sw consigo mismo, con los
sistemas que operan junto con el y con los usuarios que lo
emplean.
Define los enlaces entre cada uno de los elementos del
programa en forma jerárquica.
Transforma elementos de la arquitectura del programa, Los
procedimientos especifican que tareas deben efectuarse al
utilizar el sistema y quienes son los encargados de llevarla a
cabo.
SW
En los inicios de la informática, la programación se consideraba un
arte y se desarrollaba como tal debido a la dificultad que
entrañaba para la mayoría de las personas, pero con el tiempo se
han ido descubriendo y desarrollando formas y guías generales,
con base a las cuales se puedan resolver los problemas.

A estas, se les ha denominado Arquitectura de Software, porque, a


semejanza de los planos de un edificio o construcción, estas
indican la estructura, funcionamiento e interacción entre las partes
del software.
QUE ES

QUIEN LO HACE
• ¿Usted intentaría construir una casa sin planos?
El diseño arquitectónico es la primera etapa en el proceso de diseño del
software, que identifica los componentes del sistema, sus propiedades y
comunicación entre ellos.

El diseño arquitectónico se interesa por entender cómo debe organizarse un


sistema y cómo tiene que diseñarse la estructura global de ese sistema.
El diseño de la arquitectura dependerá de los requerimientos No funcionales del
sistema:

1. Rendimiento: Si se necesita un elevado rendimiento se utilizarán pocos subsistemas


con poca comunicación.

2. Protección: Las aplicaciones con elevado nivel de seguridad necesitarán


estructurarse en capas con los recursos críticos protegidos en las capas más internas
y contarán con elevados niveles de validación.

3. Disponibilidad: Puede obligar a incluir componentes redundantes que puedan


reemplazarse y actualizarse sin detener el sistema.

4. Mantenibilidad: Mejora cuando se utilizan componentes más pequeños que


pueden intercambiarse con facilidad.
Toda arquitectura de software debe describir diversos aspectos del
software. Generalmente, cada uno de estos aspectos se describe de una
manera más comprensible si se utilizan distintos modelos o vistas.

Existen al menos tres vistas absolutamente fundamentales en cualquier


arquitectura:

 La visión estática: describe qué componentes tiene la arquitectura.


 La visión funcional: describe qué hace cada componente.
 La visión dinámica: describe cómo se comportan los componentes a lo
largo del tiempo y como interactúan entre sí.
• Cliente-servidor. Donde el software reparte su carga de cómputo en dos partes
independientes pero sin reparto claro de funciones.

• Arquitectura de tres niveles. Especialización de la arquitectura cliente-servidor donde


la carga se divide en tres partes (o capas) con un reparto claro de funciones: Capa de
presentación (interfaz de usuario), Lógica del negocio y otra para el almacenamiento
(Datos).

• Modelo Vista Controlador. es un patrón de arquitectura de software, que separa


los datos y la lógica de negocio de una aplicación de la interfaz de usuario y el módulo
encargado de gestionar los eventos y las comunicaciones

• Orientada a servicios (SOA). Es un estilo de arquitectura de TI que se apoya en la


orientación a servicios, donde un servicio es una representación lógica de una
actividad de negocio (ejemplo: comprobar el crédito de un cliente, obtener datos de
clima, etc)
• Es un modelo de diseño de software en el que tareas se reparten entre los proveedores
de recursos o servicios, llamados servidores, y los demandantes, llamados clientes. Un
cliente realiza peticiones a otro programa, el servidor, quien le da respuesta.

• Algunos ejemplos de aplicaciones computacionales que usen el modelo cliente-servidor


son el Correo electrónico, un Servidor de impresión e internet.
• Aquí, la funcionalidad del sistema está organizada en capas separadas, y cada una
se apoya sólo en las facilidades y los servicios ofrecidos por la capa
inmediatamente debajo de ella.

• Este enfoque en capas soporta el desarrollo incremental de sistemas.

• Conforme se desarrolla una capa, algunos de los servicios proporcionados por esta
capa deben quedar a disposición de los usuarios.

• La arquitectura también es cambiable y portátil. En tanto su interfaz no varíe, una


capa puede sustituirse por otra equivalente
 Modelo de 2 capas: Es una arquitectura constituida por 2 capas:
Front-End y Back-End.
◦ Front-End: consiste en la capa donde el usuario interactúa con su
PC.
◦ Back-End: es el servidor de bases de datos como Oracle o SQL-
Server.

Dificultades de la arquitectura de 2 capas


◦ Dificultad al realizar cambios en el Front-End
◦ Dificultad al compartir procesos comunes.
◦ Problemas de seguridad, etc.
 Es el sucesor de la arquitectura de dos capas, ésta implementa una ó n capas
adicionales las cuales se encargan de encapsular las reglas del negocio
asociadas con el sistema y las separa de la presentación y del código de la
D.B.

 
Reglas del negocio

D.B.
 Nivel de Usuario: Los componentes del nivel de usuario, proporcionan la interfaz
visual que los clientes utilizarán para ver la información y los datos. En este nivel, los
componentes son responsables de solicitar y recibir servicios de otros componentes
del mismo nivel o del nivel de servicios de negocio. Es muy importante destacar que, a
pesar de que las funciones del negocio residen en otro nivel, para el usuario es
transparente la forma de operar.

 Nivel de Negocios: Como los servicios de usuario no pueden contactar directamente


con el nivel de servicios de datos, es responsabilidad de los servicios de negocio
hacer de puente entre estos. Los objetos de negocio proporcionan servicios que
completan las tareas de negocio tales como verificar los datos enviados por el
cliente. Antes de llevar a cabo una transacción en la D.B.
Los componentes de los servicios de negocio también nos sirven para evitar que el
usuario tenga acceso directo a la base de datos, lo cual proporciona mayor
seguridad en la integridad de ésta.
NIVELES DEL MODELO
• Nivel de Datos: El nivel de datos se encarga de las típicas tareas que realizamos con
los datos: Inserción, modificación, consulta y borrado. La clave del nivel de datos es
que los papeles de negocio no son implementados aquí. Aunque un componente de
servicio de datos es responsable de la gestión de las peticiones realizadas por un
objeto de negocio.
Un nivel de servicios de datos apropiadamente implementado, debería permitir
cambiar su localización sin afectar a los servicios proporcionados por los
componentes de negocio.
Este patrón es el soporte del manejo de la interacción en muchos sistemas basados en
la Web.

Es un patrón de arquitectura de software, que separa los datos y la lógica de


negocio de una aplicación de la interfaz de usuario y el módulo encargado de gestionar
los eventos y las comunicaciones. Para ello MVC propone la construcción de
tres componentes distintos que son el modelo, la vista y el controlador, es decir, por
un lado define componentes para la representación de la información, y por otro lado
para la interacción del usuario. ​

Este patrón de arquitectura de software se basa en las ideas de reutilización de


código y la separación de conceptos, características que buscan facilitar la tarea de
desarrollo de aplicaciones y su posterior mantenimiento
• El Modelo: Es la representación de la información con la cual el sistema opera, por
lo tanto gestiona todos los accesos a dicha información (lógica de negocio

• El Controlador: Responde a eventos (usualmente acciones del usuario) e invoca


peticiones al 'modelo' .

• La Vista: Presenta el 'modelo' (información y lógica de negocio) en un formato


adecuado para interactuar (usualmente la interfaz de usuario),.
La Arquitectura Orientada a Servicios, es un estilo de arquitectura de TI que se apoya en
la orientación a servicios. La orientación a servicios es una forma de pensar en servicios,
su construcción y sus resultados. Un servicio es una representación lógica de una
actividad de negocio que tiene un resultado de negocio especifico.

El estilo de arquitectura SOA se caracteriza por:


• Esta basado en el diseño de servicios que reflejan las actividades del negocio en el
mundo real, estas actividades hacen parte de los procesos de negocio de la compañía.
• Representar los servicios utilizando descripciones de negocio para asignarles un
contexto de negocio.
• Tener requerimientos de infraestructura específicos y únicos para este tipo de
arquitectura, en general se recomienda el uso de estándares abiertos para la
interoperabilidad y transparencia en la ubicación de servicios.
• Estar implementada de acuerdo con las condiciones especificas de la arquitectura de
TI en cada compañía.
1. Investigar sobre plataforma para desarrollar en web y escritorio, ventajas
y desventajas: Ejemplo: Java, PHP, .NET, Python, etc.

2. Determinar cual de ellos se adapta a su proyecto de diseño (Especificar)

3. Determinar la arquitectura para su proyecto de diseño (Especificar)

4. Entrega:
• Grupo A: Martes 14/11/17
• Grupo B: Viernes 10/11/17

Das könnte Ihnen auch gefallen