730 research outputs found

    Using Microservices to Customize Multi-Tenant SaaS: From Intrusive to Non-Intrusive

    Get PDF
    Customization is a widely adopted practice on enterprise software applications such as Enterprise resource planning (ERP) or Customer relation management (CRM). Software vendors deploy their enterprise software product on the premises of a customer, which is then often customized for different specific needs of the customer. When enterprise applications are moving to the cloud as mutli-tenant Software-as-a-Service (SaaS), the traditional way of on-premises customization faces new challenges because a customer no longer has an exclusive control to the application. To empower businesses with specific requirements on top of the shared standard SaaS, vendors need a novel approach to support the customization on the multi-tenant SaaS. In this paper, we summarize our two approaches for customizing multi-tenant SaaS using microservices: intrusive and non-intrusive. The paper clarifies the key concepts related to the problem of multi-tenant customization, and describes a design with a reference architecture and high-level principles. We also discuss the key technical challenges and the feasible solutions to implement this architecture. Our microservice-based customization solution is promising to meet the general customization requirements, and achieves a balance between isolation, assimilation and economy of scale

    The five Ws taxonomy on customization of software as a service applications

    Get PDF
    Software as a Service has become a common model for various business applications. Increasingly, software application development companies have followed this model in delivering their software to their customers. SaaS delivery model is a multi-tenant model which reduces operational cost by increasing the resource sharing of one instance of application among multi customers (commonly named tenants). In this model, SaaS provider is not allowed to provide a copy of application code for each tenant, yet they have to permit each tenant to fulfill their different and varying requirements by enabling them to customize the application. This paper explores SaaS customization and the processes which make up the overall procedure. Accordingly, the Five Ws (who, when, what, where, and why) method is used to capture the core elements of SaaS customization, as well as how customization plays a role for the various SaaS stakeholders to introduce a taxonomy of SaaS customization. This taxonomy could provide guidance on SaaS customization

    Migrating Monoliths to Microservices-based Customizable Multi-tenant Cloud-native Apps

    Get PDF
    It was common that software vendors sell licenses to their clients to use software products, such as Enterprise Resource Planning, which are deployed as a monolithic entity on clients’ premises. Moreover, many clients, especially big organizations, often require software products to be customized for their specific needs before deployment on premises. While software vendors are trying to migrate their monolithic software products to Cloud-native Software-as-a-Service (SaaS), they face two big challenges that this paper aims at addressing: 1) How to migrate their exclusive monoliths to multi-tenant Cloud-native SaaS; and 2) How to enable tenant-specific customization for multi-tenant Cloud-native SaaS. This paper suggests an approach for migrating monoliths to microservice-based Cloud-native SaaS, providing customers with a flexible customization opportunity, while taking advantage of the economies of scale that the Cloud and multi-tenancy provide. Our approach shows not only the migration to microservices but also how to introduce the necessary infrastructure to support the new services and enable tenant-specific customization. We illustrate the application of our approach on migrating a reference application of Microsoft called SportStore.acceptedVersio

    Toward Customizable Multi-tenant SaaS Applications

    Get PDF
    abstract: Nowadays, Computing is so pervasive that it has become indeed the 5th utility (after water, electricity, gas, telephony) as Leonard Kleinrock once envisioned. Evolved from utility computing, cloud computing has emerged as a computing infrastructure that enables rapid delivery of computing resources as a utility in a dynamically scalable, virtualized manner. However, the current industrial cloud computing implementations promote segregation among different cloud providers, which leads to user lockdown because of prohibitive migration cost. On the other hand, Service-Orented Computing (SOC) including service-oriented architecture (SOA) and Web Services (WS) promote standardization and openness with its enabling standards and communication protocols. This thesis proposes a Service-Oriented Cloud Computing Architecture by combining the best attributes of the two paradigms to promote an open, interoperable environment for cloud computing development. Mutil-tenancy SaaS applicantions built on top of SOCCA have more flexibility and are not locked down by a certain platform. Tenants residing on a multi-tenant application appear to be the sole owner of the application and not aware of the existence of others. A multi-tenant SaaS application accommodates each tenant’s unique requirements by allowing tenant-level customization. A complex SaaS application that supports hundreds, even thousands of tenants could have hundreds of customization points with each of them providing multiple options, and this could result in a huge number of ways to customize the application. This dissertation also proposes innovative customization approaches, which studies similar tenants’ customization choices and each individual users behaviors, then provides guided semi-automated customization process for the future tenants. A semi-automated customization process could enable tenants to quickly implement the customization that best suits their business needs.Dissertation/ThesisDoctoral Dissertation Computer Science 201

    Multi-Dimensional Customization Modelling Based On Metagraph For Saas Multi-Tenant Applications

    Full text link
    Software as a Service (SaaS) is a new software delivery model in which pre-built applications are delivered to customers as a service. SaaS providers aim to attract a large number of tenants (users) with minimal system modifications to meet economics of scale. To achieve this aim, SaaS applications have to be customizable to meet requirements of each tenant. However, due to the rapid growing of the SaaS, SaaS applications could have thousands of tenants with a huge number of ways to customize applications. Modularizing such customizations still is a highly complex task. Additionally, due to the big variation of requirements for tenants, no single customization model is appropriate for all tenants. In this paper, we propose a multi-dimensional customization model based on metagraph. The proposed mode addresses the modelling variability among tenants, describes customizations and their relationships, and guarantees the correctness of SaaS customizations made by tenants.Comment: 10 pages, 8 figure

    Event-based Customization of Multi-tenant SaaS Using Microservices

    Get PDF
    Popular enterprise software such as ERP, CRM is now being made available on the Cloud in the multi-tenant Software as a Service (SaaS) model. The added values come from the ability of vendors to enable customer-specific business advantage for every different tenant who uses the same main enterprise software product. Software vendors need novel customization solutions for Cloud-based multi-tenant SaaS. In this paper, we present an event-based approach in a non-intrusive customization framework that can enable customization for multi-tenant SaaS and address the problem of too many API calls to the main software product. The experimental results on Microsoft’s eShopOnContainers show that our approach can empower an event bus with the ability to customize the flow of processing events, and integrate with tenant-specific microservices for customization. We have shown how our approach makes sure of tenant-isolation, which is crucial in practice for SaaS vendors. This direction can also reduce the number of API calls to the main software product, even when every tenant has different customization services.publishedVersio

    Feature placement algorithms for high-variability applications in cloud environments

    Get PDF
    While the use of cloud computing is on the rise, many obstacles to its adoption remain. One of the weaknesses of current cloud offerings is the difficulty of developing highly customizable applications while retaining the increased scalability and lower cost offered by the multi-tenant nature of cloud applications. In this paper we describe a Software Product Line Engineering (SPLE) approach to the modelling and deployment of customizable Software as a Service (SaaS) applications. Afterwards we define a formal feature placement problem to manage these applications, and compare several heuristic approaches to solve the problem. The scalability and performance of the algorithms is investigated in detail. Our experiments show that the heuristics scale and perform well for systems with a reasonable load
    corecore