163,329 research outputs found

    Pattern-Based Generation of AMF Configurations

    Get PDF
    Information Technology service providers aim at attracting customers by providing services that meet a high level of quality. They should not only satisfy functional requirements, but also non-functional requirements. An important non-functional requirement is the level of service availability. Service Availability Forum (SAForum), a consortium of communications and computing companies, has developed a set of services and standard Application Programming Interfaces (APIs) to address the issue of high availability for the Commercial-off-the-shelf (COTS)-based systems and enable portability. Among the services standardized by the SAForum, the Availability Management Framework (AMF) has the important role of ensuring the high availability of an application and its services, by managing the redundant application components deployed on the cluster. To achieve this task, AMF requires a configuration that represents the logical organization of the application components and their services. The design of AMF configurations is a complex and error prone task. Automation of the process is the first step towards improving the quality of such configurations. It also enables exploring different potential solutions for a given set of requirements. An automated approach to generate configurations for applications to deploy on top of the SAForum middleware has been proposed in the context of the MAGIC project. This approach, however, may generate several configurations among which some may not meet the required level of service availability. Therefore, the system designer needs to evaluate the generated configurations using an availability analysis tool to select an appropriate one for deployment. One may want to improve this process by targeting directly in the generation process, the configurations that can guarantee the requested level of service availability. The objective of this thesis is to propose solutions to enhance this configuration generation process and generate configurations that can guarantee the required level of service availability without using advanced analysis tools. For this purpose, we propose configuration design patterns to improve the expected level of service availability and quantitative methods that eliminate some configurations that do not meet the availability requirement. The configuration design patterns improve the expected level of service availability by selecting the best configuration options. The methods estimate service availability for the different possible combinations of software components, which can provide the requested services, taking into account the properties of these components and the behavior of the SAForum middleware. As a proof of concept, we have embedded our proposed solutions into a prototype tool as an eclipse plug-in and validated our work with case studies

    Microservices Architecture Enables DevOps: an Experience Report on Migration to a Cloud-Native Architecture

    Get PDF
    This article reports on experiences and lessons learned during incremental migration and architectural refactoring of a commercial mobile back end as a service to microservices architecture. It explains how the researchers adopted DevOps and how this facilitated a smooth migration

    Migrating to Cloud-Native Architectures Using Microservices: An Experience Report

    Full text link
    Migration to the cloud has been a popular topic in industry and academia in recent years. Despite many benefits that the cloud presents, such as high availability and scalability, most of the on-premise application architectures are not ready to fully exploit the benefits of this environment, and adapting them to this environment is a non-trivial task. Microservices have appeared recently as novel architectural styles that are native to the cloud. These cloud-native architectures can facilitate migrating on-premise architectures to fully benefit from the cloud environments because non-functional attributes, like scalability, are inherent in this style. The existing approaches on cloud migration does not mostly consider cloud-native architectures as their first-class citizens. As a result, the final product may not meet its primary drivers for migration. In this paper, we intend to report our experience and lessons learned in an ongoing project on migrating a monolithic on-premise software architecture to microservices. We concluded that microservices is not a one-fit-all solution as it introduces new complexities to the system, and many factors, such as distribution complexities, should be considered before adopting this style. However, if adopted in a context that needs high flexibility in terms of scalability and availability, it can deliver its promised benefits

    Quality-aware model-driven service engineering

    Get PDF
    Service engineering and service-oriented architecture as an integration and platform technology is a recent approach to software systems integration. Quality aspects ranging from interoperability to maintainability to performance are of central importance for the integration of heterogeneous, distributed service-based systems. Architecture models can substantially influence quality attributes of the implemented software systems. Besides the benefits of explicit architectures on maintainability and reuse, architectural constraints such as styles, reference architectures and architectural patterns can influence observable software properties such as performance. Empirical performance evaluation is a process of measuring and evaluating the performance of implemented software. We present an approach for addressing the quality of services and service-based systems at the model-level in the context of model-driven service engineering. The focus on architecture-level models is a consequence of the black-box character of services

    A Security Pattern for Cloud service certification

    Get PDF
    Cloud computing is interesting from the economic, operational and even energy consumption perspectives but it still raises concerns regarding the security, privacy, governance and compliance of the data and software services offered through it. However, the task of verifying security properties in services running on cloud is not trivial. We notice the provision and security of a cloud service is sensitive. Because of the potential interference between the features and behavior of all the inter-dependent services in all layers of the cloud stack (as well as dynamic changes in them). Besides current cloud models do not include support for trust-focused communication between layers. We present a mechanism to implement cloud service certification process based on the usage of Trusted Computing technology, by means of its Trusted Computing Platform (TPM) implementation of its architecture. Among many security security features it is a tamper proof resistance built in device and provides a root of trust to affix our certification mechanism. We present as a security pattern the approach for service certification based on the use TPM.Universidad de MĂĄlaga. Campus de Excelencia Internacional AndalucĂ­a Tec

    Pattern-based software architecture for service-oriented software systems

    Get PDF
    Service-oriented architecture is a recent conceptual framework for service-oriented software platforms. Architectures are of great importance for the evolution of software systems. We present a modelling and transformation technique for service-centric distributed software systems. Architectural configurations, expressed through hierarchical architectural patterns, form the core of a specification and transformation technique. Patterns on different levels of abstraction form transformation invariants that structure and constrain the transformation process. We explore the role that patterns can play in architecture transformations in terms of functional properties, but also non-functional quality aspects
    • 

    corecore