Lenguaje y Patrones de Arquitectura

12
Diseño y Arquitectura de Software Unidad 2 Lenguaje descriptor y patrones de arquitectura de software. Evidencia de Aprendizaje. Miguel Marin Solis UNADM

description

El desarrollo de la arquitectura es un gran logro a nivel ciencia, en este documento se muestra una parte de ella.

Transcript of Lenguaje y Patrones de Arquitectura

Page 1: Lenguaje y Patrones de Arquitectura

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Unidad 2

Lenguaje descriptor y

patrones de arquitectura

de software. Evidencia de Aprendizaje.

Miguel Marin Solis

UNADM

Page 2: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 1

Contenido Arquitectura de Software .................................................................................................................... 2

Propuesta del Facilitador. ................................................................................................................... 3

Objetivo. .............................................................................................................................................. 4

Diseño. ................................................................................................................................................. 4

Arquitectura. ....................................................................................................................................... 5

Contenido. ........................................................................................................................................... 6

Requerimientos Especificos. ............................................................................................................... 7

Vistas ................................................................................................................................................... 8

Conclusiones. .................................................................................................................................... 11

Bibliografia. ....................................................................................................................................... 11

Page 3: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 2

Arquitectura de Software.

A la vez que el arquitecto de software, tras conocer el requerimiento, se decide a delinear

su estrategia y a articular los patrones se le ofrecen hoy en profusión, se supone que

debería expresar las características de su sistema, o en otras palabras, modelarlo,

aplicando una convención gráfica o algún lenguaje avanzado de alto nivel de abstracción.

Sabemos que la Arquitectura de Software es el conjunto de decisiones significativas sobre

la organización del sistema de software, la selección de los elementos estructurales y sus

interfaces, con los que se componen el sistema, junto con su comportamiento tal como se

especifica en las colaboraciones entre esos elementos, la composición de esos elementos

estructurales y de comportamiento en subsistemas progresivamente más amplios, y el

estilo de arquitectura que guía esta organización.

El diseño y la implementación de una tienda de conveniencia tiene como resultado una

aplicación Web desde la cual, una empresa pueda amplias sus ventas mediante el

comercio electrónico de manera fácil, rápida y sencilla.

De esta manera se facilita a los clientes la opción e realizar compras sin salir de su casa o

simplemente, visualizar los artículos disponibles o consultar el estado de algún pedido

realizado anteriormente.

La tienda de conveniencia consiste en una interfaz Web dinámica que permita por una

parte a los clientes de esta empresa a consultar artículos, así como sus ofertas y

novedades.

Page 4: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 3

Propuesta del patrocinador.

Es una tienda de conveniencia, tú analizarás sus requerimientos de software y lo

contrastarás con las herramientas de diferentes tipos de sistema, siendo capaz de elaborar

una propuesta.

Arquitectura Utilizada.

El modelo 4+1 vistas, es una propuesta que establece las diferentes perspectivas a través

de las cuales se puede representar el diseño y arquitectura de un sistema de software.

Esta propuesta presenta su propio esquema de modelado, pero como bien sabemos, la

notación más reconocida para el modelamiento de sistemas de software es el UML.

Page 5: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 4

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.

Diseño de aplicación

Una de las principales fases del proyecto es el diseño y sobre todo la identificación de

componentes que participan en la descripción de la arquitectura del sistema a realizar.

Para esto se determinara los elementos UML como son:

Casos de uso

Actores

Módulos

Clases

Unidades de software

Sistemas externos

Herramientas de software

Procesador

Dispositivo.

En el siguiente diagrama se muestra como seria el diseño.

Cliente

Busca el Producto

Ve formas de pago y confirma la compra

Realiza el pedidoAdministrador

Administrar la tienda

Page 6: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 5

Arquitectura.

La arquitectura UML se adapta a la propuesta de lo que nos están pidiendo, sabemos que es un

lenguaje para especificar, visualizar, construir y documentar como están constituidos los sistemas.

Partiendo de su ideología y de como se trabaja en estas cuatro fases:

Análisis.

Diseño.

Codificación.

Prueba.

