9 research outputs found

    Sustainability evaluation of software architectures

    Full text link
    Long-living software systems are sustainable if they can be cost-efficiently maintained and evolved over their entire life-cycle. The quality of software architectures determines sus-tainability to a large extent. Scenario-based software archi-tecture evaluation methods can support sustainability anal-ysis, but they are still reluctantly used in practice. They are also not integrated with architecture-level metrics when evaluating implemented systems, which limits their capabil-ities. Existing literature reviews for architecture evaluation focus on scenario-based methods, but do not provide a criti-cal reflection of the applicability of such methods for sustain-ability evaluation. Our goal is to measure the sustainabil-ity of a software architecture both during early design us-ing scenarios and during evolution using scenarios and met-rics, which is highly relevant in practice. We thus provide a systematic literature review assessing scenario-based meth-ods for sustainability support and categorize more than 40 architecture-level metrics according to several design prin-ciples. Our review identifies a need for further empirical research, for the integration of existing methods, and for the more efficient use of formal architectural models. 1

    Modelo para la gestión de infraestructuras de tecnologías de la información

    Get PDF
    Currently, organizations face problems in order to introduce new information technologies. They include the misalignment between and complexity of information technology infrastructure and the business policies derived from different reference frameworks with insufficiencies for unification, the heterogeneity and dispersion of the elements to be managed, standardized management models with little integration with each other, and the inexactness of impact evaluation solutions. This paper presents an information technology infrastructure management model that aims to reduce complexity and misalignment in management. It is divided into five components: (1) comprehensive framework for Information Technology management adapted to organizational needs, (2) Information Technology policy-making based on the extrapolation of system architecture design methods, (3) sizing of the underlying infrastructure necessary to automate management and meet service quality needs, (4) implementation of policies in the underlying infrastructures and proposing changes to the management architecture based on policies, and (5) impact evaluation including the strategic, structural, and social impact.Entre los problemas actuales para la introducción de las tecnologías de la información en las organizaciones, se encuentran el desalineamiento y la complejidad existente entre las infraestructuras de tecnologías de la información y las políticas del negocio provocadas por múltiples marcos de referencia con insuficiencias para su unificación, la heterogeneidad y dispersión en los elementos a gestionar y los modelos de gestión estandarizados con poca integración entre ellos e inexactitud en las soluciones de evaluación de impacto. En el presente trabajo, se desarrolla un modelo para la gestión de infraestructuras de tecnologías de la información (mgiti) que contribuye a reducir la complejidad y el desalineamiento presentes en esta. Posee cinco componentes: marco integrado de procesos para la gestión de las de tecnologías de la información, contextualizado a las necesidades de las organizaciones; diseño de políticas de de tecnologías de la información a partir de la extrapolación de los métodos de diseño de arquitecturas de sistemas; dimensionamiento de la infraestructura subyacente necesaria para automatizar la gestión y cumplir las necesidades de calidad de servicio; ejecución de políticas en las infraestructuras subyacentes, con la propuesta de una modificación a la arquitectura de gestión basada en políticas; y, por último, evaluación de impacto, que contempla el impacto estratégico, estructural y social

    Applying the ATAM to an architecture for decentralized control of a transportation system

    No full text
    Abstract. For two years, we have been involved in a challenging project to develop a new architecture for an industrial transportation system. The motivating quality attributes to develop this innovative architecture were flexibility and openness. Taking these quality attributes into account, we proposed a decentralized architecture using multiagent systems (MASs). A MAS consists of multiple autonomous entities that coordinate with each other to achieve decentralized control. The typical advantages attributed to such decentralized architecture are flexibility and openness, the motivating quality attributes to apply MAS in this case. The Architecture Tradeoff Analysis Method (ATAM) was used to provide insights wether our architecture meets the expected flexibility and openness, and to identify tradeoffs with other quality attributes. Applying the ATAM proved to be a valuable experience. One of the main outcome of applying the ATAM was the identification of a tradeoff between flexibility and communication load that results from the use of a decentralized architecture. This paper describes our experiences in applying the ATAM to a MAS architecture, containing both the main outcomes of the evaluation and a critical reflection on the ATAM itself.

    Software product quality requirements engineering method : SOQUAREM

    Get PDF
    The IT industry needs reliable data about Quality Requirements (QRs) to adequately evaluate systems and their architecture. Quality requirements management of the software product is an emerging discipline aiming to enhance the software product quality by addressing its quality requirements. Dealing with this kind of requirements is not easy and implies much effort from practitioners, better involvement of interested stakeholders and a solid knowledge in quality management techniques. In fact they are vague, difficult to define and often conflict with other requirements. New approaches toward QRs management are developed to resolve problems of traditional software engineering views as: a) lack of systematic guidelines on how to elicit QRs; b) difficulty to identify QRs and to represent them in models and processes. In the context of a proposal for a SOftware product QUAlity Requirements Engineering Method (SOQUAREM), this thesis provides a structured QRs engineering process with its supporting ISO/IEC SQuaRE 25030 standard, management techniques and concepts. SOQUAREM process spans 2 high levels of abstraction (business and system) and six conceptual phases such as: identification and refinement of business goals, derivation and consolidation of the quality attributes and their integration into the functional process. The proposed SOQUAREM illustrates in a structured and easy to use way how several concepts can be combined at different organizational levels to identify, represent, document and retrace quality attributes. This document is divided into six chapters: the first chapter presents a background and related work on "Quality requirements" in general and on various quality requirements management methods such as MOQARE (Misuse-Oriented QuAlity Requirements Engineering)), IESE NFR (Institute for Experimental Software Engineering Non Functional Requirements), Soft Goal Notation (Chung Framework), FDAF (Formal Design and Analysis Framework) and ATAM (Architecture Tradeoff Analysis Method). The second chapter introduces the research topic with its objectives, its limits, the research methodology and research steps. The third chapter describes the research execution by analyzing the current situation of quality requirements with the resulted indicators from academic and industrial environments and formulating the future requirements of the proposed research solution. An overview of the innovative aspects of proposed method like its specific features, metamodel, building process, and process structure are pinpointed. The fourth chapter describes primarily the most important parts of the research which are the development of a new quality requirements engineering method called SOftware product QUAlity Requirements Engineering Method including fundamentals, key concepts and a process model. The fifth chapter presents an illustrative example applied to a building automation system called MSLite. Applicability of SOQUAREM process in this example is developed and analyzed. The last chapter presents a conclusion on this research work and its expected evolution in the future

    A reactive architecture for cloud-based system engineering

    Get PDF
    PhD ThesisSoftware system engineering is increasingly practised over globally distributed locations. Such a practise is termed as Global Software Development (GSD). GSD has become a business necessity mainly because of the scarcity of resources, cost, and the need to locate development closer to the customers. GSD is highly dependent on requirements management, but system requirements continuously change. Poorly managed change in requirements affects the overall cost, schedule and quality of GSD projects. It is particularly challenging to manage and trace such changes, and hence we require a rigorous requirement change management (RCM) process. RCM is not trivial in collocated software development; and with the presence of geographical, cultural, social and temporal factors, it makes RCM profoundly difficult for GSD. Existing RCM methods do not take into consideration these issues faced in GSD. Considering the state-of-the-art in RCM, design and analysis of architecture, and cloud accountability, this work contributes: 1. an alternative and novel mechanism for effective information and knowledge-sharing towards RCM and traceability. 2. a novel methodology for the design and analysis of small-to-medium size cloud-based systems, with a particular focus on the trade-off of quality attributes. 3. a dependable framework that facilitates the RCM and traceability method for cloud-based system engineering. 4. a novel methodology for assuring cloud accountability in terms of dependability. 5. a cloud-based framework to facilitate the cloud accountability methodology. The results show a traceable RCM linkage between system engineering processes and stakeholder requirements for cloud-based GSD projects, which is better than existing approaches. Also, the results show an improved dependability assurance of systems interfacing with the unpredictable cloud environment. We reach the conclusion that RCM with a clear focus on traceability, which is then facilitated by a dependable framework, improves the chance of developing a cloud-based GSD project successfully

    Derivación, Evaluación y Mejora de la Calidad de Arquitecturas Software en el Desarrollo de Líneas de Producto Software Dirigido por Modelos

    Full text link
    En los últimos años se han propuesto diferentes aproximaciones para el desarrollo de sistemas altamente complejos. Algunos esfuerzos intentan aplicar la aproximación de Líneas de Producto Software tratando de sacar partido de la reutilización masiva para producir sistemas software que comparten un conjunto común de características. Una Línea de Producto Software (LPS) es un conjunto de sistemas software que comparten un conjunto de características comunes que satisfacen las necesidades específicas de un segmento de mercado particular y que son desarrollados a partir de un conjunto de activos software comunes de un modo preestablecido [6]. El desarrollo de una LPS consta de dos procesos básicos: la Ingeniería del Dominio, donde se establece cuáles son las partes comunes y las variables y se construye un conjunto de activos (product¿s line core assets) como partes de los sistemas software a desarrollar, y la Ingeniería de la Aplicación, donde los core assets son reutilizados sistemáticamente para derivar productos específicos. De este modo se reducen costes y tiempo de desarrollo. En el desarrollo de líneas de producto se presentan dos arquitecturas software que juegan dos roles diferenciados; i) la arquitectura de la línea de producto que da soporte a todas los posibles productos que pueden ser obtenidos a partir de la línea de producto y que cuenta con los mecanismos de variabilidad necesarios para cubrir toda la gama de productos y ii) la arquitectura de producto, que es creada a partir de la arquitectura de la línea de producto ejerciendo los mecanismos de variabilidad, para que esta se adapte a los requisitos del producto en desarrollo. En general, el aseguramiento de la calidad del producto es una actividad crucial para el éxito de la industria del software, pero es, si cabe, más importante cuando se trata del desarrollo de líneas de producto software, dado que la reutilización masiva de core assets hace que los atributos de calidad (propiedades físicas o abstractas de un artefacto software) de los core assets impacten en la calidad de todos los productos de una línea de producto. Este hecho es de especial relevancia cuando tratamos con la arquitectura software, que es el core asset mas critico en el desarrollo de líneas de producto. La arquitectura software es la vía para conseguir el cumplimiento de los requisitos no funcionales de nuestro producto, por lo que asegurar que estos requisitos se cumplen durante el proceso de derivación de la arquitectura es una actividad crítica en el proceso de desarrollo. El desarrollo de líneas de producto va, en la mayoría de los casos, ligada a la aplicación del paradigma de desarrollo dirigido por modelos. El Desarrollo de Software Dirigido por Modelos (DSDM) que promueve el uso de modelos durante a lo largo de todo el proceso de desarrollo de software, permitiendo que estos modelos puedan ser transformados sucesivamente hasta la obtención del producto final. En la literatura no se encuentran propuestas que, de forma completa, sistemática y automatizada, permitan obtener arquitecturas de producto software que cumplan una serie de requisitos de calidad. El presente trabajo de investigación pretende la mejora del contexto anterior proponiendo el método QuaDAI (Quality Driven Architecture Derivation and Improvement), un método de derivación, evaluación y mejora de la calidad de arquitecturas software en el Desarrollo de Líneas de Producto Dirigido por Modelos mediante la definición de un artefacto (el multimodelo) y de un proceso dirigido por transformaciones que permite automatizar un proceso (el de derivación, evaluación y mejora) de por si altamente complejo. Este método va dirigido a empresas de desarrollo de software que utilice el paradigma de LPS y que pretendan introducir técnicas automatizadas de aseguramiento de calidad y para investigadores interesados en el campo de las arquitecturas software, líneas de producto y desarrollo dirigido por modelos.González Huerta, J. (2014). Derivación, Evaluación y Mejora de la Calidad de Arquitecturas Software en el Desarrollo de Líneas de Producto Software Dirigido por Modelos [Tesis doctoral no publicada]. Universitat Politècnica de València. https://doi.org/10.4995/Thesis/10251/36448TESI

    Propuesta de diseño modular para la configuración de un entorno virtual de eseñanza-aprendizaje con tutoría inteligente. Prototipo DECANO

    Get PDF
    456 páginas. Doctorado en Diseño.Un Entorno Virtual de Enseñanza-Aprendizaje con Tutoría Inteligente es un sistema que busca que la enseñanza se pueda adaptar a las características de cada estudiante y para su desarrollo, debe contar con muchos atributos como la reutilización, modificabilidad y adaptabilidad, elementos que hoy día se persiguen al diseñarlos. La gran mayoría de este tipo sistemas se construyen desde cero, puesto que no es posible reutilizar los elementos o modificar componentes, sin afectar su funcionalidad, lo que supone un gran esfuerzo en costos y tiempo. Esta tesis presenta el proceso para el diseño y construcción de un prototipo adaptable y modificable, considerando para ello una arquitectura modular, que toma en cuenta la instrucción individualizada, así como la integración del ambiente virtual colaborativo. Adicionalmente, plantea el modelo de interfaz gráfica diseñado a a partir de dimensiones sintático-simbólicas, para la traducción de sus componentes y funciones. Se ha desarrollado un modelo sistmático a partir de estos dos aspectos: interfaz y arquitectura, definiendo una metodología para el diseño, construcción y desarrollo, basada en las cualidades mencionadas, como principal aportación. También, se presenta el marco de trabajo para la construcción de prototipos similares por usuarios no especializados, de modo que se complemente con el uso y aplicación de programas y herramientas externas con la posibilidad de ser aplicado a diversos dominios
    corecore