lunes, 1 de abril de 2013

Arquitectura de Software



Arquitectura de Software

En la actualidad se han definido un conjunto de cinco componentes identificados como comunes dentro de la arquitectura Web. Estos componentes son Static Pages (paginas estáticas), Active Pages (paginas activas de servidor), Web Objects (componentes de servidor), Multimedia Objects (objetos multimedia como imágenes, video y sonido) y Databases (Bases de datos).
La obtención de la arquitectura se basa en un conjunto de tres modelos, que de forma progresiva reducen los detalles obtenidos en la recuperación de los datos. En el modelo ELS (Entity-Level Schema) se definen las relaciones que existen entre los componentes que viven dentro de las aplicacionesWeb (objetos, tablas, variables, etc.) y a partir de este modelo se define un conjunto de transformaciones necesarias para subir el nivel de abstraccion hasta llegar al modelo CLS (Component-Level Schema).
CLS es un modelo que representa las relaciones entre los componentes de la aplicacion Web (páginas estáticas, páginas de servidor y bases de datos) y nuevamente se aplican una serie de transformaciones para obtener el último modelo ALS (Abstract- Level Schema).
Finalmente, ALS es un modelo que muestra las relaciones que existen entre los componentes de mayor tamaño, como los subsistemas, y componentes que los contienen.
Para la representación de la arquitectura el esquema utiliza como lenguaje de modelado diagramas de entidad relación conocidos como Schemas.

Requerimientos del usuario

id
Requerimientos de usuario
1
El sistema debe de autenti
car a cada uno de los usuarios (cliente, supervisor, gerente), mediante su Login y password.
2
El Sistema debe permitir el uso de los servicios del sistema de acuerdo a los permisos de cada uno de los usuarios.
3
El Sistema permitirá el alta, baja y modificación del stock de productos, solo para los usuarios autorizados (gerentes).
4
El Sistema permitirá el alta, baja y modificación de los usuarios del sistema.
5
El Sistema permitirá a, a los usuarios registrados, la consulta detallada de los elementos disponibles.
6
El Sistema deberá contar con interfaces amigables e intuitivas para facilitar el uso.
7
El sistema debera garantizar la disponibilidad e integridad de la información en todo momento así como el acceso a ella desde cualquier parte del mundo.

Objetivo.

Que la tienda de conveniencia sea un estándar de ventas por medio del internet, a través de una interfaz que permita a los clientes consultar por la web un buscador del producto, categoría de los productos y novedosas ofertas del producto.

Tipo de Patrón de Arquitectura.

Se prefiere el diseño en capas por ser el más adecuado a este tipo de sistema.

Justificación

Al conectarnos a internet estamos navegando en 3 capas.
Al abrir un formulario web de inscripción (capa de presentación), en este caso esta capa seria la presentación del formulario de ventas
Después de enviar la información esta es verificada (capa de negocios). Donde se ubicaría la validación tanto de usuarios como de tarjeta de crédito.
Finalmente la información es grabada en una base de datos (capa de datos)., donde se guardarían todas las transacciones.
El estilo de arquitectura basado en capas se identifica por las siguientes características:
• Describe la descomposición de servicios de forma que la mayoría de la interacción ocurre solamente entre capas vecinas.
• Las capas de una aplicación pueden residir en la misma maquina física (misma capa) o puede estar distribuido sobre diferentes computadores (n-capas).
• Los componentes de cada capa se comunican con otros componentes en otras capas a través de interfaces muy bien definidas.
• Este modelo ha sido descrito como una “pirámide invertida de re-uso” donde cada capa agrega responsabilidad y abstracción a la capa directamente sobre ella.
Principios fundamentales
Los principios comunes que se aplican cuando se diseña para usar este estilo de arquitectura incluyen:
Abstracción. La arquitectura basada en capas abstrae la vista del modelo como un todo mientras que provee suficiente detalle para entender las relaciones entre capas.
Encapsulamiento. El diseño no hace asunciones acerca de tipos de datos, métodos, propiedades o implementación.
Funcionalidad claramente definida. El diseño claramente define la separación entre la funcionalidad de cada capa. Capas superiores como la capa de presentación envía comandos a las capas inferiores como la capa de negocios y la capa de datos y los datos fluyen hacia y desde las capas en cualquier sentido.
Alta cohesion. Cada capa contiene funcionalidad directamente relacionas con la tarea de dicha capa.
Reutilizable. Las capas inferiores no tienen ninguna dependencia con las capas superiores, permitiéndoles ser reutilizables en otros escenarios.
Desacople. La comunicacion entre las capas está basada en la abstracción lo que provee un desacople entre las capas.
Beneficios
Los principales beneficios del estilo de arquitectura basado en capas son:
Abstracción. Las capas permiten cambios que se realicen en un nivel abstracto. Usted puede incrementar o disminuir el nivel de abstracción usado en cada capa de la “pila” jerárquica.
Aislamiento. El estilo de arquitectura de capas permite asilar los cambios en tecnologías a ciertas capas para reducir el impacto en el sistema total.
Rendimiento. Distribuir las capas entre múltiples sistemas (físicos) puede incrementar la escalabilidad, la tolerancia a fallos y el rendimiento.
Mejoras en Pruebas. La capacidad de realizar pruebas se beneficia de tener una interfaces bien definidas para cada capa así como de la habilidad para cambiar a diferentes implementaciones de las interfaces de cada capa.
Independencia. El estilo de arquitectura basado en capas el requerimiento de considerar el hardware y los problemas de instalación así como las dependencias de interfaces externas.

Diagrama que muestra las funciones básicas

Diagrama elaborado.

Requerimientos

Consulta según categoría.

Este tipo de consulta consiste en una consulta SQL que retorna todas las diferentes categorías de la base de datos.

Consulta de los detalles de un artículo.

Con esta consulta el cliente o usuario anónimo podrá ver una información más detallada acerca del artículo que desee. Dándole clic en la fotografía de artículo.

Añadir artículo al carrito.

Cualquier usuario que entre a la página podrá añadir artículos ene l carrito de compras. Cuando se abre la página se crea automáticamente una variable sesión que será la que contendrá los artículos del cliente desee adquirir.

Inicio de sesión.

Todo usuario que previamente se haya registrado, podrá identificarse introduciendo su usuario y contraseña.

Contacto.

La página tendrá una sección para servicio a clientes.

Bibliografía


No hay comentarios: