Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
Abraham Yafté Ascencio Frías # CONTROL: AL11513379 | DESARROLLO DE SOFTWARE Aplicando un estilo de arquitectura de software DISEÑO Y ARQUITECTURA DE SOFTWARE UNIVERSIDAD ABIERTA Y A DISTANCIA DE MÉXICO pág. 1 Contenido 1.Introducción ..................................................................................................................................... 2 2.Instrucciones .................................................................................................................................... 2 3.Desarrollo ......................................................................................................................................... 3 3.1 Elementos arquitectónicos modulares .................................................................................... 3 3.2 Estilos arquitectónicos base ..................................................................................................... 4 3.3 Aplicación del patrón arquitectónico ...................................................................................... 4 3.4 Bosquejo ADL ............................................................................................................................ 5 4.Conclusión ........................................................................................................................................ 7 5.Bibliografía ....................................................................................................................................... 8 pág. 2 1.Introducción Con lo aprendido durante los temas de la unidad 2, el alumno ha desarrollado habilidades en cuanto a identificación y aplicación de los conceptos de arquitectura, estilos de arquitectura y diseño de software. El alumno hará uso de las herramientas comprendidas a lo largo de la unidad para resolver la actividad propuesta como actividad de aprendizaje. Por último, el alumno resolverá y concluirá sobre la actividad y lo que esta ha significado. 2.Instrucciones 1. Retoma el caso de la empresa Café Calenda, en donde debes de identificar los elementos arquitectónicos-modulares que incluirá la arquitectura con base en el estilo seleccionado. 2. Selecciona las categorías de estilos arquitectónicos que creas necesarias para el caso de estudio que servirán como base en la arquitectura base. 3. Describe la aplicación del patrón arquitectónico. 4. Elabora (diseña) un bosquejo de la arquitectura en una herramienta de tu elección o en el ADL descrito en la actividad anterior. Caso de estudio: Descripción Un comercio de venta de Café “Café Calenda” de la Ciudad de Oaxaca desea un sistema para administrar las ventas de sus productos. A los dueños del negocio, administradores y clientes les interesa tener acceso al sistema. • Dueños. Podrán acceder desde cualquier lugar. • Administradores. Únicamente en el establecimiento físico. • Clientes. Tendrán tabletas en sus lugares en la que revisarán sus consumos. Los dueños y administradores deben acceder con todos los privilegios. • Pueden ver información de todos los clientes, productos consumidos, precios, etcétera. pág. 3 • Menú de productos. • Inventario. • Lista de empleados. • Reportes. • Estadísticas. Los clientes • Consumo y precios. • Menú. • Factura. Considera que el software, de manera general debe: • Administrar ventas. • Gestionar inventario. • Administrar privilegios de usuarios con acceso al sistema. • Historial de ventas. • Gráficas. 3.Desarrollo 3.1 Elementos arquitectónicos modulares Para el estilo cliente-servidor que se propuso, se identifican 2 principales elementos modulares: • Servidor: va a contener la base de datos y brindara información y almacenamiento a todos los datos de la empresa. Para ello se tiene un computador centralizado y adecuadamente respaldado para el cual por medio de solicitudes SQL se tenga los cambios en los registros que a cada usuario le compete. Instalaría la computadora en un lugar correctamente refrigerado con una atmosfera controlada, el cual tenga una capacidad suficiente en cuanto a procesamiento y a velocidad de red para lograr una pág. 4 mayor eficiencia. Solo personal capacitado podría acceder a él, para el caso sería un administrador de bases de datos que tuviera la consigna de ese servidor. • Cliente: respecto a los puntos de acceso donde se pondrá una terminal vinculada a la base de datos, con el fin de acceder a la información de la base de datos. Además, cada cliente debe tener una interfaz de usuario programada en algún lenguaje de programación (Como Java) con el cual se puede conectar de manera intuitiva y operarla de manera correcta. 3.2 Estilos arquitectónicos base Sin embargo, para aplicación del sistema es necesario contemplar 2 aspectos que son parte de su funcionamiento: • Las interfaces con las que todos los usuarios van a interactuar con el servidor. • La lógica de cliente-servidor con la que cada una de las interfaces van a actuar con respecto a la base de datos. Por ello se propone utilizar para la interfaz un estilo orientado a objetos, para implementar una programación en un lenguaje así, como lo es Java por su compatibilidad y portabilidad; y un estilo cliente-servidor, que es el que va a establecer la comunicación de las interfaces con respecto al servidor que va a ser el contenedor de la base de datos que va a gobernar la información del sistema. 3.3 Aplicación del patrón arquitectónico Con la premisa de: “Cada patrón describe un problema que ocurre una y otra vez en un ambiente y luego se describe el núcleo de la solución a ese problema, de tal manera que se puede usar esa solución repetidamente” (Unversidad Abierta y a Distancia de México, 2015), se plantean como problemas cada uno de los requerimientos y se realizan patrones en programación para darles una solución que puede ser aplicable al presentarse de nuevo una condición similar dentro del proyecto. pág. 5 Tabla 1. Patrones básicos para los problemas básicos del proyecto; engloban la mayoría de la cantidad de operaciones internas dentro del sistema. Problema Patrón GUI para cada usuario Ventana de opciones de operación, en cada ventana un formulario y en la parte inferior botones de acción para tratar la información entrante o a mostrar. Administración de privilegios Gestión de permisos mediante sentencia SQL Consulta/Modificación/Borrar datos Solicitudes mediante sentencias SQL Interconectividad Utilizar conectores con la base de datos desde la aplicación y configuración SSH de seguridad para enlaces de red externos. 3.4 Bosquejo ADL Para el caso se utiliza UML describiendo las principales actividades, estructura y casos de uso de la aplicación del sistema, para describir los módulos, interfaces y operaciones dentro de nuestro software. (Schmuller, 2005) pág. 6 Figura 1. Diagrama de clases. Que tiene la funcionalidad de visualizar los atributos, métodos y relaciones que hay dentro del sistema que va a ser implementado de Café Calenda; también se pueden apreciar las interfaces que posteriormente vamos a necesitar dentro del proyecto. Figura 2. Diagrama de actividades de Café Calenda; con ello podemos visualizar las operaciones de cada una de las interfaces del proyecto, así como la manera en que se relacionan entre si para cumplir con el plan de negocio que se ha de desarrollar. pág. 7 Figura 3. Diagrama de caso de uso de Café Calenda, donde podemos ver como las actividades de cada actor del sistema interactúan entre sí y analizar las posibilidades de acción de cada una de las interfaces y del sistema en su estado completo. 4.Conclusión Principalmente me costo mucho trabajo comprender todos estos conceptos de la unidad y relacionarlos entre sí por su nivelde abstracción de lo que cada uno implica; sería muy bueno en el material de la unidad si se pudiera incluir un poco de ejemplos, ya que los temas son un material que tiende mucho a conceptualizarse sin saber correctamente como llevar a cabo su ejecución. En cuanto a conseguir el software ADL resulto muy complicado, por lo que opté a usar el mas sencillo de conseguir y de aplicar (UML); ya que en un principio pensé aplicar un software como lo era el Acme, el cual desde su portal no se puede realizar una descarga y así otros varios. Considero el tema de los patrones es importante puesto que por lo mismo que es su concepto, nos pueden ahorra mucho trabajo reciclando partes del proyecto que se pueden escalar para reutilizarse; así mismo los estilos nos ayudan a enfocarnos en un modo de implementar las cosas y estas a su vez nos ayudan a concebir mas sencillo la solución a un requerimiento en pág. 8 particular, como para la mi lo fue el hecho de requerir el software en varios lados con el estilo cliente-servidor. Considero es un tema que puede dar para mucho y nos ayuda enormemente a tener unos buenos cimientos para el desarrollo de software. 5.Bibliografía Alicia Durango, A. A. (2014). Ingeniería y arquitectura del software. Arizona: IT: Campus academico. Reynoso, C., & Kicillof, N. (4 de Marzo de 2014). De Lenguajes de descripción arquitectónica de Sofware (ADL). Obtenido de Willy.net: http://cic.puj.edu.co/wiki/lib/exe/fetch.php?media=materias:adl.pdf Reynoso, C., & Kicillog, N. (2004). Estilos y patrones en la estrategia de arquitectura de Microsoft. Buenos Aires: Universidad de Buenos Aires. Schmuller, J. (2005). Aprendiendo UML en 24 horas. México: Prentice Hall. Unversidad Abierta y a Distancia de México. (2015). Unidad 2. Elementos de diseño de arquitectura de software. D.F.: DCEIT.
Compartir