Atribución-NoComercial 4.0 InternacionalUmaña Acosta, Henry Roberto (Thesis advisor)Vergara Vargas, Jeisson Andrés2019-07-022019-07-022017-12-05https://repositorio.unal.edu.co/handle/unal/62185Software architecture aims to satisfy software requirements from different points of view. This is represented by models, which are the reference to understand the structure and behavior of the software. Nevertheless, one of the great challenges of software engineering is to ensure that design, implementation and deployment of the software are consistent. In the same way, another challenge is to ensure that a system improves its performance when it is in a scenario of receiving many requests per unit of time. In this manner, this research work presents a proposed model-driven deployment approach which from software architecture models, automates the deployment of software systems on a cloud computing platform by means of the application of scalability tactic, specifically horizontal scaling. In addition, this work includes a traditional model-driven development process which automates the implementation of the software system to be deployed. Likewise, Sarch is designed and proposed, a domain-specific language based on the specification of a set of architectural styles and their representation as architectural views. Finally, a tool called Sarch-Studio is built, which allows writing in Sarch language and performs automatic development and deployment processes.Resumen: La arquitectura de software pretende satisfacer los requisitos de software a partir de diferentes puntos de vista. Esta es representada por medio de modelos, los cuales son la referencia para comprender la estructura y comportamiento de el software. Sin embargo, uno de los grandes retos de la ingeniería de software es asegurar que el diseño, la implementación y el despliegue del software sean consistentes. De la misma forma, otro reto es lograr que un sistema de soft- ware mejore su rendimiento cuando este se encuentra en un escenario de recepción de muchas solicitudes por unidad de tiempo. De esta manera, este trabajo de investigación presenta un enfoque de despliegue dirigido por modelos, que a partir de modelos de arquitectura de soft- ware, automatiza el despliegue de sistemas de software en una plataforma de computación en la nube, por medio de la aplicación de tácticas de escalabilidad, específicamente de la táctica de escalamiento horizontal. Además, este trabajo incluye un proceso tradicional de desarrollo dirigido por modelos, el cual automatiza la implementación de los sistemas de software a ser de- splegados. Así mismo, se diseña y se propone Sarch, un lenguaje de dominio específico basado en la especificación de un conjunto de estilos arquitectónicos y su representación como vistas arquitectónicas. Finalmente, se implementa una herramienta llamada Sarch-Studio, que permite escribir en lenguaje Sarch y es la encargada de realizar los procesos automáticos de desarrollo y despliegue.application/pdfspaDerechos reservados - Universidad Nacional de Colombiahttp://creativecommons.org/licenses/by-nc/4.0/0 Generalidades / Computer science, information and general works62 Ingeniería y operaciones afines / EngineeringA model-driven deployment approach for applying the performance and scalability perspective from a set of software architecture stylesTrabajo de grado - Maestríahttp://bdigital.unal.edu.co/61128/info:eu-repo/semantics/openAccessSoftware ArchitectureArchitectural ViewScalabilityArchitectural StyleCloud ComputingModel-Driven DeploymentDomain-Specific LanguageArquitectura de SoftwareEstilo ArquitectónicoVista ArquitectónicaEscalabilidadComputación en la NubeDespliegue Dirigido por ModelosDesarrollo Dirigido por ModelosLenguaje de Dominio Específico