Un diagrama de la estructura de la aplicación web seria:

Page 7: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 6

Contenido.

Sabemos como todo que todas las aplicaciones web tienen diversas formas de trabajo para

interactuar con el usuario y para ello contemplamos varias.

Inicio.

Búsqueda.

Categoría.

Contacto.

Barra de cuenta (Ingresar, Inscríbete, Mi cuenta, Ayuda)

Redes Sociales.

Posteriormente se retoma la organización de la aplicación UML refiriendo al siguiente diagrama.

Page 8: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 7

Requerimientos especí ficos.

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 mas 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 pagina podrá añadir artículos ene l carrito de compras. Cuando se

abre la pagina 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.

Redes sociales. La página mantendrá una opción donde puedes darle seguimiento a través de las diferentes redes

sociales.

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

Page 9: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 8

Vistas.

Hablando de programación utilizaremos el lenguaje de programación PHP, el script es de uso

general para el desarrollo web de contenido dinámico.

El código es interpretado por un servidor web con un modulo de procesador de PHP que genera la

pagina Web resultante.

Nos enfocamos a PHP porque:

Orientado al desarrollo de aplicaciones web.

Es fácil de aprender.

El código fuente escrito en PHP es invisible al navegador web y al cliente ya que es el

servidor el que se encarga de ejecutar el código y enviar el resultado HTML al navegador.

Es libre, por lo que se presenta como una alternativa de fácil acceso para todos.

Permite aplicar técnicas de programación orientada a objetos.

Aspecto de la página.

Page 10: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 9

Para entender mejor todas las funciones que se pueden realizar con esta tienda de conveniencia y

los elementos y objetos de los cuales está compuesta se han realizado los diagramas UML.

El usuario será el que lleve a cabo todas las funciones de búsqueda sobre el stock. Existen dos

tipos de usuario, anónimo y registrado. En base a este tipo se permitirán ciertos privilegios dentro

de la aplicación como por ejemplo la realización de pedidos.

El carrito representa uno de los motores principales de la aplicación. Este dispone de toda la

información de la sesión del usuario y de los productos del stock que finalmente se vayan a incluir

dentro de los pedidos.

Page 11: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 10

Podemos observar en este caso de uso las diferentes gestiones y sobre todo la que desarrolla el

administrador del negocio donde están los dos tipos de usuarios y por ende la estructura de

pedido en la aplicación.

Perfil de Usuario Anónimo.

Se trata de que el usuario se familiarice con el entorno y no necesite estar registrado para poder

visualizar los artículos ni ir adquiriéndolos a medida que los va viendo. Podrá por tanto. Visualizar

la colección al completo, generar consultas sobre algún artículo en concreto, añadirlo articulo,

eliminar articulo y modificar cantidad y por ultimo darse de alta como cliente para poder finalizar

su compra.

Perfil de usuario Registrado.

Si el usuario se ha registrado, podrá realizar todas las funciones comentadas en el punto anterior

también tendrá dos opciones más; finalizar la compra con todos los artículos añadidos al carrito

previamente y visualizar el estado de los pedidos realizados.

Page 12: Lenguaje y Patrones de Arquitectura

Lenguaje descriptor y patrones de arquitectura de software.

D i s e ñ o y A r q u i t e c t u r a d e S o f t w a r e

Página 11

Conclusiones.

Mi conclusión me dice que he aprendido a realizar variedad de cosas con este trabajo y que quizá

mas adelante tendré la oportunidad de realizarlo en alguna empresa, además de doy cuenta de

que el realizar una arquitectura no es nada sencillo debes tener previa información y un amplio

conocimiento de la estructura de lo que te están pidiendo, me recuerda mucho a una pregunta de

que como crees que hicieron la arquitectura de Facebook y bueno es realmente brillante como

surgen las ideas.

Bibliografí a

http://www.willydev.net/descargas/RepreUml.pdf

http://www.slideshare.net/soreygarcia/arquitectura-de-software-para-dummies

http://www.ctr.unican.es/asignaturas/is1/is1-t13-trans.pdf

http://www.docirs.cl/uml.htm